В контейнере, запущенном на хосте с двумя дисками на mdadm RAID 1, я безуспешно пытался ограничить дисковый ввод-вывод контейнера LXD с именем ci с помощью:
lxc config device set ci root limits.read 30MB
lxc config device set ci root limits.write 10MB
Однако при запуске, например, этой команды на контейнере:
dd if=/dev/zero of=/root/testfile bs=1G count=10 oflag=direct
результатом является полная емкость диска, которая составляет около 130 МБ / с ,root @ server ~ # lvs LV VG Attr LSize корень vg0 -wi-ao ---- 2,72t своп vg0 -wi-ao ---- 4,00g
Серверная часть хранилища LXD - это dir
. Я мог бы разделить диск по-другому, если бы это могло помочь ограничить дисковый ввод-вывод контейнера, например, наличие RAID-массива, выделенного для ZFS для LXD. Это поможет ?
Ограничения ввода-вывода работают, когда файловая система контейнера находится на блочном устройстве, но не работает на виртуальных устройствах, таких как mdadm RAID, при использовании старой версии, такой как 10.0.9.
После обновление до версии 10.15, лимиты работают. В Ubuntu вы можете обновить с помощью:
sudo add-apt-repository ppa:ubuntu-lxc/lxd-stable
sudo apt-get update
sudo apt-get install lxd
Для получения дополнительных сведений см. Обсуждение этого на https://discuss.linuxcontainers.org/t/limiting-disk-io-on-lxd-containers/261 ] и открытый вопрос на https://github.com/lxc/lxd/issues/3515