nfsroot

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


Zavedení skriptu nfsroot, posunulo disklessovou infrastrukturu na zcela jinou úroveň.

Kromě toho, že umožnil zjednodušení konfigurace pro PXE zavaděče, položil základ pro technologii které říkáme dynamický ramdisk.Chybná citace: Chyba v tagu <ref>; citace bez názvu musí mít vlastní obsah

Původně se totiž předával seznam vrstev a další proměnné prostřednictvím parametrů jádra. K těm se dá velice snadno dostat výpisem obsahu souboru /proc/cmdline, ale pokud došlo k nějaké chybě při zápisu, skončil systém ve stavu, který vyřešil jen manuální restart přímo na místě.

Dynamický ramdisk pracuje s konfigurací, kterou si stahuje buď na základě předaného parametru name=, nebo konfigurace sítě z DHCP, přidělené na základě MAC adresy. V případě, že se v konfiguraci objeví nějaká chyba, např. překlep v URL vrstvy sdílené před NFS, přeskočí neplatnou položku a pokračuje dál v zavádění.

Dynamický ramdisk vyřešil také otázku zavaděčů, protože se pracuje se stejnou konfigurací bez ohledu na to, který zavaděč a jakým způsobem jádro spustil. Nezáleží tedy na tom, je-li jádro zavedeno přes Legacy či UEFI PXE, nebo ho zavedl lokálně instalovaný Grub.

Díky tomu se administrace všech strojů disklessové infrastruktury soustředila do jediného místa a několika málo konfiguračních souborů. Většina strojů si vystačí s generickou konfigurací. Jenom stroje, které tvoří specifickou součást disklessové infrastruktury mají konfiguraci vlastní.

Také úprava konfigurace systému je velice snadná. Vše se řeší přes vrstvy. Základní vrstva, ve které jsou systémové soubory a distribuční software je u všech strojů stejná. A konfigurace se mění pouze tím, že se nad ní použije jiná vrstva.

Např. rozdílné metody ověřování řeší dvě velice tenké vrstvy, které obsahují pouze konfigurační soubory. Prostřednictvím vrstvy isolate lze velice elegantním způsobem získat stroj ideální ke zkouškám, kde je dostupný veškerý software ale přístup do sítě omezen jen na vyhrazené stroje.

Dynamický ramdisk také umožnil vytvořit technologii autonomního Half-Disklessu. [1]

Princip

Základní skript dynamického ramdisku, který stahuje konfiguraci stroje z TFTP serveru. Používá se od září 2019. Obsahuje čtyři základní funkce:

tftp_download
Pomocná funkce pro stažení konfiguračního souboru
script_download
Pomocná funkce pro stažení dalších skriptů
get_script
Stahuje skripty
find_nfsroot
Stahuje konfiguraci

Od nasazení tohoto skriptu není nutné aby byly skripty spouštěné v dalších fázích zavádění (findswap, overlay, crypto, aj.) součástí komprimovaného ramdisku.

Upozornění Netýká se to skriptu enable_wireles, nezbytného pro nahození sítě, který se spouští (stejně jako tenhle skript ve fázi nfs-top!

Verze

MD5SUM Velikost kB Datum vytvoření
2f7de9c79c2d55a6abd01536ac1bac1f 2320 2019-09-07 první verze (bullseye)
6bd8069b4436e5187e00c1bd604af0c9 2349 2021-01-26 druhá, vývojová verze původního skriptu, kterou (ne)servíruje DHCP, rozšířená o podporu pro stahování skriptů z různých TFTP lokací
bf448e064d383fadf1f5664cfef76d70 2497 2021-01-26 třetí produkční verze (bullseye)
658068280627daebb75ad5511ffded4e 2503 úno 12 2021-02-12 čtvrtá, produkční verze (bookworm) s upravenou podmínkou
  1. Aleš Kapica (*1969) Jak jsem se dostal k vývoji disklessové infrastruktury – dokončení:
    Aleš Kapica (*1969), psáno 7. až 9. ledna 2024