Как ускорить миграцию от Набега 5 для Совершения набега 6 с mdadm?

Что относительно того, чтобы добавить ручную запись в wpa_supplicant.conf? Поскольку SSID с 'умляутом' просто добавляют ssid-запись в шестнадцатеричном числе.

SSID=$(echo 'SSID' | xxd -u -p)

network={
    priority=1
    ssid=$SSID
    mode=0
    key_mgmt=WPA-PSK
    psk="PASSWORD"
}

не используйте var в conf файле. просто получите его от терминала и запишите шестнадцатеричное число без кавычек.

5
23.07.2014, 20:39
2 ответа

Мне кажется, что это связано с миграцией mdadm с рейда 5 на рейд 6. Я только что добавил новый диск в массив и скорость роста вполне приемлема (40000K/s) для моего оборудования.

1
27.01.2020, 20:41

Согласно этой записи в блоге Нила Брауна ( создателя mdadm ), вы можете избежать потери скорости из-за процесса резервного копирования диапазона блоков mdadm путем:

  1. увеличения количества устройств RAID (например: изменение формы с 4-дискового RAID5 на 5-дисковый RAID6) mdadm --grow / dev / md0 --level = 6 --raid-disk = 5
  2. Не указывайте параметр - backup-file

Обоснование, которое он подробно описывает в своем блоге сообщением является то, что файл резервной копии не нужен, когда был добавлен другой диск.Это связано с тем, что процесс немного отличается, поскольку в этом случае обычно существует разрыв между старым и новым макетами, который можно использовать для резервного копирования старых данных макета, с которыми работают во время изменения формы.

Этот отрывок из его статьи объясняет это более подробно:

Как работает изменение уровня

Если мы подумаем о «RAID5» как о немного более общем, чем стандартное определение, и позволим ему быть любым макетом, который чередуется данные плюс 1 блок четности на нескольких устройствах, тогда мы можем рассматривать RAID4 как просто частный случай RAID5. Тогда мы можем представить преобразование RAID0 в RAID5 как два шага. Первый преобразуется в RAID5 с использованием схемы RAID4 с диском четности в качестве последнего диска. Это явно не требует перемещения каких-либо данных, поэтому изменение может быть мгновенным. Он создает ухудшенный RAID5 в схеме RAID4, поэтому он неполный, но это явно шаг в правильном направлении. Я уверен, что вы понимаете, что будет дальше. После преобразования RAID0 в ухудшенный RAID5 с необычной компоновкой мы использовали бы новую функцию изменения компоновки для преобразования в реальный RAID5.

Это очень похожий процесс, который теперь можно использовать для преобразования RAID5 в RAID6. Сначала мы меняем RAID5 на RAID6 с нестандартной компоновкой, в которой блоки четности распределены как обычно, но Q блокирует все на последнем устройстве (новом устройстве). Итак, это RAID6 с использованием драйвера RAID6, но с разметкой, отличной от RAID6. Итак, мы «просто» меняем макет, и работа сделана.

RAID6 можно преобразовать в RAID5 обратным процессом.Сначала мы меняем схему на схему, которая почти соответствует RAID5, но с дополнительным диском Q. Затем мы конвертируем в настоящий RAID5, забывая о диске Q.

Сложности повторного чередования данных

Самая беспорядочная часть во всем этом - обеспечение того, чтобы данные выжили после сбоя или другого завершения работы системы. С первым изменением формы, позволившим просто увеличить количество устройств, это было довольно просто. В большинстве случаев в устройствах существует разрыв между тем, где данные в старом макете читаются, и где данные в новом макете записываются. Этот пробел позволяет нам иметь две копии этих данных. Если мы отключим запись в небольшой раздел во время его изменения, то после сбоя мы узнаем, что старый макет все еще имеет хорошие данные, и просто изменим макет последних нескольких полос с того места, где мы записали, что мы делали.

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

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

Это самая сложная часть новой функциональности в mdadm 3.1 (которая еще не выпущена, но ее можно найти в ветке devel-3.1 для git: //neil.brown.name/mdadm). mdadm следит за изменением формы,установка верхней границы того, насколько далеко он может прогрессировать в любое время, и обеспечение того, чтобы в области, в которой разрешено переупорядочивание, была отключена запись и было выполнено резервное копирование.

Это означает, что все данные копируются дважды: один раз в резервную копию и один раз в новый макет в массиве. Это явно означает, что такая переделка будет происходить очень медленно. Но это цена, которую мы должны заплатить за безопасность. Это как страховка. Вы можете ненавидеть необходимость платить, но вы бы возненавидели это намного больше, если бы вы этого не сделали и обнаружили, что вам это нужно.

2
27.01.2020, 20:41

Теги

Похожие вопросы