inonice не работает должным образом в xen dom0

У меня есть Xen Dom0 (3.2) с кучей домиков (паравирт). VBD DomU находятся на локальных томах LVM. Теперь я хочу получить резервные копии томов LVM с помощью снимков. Я использую rsync ioniced для простоя (ionice -c3).

Я проверил, что процессы rsync действительно находятся в режиме ожидания и blkback Потоки ядра находятся на лучшем уровне (-c2 -n4).

Как я понимаю, система планирования ввода-вывода, так настроенный процесс rsync никогда не сможет украсть пропускную способность ввода-вывода из blkback процессы и, следовательно, влияние на дом должно быть нулевым.

Но это не то, что я вижу. В домах vmstat показывает до 20% ожидания ввода-вывода при работе с rsync filelist и около 10% при передаче данных rsync:

r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
1  3    456  48468 103004 1550936    0    0    75   484 2112 1741  3  0 81 16

Без запуска rsync ожидание ввода-вывода составляет около 1%:

r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
1  0    456  43876 105564 1553224    0    0    19   365 2063 1718  4  0 95  1

dom0 показывает стабильное ожидание ввода-вывода 11% при работе с rsync и списком файлов 5% при передаче данных:

 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 0  0  23536 220220  73256 558856    0    0  1471   239 5271  310  0  0 89 11

Итак, кто-нибудь имеет представление о том, что здесь происходит? Ionice просто сломан или я ожидаю неправильных эффектов?

Спасибо за любую подсказку.

Тим

1 ответ

Какой дистрибутив вы используете?

Какую файловую систему вы используете?

Какой планировщик ввода / вывода (CFQ, крайний срок, упреждающий, noop) вы используете?

Во время тяжелых файловых операций ожидание ввода-вывода 0% не является разумным ожиданием. Будут некоторые ожидания ввода-вывода с вращающимися дисками, несмотря ни на что. Некоторые файловые системы немного уменьшают этот эффект, иногда может помочь настройка или изменение планировщика ввода / вывода, иногда вам просто придется немного подождать с вводом / выводом. Около 10-20% - это НЕ ЭТО много, если вы не заметите это как резкое замедление работы вашего сервера. В случае резкого замедления вы можете получить подсказку о том, что происходит с такими инструментами, как btrace, который показывает отдельные запросы ввода-вывода, их состояние и общую статистику планировщика ввода-вывода / блочного устройства.

Другие вопросы по тегам