Az elmúlt hetekben megismerhettük a böngészőben használható parancssori eszközt, a Cloud Shell-t a nagyobb felhőszolgáltatóknál, úgy mint az AWS vagy a Google Cloud. Amint láthattuk, a CloudShell egy olyan böngészőben használható parancssori eszköz, amely leegyszerűsíti a „kommunikációt” az aktuális felhőszolgáltatónk és közöttünk. Hiszen nem kell semmi új komponenst nem kell telepítenem a számítógépemre, hogy kezelni tudjam a felhőerőforrásaimat. Ez az eszköz kiemelten hasznos mindazok számára, akik szeretnének kísérletezni, alkalmazásokat fejleszteni, tanulni vagy hibákat elhárítani a felhőben. És mindezt nagyon gyorsan.
A korábbi cikkekben bemutatott megoldásokkal ellentétben, az Azure esetén nem lesz olyan rejtett gép a háttérben, amelyen futtathatjuk a parancsainkat. Itt kissé másképpen működik, de ne szaladjunk ennyire előre.
Mi az Azure Cloud Shell?
Az Azure Cloud Shell az egyik legkényelmesebb és legrugalmasabb eszköz, amelyet az Azure felhasználóknak kínál. Ez a böngésző alapú parancssori környezet lehetővé teszi, hogy bárhonnan, bármilyen eszközről elérd és kezeld az Azure erőforrásaidat. Nincs szükség telepítésekre vagy konfigurációkra, mindössze egy internetkapcsolat és egy web böngésző kell hozzá.
Ami a legjobb ebben és az Azure Cloud Shell-t egyedivé teszi, hogy egy helyen férhetsz hozzá az Azure CLI-hoz, a PowerShell-hez, és számos előre telepített eszközhöz, miközben automatikusan hozzáférsz egy tárhelyhez (tárfiók – storage account) is, ahol a fájljaid és szkriptek is találhatók. Ez az eszköz nemcsak időt takarít meg, de megkönnyíti az Azure erőforrások hatékony és biztonságos kezelését.
Fő funkciók, előnyök és tippek:
Webalapú hozzáférés: Bármilyen böngészőből elérhető (akár mobiltelefonról is), nincs szükség telepítésre.
Beépített eszközök: Bash, PowerShell, Azure CLI, és számos más előre telepített eszköz. (Pl.: Git)
Tárhely integráció: Automatikus kapcsolat egy előre megadott tárfiókkal (Azure Storage Account) a szkriptek és fájlok tárolásához. Ezt a tárhelyet ráadásul felcsatolhatod a helyi számítógépedre is.
Egyszerű erőforrás-kezelés: Parancsok és szkriptek egyszerű, gyors futtatása az Azure erőforrások hatékony kezeléséhez.
Alias-ok beállítása: Gyorsítsd meg a munkádat egyéni parancsokkal.
VS Code integráció: Használd a Cloud Shell-t közvetlenül a Visual Studio Code-ból.
Gyorsbillentyűk: Ismerd meg a legfontosabb billentyűkombinációkat, hogy úgy dolgozz mint egy profi.
PowerShell és Bash együtt
A többi felhőszolgáltatótól eltérően, a Microsoft gondolt azon szakemberekre, akiknél vagy PowerShell vagy Bash tapasztalat a nagyobb. Hiszen előfordulhat, hogy valaki a felhő előtt csak PowerShell-t használt, vagy csak Bash-t. Azure-ban pedig senkinek sem kell újratanulnia semmit vagy megszoknia egy új nyelvet.
Egyetlen kattintással választhatunk Bash vagy PowerShell környezetet és ha meggondolnánk magunkat akkor is bármikor átválthatunk a másikra. Teljes szabadságot kapunk. Ez igazán jó hír mindenkinek. 🙂
Kattint a jobb felső sarokban lévő Cloud Shell ikonra.
Válaszd ki, hogy Bash-t vagy PowerShell-t szeretnél használni először
Utána lehetőséged van Tárfiók nélküli beállításra (ekkor a használat végén minden fájl és parancs előzmény törlődik) vagy ha szeretnéd tárolni a szkriptjeidet és fájljaidat, akkor a Tárfiók csatlakoztatása lehetőséget válaszd.
Ezután ki kell választanod azt az előfizetést, amelyben a fájlokat tároló tárfiók van/lesz.
Következő lépésben 3 lehetőséged van:
Meglévő tárfiók kiválasztása: Ez akkor hasznos, ha a tárfiókod már létezik és azt szeretnéd felcsatolni a Cloud Shell mögé
Létrehozunk Önnek egy tárfiókot: Ez esetben az Azure létrehoz egy tárfiókot véletlenszerűen a kijelölt előfizetésben. Ez akkor hasznos, ha gyorsan szeretnék a beállítást elvégezni. (nem javasolt)
Szeretnék létrehozni egy tárfiókot: Általában ezt a lehetőséget választjuk a legtöbb esetben, mert így mi adjuk meg, hogy milyen néven és melyik erőforráscsoportba kerüljön a tárfiók.
Ha a harmadikat választottuk, akkor a következő lapon meg kell adnunk az alábbi adatokat:
Előfizetés neve: Ahová a tárfiókot létrehozzuk
Erőforráscsoport: Ahová a tárfiók létrejön
Régió: Melyik régióban legyen az erőforráscsoport és a tárfiók
Tárfiók neve: Egyedi névnek kell lennie
Fájlmegosztás: Fájlmegosztás neve, ahol a fájlokat majd mentjük és amit fel tudunk csatolni a saját gépünkre (Windows, Linux, Mac)
Ha ezzel megvagyunk, akkor a Létrehozás gombra kattintva 1-2 perc alatt befejeződik a Cloud Shell beállítása.
Példa parancsok
Amint elindult a Cloud Shell, végtelen lehetőségünk van arra, milyen parancsokat futtatunk. Innen már csak rajtunk és a kitűzött céltól függ a parancsok bonyolultsága és jellege.
Cégünk életében nagyon sok olyan folyamatot kell valamilyen informatikai rendszeren megvalósítani, amely valamilyen előre meghatározott lépéssorozatot követ minden esetben amikor szükség van rá. Ilyen például bármilyen jóváhagyási munkafolyamat (workflow), amivel szerintem Te is sűrűn találkozol. Ha egy jogosultságra van szükséged vagy valamilyen tanfolyamra jelentkezel, akkor kitöltöd a szükséges űrlapot, majd rákattintasz az „Igény elküldésre” és a háttérben elindul a megfelelő workflow. Egy ilyen workflow esetén habár előre meghatározott lépeseket követ a munkafolyamat, a lépések a megadott paraméterek alapján rugalmasan változnak. (Pl.: neked más a jóváhagyó felettesed, mint egy másik részlegen dolgozó kollégádnak) Korábban egy cég külön pályázaton keresztül kereste meg a megfelelő „workflow motor”-t, azaz azt a külső alkalmazást, amellyel rugalmasan, megbízhatóan és felhasználóbarát módon lehet munkafolyamatokat integrálni a cég életébe.
Azure esetén márt írtam nektek a Logic Apps megoldásról, amely lehetővé teszi, hogy összekapcsoljuk a különböző alkalmazásokat és adatforrásokat egy-egy folyamatban. Ezt szinte végtelen módon megtehetjük, attól függően, mire is van szükségünk.
Mind az SWF, mind a Step Functions olyan szolgáltatások az AWS-ben, amelyek munkafolyamatok (workflow) automatizálására és kezelhetőbbé tételére szolgálnak. Azonban a céljuk, működésük és felhasználási eseteik eltérőek. Ha gyorsan és könnyen szeretnél munkafolyamatokat létrehozni, akkor a Step Functions amire szükséged van. Ezzel foglalkozunk ma.
Mi az AWS Step Functions?
Az AWS Step Functions egy munkafolyamat-orkesztrációs szolgáltatás, amely állapotgépek használatával kapcsolja össze és irányítja a különböző AWS-szolgáltatásokat. Ez a szolgáltatás lehetővé teszi, hogy az egyes folyamatlépéseket (például adatfeldolgozás, API-hívás, várakozási idő, döntéshozatal) könnyen definiáld, vizualizáld és karbantartsd. Tehát összetett munkafolyamatokat lehet vele könnyen létrehozni.
Az AWS Step Functions működésének kulcselemei:
Állapotgép (State Machine): Egy olyan folyamatleírás, amely az alkalmazás vagy a rendszer működésének lépéseit és állapotait definiálja.
JSON alapú definíció: A munkafolyamatokat Amazon States Language (ASL) segítségével lehet definiálni, amely egy JSON-alapú szintaxis.
Integráció más AWS-szolgáltatásokkal: Közvetlenül együttműködik olyan szolgáltatásokkal, mint az AWS Lambda, Amazon S3, Amazon DynamoDB, és még sok más, amire szükségünk lehet a mindennapi üzleti életben.
Főbb jellemzői
Vizuális munkafolyamat-tervezés: Az AWS Management Console lehetőséget nyújt a munkafolyamatok vizuális szerkesztésére és monitorozására. Ez megkönnyíti a hibák felismerését és az átláthatóságot.
Hibatűrés és újrapróbálkozás (Retry): Beépített hibatűrési mechanizmusok, amelyek lehetővé teszik a folyamatlépések automatikus újrapróbálkozását meghatározott szabályok szerint.
Auditálhatóság és naplózás: Az egyes lépések részletes naplózása az Amazon CloudWatch segítségével történik, amely segíti a hibakeresést és a teljesítmény optimalizálását.
Skálázhatóság: Az AWS Step Functions a háttérben automatikusan kezeli a skálázást, így az alkalmazások mindig a szükséges teljesítményt nyújtják.
Integráció az AWS SDK-val: Könnyen kombinálható különböző AWS-szolgáltatásokkal és egyéni API-hívásokkal is.
Mikor érdemes az AWS Step Functions-t használni?
Az AWS Step Functions használata akkor érdemes, ha olyan összetett munkafolyamatokat kell kezelni, amelyek több különböző összetevő integrációját igénylik. Például adatfeldolgozási folyamatok során, ahol az adatok összegyűjtése, transzformációja (átalakítása) és tárolása több lépésben történik, a Step Functions lehetővé teszi a lépések logikai sorrendjének meghatározását és automatikus végrehajtását. Emellett kiválóan használható mikroszolgáltatások közötti kommunikációhoz.
Az időzített vagy párhuzamosan futó folyamatok kezelésére is ideális megoldást nyújt, hiszen lehetőséget biztosít az automatizációra és a skálázhatóságra. Ha mesterséges intelligencia alkalmazásokhoz, például gépi tanulási modellek betanításához, validálásához vagy telepítéséhez keresünk eszközt, az AWS Step Functions segítségével a különböző lépések könnyen kezelhetők és monitorozhatók.
Röviden, olyan helyzetekben érdemes használni, ahol a munkafolyamatok vizuális ábrázolása, automatizációja és hibatűrővé tétele egyaránt fontos, miközben minimalizálni szeretnénk a manuális beavatkozást és maximalizálni a folyamatok hatékonyságát.
AWS Step Functions előnyei
Egyszerűség és rugalmasság: Nem szükséges egyedi kódot írni a munkafolyamatok irányításához.
Automatizált hibakezelés: Csökkenti az manuális beavatkozás szükségességét, ami gyorsabb és költséghatékonyabb működést eredményez.
Költséghatékonyság: Fizetni csak a végrehajtott tranzakciókért kell, nincsenek állandó költségek.
Biztonság: Az AWS IAM segítségével részletes hozzáférés-kezelési lehetőségek biztosítottak.
Példák a Step Functions használatára
Adatok feldolgozása: Például, ha egy weboldalra feltöltött képeket át kell méretezni vagy elemezni, a folyamat minden lépését automatizálhatod.
Rendelési folyamatok kezelése: Egy webshopban a rendelés fogadása, fizetés ellenőrzése és kiszállítási adatok feldolgozása egyszerűen megvalósítható.
Jóváhagyási folyamatok: Ha például egy alkalmazottnak szabadságot kell kérnie, a kérelmet automatikusan ellenőrizheted, majd egy vezető dönthet róla.
Időzített feladatok: Nap végén automatikusan összefoglalhatod az értékesítési adatokat és e-mailben elküldheted.
Hibakezelés: Ha egy lépés nem sikerül (például egy API-hívás), a rendszer automatikusan újrapróbálkozik.
Értesítések küldése: Ha valami fontos történik, például egy új rendelés érkezik, a rendszer e-mailt vagy SMS-t küldhet róla.
Egyszerű eseményvezérlés: Ha valaki feltölt egy fájlt egy tárhelyre, a rendszer automatikusan feldolgozhatja azt.
Gépi tanulási modellek kezelése: Ha mesterséges intelligencia modellel dolgozol, segít a tanítási és elemzési lépések automatizálásában.
Weboldal adatok frissítése: Például egy hírportálon éjszaka lefutó folyamat, ami az új híreket betölti a rendszerbe.
Rendszerek közti kapcsolódás: Ha több különböző szolgáltatás használatával dolgozol, például fizetési rendszerekkel és adatbázisokkal, ezek közötti munkát könnyen összehangolhatod.
Összegezve
Az AWS Step Functions egy hatékony eszköz, amely lehetővé teszi, hogy bonyolult folyamatokat egyszerűen és gyorsan valósítsunk meg az AWS-en belül. Legyen szó adatfeldolgozásról, mikroszolgáltatások integrációjáról vagy gépi tanulásról, a Step Functions kiváló választás a munkafolyamatok egyszerűsítésére és optimalizálására.
Ugye milyen jól hangzik? Remélem Te is kipróbálod. 🙂
Azure és bármelyik felhő szolgáltató esetén vannak azok a szolgáltatások, amelyek arra hivatottak, hogy felgyorsítsák vállalkozásunk, ötleteink megvalósítását. Ezek nem kész megoldások, amelyeket azonnal használatba tudunk venni (általában SaaS), hanem olyan megoldások, amelyet platformot adnak az ötleteinknek (PaaS).
Ezek közül is több féle van. Van olyan ahol a forráskódunkat teljes egészében nekünk kell lefejleszteni, de van olyan is ahol ebben is kapunk segítséget. A Logic Apps az a szolgáltatás, ahol segítséget is kapuink ahhoz, hogy a felhasználóinknak (külső vagy belső) elérhetővé tegyük megoldásainkat.
A Logic Apps azonban nem ezért lesz fontos nekünk. Cégünk életében nagyon sok olyan folyamatot kell valamilyen informatikai rendszeren megvalósítani, amely valamilyen előre meghatározott lépéssorozatot követ minden esetben amikor szükség van rá. Ilyen például bármilyen jóváhagyási munkafolyamat (workflow), amivel szerintem Te is sűrűn találkozol. Ha egy jogosultságra van szükséged vagy valamilyen tanfolyamra jelentkezel, akkor kitöltöd a szükséges űrlapot, majd rákattintasz az „Igény elküldésre” és a háttérben elindul a megfelelő workflow. Egy ilyen workflow esetén habár előre meghatározott lépeseket követ a munkafolyamat, a lépések a megadott paraméterek alapján rugalmasan változnak. (Pl.: neked más a jóváhagyó felettesed, mint egy másik részlegen dolgozó kollégádnak) Korábban egy cég külön pályázaton keresztül kereste meg a megfelelő „workflow motor”-t, azaz azt a külső alkalmazást, amellyel rugalmasan, megbízhatóan és felhasználóbarát módon lehet munkafolyamatokat integrálni a cég életébe.
Ha valaki SharePoint-ot használt, akkor az tudhatja, hog abban 2013-tól egy igen jól használható munkafolyamat kezelés lett integrálva, ami a dokumentumkezelés közeli munkafolyamatokat szinte minden szempontból el tudta fedni.
A Logic Apps ennek egy következő, modernebb, felhő alapú megvalósítása, amely már önálló szolgáltatásként vehető igénybe. Ez már nem korlátozódik a dokumentumokkal kapcsolatos jóváhagyásra.
Az Azure Logic App egy felhőalapú szolgáltatás a Microsoft Azure platformján, amely lehetővé teszi különböző rendszerek és alkalmazások közötti automatizált munkafolyamatok létrehozását. A Logic App segítségével gyorsan, kódolás nélkül építhetünk összetett folyamatokat, amelyek különböző adatforrásokat, alkalmazásokat és szolgáltatásokat kapcsolhatnak össze. Ez különösen hasznos lehet olyan vállalkozások és fejlesztők számára, akik egyszerűsíteni szeretnék a mindennapi feladataikat vagy adatkezelési folyamataikat. Ha most ismerkedsz az Azure világával, a Logic App remek belépő lehet, hogy megtapasztald, milyen egyszerűen és gyorsan építhetők automatizált munkafolyamatok a felhőben.
Mi az Azure Logic App?
Az Azure Logic App egy szolgáltatás, amely lehetővé teszi, hogy összekapcsoljuk a különböző alkalmazásokat és adatforrásokat egy-egy folyamatban. A Logic App-ek vizuális felületen építhetők fel, és különböző trigger-ek (indítók) és action-ök (műveletek) segítségével hoznak létre automatizációkat.
A Logic App alapvető elemei
Trigger: Olyan esemény, ami elindítja a folyamatot. Például egy új e-mail beérkezése, egy fájl feltöltése egy adott tárfiókra, egy bizonyos időpont egy adott napon, vagy ha egy linken keresztül meghívom kívülről.
Actions: Műveletek, amelyeket a trigger elindulása után hajt végre a Logic App. Például adat továbbítása egy másik rendszerbe, e-mail küldése, egy jelentés generálása, vagy akár egy másik Azure szolgáltatással való interakció (vírtuáis gép elindítása/leállítása, másik Logic App elindítása).
Hogyan működik az Azure Logic App?
Trigger kiválasztása: Első lépésként meghatározzuk, mi fogja elindítani a munkafolyamatot. Ez lehet időalapú (például napi rendszerességgel indul), vagy egy eseményhez kötött (például új e-mail érkezése).
Műveletek hozzáadása: Miután kiválasztottuk a trigger-t, hozzáadhatjuk azokat a műveleteket, amiket el szeretnénk végezni. Az Azure Logic App több száz előre definiált művelettel rendelkezik, amelyek lehetővé teszik különböző rendszerek integrálását, mint például a Microsoft 365, a Salesforce vagy a GitHub.
Tesztelés és üzemeltetés: Miután létrehoztuk a munkafolyamatot, érdemes tesztelni a működését, majd élesíteni. Az Azure Logic App lehetőséget biztosít az alkalmazások folyamatos felügyeletére, így nyomon követhetjük az automatizációk működését.
Számlázás és költségek: A logikai alkalmazások általában az úgynevezett App Service Plan szolgáltatáson keresztül számlázódnak. Ez fogja meghatározni az elérhető funkciókat és a rendelkezésre álló erőforrásokat (processzor, memória, tárhely, stb.) Minél több erőforrásra van szükségünk, annál több lesz a költsége.
Logic App típusai
A logikai alkalmazást legegyszerűbben a portálon hozhatunk létre. Amikor rákattintunk a létrehozásra, akkor el kell döntenünk milyen szolgáltatási konstrukcióban szeretnénk ezt használni.
Használatalapú: Ha nagyon gyorsan szeretnénk valamit létrehozni (teszteléshez, fejlesztéshez), akkor van lehetőségünk megosztott módon létrehozni. Ekkor nem vehetünk majd igénybe jó néhány kényelmi funkciót, viszont olcsó és a logikai alkalmazás futási számának megfelelően fog számlázódni. Ez csupán teszteléshez, fejlesztéshez vagy rövid bemutatókhoz javasolt. Éles környezetben nem javasolt a használata.
Standard: Amikor már egy valódi felhasználásra tervezett megoldást szeretnénk, akkor a standard megoldást válasszuk. Itt jelenleg 3 további lehetőségünk van.
Munkafolyamat-szolgáltatási csomag: a hagyományos App Service Plan alapú megoldás. Ebben több workflow-t egyben tudjuk kezelni.
App Service Environment v3: az új változata a hagyományos megoldásnak, ahol akár izolált környezetet is létrehozhatunk.
Hybrid: ahol vagy a hagyományos adatközpontunkban vagy más felhőszolgáltatóknál lévő szolgáltatásokat is be tudunk vonni.
Hogy melyik esetben mire van szükségünk, azt a felhasználási eset határozza meg.
Példák az Azure Logic App használatára
E-mail értesítések automatizálása: Például értesítések küldése, ha új ügyfél adatait regisztrálják egy adatbázisban.
Adatok szinkronizálása: Két különböző rendszer közötti adatfrissítés, például a Salesforce és egy helyi adatbázis között.
Jogosultság kezelés: Azure előfizetéshez vagy más rendszerekhez történő hozzáférés automatikus igénylése és beállítása.
Riportálási folyamatok automatizálása: Például havi pénzügyi riportok generálása és e-mailben történő megküldése a felelős személyeknek.
Valójában bármire használhatjuk, ahol workflow szükséges.
Miért hasznos az Azure Logic App?
A Logic App használatával a cégek képesek időt és erőforrást megtakarítani, hiszen az ismétlődő, manuális folyamatok könnyedén automatizálhatók. Emellett a vizuális felület révén olyan szakemberek is használhatják, akik nem rendelkeznek fejlesztői háttérrel, így a Logic App különösen hasznos lehet a nem programozók számára is.
Könnyedén hozhatunk létre egyszerű és bonyolult feltételeket, annak megfelelően, hogy a folyamt fejlesztőink milyen lépéseket határoztak meg az egyes céges folyamatokhoz kapcsolódóan. A sablonok használata még tovább egyszerűsíti a feladatunkat, hiszen ha találunk olyan sablont, amely köze áll a mi folyamatainkhoz, akkor csupán át kell alakítanunk az a sajt szájízünk szerint.
Ebben is, mint szinte bármelyik felhő szolgáltatásban, a határ a csillagos ég. Csak a fantáziánk és a rendelkezésre álló idő szabhat határt. 🙂
A virtuális gépekről már mindent tudunk, legalábbis az összetevőiről Azure-bane. Tehát ismerjük a virtuális gépet, a gépméretet, hálózatot, hálózati kártyát, felügyelt lemezt és az automatikus leállítást. Ezek segítségével, már egy működő gépet létre is tudunk hozni. Azonban ez a gép még nem lesz elérhető az internet felől. Vannak esetek, amikor erre nincs is szükség. Ha neked mégis olyan virtuális gépre van szükséged, amely közvetlenül is elérhető az internet felől, akkor egy újabb erőforrást kell hozzácsatolnod a gépedhez. Ennek neve: nyilvános IP (Public IP).
Mi az Azure nyilvános IP és hogyan működik?
Az Azure nyilvános IP cím olyan egyedi azonosító, amelyet az Azure platformon futó erőforrások (például virtuális gépek, Azure Load Balancer-ek, Azure Application Gateway-ek) kapnak annak érdekében, hogy elérhetők legyenek az internet felől. A nyilvános IP címek lehetővé teszik, hogy ezek az erőforrások kapcsolatba lépjenek más internetes szolgáltatásokkal vagy elérhetők legyenek külső felhasználók számára.
Hogyan kapunk nyilvános IP címet az Azure-ban?
Az Azure-ban többféle módon szerezhetünk nyilvános IP címet:
Automatikus hozzárendelés: Bizonyos erőforrások, például virtuális gépek, alapértelmezés szerint kaphatnak nyilvános IP címet, ha azt igénylik. Az Azure automatikusan biztosít számukra egyet, amikor létrehozzuk az erőforrást.
Kézi hozzárendelés: A felhasználók saját maguk is kérhetnek egy nyilvános IP címet, amelyet hozzárendelhetnek az általuk választott erőforráshoz (virtuális gép esetán valamelyik hálózati kártyához). Ehhez az Azure felületén egy „Nyilvános IP cím” nevű erőforrást kell létrehozni.
Miért fontos a nyilvános IP cím?
A nyilvános IP címek lehetővé teszik, hogy a virtuális gépek és más erőforrások elérhetők legyenek az interneten, például weboldalakat szolgáltathatunk vagy távoli hozzáférést biztosíthatunk egy szerverhez. Ez elengedhetetlen például egy webalkalmazás futtatásához, amelynek elérhetőnek kell lennie globálisan, a világ minden pontjáról.
Dinamikus vagy statikus IP cím
Az Azure-ban kétféle nyilvános IP címet használhatunk:
Dinamikus IP cím: Ez az IP cím időszakosan változik, például amikor az erőforrás (pl.: virtuális gép) újraindul. Ez költséghatékonyabb lehet, de hátránya, hogy az erőforrás IP címe időnként változik, ami megnehezítheti a stabil elérhetőséget. (ezt kiküszöbölhetjük, ha egy DNS bejegyzést rendelünk a nyilvános IP erőforráshoz)
Statikus IP cím: Ez az IP cím nem változik, még akkor sem, ha az erőforrás újraindul vagy más változások történnek. Az olyan helyzetekben hasznos, amikor fontos, hogy mindig ugyanazon az IP címen érjük el az erőforrást, például ha DNS rekordokat használunk vagy SSL tanúsítványokat állítunk be.
Válaszd ki a „Nyilvános IP-címek” erőforrást az Azure portálon.
Kattints az „Létrehozás” gombra, és töltsd ki a szükséges adatokat:
Erőforráscsoport: Add meg melyik erőforráscsoportba kerüljön.
Régió: Add meg, melyik Azure régióban legyen elérhető az IP cím.
Név: Adj egy nevet az IP címnek, ami könnyen azonosítható.
IP-verzió: Itt IPv4 (pl.: 192.168.1.1) és IPv6 (pl.: 2001:0db8:85a3:0000:0000:8a2e:0370:7334) közül választhatunk.
Termékváltozat: Választhatunk Alapszintű és Standard között. (A nyilvános IP-cím termékváltozatának meg kell egyeznie azon terheléselosztó termékváltozatával, amelyhez használják azt.) Ez a szolgáltatási szintet befolyásolja.
Rendelkezésre állási zóna: Megadhatsz egy rendelkezésre állási zónát is, melyben szeretnéd üzembe helyezni a nyilvános IP-címet. Zónaredundáns nyilvános IP-cím létrehozásához válaszd a Zónaredundáns lehetőséget.
IP cím típusa: Habár látszik a lehetőség, hogy dinamikus vagy statikus IP címet szeretnél, ennek ellenére kézzel már csakstatikusat tudsz létrehozni.
Útválasztási preferencia: Itt adhatod meg, hogy miként bonyolódjon az Azure és az Internet közötti forgalom. Ha a Microsoft globális hálózatát választod, a forgalom a felhasználóhoz legközelebbi globális Microsoft-hálózaton keresztül fog bonyolódni. Ha az internetes útvonalat választod, a forgalmat egy átmenő ISP-hálózat (internetszolgáltató) fogja átengedni. A nyilvános IP-címek útválasztási beállítása a megadás után már nem módosítható.
Üresjárati időkorlát (perc): Az ügyfelek által küldött életben tartási üzenetek (TTL) nélkül is nyitva tart egy TCP- vagy HTTP-kapcsolatot. (alapértelmezetten ez 4 perc)
DNS-névcímke: Itt tudsz egyedi, de azure-os dns nevet adni a nyilvános IP-nek
DDoS elleni védelmet is be tudsz itt kapcsolni, a magasabb biztonság elérése érdekében.
Miután létrehoztad az IP címet, hozzárendelheted azt egy meglévő erőforráshoz, például egy virtuális géphez vagy alkalmazáshoz.
Mikor érdemes használni?
Nyilvános IP címeket akkor érdemes használni, ha:
Külső hozzáférést szeretnél biztosítani a virtuális gépedhez vagy alkalmazásodhoz.
Webszolgáltatásokat hosztolsz, amelyeknek elérhetőnek kell lenniük az interneten.
Távoli kapcsolódást (például SSH vagy RDP) szeretnél biztosítani egy szerverhez.
Költségek
Az Azure nyilvános IP címek használata díjköteles. A költségek függnek attól, hogy statikus vagy dinamikus címet választasz, valamint hogy mennyi adatforgalmat bonyolítasz le az adott IP címről. Alapára a nyilvános IP-nek $3 – $8 között van havonta.
Összefoglalás
Az Azure nyilvános IP címek alapvető eszközök, amelyek lehetővé teszik, hogy az Azure erőforrásaid közvetlenül elérhetők legyenek az internet felől. Amikor létrehozol egy virtuális gépet, akkor egy ilyen erőforrás mindig automatikusan létrejön, hogy a lehető leghamarabb hozzáférj az új gépedhez.
Az erőforrásaink, különösen a virtuális gépek védelmének módjait és az illetéktelen hozzáférés elleni védekezést a következő cikkekben részletezzük majd.
Addig is hozz létre egy virtuális gépet és nézd meg milyen erőforrások jönnek hozzá létre. 🙂
Korábban már beszéltünk a virtuális gépekről és azok összetevőiről, mint a gépméret, hálózat, hálózati kártya vagy az automatikus leállítás. Ezek azonban még kevés hogy legyen egy működőképes virtuális gépünk. Akkor mi hiányzik még? Az adattárolásra szolgáló lemez vagy lemezek.
A lemezek lesznek azok az erőforrások amelyeken az operációs rendszert (Windows, Linux) és a programjaink által használt fájlokat fogom tárolni. Amikor 2008-ban elindult az Azure, akkor még más fajta lemezek voltak elérhetőek, mint ma. Akkor a lemezek még fájlok voltak (vhd, vhdx, vmdk), amelyeket még tárfiókban tartottuk.
Ahogy azonban előrehaladt az idő és minden külön erőforrássá vált, megjelentek a felügyelt lemezek. Ezek már nem fájlokként jelennek meg, hanem különálló erőforrásként az Azure-ban. Ma ezekről lesz szó.
Mi az az Azure Managed Disk?
Az Azure Managed Disk egy felhőalapú tárhely megoldás, amelyet az Azure biztosít. Ha Azure-ban virtuális gépeket hozol létre, szükséged lesz olyan lemezekre, amelyek tárolják az operációs rendszert, az adatokat és egyéb alkalmazásokat. A felügyelt lemez abban segít, hogy ezt a tárhelyet egyszerűen és automatikusan kezeld, anélkül hogy aggódnod kellene a háttérben zajló műszaki részletek miatt, például a méretezhetőség vagy a teljesítmény miatt.
Hogyan működik?
A felügyelt lemez lényege, hogy a Microsoft kezeli helyetted a tárhelyed. Te csak kiválasztod, hogy milyen típusú és méretű lemezre van szükséged, az Azure pedig gondoskodik a teljesítményről, a redundanciáról és a biztonságról.
Típusok: Az Azure Managed Disk különböző típusokban elérhető, attól függően, hogy milyen teljesítményre van szükséged:
Standard HDD: Olcsóbb, de lassabb megoldás, alkalmas alacsony forgalmú alkalmazásokhoz.
Standard SSD: Közepes árú és teljesítményű, ideális általános célokra.
Premium SSD: Magas teljesítményű, alacsony késleltetésű megoldás, amelyet nagy forgalmú alkalmazásokhoz, adatbázisokhoz ajánlanak.
Fontos: Ha egy virtuális gépet hozol létre egy szerepkörre, akkor csak Premium SSD esetén vállalja a VM-re az Azure a rendelkezésreállást.
Miért érdemes használni?
Egyszerű kezelés: Az Azure Managed Disk automatikusan kezeli a lemezek méretezését és teljesítményét, neked csak annyi a dolgod, hogy kiválaszd a megfelelő lemezt.
Biztonság: A Managed Disk automatikusan titkosítja az adatokat, így nem kell aggódnod az adatvédelem miatt.
Redundancia: Az Azure több másolatot is tárol a lemezekből, így az adataid biztonságban vannak egy esetleges hardverhiba esetén is. Rendelkezésreállás: 99,999%
Könnyű méretezhetőség: Ha az alkalmazásod nő, vagy több erőforrásra van szükséged, könnyedén átválthatsz nagyobb kapacitású lemezre, anélkül, hogy manuális beavatkozásra lenne szükség. (Méretét lefelé csökkenteni azonban nem tudod)
Egyéb tudnivalók
A fentiek alapján már láthatod, hogy minden VM-hez, minden feladathoz megtalálhatod a megfelelő felügyelt lemezt. Ezen felül, azonban vannak olyan sajátosságai, amivel jó, ha tisztában vagy.
A teljes méretért fizetni kell: Amikor létrehozol a virtuális gépedhez egy felügyelt lemezt, akkor a havi számládon mindig a teljes lemez méretének az ára szerepelni fog, akkor is ha az a lemez üres vagy csak 100 MB hely foglalt rajta. Ezért javasolt, a felhasználáshoz szükséges legkisebb lemez méretet kiválasztani. Majd a növekvő adatok mennyisége alapján, bővíteni a lemez méretét.
Saját VHD fájlt is feltölthetsz: Amikor a felhőbe költözünk, lehetőségünk van a hagyományos adatközpontban futó szervereink lemezeit VHD formátumban feltölteni Azure-ba, amit felügyelt lehet konvertálni. A konvertálást Azure-Cli és PowerShell segítségével is elvégezhetjük.
Pillanatkép készítése: A virtuális gépeinket mentjük, de előfordulhat olyan eset, amikor egy éppen működő számítógépről szükségünk van egy gyors mentésre. Vagy azért hogy új gépet hozzunk létre belőle, vagy csak azért ,hogy ellenőrizzünk valamit a lemezen. Ez esetben tudunk úgynevezett pillanatképet készíteni (SnapShot) a gépünkről. Ezeket a pillanatképeket használhatjuk új gép létrehozására vagy egyedi képfájlok készítésére is. Ilyenkor egy gombnyomásra létrejön az adott lemeztől egy másolat, amit szabadon felhasználhatunk.
Azure Backup: A virtuális gépeket (illetve azok lemezeit) az Azure mentési megoldásával az Azure Backup-al tudjuk ütemezetten és konzisztensen menteni. Ennek beállítása egyszerű és testre szabható.
Az Azure Managed Disk egy megbízható, biztonságos és könnyen használható tárhelymegoldás, amely leegyszerűsíti a virtuális gépekhez szükséges lemezek kezelését. Amikor létrehozol egy virtuális gépet, akkor egy felügyelt lemez mindenképpen létrejön egy lemez. Emellett, több adatlemezt tudsz még hozzácsatolni egy géphez, attól függ mire van szükséged. Ez a rugalmasság és egyszerűség teszi a felügyelt lemezeket a felhőben történő tárolás egyik legjobb megoldásává.
Ha készen állsz, próbáld ki az Azure felügyelt lemezt, és tapasztald meg saját magad, milyen könnyű vele dolgozni.
Elsőre a felhőszolgáltatások bonyolultnak tűnnek és sokan megrémülnek tőle. Ez részben igaz is, de mint minden területén az életnek vannak olyan lehetőségek, amelyek segítenek nekünk a könnyed elindulásban. Így van ez az AWS esetén is. Az Amazon már régen felismerte, hogy szükség van olyam megoldásokra, amelyekhez nem szükséges felhő- vagy informatikai előképzettség.
Ez az Amazon Lightsail, amely könnyedén vezet be minket a felhő világába úgy, hogy közben igazi felhő rajongókká válhatunk.
Mi az a Lightsail?
Az Amazon Lightsail egy egyszerűsített felhőszolgáltatás, amelyet az Amazon Web Services (AWS) kínál kezdőknek vagy kisebb projekteket futtatóknak. A LightSail célja, hogy könnyen használható megoldásokat (szerverek, alkalmazások, adatbázisok, stb.) biztosítson, minimalizálva a komplexitást, amely a nagyobb AWS szolgáltatásokkal jár.
A szolgáltatás lehetővé teszi, hogy néhány kattintással indíts szolgáltatásokat előre konfigurált beállításokkal, mint például a WordPress weboldalak, adatbázisok, vagy fejlesztői környezetek. Minden Lightsail csomag tartalmazza a szükséges erőforrásokat: CPU-t, memóriát, tárhelyet és adatforgalmat, így egyszerűbbé teszi a használatot.
Főbb előnyei:
Egyszerű indítás: Nem szükséges mély technikai tudás a szerverek elindításához.
Fix havidíjas csomagok: Könnyen kalkulálható költségek, nincs rejtett költség.
Integráció AWS-szolgáltatásokkal: Ha később nagyobb rugalmasságra lenne szükséged, át lehet térni az AWS komplexebb megoldásaira.
Az Amazon Lightsail ideális választás lehet kisebb weboldalak, fejlesztési projektek vagy egyszerű alkalmazások futtatásához, miközben biztosítja a felhő előnyeit anélkül, hogy túlzottan bonyolult beállításokat igényelne.
Ugye milyen érdekesen hangzik?
WordPress
Most pedig megmutatom, hogyan tudsz WordPress weboldalt létrehozni néhány perc alatt. (biztonsági mentéssel együtt)
Hogyan is jutunk el a Lightsail felületére AWS-en?
Korábban már olvastuk, hogy az a központi, hálózati kapcsolatokért és bizonyos felhő erőforrások közötti kapcsolatért a VNET a felelős. Ez a hálótat alapja. Azonban szükségünk van olyan erőforrásra is, ami a biztosítja, hogy virtuális gépeink kommunikáljanak az internettel, az Azure-ral és a egyéb, az előfizetésünkben lévő erőforrásokkal.
Ez az erőforrás a hálózati adapter (nic), amely olyan mint a saját számítógépünkben lévő hálózati kártyák (vezetékes vagy vezeték nélküli). Annak egy virtuális változata, ami vezetékes hálózati kapcsolatot emulál.
A hálózati kártyát úgy kell elképzelni mint egy kábelt, amely egyik fele a virtuális gépünkhöz csatlakozik, másik vége pedig valamelyik (ugyanabban az előfizetésben és régióban létező) virtuális hálózat egyik alhálózatához. (természetesen ez egy nagyon leegyszerűsített leírás, de ez a legegyszerűbb)
Egyedi IP-cím
A hálózati kártya, amint csatlakozik a hálózathoz kap egy IP-címet abból az alhálózatból amelyhez csatlakozik. Ez lehet IPv4-es vagy IPv6-os cím. Mivel minden hálózati kártya egyedi IP-címet kap, így minden virtuális gép, ezen keresztül, egyértelműen azonosítható. Ez azt jelenti, hogy a hálózati forgalom zavartalanul folyik a virtuális hálózatra csatlakoztatott erőforrások között.
Az IP-címet a hálózati kártya tárolja, de a virtuális gép is látja és kezeli.
IP-címet kétféleképpen kaphat egy hálózati kártya (virtuális gép):
Automatikusan kap egyet az alhálózaton eléthető IP-címek közül. Ezt DHCP-nek (Dynamic Host Configuration Protocol) nevezzük.
Manuálisan, kézzel állítjuk be az IP-címét a gépnek az alhálózaton eléthető IP-címek közül. Ennek kockázata, hogy ha nem figyelünk, akkor két virtuális gépnek is adhatjuk ugyanazt az IP-címet. Ez IP-cím ütközéshez vezet, amely elérhetetlenné teszi mindkét gépet, amelyek ugyanazt az IP-címet használják. Erre figyeljünk, ha kézzel szeretnénk beállítani egy gép IP-címét!
Nyilvános IP-cím
Ahhoz hogy egy virtuális gép elérhető legyen az internet felől, ahhoz egy úgynevezett nyilvános IP-címmel kell rendelkeznie. Ez egy külön erőforrás, amelyről a nyilvános IP-címnél részletezek.
Biztonság a hálózaton
Nagyon jó dolog, hogy minden virtuális gép zavartalanul kommunikálhat a virtuális hálózaton belül, de az esetek 99 százalékában kell valamilyen megszorítást, kontrolt alkalmaznunk, hogy megvédjük az alkalmazásainkat az illetéktelen behatolóktól, rosszindulatú támadásoktól és a szükségtelen hozzáférésektől.
Erre is sok lehetőségünk van az Azure-ban. Például:
Alhálózatok használata a hálózaton: Segít logikailag és/vagy szerepkörök alapján csoportosítani az erőforrásokat.
Hálózatbiztonsági csoport (NSG): Ez egy hálózati forgalom szűrő megoldás
Alkalmazásbiztonsági csoport (ASG): Ennek segítségével valamilyen feltétel alapján csoportosítani tudjuk a virtuális gépeinket, majd ezekre az ASG-kre tudunk hálózatbiztonsági csoportban szabályokat definiálni.
Virtuális hálózati kapcsolat (VNet Peering): Két virtuális hálózatot tudunk vele összekötni Azure-on belül.
VPN Gateway és ExpressRoute: Azure-on kívülről való biztonságos kapcsolathoz VPN kapcsolat használata.
Azure Firewall: Tűzfal alkalmazása a hálózaton, a magasabb biztonságért.
Házirendek (Policy) és jogosultságok (RBAC) alkalmazása az előfizetésen belül.
Azure Monitor: Segít azonosítani és naplózni a hozzáféréseket, amelyek alapján risztásokat állíthatunk be vagy riasztásokat hozhatunk létre.
Egy vagy több hálózati adapter
Amikor létrehozunk egy virtuális gépet a portálon, akkor alapértelmezetten csupán egy hálózati adapter jön létre. Ez azonban nem jelenti azt, hogy ne adhatnánk hozzá több hálózati kártyát is egy virtuális géphez.
Így attól függően, hogy milyen felhasználási esetre szeretnék egy gépet létrehozni, utólag is hozzáadhatunk több hálózati adaptert is. A hozzáadott hálózati adapterek, akár más-más virtuális hálózathoz is csatlakozhatnak.
Néhány ilyen felhasználási eset:
Nagyobb sávszélesség elérése: Ma már az operációs rendszerek támogatják, hogy több hálózati kártyát egy nagy hálózati kártyaként használnak. Ezzel nagyobb sávszélességet lehet elérni.
Hálózati redundancia és rendelkezésre állás: Habár a hálózati adapterek a felhőben szinte mindig elérhetőek, azért vannak esetek, amikor 100%-ra szeretnénk menni. Ez esetben több hálózati kártyát hozunk létre ugyanabban a virtuális hálózatban (alhálózatban)
Több virtuális hálózat összekapcsolása: Amikor az alkalmazásunknak több virtuális hálózatba és/vagy alhálózatba kell „belelátnia”. Ez akkor lehet valós eset, amikor egy szervernek több hálózathoz kell tudnia csatlakoznia (front-end, back-end).
Több ip-alapú szolgáltatás nyújtása: Egy virtuális gépen olyan alkalmazás fut, amely több IP-címen keresztül biztosítja az elérést a felhasználóknak.
Ha több hálózati adaptert használunk, akkor figyelnünk kell a forgalom irányításra (routing) is.
Hogyan csináljuk?
Ahogy minden Azure erőforrást, ezt is kezelhetjük többféle képpen:
Azure Portál
Azure-Cli
ARM template (sablon)
Vagy valamilyen infrastruktúra kezelő eszköz. (pl.: Terraform, OpenTofu)
Ennyire egyszerű a hálózati adapter, amin sok múlik a felhőben. 🙂
„A felhő is csak akkor gazdaságos, ha okosan használjuk”
Ezzel az idézetemmel, már sokszor találkozhatott aki ismer, vagy részt vett már valamelyik Mentor Klub képzésemen. Ezt azért is szoktam mondani, mivel a felhő sajátossága, hogy rugalmas és gyorsan lehet benne erőforrásokat létrehozni, magával hoz egy olyan szokást, amelyet a pénztárcánk bánhat. Ez pedig, a nem használt erőforrások kihasználatlanul hagyása. Mit jelent ez?
Tegyük fel beköltözünk a felhőbe, ahol a lehetőségek végtelen tárháza fogad minket. Percenként tudunk hatalmas teljesítményű virtuális gépeket létrehozni és letörölni. Ki tudunk próbálni olyan dolgokat, amelyekről nem is álmodhatunk egy hagyományos adatközpontban. És ebben a nagy szabadságban bekapcsolva hagyunk olyan gépeket, amelyek akkor is költséget generálnak nekünk, amikor mi éppen alszunk. Ez pedig nem jó.
Ha van egy vagy több fejlesztői szerverünk a felhőben, akkor azon általában hétfőtől – péntekig reggel 8 és délután 6 között dolgozunk. (napi kb. 10 óra), ami hetente 50 óra. A hét nagyobb részében azonban (kb. 118 óra) azonban ezek a gépek nincsenek használatban. Ha az egyserűség kedvéért számoljunk egy kicsit. Vegyünk a példa kedvéért egy olyan virtuális gépet, amely 50 Ft-ba kerül óránként. Ha ezt a fenti számokkal kiszámoljuk, akkor szomorú eredményt kapunk:
Gép használatából adódó költség:
Hetente: 50 x 50 Ft = 2 500 Ft
Havonta: kb. 10 000 Ft
Virtuális gép üresjárati költsége (éjszakák és hétvégék):
Hetente: 118 x 50 Ft = 5 900 Ft
Havonta: kb. 23 600 Ft
Amint látjuk a hasznos időben keletkezett költség az kevesebb mint a fele, annak a költségnek, ami akkor keletkezik, amikor pihenünk vagy alszunk. Ezért fontos, hogy
Ha nem használunk egy virtuális gépet, akkor kapcsoljuk le!
Ha a fenti példánál maradunk, akkor elmondhatjuk, hogy ha okosan használjuk a virtuális gépünket ,akkor egy gép teljes árából három gépet is tudunk okosan üzemeltetni. Ez természetesen irreleváns az olyan rendszereknél, amelyek sajátossága, hogy éjjel-nappal működnie kell. Itt most nem is erről van szó. 🙂
Mit tudunk tenni azonban, ha sietünk vagy elfelejtjük a gépeket lekapcsolni? Semmi baj, mert az Azure erre is gondolt. Minden virtuális gép esetén opcionálisan be tudjuk kapcsolni az Automatikus leállítás funkciót, amely egy időzítést fog nekünk létrehozni, amikor a gépet le fogja állítani automatikusan.
Ezt tudjuk engedélyezni a gép létrehozásakor, de utólag is lehetőség van ezt bekapcsolni.
Engedélyezés a virtuális gép létrehozásakor
Az utólagos beállításhoz:
Be kell mennünk a virtuális gép beállításaiba
Keressük meg a Műveletek részt
Majd azon belül találjuk az automatikus leállítást
Itt be- és ki- tudjuk kapcsolni. Ha a bekapcsolásra kattintunk, akkor az alábbi lehetőségeket állíthatjuk be:
Ütemezett leállítás időpontja (24 órás formátumban, másodperc pontossággal): mikor álljon le a gép (például 18:00:00)
Időzóna: mely időzóna szerint szeretnénk a leállítást
A rendszer küldjön értesítést 15 perccel az automatikus leállítás előtt?: ez a beállítás lehetőséget biztosít nekünk, hogy értesítést kapjunk emailben vagy egy felügyeleti rendszeren keresztül a leállítás előtt 15 perccel. Ekkor még van lehetőségünk elhalasztani a leállítást 1 órával, ami hasznos lehet amikor még benne vagyunk a munkában.
Webhook URL-címe: Ha a 15 percces értesítés be van kapcsolva, akkor egy külső webhook linkre tud értesítést küldeni. (Pl. felügyeleti rendszer)
E-mail cím: email címre tud küldeni egy levelet, amelyben értesít a gép leállításáról. A levél szintén tartalmazza az elhalasztáshoz szükséges linket.
Beállítás létező virtuális gép esetén
Elhalasztani többször is lehet a leállítást, ami bizonyos esetekben hasznos lehet.
Miután elmentjük a beállításokat, létrejön egy új (rejtett!) erőforrás, abban az erőforráscsoporban, ahol a gép is létrejött. Ennek típusa: microsoft.devtestlab/schedules
Ez az erőforrás csak akkor látszik az erőforráscsoportban, ha a portálon a Rejtett típusok megjelenítése jelölőnégyzet be van pipálva.
Amint bekapcsoltuk és beállítottuk, a leállítás a megadott adatok alapján működésbe lép és segít nekünk kordában tartani a költségeinket.
Ugye milyen hasznos dolog ez, hogy akár 60 százalékot is spóroljunk egy gép listaárából? 🙂
Ha többet szeretnél még erről tudni, akkor javaslom, hogy olvasd el a hivatalos dokumentációt.
Jól ismeri mindenki a számítógépeket. Van benne processzor, memória, valamilyen háttértároló. Emellett van benne hálózati kártya, amellyel igény szerint csatlakozhatunk az internetre.
A felhőben lévő virtuálisgépek, virtuális szerverek is ilyenek. A különbség csupán annyi, hogy a felhőben ezeket a gépeket nem érinthetjük meg és egy-egy ilyen gépet akár percenként módosíthatunk, ha ahhoz van kedvünk. Adhatunk hozzá memóriát, virtuális processzormagot, lemezeket és még hálózati kártyát is. És ugyanilyen módon el is vehetjük ezeket, vag törölhetjük az egész gépet. Ugye milyen izgalmas?
Az a nagyszerű a virtuális gépekben, hogy rugalmasan létrehozhatunk és törölhetünk bármennyit amennyire csak szükségünk van. Nyilvánosan elérhetővé tudjuk őket tenni az interneten bárki számára, vagy biztonságosan elzárhatjuk őket a kíváncsi szemek elől. Ez csupán attól függ, milyen felhasználási esetre szeretnénk használni ezeket az erőforrásokat. Tudunk eléjük terheléselosztót konfigurálni, hogy ezzel magas rendelkezésre állású rendszereket építsünk. Lehetőségünk van több féle operációs rendszerrel kérni ezeket – Windows, Linux -, szintén attól függően, hogy mit ismerünk vagy mit szeretnénk megvalósítani. És ha kiválasztottuk az általunk ismert operációs rendszert, akkor pedig már túl is vagyunk a legnehezebb részén a dolgoknak. Miért? Mert onnan egy ismerős világba csöppenünk, hiszen miután bejelentkeztünk a virtuális gépünkre, azonnal otthon érezzük magunkat. Mivel a gépet pontosan ugyanúgy tudjuk használni, ahogy azt már megszoktuk a hagyományos számítógépeknél.
És mielőtt továbbmennénk szeretnék felsorolni néhány igen hasznos tulajdonságot, amire képesek a virtuális gépek:
Nagy teljesítmény
Automatikus skálázás
Több operációs rendszer támogatása (Windows, Linux)
Gyors biztonsági mentés és visszaállítás
Beépített figyelési és felügyeleti eszközök
Mesterséges intelligencia, videókártya és nagy teljesítményű adatfeldolgozás
Beépített biztonsági eszközök
És még rengeteg apróság, ami miatt a virtuálisgép az egyik legnépszerűbb felhő erőforrás az Azure-ban is. Mivel ez nevezhető hagyományos erőforrásnak és mellette egy valódi svájci bicska, így érthető, hogy amikor felhőbe költözésről beszélünk, a legnyilvánvalóbb megoldás, hogy „lift-and-shift” megközelítéssel virtuális gépekre költöztetjük a cégünk alkalmazásait.
Összetevők
A virtuális gép összetevőiről érintőlegesen már beszéltünk, hiszen hasonló mint az otthoni számítógépünk, csak ez a felhőben van. Azonban ennyivel mi nem elégszünk meg és mélyebbre szeretnénk ásni. Igaz?
A virtuális gép legfontosabb építőelemei a kövezkezők Azure-ban:
Virtuális gép: Maga az erőforrás, ami összefogja a többi erőforrást.
Virtuális processzor, virtuális mag: a számítási teljesítményt meghatározó egyik paramétere is a virtuális gépnek. Minél több virtuális mag van egy gépben, annál gyorsabb és annál több számítást tud elvégezni.
Memória: a memória, vagyis a RAM tárolja az aktuálisan futó alkalmazásokat és folyamatokat, így azok gyorsabban elérhetők a CPU számára, mint ha állandó tárhelyről (pl. lemezről) kellene őket betölteni. Ez valójában egy nagyon gyors átmeneti tároló a számítógép számára. Ha a gépet lekapcsoljuk, a memória tartalma elvész.
Tárhely (lemez): Ez lesz a gép helyi lemezmeghajtója, ahol az adatok tárolása történik. Kétféle lemezt különböztetünk meg. Az egyik, amelyen az operációs rendszer tárolódik, a másik pedig az adatlemez, amit opcionálisan adhatunk a géphez (akár többet is). Az adatlemezen fogjuk tárolni az alkalmazásaink adatait. Emellett van a gépek nagy részében egy úgynevezett átmeneti lemez, amelyen átmenetileg tárolhatunk fájlokat, amíg a gépünk fut. (vigyázz! az átmeneti lemez adatai törlődhetnek minden újraindítás után)
Hálózati kártya (NIC): A virtuális gépeknek szüksége van hálózati kapcsolatra, hogy elérhetőek legyenek, vagy ők érjenek el más szolgáltatásokat. (Pl.: internet). Ezért legalább 1 db hálózati kártyát hozzá kell adnunk a géphez. Ez a hálózati kártya csatlakozik majd egy általunk kiválasztott virtuális hálózat egyik alhálózatához. Ezután ezen keresztül folyik a kommunikáció. Ehhez a kártyához tudunk beállítani privát és nyilvános IP címet is.
Operációs rendszer: Ez határozza meg, hogy milyen alkalmazásokat futtatunk. Az operációs rendszer Azure-ban lehet Windows vagy Linux.
Monitorozás és diagnosztika: Az Azure Monitor és más eszközök segítségével nyomon követheted a virtuális gépek teljesítményét, hálózati forgalmát, és az alkalmazások állapotát, valamint riasztásokat állíthatsz be kritikus eseményekre. Ez lesz a szemünk és a fülünk.
Egyéb összetevők:
Mentés és helyreállítás (Backup, Restore): rendszeresen tudjuk menteni gépeinket
Biztonsági szabályok: Hálózatbiztonsági csoportokkal (NSG) tudjuk szűrni a hálózati forgalmat. Ezzel is biztonságosabbá tenni a gépeinket és alkalmazásainkat.
Automatikus leállítás: Lehetőségünk van, hogy gépeink leálljanak egy előre meghatározott időpontban. Ezzel is sok költséget tudunk megtakarítani.
Rendelkezésreállási zónák és -készletek: A virtuális gépek mögötti fizikai infrastruktúrában is lehetnek tervezett munkálatok vagy nem tervezett kiesések. Ezek áthidalása végett tudunk olyan alapvető rendelkezésre állá növelő eszközöket használni, amelyek egy-egy ilyen esemény bekövetkezésekor segítenek üzletmenetünk folytonosságának megtartásában.
Automatikus skálázás: Lehetőségünk van automatikusan is skálázni virtuális gépeinket. Ez a skálázás (teljesítmény növelés vagy csökkentés) történhet teljesítmény, idő vagy előrejelzés alapon.
Frissítési tartomány (Update Domain): Rendelkezésreállási készletek esetén, amikor frissítik a fizikai gépeket (gazda gép) az adatközpontban, akkor a meglévő VM-eink hány gazda gépre legyenek telepítve. Pl.: van 3 virtuális gépünk és update domain értéke 2, akkor 2 db virtuálisgép egyik gazdán és 1 db virtuális gép másik gazdán fut. Így minimum 1 db virtuális gép mindig elérhető lesz.
Tartalék tartomány (Fault Domain): Rendelkezésreállási készletek esetén, a gazda gépek hány rack szekrényben legyenek a szerverteremben. Pl.: 3 gép esetén a fault domain 2, akkor 2 db rack szekrényben lesz a 2 gazda szerver. Ha az egyik rack-ben valami tönkremegy, akkor is minimum 1 db gép elérhető marad.
Virtuális gépek típusai
Azt már tudjuk, hogy létrehozhatunk Windows és Linux alapú gépeket Azure-ban. Emellett azonban fontos számunkra, hogy alkalmazásaink számára mindig elegendő erőforrás álljon rendelkezésre.
Ahogy nincs két egyforma ember, úgy nincs két egyforma alkalmazás sem. Tehát az alkalmazásainknak lesz egy bizonyos karakterisztikája, ami meghatározza, milyen erőforrásokból van szüksége többre és melyekből kevesebbre.
Van olyan alkalmazásunk, amely nagy számítási igényű és nem kell túl sok memória az optimális működéshez. Ezen alkalmazásokhoz olyan virtuális gépre lesz szükségünk, amelyben több a virtuális CPU és nem feltétlenül sok a memória. És lesznek olyan alkalmazások – például az SQL szerverek – amelyek estén az a legjobb ha minél több memória van a virtuális gépben, mert akkor a lehető legtöbb adatot a memóriában tartva, nagyon gyorsan tudjuk visszaadni a sok-sok lekérdezett adatot.
Természetesen azért tipizálhatóak az alkalmazások, amelyekre minden felhőszolgáltató – és köztük a Microsft Azure is – ajánl nekünk virtuális gép típusokat.
Az alábbi virtuális gép típusokat különbözetünk meg:
Ezen géptípusokból több méretet is kiválaszthatunk amikor virtuális gépet hozunk létre. Általában az alábbi szempontok alapján választunk gépméretet:
CPU (virtuális processzormagok) száma
RAM (memória) mérete
Csatolható adatlemezek száma
Maximális IOPS-érték
Átmeneti tároló mérete
Prémium lemez támogatottsága
Költség (havonta)
Igen, a mértet befolyásolja a gép költségét. Minél jobb (több CPU, több RAM, stb.) gépet szeretnénk létrehozni, annak a havi díja annál magasabb lesz. Tehát azt javaslom, tervezzük meg alaposan, milyen gépre is van szükségünk, még azelőtt, hogy egy több százezer forintos számlát kapnánk. És hogy hogyan?
Ezzel készíthetünk nagyon jó megközelítéssel kalkulációkat, még mielőtt egy forintot is ki kellene adnunk.
Egyéb tudnivalók
Nagyjából mindent tudunk már a virtuális gépekről, mégis maradt néhány fontos dolog, amit szeretnék megemlíteni.
Saját licenc
Lehetőségünk van saját licenceinket (elsősorban Windows) felhasználni Azure-ban, így tovább csökkenthetjük a költségeket.
Ha nem használod, kapcsold le!
Mint minden felhőszolgáltatónál, itt is igaz, hogy ha egy számítógép nem fut, akkor nem növeli a költségeinket. Ezért kiemelten foltos, hogy minden olyan virtuális gépet, amit nem használunk, kapcsoljunk le!
Azure-ban ezzel kapcsolatban van egy sajátosság. Az Azure virtuális gépeknek 3 állapota van:
Fut – Run: Gép működik
Leállítva – Stopped: Gép le van állítva, de a futáshoz szükséges erőforrások zárolva vannak. Így továbbra is annyit fizetünk érte, mintha futna.
Leállítva (felszabadítva) – Stopped (deallocated): Gép le van állítva és erőforrásai fel vannak szabadítva. Ezen állapotban a virtuális gép nem növeli a költségeinket.
Tehát, ha valóban szeretnénk leállítani a gépet, akkor állítsuk Leállítva (felszabadítva) állapotba!
Különleges virtuális gépek
Vannak különleges gépek, illetve olyan lehetőségek, amelyekkel további felhasználási eseteket tudunk megvalósítani.
Dedikált kiszolgáló
Spot VM
Fenntartott példány
Virtuálisgép-méretezési csoport
Ezek azok az alapvető információk, amelyeket tudni érdemes a virtuális gépekről. Ahogy látod, ez egy elég nagy témakör és én is tudnék még írni erről rengeteget.
Azt javaslom, hogy próbáld ki magad is egy-egy virtuális gép létrehozásával, hogy belekóstolj ebbe a mesés világba. 🙂
A virtuális hálózat egy logikai izolációs réteg, amely a felhőben létrehozott erőforrásaink közötti stabil, gyors és biztonságos kommunikáció biztosítja.
Felhőben a virtuális hálózat, a hagyományos informatikai fizikai hálózat virtuális megvalósítása. Ennek megfelelően működése majdnem tejesen ugyanúgy történik. Ha valakinek van ismerete a hagyományos informatikai hálózattal kapcsolatban, akkor a virtuális hálózatban is könnyedén el tud igazodni.
Kommunikáció
A VNET-en belül a kommunikáció IP címterek (címtartományok) segítségével történik. Egy virtuális hálózaton belül egy vagy több alhálózat hozható létre. Ezen alhálózatoknak szintén van saját IP címtartománya. Az alhálózatok címtartományai a virtuális hálózat címtartományán belül kell lennie.
Az alhálózatok IP címtartománya között nem lehet átfedés.
Az Azure virtuális hálózat támogatja az IPv4 és IPv6 típusú IP címeket.
Példa:
IPv4: 192.168.15.200
IPv6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
Csatlakozás
Nem minden típusú erőforrás csatolható a virtuális hálózathoz, hiszen nem minden típusú erőforrás esetén van ennek értelme.
Általánosságban elmondható, hogy az IaaS típusú erőforrások csatolhatók a virtuális hálózathoz, de ez sem minden esetben van így. Mindig ellenőrizzük a hivatalos dokumentáció legfrissebb változatában, hogy mely erőforrásoknak van ilyen lehetősége.
Példa a virtuális hálózathoz csatolható Azure erőforrásokhoz:
App Services Environment (ASE) – Webapp, Mobileapp, stb.
Azure Kubernetes Service (AKS)
Azure VPN Gateway
ExpressRoute Gateway (VPN)
Terheléselosztó (Azure Load Balancer)
Application Gateway (terheléselosztó)
Azure Bastion (jump server)
Hálózatbiztonsági csoport (Network Security Group)
Azure DNS
Emellett vannak még olyan erőforrások, amelyek bizonyos esetekben lehetőséget nyújtanak virtuális hálózat használatához.
Amikor csatlakoztatunk egy erőforrást a virtuális hálózat egyik alhálózatához, az alhálózat rendelkezésre álló IP-címei közül az első három minden esetben foglalt. Ezért, ha egy virtuális gépet létrehozunk, akkor az első IP-cím, amit az alhálózatból megkap, a negyedik cím lesz. (Például, ha az alhálózat címtartománya: 10.10.10.0/24, akkor az első kiosztható IP-cím a 10.10.10.4)
Biztonság
A VNET-en belül a kommunikáció alapértelmezésben biztonságos, így az abban definiált erőforrások közötti kommunikációt kívülről nem lehet elérni.
Természetesen lehetőségünk van az alap biztonság mellett egyéb biztonsági elemeket is konfigurálni a virtuális hálózathoz vagy az ahhoz csatolt erőforrásokhoz. Ezen eszközök magasabb biztonsági szintre emelhetik a szolgáltatásainkat. Például: hálózatbiztonsági csoport, tűzfal, DDoS védelem, stb.
Virtuális hálózatok közötti kapcsolat
Amikor virtuális hálózatokkal dolgozunk, előfordul, hogy szükségünk van két virtuális hálózatban lévő erőforrások közötti biztonságos kommunikáció létrehozására. Ilyen esetben nem célszerű a hálózati forgalmat az interneten keresztül lebonyolítani, hiszen az biztonsági kérdéseket vethet fel.
Erre kínál megoldást a VNET Peering. Ez a megoldás dedikált kapcsolatot hoz létre két VNET között. Ezzel biztonságos módon, Azure-on belül tud kommunikálni két szolgáltatásom, amely két különböző virtuális hálózatban van.