Eu tenho que assumir que você está se referindo ao RBD-fusível ao falar sobre isso porque o ceph-fuse é um utilitário cephfs e nada a ver com o RBD.
No entanto, a premissa de sua pergunta é ainda mais quebrada porque sua compreensão do que o rbd-fuse
realmente faz está incompleta.
librbd
fornece um arquivo de imagem que é armazenado no Ceph. A maioria das pessoas (através de rbd map
) usa essa imagem para fornecer um dispositivo de pseudo-bloco na forma de / dev / rbd *.
A única diferença com rbd-fuse
é que ele expõe seu próprio pseudo sistema de arquivos e fornece as imagens como arquivos compatíveis com POSIX, em vez de bloquear dispositivos.
Por isso, rbd-fuse
não tem mais conhecimento sobre o conteúdo real do arquivo de imagem do que rbd map
.
Ao invocar rbd-fuse mountpoint
, todas as imagens RBD dentro do pool ficarão visíveis em mountpoint
. Ele toma as opções de comando, principalmente -p
se você usar um pool diferente no ceph diferente de rbd
e -c
se você usar um arquivo de configuração diferente de /etc/ceph/ceph
. Você também pode expor imagens individuais usando -r
.
O que você faz com esses arquivos é com você. Eles podem ter um sistema de arquivos escrito para eles (cuidado, pois o Linux resmunga, pois não são dispositivos de bloqueio especializados). Você pode montá-los como dispositivos de loop se um sistema de arquivos estiver presente.
$ rbd create test # mkdir -p /rbd_images # rbd-fuse /rbd_images # mkfs /rbd_images/test # mkdir -p /mnt/rbd_test # mount /rbd_images/test /mnt/rbd_test
Deve apresentar algo ao longo das linhas da seguinte forma:
$ mount rbd-fuse on /rbd_images type fuse.rbd-fuse (rw,nosuid,nodev) /rbd_images/rbd_test on /mnt/rbd_test type ext4 (rw)
Se esta é a maneira correta (para o seu uso) para fazer isso, porém, é um assunto diferente. No entanto, ele pode permitir o acesso a imagens RBD que não seriam suportadas pelos sistemas krbd
version.