Módosítások

Cloud for Education

2 281 bájt hozzáadva, 2020. május 26., 09:03
Lemez típusok
* Minden hónap '''második hétfőjén''' este egy második frissítési ciklust is tartunk az alábbiak szerint
** Páratlan hónapokban a '''Compute''' gépeket frissítjük, ami azzal jár, hogy futó virtuális gépeket elmigráljuk a fizikai gépekről. A folyamat során néhányszor 1 percre a futó virtuális erőforrások elérhetetlenek lehetnek, illetve folyamatosan íródó memóriájú gépeknél előfordul, hogy csak a virtuális gép leállításával/elindításával lesz sikeres a migráció. *** A több zónás működésnek köszönhetően, egyidőben csak egy zónába tartozó virtuális gépeket érintenek a fent említett esetleges rövid kimaradások, mivel a zónákhoz tartozó erőforrások frissítése külön történik!
** Páros hónapokban a diszk alrendszert '''(CEPH)''' frissítjük. Ilyenkor a háttérben '''adatszinkronizáció zajlik''', ami '''lassíthat egyes IO kéréseket''', de a felhasználók felé ez a művelet eddigi tapasztalataink alapján többnyire transzparens.
==Ismertető==
OpenStack verzió: ROCKY
 
22 perces ismertető, ami az NWS 2016-on hangzott el. http://videotorium.hu/hu/recordings/details/13396,Cloud4Education_-_Kezdo_lepesek
====Dashboard áttekintés====
[[File:Dash_overviewdashboard_overview.pngjpg|665px|Dashboard]]
Bejelentkezés után a felhasználóhoz projekthez tartozó kvóta kihasználtságai láthatjukhasználtsága látható, ezen kvóták szabályozása admin felhasználóval tehető meg. A kihasználtságon használtság áttekintésén felül lehetőség van arra, hogy a felhasználó lekérdezze egy adott periódus alatt használt vCPU, Disk és RAM mennyiségét, valamint ezek az információk letölthetők excel táblázat formájában is. A bal oldali menüstruktúra több részből tevődik össze, amelyből a két legfontosabb a Project fül alatt talákható „Compute” és a „Network” opció. A „Compute” menüpont alatt találhatók azok a funkciók, amelyek ahhoz szükségesek, hogy virtuális gépeket tudjunk igénybe venni és az ehhez tartozó adminisztratív teendőinket is itt tudjuk elvégezni. A „Network” menüpont alatt kezelhetjük a virtuális gépeinkhez szükséges hálózatokat. Itt hozhatunk létre például virtuális routereket, hálózatokat, valamint itt állíthatunk be terheléselosztókat és definiálhatunk tűzfalszabályokatadminisztrálhatjuk őket. A következőkben bemutatásra kerül, hogyan tud egy felhasználó néhány kattintás segítségével egy lemezképfájlt feltölteni, majd a képfájlból virtuális gépet létrehozni, valamint a rendelkezésre álló funkciókat igénybe venni.
====Új image feltöltés====
A virtuális gép létrehozásához szükség van lemezképfájlra, amelyet egy működő http url-ről könnyedén letölthetünk a „Compute” menüpont alatt található „Images” lehetőség használatával, vagy használhatjuk az előre feltöltött image-eket, amelyeket az admin jogosultságú felhasználók biztosítanak számunkra. Az „images” lehetőséget választva látható a rendelkezésre álló lemezképfájlok listája. A jobb felső sarokban a „Create Image” lehetőséget választva készíthetünk lemezképet. Az alábbi példa egy Ubuntu 1418.04 (Bionic) verziójú lemezkép letöltését szemlélteti.
[[File:Image_createUpload_image.png|724px|Image készítés]]
A fenti ábrán látható módon, néhány szükséges információt meg kell adni, ilyenek például:
* Név
* Lemezképfájl helye: A letölteni feltölteni kívánt lemezképfájl internetes elérhetősége url-ről történő feltöltés esetén* Format: például QCOW2 – QEMU Emulator Fontos: Kizárólag a saját projektek alá van jogosultsága a felhasználóknak lemezképfájlokat feltölteni!
=====Mindenki számára elérhető Image-ek* (Forrás: http://docs.openstack.org/image-guide/obtain-images.html)=====
===Kulcspár létrehozása/publikus kulcs feltöltése===
A „Access & Security” fülre kattintva, „Compute” menüpont alatt található "Key Pairs" lehetőséget választva hozzáadhatunk saját kulcspárokat, így a neutron szerverek által futtatott metadata szolgáltatás eljuttatja a publikus kulcsunkat a létrehozott virtuális gépre és a privát kulcsunkkal könnyedén tudunk autentikálni a létrehozott gépeken. Ehhez válasszuk a hozzáadás lehetőséget és adjuk meg a publikus kulcsunkat a következő ábrán látható módon.
EGYES CLOUD LEMEZKÉPFÁJLOK KIZÁRÓLAG KULCS HASZNÁLATÁVAL VEHETŐK IGÉNYBE!
[[File:Key_pairImport_pubkey.png|726px|Publikus kulcs importálása]]
===Hálózati típusok===
Az általunk megépített rendszerben végül két fajta hálózat kapott helyet:
* Az egyik típus, amit Flat néven kereszteltünk el. Ennek lényege, hogy a létrehozott virtuális gépek egy előre meghatározott publikus IP tartományból DHCP segítségével felvesznek egy címet, majd a csomagok haladásának iránya közvetlenül a compute gépek felé történik, ezzel nem terhelve a network gépeket.
** <small>A FLAT1 névre keresztelt hálózathoz tartozó szabad IPv4 címek száma nagyon kevés, ezért kérjük a felhasználóinkat, hogy lehetőség szerint, amennyiben FLAT típusú hálózatot szeretnének hozzáadni az újonnan létrehozott virtuális gépekhez, a FLAT2 nevű hálózatot válasszák. Megértésüket és együttműködésüket köszönjük!</small>
* A másik hálózati típus, amely az Smart nevet kapta. Ez a hálózati típus nagyban különbözik az előző megoldástól, mivel ennél a típusnál a felhasználóknak lehetőségük van egy, vagy akár több privát hálózat, valamint egy vagy több ezekhez tartozó virtuális router létrehozására. A virtuális router-hez lehetőség van hozzárendelni IP címeket a privát, valamint egy publikus hálózatból is és ennek következtében a virtuális gépek forgalmában egy úgynevezett hálózati címfordítás történik. Ennek előnye az előző megoldással szemben, hogy kevésbé IP cím pazarló a publikus címek tekintetében, valamint a neutron funkciójának köszönhetően képes több network gép között tartalékolt lenni.
Az Flat típusú hálózat felvételére kizárólag admin jogosultságú felhasználónak van lehetősége két féle módon. Az egyik lehetőség, hogy a létrehozott Flat hálózat shared típusú, vagyis megosztott hálózat, ami azt jelenti, hogy a hálózat minden tenant projekt számára látható. A másik lehetőség, hogy a létrehozott hálózatot nem osztjuk meg másik tenanttalprojekttel, azonban hozzárendeljük egy bizonyos tenant-hozprojekthez, ezzel garantálva, hogy egy IP cím tartományt csak egy tenant projekt használ kizárólag.
Az Smart hálózat és egy hozzá tartozó virtuális router felvételét az alábbiakban mutatjuk be.
====External (L3) hálózat létrehozása====
A „Project” menüpont alatt található „Network” lehetőséget választva láthatók a hálózattal kapcsolatos lehetőségeink. A Segédlet L3 (SMART) hálózat létrehozásához első lépésként a „Networks” lehetőséget kell választanunk, ahol láthatók a már korábban létrehozott hálózatok, valamint itt érhetők el a Flat típusú hálózatok is, amennyiben egy admin jogosultságú felhasználó megosztott, vagy a tenant-hoz rendelt egy ilyen típusú hálózatot. Új hálózat létrehozásához a bal felső sarokban válasszuk a „Create Network” lehetőséget, majd a következő képeken látható módon töltsük ki a szükséges mezőket. [[Fileaz alábbi oldalon tekinthető meg:Create_net1.png|727px|hálózat létrehozása]]
[[File:Create_net2.png|723px|hálózat létrehozása]] A fentebb látható menüben az átjáró IP címét nem kötelező megadni, ilyenkor automatikusan a megadott tartomány első IP címét fogja átjárónak beállítani. Ebben az esetben 192.168.66.1 címet. [[File:Create_net3.png|723pxCloud for Education/network l3|L3 hálózat létrehozása]] Ha minden szükséges és kötelező mezőt kitöltöttünk, akkor a „create” gombra kattintva a rendszer létrehozza a hálózatot a kívánt paramétereinkkel, amelyet a Networks menüpont alatt megtekinthetünk.
====Router létrehozása és Interfészek hozzáadása====
A hálózat sikeres elkészítése után szükség van egy virtuális router létrehozására, amelyen keresztül fog a hálózati címfordítás történni. A router létrehozása a következő képeken látható
[[File:Create_router1Create_router.png|727px|Router létrehozás]]
A Virtuális router létrehozásánál az „External Network”, azaz a külső hálózatok listájánál a rendelkezésre álló Smart hálózatok közül van lehetőség választani. Miután ez megtörtént, a router-hez szükség van egy másik interfész hozzáadására is, az előzőleg létrehozott belső hálózatból. Ennek hozzáadásához a „Routers” menüpontot választva, a forgalomirányítók listájából válasszuk ki az előbbiekben létrehozott „Internal_Router”„Internal-Router”-t, majd az „Interfaces” fülön az „Add Interface” lehetőséget választva, adjunk hozzá egy interfészt a következő ábrán látható módon.
[[File:Create_router2Add_if.png|723px|Router létrehozás]]
====Security group-ok====
A lenti példa szemlélteti, hogy hogyan engedélyezhetjük az SSH és ICMP forgalmakat minden külső hálózatból:
[[File:Sec_gr1Add_rule1.png|723px|Szabály létrehozása]]
[[File:Sec_gr2Add_rule2.png|723px|Szabály létrehozása]]
[[File:Sec_gr3Sec_grp.png|723px|Szabály létrehozása]]
====LBaaS====
A C4E az "OpenStack Octavia" alapú LoadBalancer-t kínálja a felhasználóknak, HAProxy backenddel.Az LBaaS funkció jelenleg nem elérhetőesetleges titkosított kapcsolatok terminálásakor a "Barbican" tanúsítvány manager eszköz biztosítja a privát kulcsok biztonságos tárolását.
====FWaaS====A terheléselosztó konfigurációs beállításai két fajta módon tehető meg: Egy másik hálózati lehetőség 1. Horizon grafikus felületen a tűzfal alkalmazásaNETWORK menüpont alatt, 2. Alapértelmezetten a már bemutatott Security Group felel CLI használatával, amelyhez a standard OpenStack CLI eszközön felül az alábbi csomagok telepítése is szükséges. (Debian/Ubuntu rendszeren)<pre>$ apt install python-barbicanclient python3-octaviaclient</pre> [[Cloud for Education#C4E_.28Openstack.29_Publikus_API|Általános CLI használati információk]] '''Rövid ismertető:''' [[File: Octavia-component-overview.jpg |724px|Octavia component overview]] Az Octavia LBaaS rendszer az alábbi főbb komponensekből áll:* Amphorae: Különálló virtuális gépek elérhetőségének szabályozásáról, azonban lehetőségünk van amik egy sokkal részletesebben szabályozható technika alkalmazására is. A tűzfal működéséhez fontosUbuntu alapú Amphora image-ből példányosodnak, hogy mikor a Default Security Groupfelhasználó új terheléselosztót hoz létre** A sablon image-ban engedélyezni kell ből létrehozott virtuális gépek nem számítanak bele a ki és bemenő forgalmat bárhonnanfelhasználói kvótába, azok flavor-je specifikus, mivel belépni rájuk a korlátozásokat és a konkrét szabályokat a tűzfal modulban vehetjük fel.felhasználó nem tud * Octavia&Barbican APIA tűzfal létrehozásához és konfigurálásához válasszuk a „Network” menüpont alatt található „Firewalls” lehetőséget. Mint ahogy * Controller Worker (az API kérések alapján vezérli a menüstruktúrában is látszik, a tűzfal három részből tevődik össze:háttérkomponenseket)* Firewall RulesHealth Manager (figyeli a már létrehozott "Amphorae" virtuális gépeket, és azok állapotát, hiba esetén failover műveleteket hajt végre)* Firewall PoliciesHousekeeping Manager (a hibás/törölt maradványok eltávolításáért felel)* FirewallsDriver Agent (információkat fogad az egyes amphora példányokon futó Haproxy drivertől) Első lépésként létre A fentiek közül a felhasználónak csupán az API-val kell hoznunk a szabályokatkommunikálnia, majd akár a szabályokat egy csoportba kell foglalni, végül létre kell hozni egy tűzfalatHorizon felületén, majd hozzárendelni akár a szabálycsoporthoz CLI-ből szeretné létrehozni és managelni a virtuális routerLoadBalancer-hezt. Szabályok létrehozásához válasszuk  '''Segédlet a „Firewall Rules” lehetőséget, majd az alábbi ábrán látható módon hozzunk létre egy minden befelé jövő forgalmat tiltó szabályt egy előre létrehozott virtuális gépre nézve, amely példánkban a 192.168.66.14 címet kapta.létrehozáshoz példákkal illusztrálva:'''* Példa [[Cloud for Education/LBaaS gui|GUI]] igénybevételével* Példa [[Cloud for Education/LBaaS cli|CLI]] használatával
[[File'''Működés/Hibatűrés:Fwaas1.png|726px|Szabály létrehozása]]'''
A rendszer alapvető elosztottsága miatt nincs központi "leállás", minden egyes terheléselosztó pont annyira stabil, mint a C4E-ben futó többi virtuális gép. Alapvetően egy adott projekt egy adott terheléselosztójához tartozó amphora image hibája (virtuális gép leáll, lefagy) esetén a Health Managerre hagyatkozunk.
A szabály létrehozása után szükség van gép újraindításán túl akár egy csoportrendszerre'''új amphorae virtuális gép'''et is létre tud hozni a háttérben, amely és a szabályokat fogja tartalmaznimár '''meglévő konfiguráció'''t alkalmazni rá. Ehhez válasszuk a „Firewall Policies” lehetőségetArra azonban figyelni kell, hogy egy újraindítás, majd vagy egy új image létrehozása néhány perces kiesést jelenthet az alábbi ábrákon látható módon hozzuk létre a csoportot és adjuk hozzá az előbb létrehozott mindent tiltó szabályt.[[File:Fwaas2adott projekthez tartozó terheléselosztó szolgáltatásban, de ilyenre alapvetően nem számítunk.png|724px|Szabályrendszer létrehozása]]
[[File:Fwaas3Fontos, hogy egy korábbi tervezett leállításkor (ahol kézzel többször leállítottuk a már meglévő terheléselosztókat) a Health Manager sajnálatos módon nem tudta a többszöri leállítást és újraindítást (egymásra futva) megfelelően kezelni. Itt a karbantartás végén adminisztrátori beavatkozásra volt szükség, kézzel kellett failovert kérni minden terheléselosztóra.Erre a forgatókönyvre se számítunk üzemszerű használat mellett (maximum egy esetleges tervezett leálláskor, nem várt komolyabb hiba javításakor) de erre minden esetben nagy figyelmet fordítanak a karbantartást/javítást végző kollégák.png|723px|Szabály hozzárendelés]]
'''Amennyiben beragadt/hibás terheléselosztót észlelnek, kérjük forduljanak ügyfélszolgálatunkhoz!'''
A szabályok érvényre juttatásához szükség van egy tűzfal létrehozására, amelyhez hozzárendeljük a szabályrendszerünket és a virtuális átjárónkat. Ezt az alábbi módon hozzuk létre.[[File'''Terheléselosztó törlése:Fwaas4.png|728px|Tűzfal létrehozása]]'''
[[File:Fwaas5Sajnálatos módon előfordulhat, hogy egy-egy terheléselosztó nem törölhető és hibaüzenet figyelmeztet erre.png|728px|Router hozzárendelés tűzfalhoz]]('''CLI-n van rá force opció!''')
Ennek a megoldása, hogy "szét kell szedni" a terheléselosztót, amelyhez a következő lépésekre van szükség:
* törölni kell a pool-t, a listener-t, a monitort
* majd végül magát a terheléselosztót
Ezzel elértük, hogy minden bejövő forgalmat eldobjon a tűzfalunk. Ha engedélyezni szeretnénk egy befelé irányuló kapcsolatot, példánkban az SSH protokollt, akkor első lépésben a már megismert módon hozzunk létre egy szabályt, de ezúttal engedélyezőt.====FWaaS==== [[File:Fwaas6Az FWaaS funkció jelenleg nem elérhető.png|724px|További szabály létrehozása]]
===Lemez típusok===
A szabály létrehozása után hozzá kell adni a létező szabályrendszerhez{| class="wikitable" border="1" |- | Lemez típus| Sebesség| Méret| Technológia| Javasolt használat|- | SDS-Nearline| +| +++| Skálázódó szoftveres tároló| Tömeges adattárolás, alacsony kihasználtságú VM lemeze. A szabályok értelmezése lineáris|- | SDS-SAS| ++| ++| Skálázódó szoftveres tároló| Általános célú adattárolás, tehát minél később található meg a listában egy adott szabályváltozó adatok, a csomag annál később jut el odáignormál kihasználtságú VM lemeze. Abban az esetben|-| SAN-Nearline| +| +++| Klasszikus SAN storage| Tömeges adattárolás, ha a lista bármely szabálya illeszkedik az adott csomagraalacsony kihasználtságú VM lemeze.|- | SAN-SAS| ++| ++| Klasszikus SAN storage| Általános célú adattárolás, az adott szabály függvényében a csomag eldobásraváltozó adatok, vagy átengedésre kerülnormál kihasználtságú VM lemeze. Ennek értelmében a következő ábrán látható módon szúrjuk be a szabályrendszerbe a létrehozott szabályt|- | SAN-SSD| +++| +| Klasszikus SAN storage| Gyakran változó adatok, magas kihasználtságú VM lemeze.[[File:Fwaas7.png|726px- |Szabály beszúrása]]}
==Virtuális gép indítása==
Az előfeltételek teljesítése után elkészíthető a kívánt virtuális gép. Ehhez válasszuk a bal oldali menüből a „Compute”, azon belül pedig az „Instances” lehetőséget, majd a bal jobb felső sarokban válasszuk a „Launch Instance” gombot és az alábbi képeken látható módon készítsük el a gépet.
[[File:Launch1===VM elenevezése===Első lépésben válasszunk egy nevet az újonnan létrehozni kívánt virtuális gépnek, majd adjuk ezt meg az "Instance Name" mező értékének.png|726px|VM indítása]]
===Kulcspár és security group társítása===A következő ábrán látható módon a [[File:Li1.png|726px|VM létrehozásakor kiválaszthatjuk az előzőleg feltöltött publikus kulcsunkat, vagy feltölthetünk egy teljesen újat is a létrehozás közben, valamint megadhatjuk, hogy melyik Security Group vonatkozzon a virtuális gépünkre.Name]]
===Image választás===A "Next" gombra kattintva, a VM forrásával kapcsolatos beállításokat szükséges elvégezni. A következő ábrán látható módon válasszunk ki a rendelkezésre álló lemezképfájlok közül egyet, valamint állítsuk be a kívánt lemez méretet. [[File:Li2.png|726px|VM Source]] ===Flavor választás=== [[File:launch2Li3.png|726px|SecurityGroup kiválasztásaVM Select flavor]]
===Hálózat kiválasztása===
Következő lépésként meg kell adni a használni kívánt hálózatot. Ez legyen a példában létrehozott „Internal” hálózat.
[[File:launch3Li4.png|726px|Hálózat kiválasztásaVM Select network]] ===Security group társítása===Az ábrán látható módon megadhatjuk, hogy mely Security Group(-ok) vonatkozzon a virtuális gépünkre. [[File:Li5.png|726px|VM Select sec_grp]] ===Publikus kulcs társítása===Az ábrán látható módon a VM létrehozásakor kiválaszthatjuk az előzőleg feltöltött publikus kulcsunkat, vagy feltölthetünk egy teljesen újat is a létrehozás közben.
[[File:Li6.png|726px|VM Select pub_key]]
A „Launch” lehetőséget választva elkezdhetjük a virtuális gép létrehozását. A folyamat elkészültekor az „Instances” fül alatt láthatjuk az eddig létrehozott virtuális gépeinket és azok állapotát.
 [[File:launch4Li7.png|726px|Létrehozott VM lista]]
A folyamat elvégzése után elkészült az első virtuális gép, amelynek elérése több féle módon történhet.
* A virtuális géphez hozzárendelünk egy publikus IP címet, majd a virtuális router segítségével háttérben a neutron 1:1 NAT alkalmazásával ennek megfelelően konfigurálja a virtuális routert, és így távolról is bejelentkezhetünk rá, Linux disztribúció esetén például SSH, Windows esetén RDP szolgáltatás segítségével.
* A weboldalba ágyazott VNC konzol segítségével vezérelhetjük gépünket, azonban egyes előre gyártott lemezképfájlból készített virtuális gépek nem támogatják csak a kulcsos autentikációt, így sajnos ezeknél a gépeknél ez a módszer nem elérhető.
Az előzőekben létrehozott Ubuntu operációs rendszerrel ellátott virtuális gépünk a második lehetőséget nem támogatja, így szükségünk van a gép eléréséhez egy publikus IP címre, amelynek allokálása és géphez rendelése a következőképpen történik.
Első lépésben válasszuk a „Compute” „Project” alatt található „Access & Security” „Network” lehetőséget, majd azon belül a „Floating IPs” menüpontot és kattintsunk a jobb felső sarokban lévő „Allocate IP To Project” gombra. A megjelenő ablakban ki kell választani a kívánt Smart hálózatot, amelyből a publikus IP címet szeretnénk használni (Ez nyilván az a hálózat, amelyiket a router átjárójának is választottunk), majd az „Allocate IP” lehetőséget kell választani.
[[File:Allocate1Allocate_ip1.png|726px|Floating IP igénylése]]
A következő ábrán látható a Projekthez allokált IP címek listája, amelyek következő lépésként hozzárendelhetők 1-1 virtuális géphez. Ehhez válasszuk az ábrán látható IP cím mellett található „Associate” lehetőséget, majd válasszuk ki a listából azt a virtuális gépet, amelyiken az IP címet használni szeretnénk.
[[File:Allocate2Allocate_ip2.png|726px|Rendelkezésre álló IP címek listája]]
 [[File:Allocate3Allocate_ip3.png|726px|Floating IP géphez rendelése]]
A sikeres hozzárendelés után a gépünk már rendelkezik publikus IP címmel, amelyen keresztül külső hálózatokból is elérhetjük a gépet, amennyiben ezt a Security Group-ban, vagy a Firewall alatt engedélyezzük.
apt-get update
apt-get install python-openstackclient
</pre>
 
Telepítés SNAP-ből:
<pre>
sudo snap install openstackclients --classic
</pre>

Navigációs menü