cgroup throttle no dispositivo filho não funciona

1

Estamos executando contêineres do Docker com devicemapper em CentOS 7 (3.10.0-514.10.2.el7.x86_64) .
Para alguns contêineres, podemos facilmente acelerar as leituras através de blkio.throttle.read_bps_device , especificando o dispositivo de bloco pai, mas, para alguns contêineres, isso simplesmente não funciona.

Este é o nosso lsblk :

NAME                                  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                                     8:0    0   32G  0 disk
└─sda1                                  8:1    0   32G  0 part /
sdb                                     8:16   0  100G  0 disk
├─data-docker_thin_tmeta              253:0    0  512M  0 lvm
│ └─data-docker_thin                  253:2    0   90G  0 lvm
│   └─docker-8:1-151197496-c619...6ed 253:4    0   10G  0 dm
├─data-docker_thin_tdata              253:1    0   90G  0 lvm
│ └─data-docker_thin                  253:2    0   90G  0 lvm
│   └─docker-8:1-151197496-c619...6ed 253:4    0   10G  0 dm
└─data-data                           253:3    0    9G  0 lvm  /data

Quando especificamos em um cgroup o seguinte, ele limita apropriadamente as leituras de alguns contêineres:
echo "8:16 1000000" > blkio.throttle.read_bps_device

Mas, para outros contêineres, precisamos especificar o dispositivo exato, como:% echo "253:4 1000000" > blkio.throttle.read_bps_device

Alguma idéia de qual pode ser a razão pela qual o throttling com o dispositivo pai em 8:16 não funciona às vezes?

    
por michal kralik 03.05.2017 / 21:38

0 respostas