Ajout section « RBD et Libvirt »
This commit is contained in:
parent
c13a681dce
commit
5dee3358a8
38
HowtoCeph.md
38
HowtoCeph.md
|
@ -242,7 +242,7 @@ Si on compte utiliser le block device pour y installer une machine virtuelle, il
|
||||||
# mkfs.ext4 -m0 /dev/rbd/rbd/foo
|
# mkfs.ext4 -m0 /dev/rbd/rbd/foo
|
||||||
# mkdir /mnt/ceph-block-device
|
# mkdir /mnt/ceph-block-device
|
||||||
# mount /dev/rbd/rbd/foo /mnt/ceph-block-device
|
# mount /dev/rbd/rbd/foo /mnt/ceph-block-device
|
||||||
# cat <<EOF >>/mnt/ceph-block-device
|
# cat <<EOF >>/mnt/ceph-block-device/file
|
||||||
plain text is life
|
plain text is life
|
||||||
EOF
|
EOF
|
||||||
~~~
|
~~~
|
||||||
|
@ -363,6 +363,42 @@ Pour finir, on supprime le pool puis on active à nouveau la sécurité :
|
||||||
|
|
||||||
## RBD et Libvirt
|
## RBD et Libvirt
|
||||||
|
|
||||||
|
Il est possible de faire en sorte que Libvirt parle à Ceph directement. Cela facilite l'allocation de RBD a une machine virtuelle.
|
||||||
|
|
||||||
|
Sur la machine cliente, on ajoute la clef de l'utilisateur libvirt dans un secret :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
# cat > secret.xml << EOF
|
||||||
|
<secret ephemeral='no' private='no'>
|
||||||
|
<usage type='ceph'>
|
||||||
|
<name>client.libvirt secret</name>
|
||||||
|
</usage>
|
||||||
|
</secret>
|
||||||
|
EOF
|
||||||
|
# virsh secret-define --file secret.xml # Donne la valeur de UUID
|
||||||
|
# virsh secret-set-value --secret $UUID --base64 $KEY # KEY est dans le fichier /etc/ceph/ceph.client.libvirt.keyring
|
||||||
|
~~~
|
||||||
|
|
||||||
|
Il est maintenant possible d'ajouter un RBD à une machine virtuelle. Par exemple pour ajouter le disque vm0-data du pool rbd à la VM vm0 (ne pas oublier de renseigner l'UUID) :
|
||||||
|
|
||||||
|
~~~
|
||||||
|
# cat << EOF > vm0-data.xml
|
||||||
|
<disk type='network' device='disk'>
|
||||||
|
<driver name='qemu'/>
|
||||||
|
<auth username='libvirt'>
|
||||||
|
<secret type='ceph' uuid='$UUID'/>
|
||||||
|
</auth>
|
||||||
|
<source protocol='rbd' name='rbd/vm0-data'>
|
||||||
|
<host name='192.168.0.1' port='6789'/>
|
||||||
|
<host name='192.168.0.2' port='6789'/>
|
||||||
|
<host name='192.168.0.3' port='6789'/>
|
||||||
|
</source>
|
||||||
|
<target dev='vda' bus='virtio'/>
|
||||||
|
</disk>
|
||||||
|
EOF
|
||||||
|
# virsh attach-device vm0 vm0-data.xml --live --config
|
||||||
|
~~~
|
||||||
|
|
||||||
## VM
|
## VM
|
||||||
|
|
||||||
On peut utiliser un block device pour y installer une machine virtuelle avec `virt-install`. Le chemin du disque doit mener au block device :
|
On peut utiliser un block device pour y installer une machine virtuelle avec `virt-install`. Le chemin du disque doit mener au block device :
|
||||||
|
|
Loading…
Reference in a new issue