Přehled vývoje infrastruktury pro diskless Debian na katedře DCE

Z DCEwiki
Verze z 22. 1. 2013, 17:29, kterou vytvořil Keny (diskuse | příspěvky) (Založena nová stránka: Debian zaváděný po síti se začal používat na katedře DCE při výuce předmětu počítačové systémy od zimního semestru 2005. Potřebnou infrastrukturu (DHCP, …)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaci Skočit na vyhledávání

Debian zaváděný po síti se začal používat na katedře DCE při výuce předmětu počítačové systémy od zimního semestru 2005. Potřebnou infrastrukturu (DHCP, TFTP a NFS) zajišťoval ze svých strojů tehdejší správce Zdeněk Šebek, ale zavaděč GRUB a linuxový systém pro klientské stanice připravoval Michal Sojka.

Disc overlay

O něco později s ním začal spolupracovat Pavel Píša, který rozšířil původní koncept bezdiskového stroje o využití overlay.

Na klientských stanicích byly vyhrazeny jeden diskový oddíl pro zavaděč GRUB v. 0.97 a druhý pro swap. Na dalších diskových oddílech pak byly různé instalace MS Windows XP. Přes GRUB bylo možné zavést buď bezdiskový Debian po síti, nebo podle potřeby měnit u NTFS oddílů typ z NTFS (7) na Hidden NTFS (17) resp. obráceně a tím podle potřeby spouštět různé verze MS Windows XP na jednom stroji, aniž by mezi nimi docházelo ke kolizím.

Od zimního semestru r. 2006 se dá považovat náš koncept bezdiskového Debianu za ustálený.

Virtualizace diskless infrastruktury

V roce 2007 nahradil Zdeňka Šebka ve správě infrastruktury Lukáš Moc, který ji soustředil z několika fyzických strojů na jednom stroji vyžívajícím možností virtualizace.

S virtualizací se na katedře DCE začínalo na dvou identických strojích od fy. IBM, a s distribucí SUSE LINUX 10.1. Ta měla k dispozici jádro, které umožňovalo na svou dobu velice efektivní paravirtualizaci přes XEN.

Pro potřeby diskless infrastruktury sloužil stroj, který měl jméno k335host. Ten přes NFS propagoval uživatelské adresáře a zároveň hostil virtuální stroj k909, který strojům v laboratořích K2 (laboratoř) a L909 (Strojovna) přes DHCP přiděloval IPv4 adresy a nabízel přes TFTP ke stažení linuxový kernel s ramdiskem.

Na druhém virtualizačním stroji s hostname dcehost běžely virtuální stroje dcetest a profibus.cz, pro potřeby katedry.

Tato infrastruktura běžela až do r.2009.

Zavádění přes PXE

Změnu, si vyžádal upgrade klientských stanic v laboratoři L909 (Strojovna). Původní verze zavaděče GRUB 0.97 totiž vyžadovala pro bezdiskové zavedení linuxového systému zakompilovaný ovladač síťové karty. V té době však již byl vývoj tohoto zavaděče zastaven ve prospěch modernějšího GRUB2 a tak pro novějším typy síťových karet již nebyly k dispozici potřebné ovladače.

Jeho nástupce - GRUB2 místo zakompilovaného ovladače síťové karty využíval PXE, které je součástí všech moderních síťových karet. Na rozdíl od předchůdce nevyžadoval lokální instalaci na klientské stanici, protože jej bylo možné zavést po síti, ale jak se ukázalo, neuměl přes PXE zavést bezdiskový Debian. Nicméně výhody zavádění přes PXE byly natolik zřejmé, že nový správce diskless infrastruktury Aleš Kapica který problém řešil ve spolupráci s Pavlem Píšou, navrhnul kombinaci zavaděče PXELINUX v kombinaci se zaváděním lokálních systémů přes GRUB2.

Ke změnám došlo také na straně fyzického hostitele. Virtuály, které zajišťují služby pro katedru byly přesunuty do jiné virtualizační infrastruktury, takže bylo možné využít oba IBM stroje. Jeden jako hlavní virtualizační stroj a druhý pro zálohování a běh testovacího virtuálního bezdiskového stroje postel.

Stroje byly přeinstalovány na Debian. Stroj k335host změnil jméno na k909b a sesterský stroj dcehost na k909a. I nadále se k virtualizaci používal XEN, protože jejich procesory neměly podporu HW virtualizace, ale služby původního hostitelského stroje k335host a virtuálního stroje k909 byly sloučeny do nového virtuálu k2, postaveného rovněž na Debianu. Kromě publikování uživatelských adresářů přes NFS, DHCP a TFTP na něm byl spuštěn také licenční server pro potřeby laboratoří.

Takový byl stav do konce letního semestru r.2012. Tato koncepce bezdiskových linuxových stanic se osvědčila natolik, že ji Pavel Píša veřejně prezentoval v rámci akce InstallFest 2011

Diskless Debian v prostředí KVM

Poslední velká změna proběhla během prázdnin 2012. Touto změnou byl přesun diskless infrastruktury z virtuálního prostředí XEN do virtuálního prostředí KVM.

První pokus byl sice učiněn již o rok dříve, ale nakonec jsme se rozhodli migraci do virtualizačního prostředí KVM odložit. Výsledkem tohoto prvního pokusu je manuálová stránka KVM (konfigurace sítě).

Toto rozhodnutí se ukázalo zcela na místě, protože se postupem času ukázala použitá virtualizační infrastruktura pro KVM příliš zranitelná při administrátorské chybě. K takové chybě došlo v červenci 2012 a vedla k radikálnímu přehodnocení stávajícího konceptu.

Ve finálním řešení se mimo jiné odrazila i několikaletá veskrze pozitivní zkušenost s NFS a bezdiskovým Debianem, takže výsledkem je infrastruktura, která je schopna ustát i případnou administrátorskou chybu.

Postupem času u nás došlo ke specializaci strojů, takže z hlediska diskless Debianu došlo na stroji k2 opět k oddělení NFS serveru a licenčního serveru od zbylých služeb (DHCP a TFTP). Všechny virtualizované linuxové stroje běží jako bezdiskové - včetně k2 a jejich systémové "disky" poskytuje jeden a týž NFS server, který je z hlediska síťové komunikace zcela odříznutý od vnější sítě. Disk s daty virtuálních strojů se redundantně zrcadlí přes DRBD na záložní stroj, který je v případě potřeby schopen fungovat jako datový i virtualizační, a v pravidelných intervalech probíhá přes rsync zálohování na zcela oddělení diskové pole s Btrfs, kde má každý virtuální stroj samostatné subvolume, které se po každém odzálohování snapshotuje. Díky tomu lze kdykoliv v případě potřeby i zpětně dohledat změny na úrovni souborového systému.