SQimage.sh

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání

SQimage.sh je obslužný skript pro zálohování disklessové infrastruktury a generování obrazů snapshotovaných vrstev (plain sqimage), s nimiž pracuje autonomní Half-Diskless.

Popis

Skript SQimage.sh pracuje stejně jako SQcrypto.sh a skript crypto se souborem changelog, publikovaným přes HTTP.

changelog

L - snapshot vrstvy

Po vytvoření snapshotu vygeneruje SQimage.sh tzv. plain sqimage, který umístí do úložiště sdíleného přes HTTP a zapíše do souboru changelog záznam s informací, z čeho tenhle soubor vytvořil.

; L <md5sum> <vrstva> <snapshot>

Layer – Signalizuje, že jde o snapshot jedné vrstvy

<md5sum>
je název (MD5 kontrolní součet) nového souboru
<vrstva>
je identifikátor vrstvy, např. 1111/crypto
<snapshot>
je název snapshotu, např. crypto_2023-12-23_19.18

S - sendvič (sloučené vrstvy)

; S <md5sum> <zdroj_A> <zdroj_B> ...
<md5sum>
je název (MD5 kontrolní součet) nového souboru
<zdroj_X>
jsou identifikátory vrstev, použitých k vytvoření sendviče. Identifikátory mohou vypadat takto:
sdílená vrstva, např. 1111/crypto
sdílená vrstva připojená přes NFS, např. 172.0.0.1:/srv/1111/crypto (použitá IPv4 adresa stroje musí přístupná)
snapshot, např. crypto_2023-12-23_19.18
sqimage je MD5 sqimage souboru z úložiště (ZATÍM NEIMPLEMENTOVÁNO), přičemž nehraje roli, jde-li o kryptovaný sqimage, nebo jeho plain verzi.
Poznámka I když je možné generovat sendvič z několika různých zdrojů, je doporučeno využívat snapshoty. Ostatní varianty umožňují sestavení plain image ze zdrojů, které nejsou lokálně k dispozici – např. adresářů sdílených z jiného NFS serveru.

C - záznam pro aktualizaci vrstvy

Pokud crypto během zavádění zjistí, že jde o kryptovaný soubor, stáhne dekapitovanou, zaheslovanou hlavičku a pokud se mount podaří, zkontroluje zda-li changelog neobsahuje záznam s informací, který soubor nahradil:

; C <new> <old>
C
Signalizuje, že byl soubor <old> nahrazen souborem <new>
<new>
je MD5 kontrolní součet stahovaného souboru
<old>
je název (MD5 kontrolní součet) původního souboru

Pokud crypto takový záznam najde a soubor <old> v lokálním úložišti existuje, tak ho rovnou odstraní. Se stejným záznamem může pracovat také v případě, že je stažená vrstva kryptovaná, protože zaheslovaný soubor, ve kterém je hlavička kryptovaného souboru může být adresována několika způsoby. Mimo jiné MD5 součtem původního plain sqimage za kterým následuje suffix .7z. Pointa téhle opičárny tkví v tom, že z MD5 součtu nelze poznat, co se má použít. Admnistrátor má k dispozici pomocný stroj, se skriptem SQcrypto.sh, kde může jednoduchým způsobem ověřit co se má použít.

SQimage.sh vkládá záznam o aktualizaci vrstvy po vygenerování nového snapshotu. A SQcrypto.sh po odeslání zakryptované verze plain sqimage do HTTP úložiště.