Cloud for Education

Innen: KIFÜ Wiki
A lap korábbi változatát látod, amilyen Fazy(AT)niif.hu (vitalap | szerkesztései) 2016. augusztus 15., 15:23-kor történt szerkesztése után volt. (IPv6 címre van szükségem, a felület szerint kapnom kéne, de mégsem)

Ismertető

22 perces ismertető, ami az NWS 2016-on hangzott el. http://videotorium.hu/hu/recordings/details/13396,Cloud4Education_-_Kezdo_lepesek

Igényelhető virtuális erőforrás-csomagok (flavor)

A virtuális gépek létrehozásakor több féle "hardvercsomagból" választhatunk, amelyek az alábbi képen tekinthetők meg.

Flavors

A táblázatban látható root lemezek mérete természetesen a virtuális gép létrehozásakor változtatható.

Felhasználói felület bemutatása

Dashboard áttekintés

Dashboard

Bejelentkezés után a felhasználóhoz tartozó kvóta kihasználtságai láthatjuk, ezen kvóták szabályozása admin felhasználóval tehető meg. A kihasználtságon 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 „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 virtuális routereket, hálózatokat, valamint itt állíthatunk be terheléselosztókat és definiálhatunk tűzfalszabályokat. 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 14.04 verziójú lemezkép letöltését szemlélteti.

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 kívánt lemezképfájl internetes elérhetősége
  • Format: QCOW2 – QEMU Emulator
Mindenki számára elérhető Image-ek* (Forrás: http://docs.openstack.org/image-guide/obtain-images.html)
Operációs Rendszer Bejelentkezési név Minimum diszk méret
Ubuntu 14.04 Trusty Tahr ubuntu 5 GB
Ubuntu 16.04 Xenial ubuntu 5 GB
CentOS 6 centos 8 GB
CentOS 7 centos 8 GB
Debian 8.3 debian 5 GB
CoreOS core 10GB
Fedora 23 fedora 5 GB
* Minden Linux alapú image-ből készített virtuális gépnél az alapértelmezett felhasználó jelszó nélkül sudo képes!


Természetesen a későbbiekben a lista bővülni fog a népszerű Operációs Rendszerek képfájljaival, köztük a Windows néhány verziójával is!

Kulcspár létrehozása/publikus kulcs feltöltése

A „Access & Security” fülre kattintva, 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!

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.
  • 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 számára látható. A másik lehetőség, hogy a létrehozott hálózatot nem osztjuk meg másik tenanttal, azonban hozzárendeljük egy bizonyos tenant-hoz, ezzel garantálva, hogy egy IP cím tartományt csak egy tenant 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 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.

hálózat létrehozása

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.

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ó

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”-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.

Router létrehozás

Security group-ok

A virtuális gépek eléréséhez szükség van tűzfalszabályok definiálására, amelyre a „Security Groups” fülön van lehetőség. Alapértelmezetten egy „Default” security group jön létre, amelyben a következő forgalmak vannak alapértelmezetten engedélyezve:

  • Bejövő forgalom esetén: Kizárólag az azonos Security Group-ban elhelyezett virtuális gépekről érkező forgalmak
  • Kimenő forgalom esetén: Minden forgalom engedélyezve van

A lenti példa szemlélteti, hogy hogyan engedélyezhetjük az SSH és ICMP forgalmakat minden külső hálózatból:

Szabály létrehozása

Szabály létrehozása

Szabály létrehozása


Természetesen nem kötelező a Default security group-ot módosítani, létrehozható másik szabályrendszer is, és hozzárendelhető akár több csoport is egy virtuális géphez. A szabályok hozzáadásával lehetőség van a gép távoli elérésére a megadott protokollon keresztül.

LBaaS

Az LBaaS funkció jelenleg nem elérhető.

FWaaS

Egy másik hálózati lehetőség a tűzfal alkalmazása. Alapértelmezetten a már bemutatott Security Group felel a virtuális gépek elérhetőségének szabályozásáról, azonban lehetőségünk van egy sokkal részletesebben szabályozható technika alkalmazására is. A tűzfal működéséhez fontos, hogy a Default Security Group-ban engedélyezni kell a ki és bemenő forgalmat bárhonnan, mivel a korlátozásokat és a konkrét szabályokat a tűzfal modulban vehetjük fel.

A 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 az a menüstruktúrában is látszik, a tűzfal három részből tevődik össze:

  • Firewall Rules
  • Firewall Policies
  • Firewalls

Első lépésként létre kell hoznunk a szabályokat, majd a szabályokat egy csoportba kell foglalni, végül létre kell hozni egy tűzfalat, majd hozzárendelni a szabálycsoporthoz és a virtuális router-hez. Szabályok létrehozásához válasszuk 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.

Szabály létrehozása


A szabály létrehozása után szükség van egy csoportrendszerre, amely a szabályokat fogja tartalmazni. Ehhez válasszuk a „Firewall Policies” lehetőséget, majd 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. Szabályrendszer létrehozása

Szabály hozzárendelés


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. Tűzfal létrehozása

Router hozzárendelés tűzfalhoz


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. További szabály létrehozása


A szabály létrehozása után hozzá kell adni a létező szabályrendszerhez. A szabályok értelmezése lineáris, tehát minél később található meg a listában egy adott szabály, a csomag annál később jut el odáig. Abban az esetben, ha a lista bármely szabálya illeszkedik az adott csomagra, az adott szabály függvényében a csomag eldobásra, vagy átengedésre kerül. Ennek értelmében a következő ábrán látható módon szúrjuk be a szabályrendszerbe a létrehozott szabályt. 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 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.

VM indítása

Kulcspár és security group társítása

A következő á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, valamint megadhatjuk, hogy melyik Security Group vonatkozzon a virtuális gépünkre.

SecurityGroup kiválasztása

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.

Hálózat kiválasztása


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.


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 1:1 NAT alkalmazásával 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ő.
Floating IP hozzárendelése

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” alatt található „Access & Security” 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.

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.

Rendelkezésre álló IP címek listája

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.

Virtuális gépek kezelése

Snapshot létrehozása/indítás snapshotból

További lehetőség a létrehozott virtuális géppel kapcsolatban, hogy bármikor készíthetünk róla egy úgynevezett pillanatképet, amelyből később létrehozhatunk egy másik virtuális gépet, folytatva ott a munkát, ahol a pillanatkép készült, a régi gépet pedig leállíthatjuk, vagy törölhetjük. Ehhez a már ismert „Compute” menüpont alatt válasszuk a „Volume” lehetőséget. A kilistázott Volume-ok között válasszuk ki a megfelelőt, majd az „Actions” szekcióban található legördülő menüből válasszuk a „Create Snapshot” lehetőséget. Az ábrán látható módon adjunk neki egy nevet, majd készítsük el a pillanatképet.

Snapshot létrehozás


Az elkészült pillanatképből készítsünk egy újabb virtuális gépet, a már ismert módon, azzal a különbséggel, hogy a gépet ezúttal ne image-ből, hanem snapshot-ból indítsuk.

Snapshot létrehozás

FAQ

Nem sikerült az image létrehozása a webfelületen

Valószínűleg bejelölted a "Public" lehetőséget, amelyhez a felhasználóknak nincs jogosultságuk. Erre csak admin jogosultságú felhasználó képes.

Nem tudom, hogy mi az azonosító és jelszó a példányosított image-emhez.

Mert nem kötötted hozzá a publikus kulcsodat, amit előzőleg feltöltöttél az access & security key pairs fül alatt. Az SSH kulcsos azonosítással történik. A felhasználói nevek a Flavors táblázatban vannak feltüntetve.

Nem tudok belépni a gépre távolról

Az alapértelmezett tűzfalszabályok nem engedélyezik a kívülről jövő kapcsolatokat. Konfigurációjuk leírása a Security group-ok szakaszban található.

Nem tudok a létrehozott VM konzolján gépelni

Ahhoz, hogy gépelni tudjunk, vagy grafikus felülettel rendelkező oprációs rendszer esetén az egérrel dolgozni, a konzol melletti szürke területre kell kattintani és NEM a konzol ablakába.

IPv6 címre van szükségem, a felület szerint kapnom kéne, de mégsem

Ennek oka, hogy az adott Security Group nem "engedi be" az SLAAC-hoz szükséges hirdetési információkat. A tűzfal alábbi bővítése egy reboot megoldja a problémát:

ICMPv6 Enable