CVT FI

RSS

Novinky, zajímavosti a změny v provozu počítačů, počítačové sítě, prezentační a další techniky na FI MU. Další informace jsou dostupné v Technických informacích na webu fakulty.

Pro hlášení problémů prosím kontaktujte příslušnou sekci CVT FI.

Informace o aktuálních problémech naleznete na stránce o výpadcích.

Vlastníci blogu: FI:unix@fi, FI:CVT FI
Starší příspěvky
Kategorie
Vlastníci blogu: FI:unix@fi, FI:CVT FI
Právo číst: kdokoliv v Internetu
Právo komentovat: kdokoliv přihlášený v ISu
29. 3.
2021

Stratus.FI: podpora výuky a privátní sítě

  • RSS
Zajímavé | 11 | 11
RNDr. Jan Kasprzak, Ph.D. (CVT FI MU), učo 1885
infrastruktura
V tomto poněkud delším a techničtějším příspěvku popíšeme podporu, kterou poskytuje fakultní virtualizační prostředí Stratus.FI výuce, a nabídneme všem uživatelům možnost vytvářet si vlastní privátní sítě.

Stratus.FI jsme zřizovali z několika důvodů:

  • provoz produkčních služeb, u kterých je neekonomické použít fyzický hardware
  • prostor pro experimenty studentů i zaměstnanců FI
  • prostor pro krátkodobé intenzivní výpočetní zátěže
  • podpora výuky předmětů FI

Ohledně předposledního bodu je zajímavé, že se na nás v posledním roce obrátilo postupně hned několik výzkumných skupin z FI s krátkodobou potřebou velmi silného výpočetního stroje a s doplněním, že u jiných poskytovatelů virtuálních výpočetních prostředků na Univerzitě by něco takového bylo příliš komplikované. Realizovali jsme takto například výpočetní server se 480 GB RAM pro výzkum faktorizace RSA klíčů, který běžel po dobu cca dvou týdnů.

Stratus.FI a výuka

Mimo tyto nárazové zátěže již od počátku podporujeme výuku: na platformě Stratus.FI se již po několik semestrů realizuje výuka předmětu PV090 UNIX - Seminář ze správy systému, kde si studenti mohou vytvářet své (virtuální) servery připojené k oddělené síti, a na nich pak zkoušet zprovozňovat různé síťové služby jako HTTP server, SMTP server, sbírání statistik přes SNMP a podobně.

S důrazem na distanční výuku v posledních dvou semestrech se rozrostly požadavky na virtualizovaná testovací prostředí. V minulém semestru jsme například provozovali cca 120 virtuálních strojů pro předmět PV175 Správa systémů MS Windows I.

Před začátkem tohoto semestru se na nás obrátilo hned několik vyučujících se žádostí o poskytnutí virtuálního hardware. Pro předmět PV176 Správa systému MS Windows II vzešel požadavek na privátní síť pro každého studenta, aby bylo možno zkoušet například DHCP server a DHCP klienty. Vyučující tohoto předmětu předpokládali cca 30 studentů se třemi virtuálními stroji na studenta. Paralelně s tímto přišel požadavek od vyučujících předmětu PB156cv Počítačové sítě – cvičení na cca 200 studentů, z nichž každý by měl dvojici virtuálních serverů propojených dedikovanou sítí.

Privátní sítě

Dosud měl Stratus.FI jen tři ručně vytvořené sítě (síť s veřejnými adresami, síť s privátními adresami a síť pro předmět PV090), protože více nebylo potřeba. Původní řešení virtuálních sítí pomocí statických bridge rozhraní vedoucích do samostatných VLANů jsme změnili na protokol VXLAN. Fyzické servery mají pro tyto VXLAN sítě dedikovanou síťovou kartu se zapnutými Jumbo frames, oddělenou od provozu vnější sítě a distribuovaného blokového úložiště Ceph RBD.

Stěžejním problémem při zavádění virtuálních ethernetových LAN nad UDP (což je princip protokolu VXLAN) je, jak řešit všesměrová a vícesměrová vysílání (broadcast a multicast). V našem případě, kdy všechny fyzické stroje (VTEP v řeči protokolu VXLAN, tedy zařízení, které umí zabalit ethernetový rámec do VXLAN UDP packetu a opačným směrem zase vybalit zpět) jsou na jedné L2 síti, se nabízí obojí řešit pomocí IP multicastu nad touto sítí.

Při testování jsme narazili na problém, že v některých situacích začal být virtuální stroj připojený do určité VXLAN sítě dostupný až tehdy, pokud on sám začal něco posílat do sítě. Do té doby neodpovídal na ARP dotazy ani IPv6 NDP dotazy. Jako problematický se ukázal být IGMP snooping na switchi. Použitím záplavového šíření bez IGMP snooping se problém vyřešil.

Škálovatelnost IP multicastu není neomezená, omezením může být počet hardwarových filtrů multicastových adres jednak v síťových kartách, a pak také na switchích. Alternativou může být vytažení mechanismu zjišťování, kterým IP adresám je potřeba zasílat broadcastový a multicastový provoz kterých VXLANů, do softwarové vrstvy. K tomu lze použít například protokolu BGP-EVPN pomocí směrovacího nástroje FRRouting (dříve Quagga, ještě dříve Zebra). Nasazení tohoto nástroje si zatím necháváme v záloze.

Mechanismus vytváření vlastních privátních sítí pro uživatelské virtuální stroje jsme nyní zpřístupnili všem uživatelům. Pokud potřebujete vytvářet své vlastní virtuální sítě a spojovat si své pokusné virtuální stroje do netriviálních síťových topologií, použijte záložku Virtual NetworksTemplates a tlačítko Instantiate ve webovém rozhraní Stratus.FI.

Přístupová gateway do privátní sítě

Pro potřeby výuky nad virtuálními stroji připojenými do privátní sítě by bylo dobré, aby se uživatelé k této virtuální síti nějak dostali. Stratus.FI poskytuje „out-of-band“ přístup na textovou i grafickou konzolu virtuálních strojů protokolem VNC pomocí webového VNC klienta, ale může se hodit i „in-band“ přístup například pomocí SSH s možností port-forwardingu, SCP a dalších. Toto je ovšem nad privátní sítí komplikované, protože adresy v této síti jsou skryty pro přístup zvenku.

Předmět PV090 pro tento účel používá dedikovaný stroj jménem Erigona, který je připojený jak do veřejné, tak do privátní sítě. Studenti PV090 mají na tomto stroji fakultní účty s fakultním heslem a pomocí ssh erigona se mohou dostat i ke strojům v privátní síti.

Tento mechanismus jsme zobecnili i pro další předměty, kde pro každý předmět je dedikovaná gateway podobná Erigoně pro přístup zvenku. Konfiguraci takovéto brány provádíme pomocí Ansible, takže pro případné další vyučované předměty jsme schopni relativně jednoduše vytvořit další takovouto gateway.

Vytíženost hardwaru

Virtuálních strojů pro nové předměty je opravdu velký počet, takže jsme se rozhodli nastavit jejich automatické vypínání každý večer s tím, že student by měl možnost kdykoli během dne si své virtuální stroje znovu zapnout. Toto řešení snižuje nároky na potřebný hardware a posiluje jeho využití jen těmi, kdo v daný okamžik virtuální stroj skutečně používají. Při této příležitosti jsme nicméně narazili na několik problémů v softwaru OpenNebula, nad kterým je platforma Stratus.FI implementována (#5209, #5289). Problémy průběžně řešíme a snažíme se je obejít lokálními ad-hoc nástroji.

Pro PB156cv navíc vyučující požadovali návrat virtuálních strojů do původního stavu pro případ, že by si student na svém stroji něco rozbil. Řešení spočívá ve vytvoření snímku (snapshot) disku virtuálního stroje ihned po instanciaci, a následně automatizovaném návratu disku k tomuto snímku (revert) v noci.

Pro zajímavost uvádíme, jakou diskovou zátěž nad úložištěm Ceph vygeneruje instanciace 400+ virtuálních strojů s Fedora Linuxem a o dvě hodiny později i 40 VM s Windows:


První graf jsou čtecí operace, druhý graf ukazuje zápisové operace. Jednou z příčin rozdílu Linux versus Windows je, že během prvního startu těchto VM s Windows se dělá tzv. specializace a následně jeden další restart.

Děkovné dopisy :-)

Odměnou za naše úsilí jsou mimo jiné spokojení uživatelé:

Každopádně chci skutečně hluboce poděkovat. Dělat to na OpenStacku byl neskutečný pain. Tady je to úplná krása :)

—Ondřej Šebela, PV176

Stratus.FI se používá též v rámci výuky předmětu PB156cv, kde v době pandemie alespoň částečně nahradil studentům praxi a provozem síťové infrastruktury. Velmi si vážíme pomoci unix@fi, která dokázala v krátkém termínu připravit přes 400 experimentální virtuálních strojů, na nichž se studenti učí základům konfigurace sítě, provádějí či měření a analýzy síťového provozu. Virtualizované prostředí umožnilo realizovat cvičení, které by jinak v této nesnadné době muselo být zrušeno.

—Petr Holub, PB156cv

Pokud vás tento příspěvek inspiroval a uvažujete o použití virtuálního síťového prostředí případně i s předpřipravenými virtuálními stroji i ve svém předmětu, obraťte se na unix@fi. Také v případě nárazové krátkodobé potřeby velkého výpočetního výkonu jsme schopni vyjít vstříc. Pokud máte ve svém projektu peníze na nákup hardwaru, ale tento hardware nevyužijete trvale, a naopak byste krátkodobě potřebovali větší výpočení výkon, zvažte ve spolupráci s CVT FI nákup dalších uzlů pro Stratus.FI.

Dosud nečteno0 komentářůpermalink
« Novinky z unix@fi za 02/2021 (16. 3. 2021 15:54) | Výpadky sítě 12. dubna » (13. 4. 2021 21:00)

Zatím žádné komentáře.