cs:navody:object_storage:cesnet_rbd:start

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
cs:navody:object_storage:cesnet_rbd:start [02.10.2019 12:40]
Milan Daneček
cs:navody:object_storage:cesnet_rbd:start [18.03.2024 13:48] (aktuální)
Milan Daneček
Řádek 1: Řádek 1:
-~~NOTOC~~ 
-===== Připojení a konfigurace Cesnet RBD pomocí Linux klienta===== 
  
-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í.+====== Připojení a konfigurace ​Ceph RBD pomocí Linux klienta ======
  
-==== Výhody RBD ====+Ceph RBD (RADOS Block Device) poskytuje uživatelům síťové blokové zařízení,​ které se v systému, kde je připojeno, tváří jako lokální disk. Blokové zařízení je plně pod správou uživatele, který si zde může vytvořit file-systém a používat ho dle svých potřeb. 
 + 
 + 
 +===== Výhody RBD =====
   * možnost zvětšení obrazu blokového zařízení   * možnost zvětšení obrazu blokového zařízení
   * import/​export obrazu blokového zařízení   * import/​export obrazu blokového zařízení
   * stripping a replikace napříč clusterem   * stripping a replikace napříč clusterem
-  * možnost vytváření read-only snapshotů; obnovení snapshotů+  * možnost vytváření read-only snapshotů; obnovení snapshotů ​(pokud chcete mít sami možnost operovat se [[cs:​navody:​object_storage:​cesnet_rbd:​snapshots:​start|snapshoty]] je třeba nám tento požadavek sdělit)
   * možnost připojení pomocí Linux nebo QEMU KVM klienta   * možnost připojení pomocí Linux nebo QEMU KVM klienta
  
-==== Návod na připojení RBD pomocí Linux klienta ==== 
  
-Následující návod je RBD si můžete s podporou kernelových modulů do systému ​ipojit jako standardní blokové zařízení.+===== Návod na ipojení RBD pomocí Linux klienta ======
  
-=== Příprava pro připojení RBD === +==== Příprava pro připojení RBD ==== 
-<note important>​Pro připojení RBD je doporučené,​ abyste na vašem systému měli **verzi jádra ​alespoň 5.0 a vyšší**. V nižšších verzích jádra jsou zastaralé příslušné moduly pro připojení RBD a nejsou ​podoprovány ​všechny rozšířené funkce.</​note>​+<note important>​Pro připojení RBD je doporučené,​ abyste na vašem systému měli novější ​verzi jádra. V nižších verzích jádra jsou zastaralé příslušné moduly pro připojení RBD a nejsou ​podporovány ​všechny rozšířující ​funkce. Vývojáři doporučují dokonce verzi jádra alespoň 5.0 a vyšší. Nicméně například i novejší verze CentOS 7 backportovali plno funkcionalit do jejich standardního jádra, takže by aktualizovaný CentOS 7 měl dostačovat.</​note>​
  
  
-<note tip>Pro správnou funkčnost je vysoce žádoucí používat stejnou verzi Ceph nástrojů, jako je aktuální verze provozovaná na našich clusterech, aktuálně se jedná o **verzi ​14 s krycím názvem ​Nautilus**. Níže tedy provedeme nastavení příslušných repozitářů.</​note>​+<note tip>Pro správnou funkčnost je vysoce žádoucí používat stejnou verzi Ceph nástrojů, jako je aktuální verze provozovaná na našich clusterech, aktuálně se jedná o **verzi ​17 s krycím názvem ​Quincy**. Níže tedy provedeme nastavení příslušných repozitářů. ​**Pokud používáte velmi novou verzi operačního systému, může se stát, že aktuální balíky již nejsou dostupné. Použijte proto nejnovější verzi Ceph klientských balíků.**</​note>​
  
 Následující návod se vztahuje k distribuci CENTOS/​RHEL. **Návod pro UBUNTU/​DEBIAN naleznete [[#​debian|na konci této sekce]]**. Následující návod se vztahuje k distribuci CENTOS/​RHEL. **Návod pro UBUNTU/​DEBIAN naleznete [[#​debian|na konci této sekce]]**.
Řádek 26: Řádek 26:
 <​code>​sudo rpm --import '​https://​download.ceph.com/​keys/​release.asc'</​code>​ <​code>​sudo rpm --import '​https://​download.ceph.com/​keys/​release.asc'</​code>​
  
-V adresáři **/​etc/​yum.repos.d/​** vytvoříme textový soubor **{{:​cs:​navody:​object_storage:​ceph.repo|ceph.repo}}** a do něho vyplníme záznam pro Ceph nástroje.+V adresáři **/​etc/​yum.repos.d/​** vytvoříme textový soubor **{{:​cs:​navody:​object_storage:​ceph.repo|ceph.repo}}** a do něho vyplníme záznam pro Ceph nástroje. Pro CentOS 8 upravíme v řádek baseurl z "/​rpm-pacific/​el7/"​ na "/​rpm-pacific/​el8/"​.
  
  
 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. 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.
  
 +CentOS 7
 +<​code>​sudo yum install -y epel-release</​code>​
 +
 +CentOS 8
 +<​code>​sudo dnf install -y epel-release</​code>​
 +
 +RedHat 7
 <​code>​sudo yum install -y https://​dl.fedoraproject.org/​pub/​epel/​epel-release-latest-7.noarch.rpm</​code>​ <​code>​sudo yum install -y https://​dl.fedoraproject.org/​pub/​epel/​epel-release-latest-7.noarch.rpm</​code>​
  
Řádek 40: Řádek 47:
 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. \\ 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. \\
 <​code>​ <​code>​
-deb https://​eu.ceph.com/​debian-nautilus/ bionic main+deb https://​eu.ceph.com/​debian-pacific/ bionic main
 deb http://​cz.archive.ubuntu.com/​ubuntu/​ bionic main  (potreba pro jeden balik potrebny pri instalaci) deb http://​cz.archive.ubuntu.com/​ubuntu/​ bionic main  (potreba pro jeden balik potrebny pri instalaci)
 </​code>​ </​code>​
Řádek 49: Řádek 56:
 Přidáme Ubuntu PGP klíče. Přidáme Ubuntu PGP klíče.
 <​code>​ <​code>​
-apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ​40976EAF437D05B5+apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ​E84AC2C0460F3994
 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
 </​code>​ </​code>​
  
 Nainstalujeme balíček ceph. Nainstalujeme balíček ceph.
-<​code>​sudo apt install ceph</​code> ​+<​code>​sudo apt install ceph-common</​code> ​
 </​hidden>​ </​hidden>​
 \\ \\
-=== Konfigurace RBD a jeho namapování ===+==== Konfigurace RBD a jeho namapování ​====
 Pro konfiguraci a připojení RBD využijeme údaje, které jste obdrželi od správce systému. Jedná se o následující:​ Pro konfiguraci a připojení RBD využijeme údaje, které jste obdrželi od správce systému. Jedná se o následující:​
-  * název poolu: **rbd_vo_catch_all_replicated**+  * název poolu: **rbd_vo_poolname**
   * název image: **vo_name_username**   * název image: **vo_name_username**
   * keyring: **[client.rbd_user] ​  key = key_hash==**   * keyring: **[client.rbd_user] ​  key = key_hash==**
  
 V adresáři **/​etc/​ceph/​** vytvoříme textový soubor **ceph.conf** s následujícím obsahem. V adresáři **/​etc/​ceph/​** vytvoříme textový soubor **ceph.conf** s následujícím obsahem.
 +
 +V případě jihlavského úložistě s kódovým označením **CL1**:
 <​code>​ <​code>​
 [global] [global]
 fsid = 19f6785a-70e1-45e8-a23a-5cff0c39aa54 fsid = 19f6785a-70e1-45e8-a23a-5cff0c39aa54
-mon initial members ​mon001-cl1-aba-jihl1,mon002-cl1-aba-jihl1,​mon003-cl1-aba-jihl1 +mon_host ​[v2:​78.128.244.33:​3300,v1:78.128.244.33:6789],[v2:78.128.244.37:3300,v1:​78.128.244.37:​6789],​[v2:​78.128.244.41:​3300,​v1:​78.128.244.41:​6789] 
-mon host = 78.128.244.33,​78.128.244.37,​78.128.244.41+auth_client_required = cephx
 </​code>​ </​code>​
 +
 +V případě plzeňského úložistě s kódovým označením **CL2**:
 +<​code>​
 +[global]
 +fsid = 3ea58563-c8b9-4e63-84b0-a504a5c71f76
 +mon_host = [v2:​78.128.244.65:​3300/​0,​v1:​78.128.244.65:​6789/​0],​[v2:​78.128.244.69:​3300/​0,​v1:​78.128.244.69:​6789/​0],​[v2:​78.128.244.71:​3300/​0,​v1:​78.128.244.71:​6789/​0]
 +auth_client_required = cephx
 +</​code>​
 +
 +V případě ostravkého úložistě s kódovým označením **CL3**:
 +<​code>​
 +[global]
 +fsid = b16aa2d2-fbe7-4f35-bc2f-3de29100e958
 +mon_host = [v2:​78.128.244.240:​3300/​0,​v1:​78.128.244.240:​6789/​0],​[v2:​78.128.244.241:​3300/​0,​v1:​78.128.244.241:​6789/​0],​[v2:​78.128.244.242:​3300/​0,​v1:​78.128.244.242:​6789/​0]
 +auth_client_required = cephx
 +</​code>​
 +
 +V případě brněnského úložistě s kódovým označením **CL4**:
 +<​code>​
 +[global]
 +fsid = c4ad8c6f-7ef3-4b0e-873c-b16b00b5aac4
 +mon_host = [v2:​78.128.245.29:​3300/​0,​v1:​78.128.245.29:​6789/​0] [v2:​78.128.245.30:​3300/​0,​v1:​78.128.245.30:​6789/​0] [v2:​78.128.245.31:​3300/​0,​v1:​78.128.245.31:​6789/​0]
 +auth_client_required = cephx
 +</​code>​
 +
 +V případě dolnich brezan úložistě s kódovým označením **CL5**:
 +<​code>​
 +[global]
 +fsid = c581dace-40ff-4519-878b-c0ffeec0ffee
 +mon_host = [v2:​78.128.245.157:​3300/​0,​v1:​78.128.245.157:​6789/​0] [v2:​78.128.245.158:​3300/​0,​v1:​78.128.245.158:​6789/​0] [v2:​78.128.245.159:​3300/​0,​v1:​78.128.245.159:​6789/​0]
 +auth_client_required = cephx
 +</​code>​
 +
  
 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. 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.
Řádek 76: Řádek 118:
  key = sdsaetdfrterp+sfsdM3iKY5teisfsdXoZ5==  key = sdsaetdfrterp+sfsdM3iKY5teisfsdXoZ5==
 </​code>​ </​code>​
 +
 +<WRAP center round important 60%>
 +Silně doporučujeme připojovat (mapovat) RBD image s volbou --exclusive. Tato volba zabrání vícenásobnému připojení image (lokálně nebo na více strojích), a tím řeší případy, že by došlo k zápisu do image přes jeden server a o chvílí později k zápisu do toho samého image přes jiný server, což by vyustílo k nenávratnému poškození dat! Pokud tedy hrozí ve vašem prostředí i minimální riziko, že dojde k připojení jednoho image na více mist naráz, doporučujeme volbu --exclusive použít.
 +
 +Scénář kde by bylo naopak nežádoucí použít --exclusive může být RBD image připojený cíleně na více mist, kde ale zámkování řeší clustrový file-systém.
 +</​WRAP>​
 +
  
 Nyní můžeme provést namapování RBD (rbd_user je string pocházející z keyringu, po oříznutí stringu **client.**. Nyní můžeme provést namapování RBD (rbd_user je string pocházející z keyringu, po oříznutí stringu **client.**.
 <​code>​ <​code>​
-sudo rbd --user rbd_user device map nazev_poolu/​nazev_image</​code>​+sudo rbd --id rbd_user ​--exclusive ​device map nazev_poolu/​nazev_image</​code>​
  
-<note important>​Pokud změníte umístění souborů ceph.conf a username.keyring z výchozího adresáře **/​etc/​ceph/​**,​ budete muset při mapování zadat příslušné cesty. <​code>​sudo rbd -c /​home/​username/​ceph/​ceph.conf -k /​home/​username/​ceph/​username.keyring --user rbd_user device map nazev_poolu/​nazev_image</​code></​note>​+<note important>​Pokud změníte umístění souborů ceph.conf a username.keyring z výchozího adresáře **/​etc/​ceph/​**,​ budete muset při mapování zadat příslušné cesty. <​code>​sudo rbd -c /​home/​username/​ceph/​ceph.conf -k /​home/​username/​ceph/​username.keyring --id rbd_user device map nazev_poolu/​nazev_image</​code></​note>​
  
 Následně prověříme připojení ve zprávách od kernelu. Následně prověříme připojení ve zprávách od kernelu.
Řádek 89: Řádek 138:
 <​code>​sudo rbd device list | grep "​nazev_image"</​code>​ <​code>​sudo rbd device list | grep "​nazev_image"</​code>​
  
-===Šifrování a vytvoření souborového systému===+====Šifrování a vytvoření souborového systému====
  
 Dalším krokem je zašifrování namapovaného image. Pro šifrování využijeme program **cryptsetup-luks** Dalším krokem je zašifrování namapovaného image. Pro šifrování využijeme program **cryptsetup-luks**
Řádek 96: Řádek 145:
 Následně provedeme zašifrování příslušného zařízení. Následně provedeme zašifrování příslušného zařízení.
 <​code>​sudo cryptsetup -s 512 luksFormat --type luks2 /​dev/​rbdX</​code>​ <​code>​sudo cryptsetup -s 512 luksFormat --type luks2 /​dev/​rbdX</​code>​
 +
 +Pokud chcete využít automatického připojení a dešifrování RBD po startu, pak doporučujeme přidat ješte šifrovací soubor (tzv. keyfile). Pokud nepotřebujete automatického připojení a dešifrování RBD po startu, nebo sekundární způsob pro dešifrování můžete tento krok přeskočit.
 +
 +<WRAP center round tip 60%>
 +Keyfile může být libovolný soubor obsahující posloupnost znaků či byte použitou pro šifrování. Může tedy obsahovat heslo, nebo to může být třeba i nějaký binární soubor typu obrázek. Důležité je tento soubor neztratit, jelikož bez něj nebo bez znalosti hesla (pokud jste tedy na vytvoření šifrované části použili heslo a pak ještě přidali keyfile jako sekundardní metodu) nebudete schopni již nikdy obsah dešifrovat! \\ \\
 +
 +Pro jednoduchost si zde obsah souboru vygenerujeme přes dd. \\  \\
 +
 +dd if=/​dev/​random of=/​etc/​ceph/​luks.keyfile bs=512 count=4 \\ \\
 +
 +Pozor na to, abyste na dané cestě již neměli jiný keyfile pro jiný disk, protože byste si ho tímto příkazem přepsali.
 +</​WRAP>​
 +
 +<​code>​sudo cryptsetup luksAddKey /dev/rbdX /​etc/​ceph/​luks.keyfile</​code>​
  
 Na konec zkontrolujeme nastavení. Na konec zkontrolujeme nastavení.
Řádek 101: Řádek 164:
  
 Abychom mohli provádět s daným zařízením další akce, musíme jej nejdříve dešifrovat. Abychom mohli provádět s daným zařízením další akce, musíme jej nejdříve dešifrovat.
-<​code>​sudo cryptsetup luksOpen /dev/rbd0 luks_rbdX</​code>​+<​code>​sudo cryptsetup luksOpen /dev/rbdX luks_rbdX</​code>​
  
-Nyní na daném zařízení vytvoříme souborový systém, zde příklad **ext4**. +<WRAP center round tip 60%> 
-<​code>​sudo mkfs.ext4 /​dev/​mapper/​luks_rbdX</​code>​+Doporučujeme u nových RBD imagů nepoužívat discard pri vytváření file-systému,​ protože u větších imagů by trvalo zbytečné příliš dlouho. \\ 
 +Vypnutí discard pro XFS a EXT4: \\ 
 +mkfs.xfs -K /dev/rbdX \\ 
 +mkfs.ext4 -E nodiscard /dev/rbdX \\ 
 +</​WRAP>​ 
 + 
 +<WRAP center round tip 60%> 
 +Dále doporučujeme u větších image nebo těch, kde časem bude třeba je zvětšit na více než 200TB použít rovnou XFS místo EXT4, jelikož EXT4 má relativně velké omezení co do počtu inodů. 
 +</​WRAP>​ 
 + 
 + 
 +Nyní na daném zařízení vytvoříme souborový systém, zde příklad **xfs**. 
 +<​code>​sudo mkfs.xfs -K /​dev/​mapper/​luks_rbdX</​code
 + 
 +<note important>​V případě použití XFS nepoužívejte volbu nobarrier při připojování,​ mohla by zapříčinit ztrátu dat!</​note>
  
 Jakmile máme připravený souborový systém, můžeme zařízení připojit do předem vytvořené složky v /mnt/. Jakmile máme připravený souborový systém, můžeme zařízení připojit do předem vytvořené složky v /mnt/.
 <​code>​sudo mount /​dev/​mapper/​luks_rbdX /​mnt/​rbd</​code>​ <​code>​sudo mount /​dev/​mapper/​luks_rbdX /​mnt/​rbd</​code>​
  
-===Ukončení práce s RBD===+====Ukončení práce s RBD====
 Odpojení svazku. Odpojení svazku.
 <​code>​sudo umount /​mnt/​rbd/</​code>​ <​code>​sudo umount /​mnt/​rbd/</​code>​
Řádek 117: Řádek 194:
  
 Odmapování svazku. Odmapování svazku.
-<​code>​sudo rbd --user rbd_user device unmap /​dev/​rbdX/</​code>​+<​code>​sudo rbd --id rbd_user device unmap /dev/rbdX</code> 
 + 
 +<note tip> 
 +Pro zajištění většího výkonu je vhodné zvětšit read_ahead cache. Zde záleží na možnostech vašeho stroje resp. velikosti paměti. Ideální je alespoň 8GB. Pokud máte nedostatek paměti zvažte alespoň třeba hodnotu 512MB. Vámi zvolenou hodnotu je nutno přepočítat na kB a vložit do souboru ​/sys/​block/​rbd0/​queue/​read_ahead_kb.\\ \\ 
 +Pro 8GB: \\ 
 +echo 8388608 > /​sys/​block/​rbd0/​queue/​read_ahead_kb \\ \\ 
 + 
 +Pro 512MB: \\ 
 +echo 524288 > /​sys/​block/​rbd0/​queue/​read_ahead_kb \\ \\ 
 + 
 +Pro aplikaci je nutné image odpojit a znovu připojit. \\ \\ \\ 
 + 
 + 
 +Postup výše v podobě úpravy hodnoty v /sys není pernamentní a po restartu zařízení bude opět použita výchozí (nízka) hodnota. Pro zachování nastavení je třeba použít následující udev pravidlo. 
 + 
 +<code> 
 +# Setting specific kernel parameters for a subset of block devices (Ceph RBD) 
 +KERNEL=="​rbd[0-9]*",​ ENV{DEVTYPE}=="​disk",​ ACTION=="​add|change",​ ATTR{bdi/​read_ahead_kb}="​524288"​ 
 +</​code>​ 
 + 
 +Obsah uložte do souboru /​etc/​udev/​rules.d/​50-read-ahead-kb.rules 
 + 
 +</​note>​ 
 + 
 + 
 +====Trvalé mapování RBD==== 
 + 
 +Nastavení pro automatické připojení RBD včetně rozšifrování LUKS a mount filesystémů. 
 ++ řádné odpojení (v obráceném pořadí) při řízeném vypnutí stroje. 
 + 
 +Níže je uvedené nastavení příslušných konfiguračních souborů pro automatické mapovaní a mountování RBD. 
 + 
 + 
 + 
 +dev-mapper-rbd_luks.device … pomocná, automaticky vytvořená podle fstab 
 +(resp. dev-mapper-rbd_luks_ec.device) 
 +mnt-rbd_luks.mount … automaticky vytvořená podle fstab 
 +(resp. mnt-rbd_luks_ec.mount) 
 + 
 +<hidden **Doplníme následující řádky do konfiguračních souborů:** > 
 + 
 +**Nástroj rbdmap** \\ 
 +POZOR služba ''​rbdmap.service''​ musí být enablována pomocí ''​systemctl enable rbdmap.service''​. \\ 
 + /​etc/​ceph/​rbdmap  
 +<​code>​ 
 +# RbdDevice ​            ​Parameters 
 +#​poolname/​imagename ​    ​id=client,​keyring=/​etc/​ceph/​ceph.client.keyring 
 +nazev_poolu/​nazev_image id=rbd_user,​keyring=/​etc/​ceph/​ceph.keyring,​exclusive 
 +</​code>​ 
 + 
 + 
 +**LUKS - šifrování** \\ 
 +POZOR cryptab vytvoří pomocnou servisu: ''​systemd-cryptsetup@rbd_luks.service''​ \\ 
 + /​etc/​crypttab  
 +<​code>​ 
 +# <target name> <source device> ​        <​key file> ​     <​options>​ 
 +rbd_luks /​dev/​rbd/​rbd_pool/​rbd_name ​ /​etc/​ceph/​luks.keyfile luks,​_netdev 
 +</​code>​ 
 + 
 +**''/​etc/​ceph/​luks.keyfile''​** je LUKS klíč. 
 +<note info> 
 +cesta k blokovému zařízení ("<​source device>"​) je obecně ''/​dev/​rbd/​$POOL/​$IMAGE''​ 
 +</​note>​ 
 + 
 +**fstab** \\ 
 +POZOR fstab opět vytvoří pomocnou servisu: ''​dev-mapper-rbd_luks.device''​. \\ 
 +POZOR fstab následně vytvoří servisu pro mountování:​ ''​mnt-rbd_luks.mount'',​ kterou následně využijeme pro ruční připojení a odpojení. \\ 
 + /​etc/​fstab  
 +<​code>​ 
 +# <file system> <mount point> ​  <​type> ​ <​options> ​      <​dump> ​ <​pass>​ 
 +/​dev/​mapper/​rbd_luks_pool /​mnt/​rbd_luks_pool xfs defaults,​noatime,​auto,​_netdev 0 0 
 +</​code>​ 
 + 
 +<note info> 
 +cesta k LUKS kontejneru ("<​file system>"​) je obecně ''/​dev/​mapper/​$LUKS_NAME'',​ \\ 
 +kde ''​$LUKS_NAME''​ je definováno v ''/​etc/​crypttab''​ (jako "<​taget name>"​) 
 +</​note>​ 
 + 
 +**systemd** \\ 
 +Toto změnu doporučujeme provést pomocí příkazu ''​systemctl edit systemd-cryptsetup''​ a následně uložit jako soubor s názvem ''​10-deps.conf''​. \\ 
 +/​etc/​systemd/​system/​systemd-cryptsetup@rbd_luks.service.d/​10-deps.conf 
 +<​code>​ 
 +[Unit] 
 +After=rbdmap.service 
 +Requires=rbdmap.service 
 +Before=mnt-rbd_luks.mount 
 +</​code>​ 
 + 
 +<note info> 
 +Na Debianu 10 byla v jednom případě z nějakého důvodu používána systemd jednotka \\ 
 +''​ceph-rbdmap.service''​ místo ''​rbdmap.service''​ \\ 
 +(bylo nutno upravit na řádcích ''​After=''​ a ''​Requires=''​) \\ 
 +</​note>​ 
 + 
 +</​hidden>​  
 +\\ 
 + 
 +=== ruční připojení/​odpojení ​ === 
 +== připojení == 
 +<​code>​ 
 +systemctl start mnt-rbd_luks.mount 
 +</​code>​ 
 +- jsou-li závislosti systemd jednotek správně, provede RBD map, odemkne LUKS a připojí všechny automatické fs závislé na rbdmap, kterou uvedená .mount jednotka potřebuje (=> v popisované konfiguraci připojí **oba** obrazy). 
 + 
 +== odpojení == 
 +<​code>​ 
 +systemctl stop rbdmap.service 
 +</​code>​ 
 +(resp. ''​systemctl stop ceph-rbdmap.service''​) \\ 
 +- tento příkaz by měl při správně nastavených závislostech provést ''​umount'',​ LUKS ''​close''​ i RBD unmap. 
 + 
 +=== resize image s luksem ​ === 
 + 
 +při změně velikosti šifrovaného image, je nutné dodržet pořadí a hlavní je řádek s cryptsetup --verbose resize nazev_image 
 + 
 + 
 +<​code>​ 
 +rbd resize rbd_nazev_poolu/​nazev_image --size 200T 
 +cryptsetup --verbose resize nazev_image 
 +mount /​storage/​rbd/​nazev_image 
 +xfs_growfs /​dev/​mapper/​nazev_image 
 +</​code>​ 
 + 
 +===== Často kladené dotazy ===== 
 + 
 +=== Timeoutující spojení === 
 + 
 +__Popis problému:​__  
 +Nejde namapovat RBD a spojení vytimeoutuje. 
 + 
 +__Řešení:​__ 
 + 
 +Nejpravděpodobněji Váš firewall zařezává navazování komunikace do internetu. Je nezbytné na něm povolit rozsah dle daného clusteru na portech 3300 a rozsah portů 6789-7300. 
 + 
 +1. na firewallu nastavit "​related/​established"​ 
 + 
 +2. nastavit na firewallu ​ rozsah clusteru clX a povolit porty u nich port 3300/tcp a rozsah portu 6789 - 7300/tcp. 
 +  cl1 - 78.128.244.32/​27 
 +  cl2 - 78.128.244.64/​26 
 +  cl3 - 78.128.244.128/​25 
 +  cl4 - 78.128.245.0/​25 
 +   
 +3. aktivovat JUMBO frame - samozřejmě ty musí být aktivní na vašich síťových prvcích a pak i na samotném serveru. Na naší straně a pateřní síti CESNET jsou zapnuté. 
 + 
 +
Poslední úprava:: 02.10.2019 12:40