Назад | Перейти на главную страницу

ext4 на неисправных дисках. Как избежать перемонтирования только для чтения?

Эта проблема:

Я отвечаю за кластер Hadoop из 44 узлов. У нас есть диски WD Green емкостью 1,5 ТБ с (совершенно неизвестной) проблемой счетчика циклов загрузки.

Эти диски работают нормально, но с возрастом они показывают все большее количество плохих блоков. Перезапись этих плохих блоков работает некоторое время, но они снова появляются в разных местах.

Поскольку большинство этих дисков используются только для узлов данных Hadoop, и у нас нет бюджета, чтобы заменить их все, я ищу стратегию

  1. Не сходите с ума, обслуживая кластер, ошибки диска и связанные с ними проблемы файловой системы появляются почти ежедневно. Моя текущая процедура:

    • остановить службы Hadoop, отключить диски, найти плохие блоки с помощью dmesg выход и smartctl и перепишите эти плохие блоки с помощью hdparm --write-sector.
    • Бег fsck -f -y на диск и перемонтируйте его.
  2. Поддерживайте стабильность системы.

    • Hadoop заботится о дисковых ошибках (трехкратная избыточность), но я бы предпочел не рисковать поврежденными файловыми системами.

Что я сделал?

На данный момент я изменил mount варианты:

Потом попробовал отключить журнал:

Сейчас подумываю перейти на

Но я не уверен, что это снова вводит перемонтирование только для чтения.

Итак, я бы хотел избежать повторных подключений только для чтения, хочу поддерживать стабильные метаданные файловой системы, но не беспокоиться об ошибках в данных (Hadoop позаботится об этом). На скорость тоже не должно влиять.

Какие у меня есть варианты? Я понимаю, что это, вероятно, кошмар для любого системного администратора. Разделы ОС монтируются с полным ведением журнала, и я не собираюсь тестировать производственные данные. Это строго для узлов данных / жестких дисков системы отслеживания задач Hadoop.

Лучшее, что вы можете сделать, это заменить диски. Стоимость дисков не будет зависеть от стоимости сбоя кластера и количества вашего рабочего времени, затрачиваемого на исправление сбойных блоков. Так что даже без бюджета я бы серьезно попытался убедить ваше руководство.

Если вам АБСОЛЮТНО нужно использовать эти диски, я бы рекомендовал создать файловые системы с mkfs -c -c… чтобы mkfs проверял наличие плохих блоков.

Вы можете попробовать другую файловую систему, например btrfs, и посмотреть, работает ли она лучше, но в конечном итоге правильный ответ - «заменить диски».