Você pode limitar a largura de banda para um ramdisk baseado em tmpfs?

8

Eu criei um ramdisk usando tmpfs da seguinte forma:

sudo mount -t tmpfs -o size=1024m tmpfs /myramdisk

Eu estava analisando os limites de largura de banda do subsistema cgroup blkio "read_bps_device" e "write_bps_device", mas eles parecem exigir o maior e menor número do seu dispositivo de bloco ao qual você deseja limitar o acesso.

Existe alguma maneira de atingir um limite de largura de banda semelhante ao ramdisk tmpfs na memória?

UPDATE : Encontrei uma maneira indireta de fazer isso. Eu primeiro nfs exportar o monte de ramdisk. Então nfs montá-lo sobre loopback na mesma máquina. Eu então uso a modelagem de tráfego de rede do Linux para definir os limites de largura de banda. Isso parece fornecer o que eu preciso. Eu estou no processo de realizar algumas medições para ver a penalidade que esta camada hedionda implica. Atualizarei as informações sobre isso em alguns dias.

    
por weirdbluelights 12.11.2014 / 17:48

1 resposta

1

stat ou /proc/[PID]/mountinfo ainda deve informar quais são os números dos dispositivos:

[root@XXXlin01 block]# stat --printf="%d" /tmp/mnt; echo
24
[root@XXXlin01 block]# stat --printf="%d" /tmp/mnt2; echo
25
[root@XXXlin01 block]# grep "/tmp/mnt" /proc/22195/mountinfo
40 20 0:24 / /tmp/mnt rw,relatime - tmpfs none rw
41 20 0:25 / /tmp/mnt2 rw,relatime - tmpfs none rw

Ambas as saídas mostram 0:25 e 0:24 como os números dos dispositivos em questão. O número do dispositivo "0" é usado para montagens "sem nome" (como tmpfs, sysfs, nfs, procfs, etc). Por exemplo, aqui está uma montagem do NFS:

[root@XXXlin01 block]# grep "/LinuxHome" /proc/22195/mountinfo
39 36 0:23 / /home/jad87 rw,relatime - nfs duhsnas-xxx:/ifs/Application0File0Shares/DUHS/LinuxHomeDir_fs/jad87 rw,vers=3,rsize=4096,wsize=4096,namlen=255,soft,proto=tcp,timeo=14,retrans=2,sec=sys,mountaddr=10.1x.92.106,mountvers=3,mountport=300,mountproto=udp,local_lock=none,addr=10.1x.92.106
42 36 0:26 / /home/tsa20 rw,relatime - nfs 10.1x.92.117:/ifs/Application0File0Shares/DUHS/LinuxHomeDir_fs/tsa20 rw,vers=3,rsize=4096,wsize=4096,namlen=255,soft,proto=tcp,timeo=14,retrans=2,sec=sys,mountaddr=10.1x.92.117,mountvers=3,mountport=300,mountproto=udp,local_lock=none,addr=10.1x.92.117

As montagens NFS acima são 0:23 e 0:26 , respectivamente.

    
por 12.11.2014 / 20:41