Usando um dispositivo de bloco rados como dispositivo de bloco no libvirt qemu

1

Qual é a diferença entre usar um dispositivo de bloco rado no libvirt qemu com o tipo de disco = 'network' e o tipo de disco = 'block'? O guia ceph me diz para fazer o seguinte:

<disk type='network' device='disk'>
        <source protocol='rbd' name='libvirt-pool/new-libvirt-image'>
                <host name='{monitor-host}' port='6789'/>
        </source>
        <target dev='vda' bus='virtio'/>
</disk>

link

Mas agora eu estou apenas usando o rbd diretamente como:

<disk type='block' device='disk'>
  <driver name='qemu' type='raw' cache='none' io='native'/>
  <source dev='/dev/rbd/rbd/testvm'/>
  <target dev='vda' bus='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</disk>

Há alguma desvantagem em usá-lo diretamente?

    
por devnull 21.05.2015 / 11:03

1 resposta

0

Quando você usa um dispositivo Linux RBD, usa indiretamente a camada Ceph RBD. O dispositivo Linux fala com a camada Ceph RBD. Portanto, ao usar o disco type=network protocol=rbd , você está removendo uma camada de indireção. Além disso, o cache RBD (ram) não está disponível com o driver do kernel (mas o cache de páginas é usado). Então geralmente é uma boa ideia usar a primeira opção.

    
por 05.08.2015 / 13:17

Tags