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

Проверка массива RAID10 медленная и замедленная

Я запускаю новую машину CentOS 7. Linux работает с установкой 2x SSD, и у меня также есть установка 4x дисков SAS в программном RAID10. Массив RAID10 большой, 4 диска по 12 ТБ, поэтому можно использовать 24 ТБ.

Файловая система: ext4

Сейчас закончил копировать в него некоторые файлы, и делаю рейд-чек (самый первый).

Every 2.0s: cat /proc/mdstat                                                                                                                                                                                         Mon Oct 14 06:28:38 2019

Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty]
md127 : active raid10 sdf1[3] sdd1[1] sde1[2] sdc1[0]
      23437503488 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
      [======>..............]  check = 32.6% (7649123136/23437503488) finish=3402.6min speed=77333K/sec
      bitmap: 0/175 pages [0KB], 65536KB chunk

md2 : active raid1 sdb2[1] sda2[0]
      20478912 blocks [2/2] [UU]

md3 : active raid1 sdb3[1] sda3[0]
      447318976 blocks [2/2] [UU]
      bitmap: 3/4 pages [12KB], 65536KB chunk

unused devices: <none>

Он начался с 250 000 Кбит / с, но продолжает замедляться, и теперь он составляет около 75 000 К / с.

Диски в массиве RAID10 в данный момент больше не используются.

Я уже настроил настройки ограничения скорости.

dev.raid.speed_limit_min = 100000

dev.raid.speed_limit_max = 1000000

Использование ЦП примерно на 2%, у меня очень много свободной оперативной памяти, а 4 диска в массиве RAID сообщают о 25% -ном использовании диска на каждый диск, поэтому повторная синхронизация не сильно влияет на них.

Мой вопрос:

  1. Что я могу сделать, чтобы это ускорить?

  2. И что могло вызвать его замедление?

Ваш message файл показывает именно то, что я ожидал: диск / корпус постоянно прерывают команды и сбрасываются. Затронутый диск кажется всегда sdc, так что, вероятно, виноват.

Очевидное действие для решения проблемы - заменить его. Однако сначала я бы попробовал:

  • переустановите диск и кабели питания / данных;
  • замена sdc с другим диском (для замены кабеля SAS / шнура питания) и проверьте, следуют ли ошибки за диском или остаются привязанными к тому же слоту / порту;
  • опционально, читать прямо с диска через dd if=/dev/sdc of=/dev/null bs=1M iflag=direct для получения дополнительных данных отладки.

Если по какой-то причине вы не можете заменить диск, вы можете попробовать принудительно перераспределить сбойные блоки, полностью переписав устройство через dd if=/dev/zero of=/dev/sdc bs=1M oflag=direct. БОЛЬШОЕ ПРЕДУПРЕЖДЕНИЕ: это полностью и необратимо уничтожит все данные на sdc. Попытайся только если вы действительно не можете заменить диск.