Map Rbd Kernel Whithout Install Ceph-common
laurentbarbe
It is not mandatory to install Ceph binaries (especially ceph-common) to be able to map a Rbd blocdevice you can also use the kernel path /sys/bus/rbd provided by rbd module.
$ modprobe rbd
$ echo "192.168.0.1,192.168.0.2,192.168.0.3 name=admin,secret=AQBG5SlSmLELKBAA6sKvuJyRWUmFl2R5E1ukTw== rbd testrbd" > /sys/bus/rbd/add
Startup rc script
For map rbd on startup and unmap on shutdown you can use this modified rc script http://cephnotes.ksperis.com/downloads/rbdmap
You do not need ceph-common :
$ apt-cache policy ceph-common
ceph-common:
Installed: (none)
Candidate: 0.67.4-0ubuntu2
Version table:
0.67.4-0ubuntu2 0
500 http://fr.archive.ubuntu.com/ubuntu/ saucy/main amd64 Packages
You need to have a ceph.conf file with mon_host var :
$ egrep 'mon[ _]host' /etc/ceph/ceph.conf
mon_host = 192.168.0.1,192.168.0.2,192.168.0.3
And /etc/ceph/rbdmap file with this format :
$ cat /etc/ceph/rbdmap
rbd/testrbd id=admin,secret=AQBG5SlSmLELKBAA6sKvuJyRWUmFl2R5E1ukTw==
Be carefull tu use “id=” and “secret=” (not user, key or keyfile…) Then, download this modify rc script :
$ wget http://cephnotes.ksperis.com/downloads/rbdmap -O /etc/init.d/rbdmap
$ chmod +x /etc/init.d/rbdmap
$ update-rc.d rbdmap defaults
Test :
$ /etc/init.d/rbdmap start
* Starting RBD Mapping [ OK ]
* Mounting all filesystems... [ OK ]
$ ls /dev/rbd/*
testrbd
$ /etc/init.d/rbdmap stop
* Stopping RBD Mapping [ OK ]
$ ls /dev/rbd/*
ls: cannot access /dev/rbd/*: No such file or directory