Limitando o disco IO em contêineres LXD sob um array mdadm RAID 1

1

Em um contêiner em execução em um host com dois discos em um array mdadm RAID 1, tentei sem êxito limitar o IO do disco de um contêiner LXD chamado ci com:

lxc config device set ci root limits.read  30MB
lxc config device set ci root limits.write 10MB

No entanto, ao funcionar, por ex. este comando no container:

dd if=/dev/zero of=/root/testfile bs=1G count=10 oflag=direct

o resultado é toda a capacidade do disco, que é de aproximadamente 130MB / s , em vez do resultado esperado de cerca de 10MB / s para operações de escrita:

10737418240 bytes (11 GB, 10 GiB) copied, 81,3877 s, 132 MB/s

Isso também é confirmado por atop em execução no host:

ComopossolimitarefetivamenteoIOdodiscodocontêiner,paraque,independentementedoqueaconteça,odesempenhododiscohostnãosejasupercomprometido?

Emumsegundoteste,eucorroomesmocomandoddcomoacimaaomesmotemponoconvidadoenohost,masohosttambémnãoépriorizado:

Algumas informações adicionais:

  • Host e convidado são Ubuntu 16.04
  • O servidor tem dois discos rígidos com partições iguais, unidos em matrizes RAID 1
  • No topo da maior matriz RAID, o sistema de arquivos raiz é montado em um grupo de volumes LVM

    root@server ~ # lvs
    LV   VG   Attr       LSize
    root vg0  -wi-ao---- 2,72t
    swap vg0  -wi-ao---- 4,00g
    
  • O back-end de armazenamento do LXD é dir

Eu poderia particionar o disco de maneira diferente se isso pudesse ajudar a limitar a unidade de disco rígido do contêiner, por exemplo, ter uma matriz RAID dedicada ao ZFS para LXD. Isso ajudaria ?

    
por Ivan Ogai 01.07.2017 / 17:09

1 resposta

2

Os limites de E / S funcionam quando o sistema de arquivos do contêiner está em um dispositivo de bloco, mas não funciona em dispositivos virtuais como o mdadm RAID ao usar uma versão antiga como a 10.0.9.

Após atualizar para a versão 10.15, os limites funcionam. No Ubuntu você pode atualizar com:

sudo add-apt-repository ppa:ubuntu-lxc/lxd-stable 
sudo apt-get update
sudo apt-get install lxd

Para mais detalhes, veja a discussão sobre isso em link e o problema em aberto no link

    
por 06.07.2017 / 12:25

Tags