Вопрос: CentOS 6 делает намного больше IO, чем CentOS 5


Я сравниваю приложение на двух одинаковых серверах: один - Centos 5.8, другой - Centos 6.2. Мое приложение работает намного медленнее (50% или меньше) на машине Centos 6.2.

При попытке диагностировать проблему я отслеживаю CPU, RAM и IO во время теста. Я вижу, что чтение дисков значительно выше в поле Centos 6.2, измеренное с помощью iostat.

Обе системы используют XFS, где работает мой бенчмарк. Оба являются серверами HP с 512 МБ кэширующими RAID-контроллерами с 8 x 300 ГБ SAS, работающими под управлением RAID 10.

Вот вывод xfs_info для каждого:

CentOS5

meta-data=/dev/cciss/c0d0p5      isize=256    agcount=32, agsize=8034208 blks
         =                       sectsz=512   attr=0
data     =                       bsize=4096   blocks=257094144, imaxpct=25
         =                       sunit=32     swidth=128 blks, unwritten=1
naming   =version 2              bsize=4096 
log      =internal               bsize=4096   blocks=32768, version=1
         =                       sectsz=512   sunit=0 blks, lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0

centos6

meta-data=/dev/sda5              isize=256    agcount=4, agsize=57873856 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=231495424, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=113034, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

9
2018-05-10 13:48


Источник


В чем ваш вопрос? - Tim Brigham
Можете ли вы показать настройки XFS для монтирования и создания файловой системы? Можете ли вы описать компоновку оборудования и диска более подробно? - ewwhite
Квест состоит в том, что при прочих равных условиях, по крайней мере, тех, которые я вижу, Centos 6.2 сравнивает 50% Centos 5.8 для моего приложения. Другая разница, которую я могу сейчас измерить, заключается в том, что чтение намного выше. - tmcallaghan


Ответы:


Благодарим вас за обновление сообщения с дополнительной информацией.

Вы работаете в системах ProLiant, поэтому требуется определенная работа оптимизировать работу контроллера и ввода / вывода, Кроме того, ваши монстры XFS используют параметры по умолчанию. Помните, что вы используете другой драйвер между этими операционными системами. Сервер EL5 имеет cciss, в то время как система EL6 использует hpsa модуль. Там это разница, однако проблема, с которой вы сталкиваетесь, вероятно, связана с различиями в операционной системе. Итак, вот что я хотел бы проверить:

  • Измените настройки XFS, чтобы включить noatime и отключить барьеры записи с nobarrier, Вот образец монтирования строки я использую часто,
  • Лифтер ввода / вывода поведение отличается от ваших версий Linux. Попробуйте deadline или noop Линия ввода-вывода на сервере CentOS 6. Вы можете изменить это на лету с помощью echo deadline > /sys/block/cciss\!c0d0/queue/scheduler или путем добавления elevator=deadline в записи загрузки grub.
  • Убедитесь, что ваш кеш чтения / записи оптимален для вашей рабочей нагрузки. Обычно я читаю 75% и 25% читаю.
  • Обновите прошивку на серверных компонентах. Каждая ревизия встроенного ПО контроллера RAID Smart Array имеет тенденцию приносить новые функции. Это похоже на контроллер HP Smart Array P410, поэтому убедитесь, что вы на нем версия 5.14,

редактировать:
Я смотрю вывод xfs_info для ваших систем CentOS 5 и CentOS 6. Вы отформатировали разделы XFS с разными параметрами!

В системе EL5 имеется 32 группы распределения XFS, а в системе EL6 - 4. Группы распределения позволяют XFS распараллеливать операции параллельной файловой системы.

Учитывая объем доступного пространства и спецификацию процессора вашего сервера, существующая настройка EL6 ограничена низким уровнем agcount, Видеть Заметки Red Hat на этом. На таком оборудовании, где хранилище не находится в диапазоне нескольких терабайт, Я обычно указываю группа распределения на 4 ГБ места на диске, По крайней мере, перейдите к 32, чтобы соответствовать вашему серверу EL5 ... Попробуйте переформатировать раздел EL6 с этими параметрами, чтобы увидеть, есть ли разница в производительности ...


10
2018-05-10 18:02



Пробовал все 4 из вышеперечисленных, ни одна из них не представляла сколько-нибудь заметной разницы в производительности моих тестов. - tmcallaghan
См. Мое редактирование выше. Два раздела XFS на EL5 и EL6 были отформатированы с очень разными параметрами. - ewwhite
Спасибо за постоянную помощь, я переформатирую свой XFS и посмотрю, поможет ли это. - tmcallaghan
Пожалуйста, опубликуйте результаты. - ewwhite
Мы обнаружили, что прозрачные огромные страницы были проблемой. Отключение от производительности нашего сервера Centos6 аналогично производительности Centos5. Команда была «$ echo never> / sys / kernel / mm / redhad_transparent_hugepage / enabled». Другие дистрибутивы делают это через / sys / kernel / mm / transparent_hugepage / enabled " - tmcallaghan


Когда вы запускаете iotop, что делает диск, читается в поле 6.2?

Также каковы настройки вашего устройства на устройстве, которое вы читаете? Вы можете посмотреть в noatime и relatime


0
2018-05-10 14:35



Я сравниваю приложение MySQL и не использую прямой ввод-вывод. - tmcallaghan
mount идентичен на обеих машинах "/ dev / cciss / c0d0p5 / data xfs defaults 0 0" - tmcallaghan