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

iostat сообщает о существенно разных '% util' и 'await' для двух идентичных дисков в mdadm RAID1

У меня есть сервер под управлением CentOS 6 с двумя твердотельными накопителями Crucial M500, настроенными в mdadm RAID1. Этот сервер также виртуализирован с помощью Xen.

Недавно я начал видеть iowait проценты ползут в top -c статистика нашей продукции ВМ. Я решил исследовать и запустить iostat на dom0, чтобы я мог проверить активность на физических дисках (например, / dev / sda и / dev / sdb). Я использовал эту команду: iostat -d -x 3 3

Вот пример полученного мной вывода (прокрутите вправо, чтобы %util числа):

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.33    0.00   38.67     0.00   337.33     8.72     0.09    2.22    0.00    2.22   1.90   7.33
sdb               0.00     0.33    0.00   38.67     0.00   338.00     8.74     1.08   27.27    0.00   27.27  23.96  92.63
md2               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
md1               0.00     0.00    0.00    1.00     0.00     8.00     8.00     0.00    0.00    0.00    0.00   0.00   0.00
md0               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
md127             0.00     0.00    0.00   29.33     0.00   312.00    10.64     0.00    0.00    0.00    0.00   0.00   0.00
drbd5             0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
drbd3             0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
drbd4             0.00     0.00    0.00    8.67     0.00    77.33     8.92     2.03  230.96    0.00  230.96  26.12  22.63
dm-0              0.00     0.00    0.00   29.67     0.00   317.33    10.70     5.11  171.56    0.00  171.56  23.91  70.93
dm-1              0.00     0.00    0.00    8.67     0.00    77.33     8.92     2.03  230.96    0.00  230.96  26.12  22.63
dm-2              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-3              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-4              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-5              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-6              0.00     0.00    0.00   20.00     0.00   240.00    12.00     3.03  151.55    0.00  151.55  31.33  62.67
dm-7              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-8              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-9              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-10             0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
dm-11             0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

К моей тревоге, я заметил значительную разницу между /dev/sda и /dev/sdb в await (2 мс против 27 мс) и %util (7% против 92%). Эти диски являются зеркалами друг друга и представляют собой один и тот же твердотельный накопитель Crucial M500, поэтому я не понимаю, как это могло быть. Нет активности на /dev/sda этого также не должно происходить на /dev/sdb.

Я регулярно проверял значения SMART для обоих этих дисков и заметил, что Percent_Lifetime_Used для /dev/sda указывает на использование 66%, в то время как /dev/sdb сообщает о бессмысленных значениях (использовано 454%). До этого момента я не слишком беспокоился, потому что Reallocated_Event_Count остается относительно низким для обоих приводов и не меняется быстро.

Значения SMART для / dev / sda

Значения SMART для / dev / sdb

Может быть проблема с оборудованием в нашем /dev/sdb диск? Какие-нибудь другие возможные объяснения?

В конце концов я обнаружил, что эта система не была обрезана должным образом, а также была разделена с недостаточным избыточным выделением ресурсов (хотя Crucial M500 имеет 7% уровень 2 избыточное выделение ресурсов встроенный). Комбинация этих двух привела к тяжелому случаю запись усиления.

Более того, эта система содержит базу данных с очень высокой активностью записи, что приводит к очень большому количеству небольших случайных записей. У такого рода операций ввода-вывода есть очень плохой результат с усилением записи.

Я все еще не уверен на 100%, почему /dev/sda работал лучше, чем /dev/sdb в iostat - возможно, это было что-то вроде силиконовая лотерея где /dev/sda был незначительно лучше /dev/sdb так /dev/sdb сначала узкое место.

Для нас два основных вывода:

  1. Избыточное выделение ресурсов SSD на 20% (учитывая, что у вашего SSD уже есть 0%, 7% или 28% уровень 2 избыточного выделения ресурсов).
  2. Запускайте TRIM еженедельно.