klink0v (klink0v) wrote,
klink0v
klink0v

Странное поведение сервера

Решил тут упаковать в архив образ одной своей виртуальной машины. Формат виртуального HDD — RAW, QEMU/KVM. А чтобы он лучше заархивировался, возжелал я заполнить нулями всё пустое пространство. Сказано — сделано.

mount -o loop vm-100-disk-1.raw /mnt/vm
cd /mnt/vm
dd if=/dev/zero of=big.file bs=4M

И тут столкнулся с непоняткой. Сначала дело идет бодро. Пишется по сотне-другой мегабайт нулей в секунду. IOWait сильно больше, чем User. Потом в какой-то момент времени IOWait становится низким, а CPU Load — высоким (полная загрузка одного ядра). Всё это ядро отжирает под себя исключительно dd. И пишет по одному-два мегабайта в секунду. Или даже ещё медленнее. На графике это всё безобразие выглядит как-то так (кликабельно):

При этом консоль начинает пестрить сообщениями типа:

dd blocked for more than 120 seconds

Ничего не понимаю. Сервер относительно новый, "свежий". До сих пор никаких проблем замечено не было. Последний аптайм у него был 320 дней, без вопросов. Утилита работы с RAID-массивом (HPaucli) рапортует, что всё OK. Raid 1+0 живой, здоровый, все диски в норме. Файловая система на хост-машине не фрагментирована: 65/1205888 files (0.0% non-contiguous).

Ну и как же это понимать, извините, вашу мать? Я, конечно, готов допустить крайне запущенную степень фрагментации файловой системы внутри самого контейнера (виртуального жесткого диска). Но не до такой же степени она влияет на скорость записи? Или всё-таки причина как раз именно в этом?

Tags: linux, администрирование, непонятки
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 16 comments