Toto je starší verze dokumentu!
Ceph RBD (RADOS Block Device) ukládá obrazy blokového zařízení jako objekty v systému objektového úložiště. RBD je postaveno na systému librados, tudíž je možné v rámci RBD využívat funkcionality poskytované systémem librados, například read-only snapshoty, revertování snapshotů. Ceph se dále stará o distribuci obrazu blokového zařízení po cephovém clusteru, což značně zrychluje čtení obrazů velkých blokových zařízení.
Následující návod je RBD si můžete s podporou kernelových modulů do systému připojit jako standardní blokové zařízení.
Následující návod se vztahuje k distribuci CENTOS/RHEL. Návod pro UBUNTU/DEBIAN naleznete na konci této sekce.
Nejdříve nainstalujeme release.asc klíč pro Ceph repozitáře.
sudo rpm --import 'https://download.ceph.com/keys/release.asc'
V adresáři /etc/yum.repos.d/ vytvoříme textový soubor ceph.repo a do něho vyplníme záznam pro Ceph nástroje.
Některé balíčky z Ceph repozitáře vyžadují pro správnou funkčnost rovněž knihovny třetích stran, proto ještě přidáme repozitář EPEL.
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Nakonec si nainstalujeme základní nástroje pro Ceph, které rovněž obsahují podporu RBD.
sudo yum install ceph-common
Instalace ceph nástrojů v Debian/Ubuntu
Instalace ceph nástrojů v Debian/Ubuntu
Nejdříve je nezbytné přidat příslušné repozítáře do balíčkovače, do /etc/apt/sources.list přidáme následující řádky.
deb https://eu.ceph.com/debian-nautilus/ bionic main deb http://cz.archive.ubuntu.com/ubuntu/ bionic main (potreba pro jeden balik potrebny pri instalaci)
Nainstalujeme potřebné balíky z buster repozitáře.
sudo apt install -t buster x11-common libevent-core-2.1-6 libevent-pthreads-2.1-6 python-scgi
Přidáme Ubuntu PGP klíče.
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
Nainstalujeme balíček ceph.
sudo apt install ceph
Pro konfiguraci a připojení RBD využijeme údaje, které jste obdrželi od správce systému. Jedná se o následující:
V adresáři /etc/ceph/ vytvoříme textový soubor ceph.conf s následujícím obsahem.
[global] fsid = 19f6785a-70e1-45e8-a23a-5cff0c39aa54 mon initial members = mon001-cl1-aba-jihl1,mon002-cl1-aba-jihl1,mon003-cl1-aba-jihl1 mon host = 78.128.244.33,78.128.244.37,78.128.244.41
Dále v adresáři /etc/ceph/ vytvoříme textový soubor ceph.keyring, do kterého uložíme zaslaný keyring, viz příklad níže.
[client.rbd_user] key = sdsaetdfrterp+sfsdM3iKY5teisfsdXoZ5==
Nyní můžeme provést namapování RBD (rbd_user je string pocházející z keyringu, po oříznutí stringu client..
sudo rbd --user rbd_user device map nazev_poolu/nazev_image
sudo rbd -c /home/username/ceph/ceph.conf -k /home/username/ceph/username.keyring --user rbd_user device map nazev_poolu/nazev_image
Následně prověříme připojení ve zprávách od kernelu.
dmesg
Nyní můžeme zkontrolovat stav RBD.
sudo rbd device list | grep "nazev_image"
Dalším krokem je zašifrování namapovaného image. Pro šifrování využijeme program cryptsetup-luks
sudo yum install cryptsetup-luks
Následně provedeme zašifrování příslušného zařízení.
sudo cryptsetup -s 512 luksFormat --type luks2 /dev/rbdX
Na konec zkontrolujeme nastavení.
sudo cryptsetup luksDump /dev/rbdX
Abychom mohli provádět s daným zařízením další akce, musíme jej nejdříve dešifrovat.
sudo cryptsetup luksOpen /dev/rbd0 luks_rbdX
Nyní na daném zařízení vytvoříme souborový systém, zde příklad ext4.
sudo mkfs.ext4 /dev/mapper/luks_rbdX
Jakmile máme připravený souborový systém, můžeme zařízení připojit do předem vytvořené složky v /mnt/.
sudo mount /dev/mapper/luks_rbdX /mnt/rbd
Odpojení svazku.
sudo umount /mnt/rbd/
Uzamknutí svazku.
sudo cryptsetup luksClose /dev/mapper/luks_rbdX
Odmapování svazku.
sudo rbd --user rbd_user device unmap /dev/rbdX/
CESNET, z. s. p. o.
Generála Píky 26
160 00 Praha 6
Tel: +420 234 680 222
Fax: +420 224 320 269
info@cesnet.cz
Tel: +420 234 680 222
GSM: +420 602 252 531
Fax: +420 224 313 211
support@cesnet.cz