Gyakorlat – Cloud-init szkript létrehozása az Azure CycleCloudhoz való használatra
Fürt csomópontjainak kiépítésekor érdemes lehet olyan egyéni konfigurációs feladatokat végrehajtani, amelyeket az operációs rendszer rendszerindítási folyamata során lehet elvégezni, még mielőtt bármilyen ütemező által vezérelt módosítás életbe lépne. Ezek a feladatok közé tartozhatnak például az elérési út környezeti változóinak frissítése, a tartománynévrendszer (DNS) névfeloldási beállításainak konfigurálása, vagy a csomópontok Microsoft Entra Domain Services-tartományhoz (AD DS) való kötése.
A funkció implementálásához úgy dönt, hogy megvizsgálja a cloud-init használatát az Azure CycleCloud-fürtökben, és teszteli azt egy egyszerű Bash-szkripttel, amely módosítja az egyes csomópontokon található helyi fájlok tartalmát. Az eredményt a fürtcsomópontokhoz való csatlakozással és a módosított fájlok tartalmának áttekintésével kívánja ellenőrizni.
Jegyzet
A cloud-init szkriptek létrehozásakor bármilyen szkriptelési vagy konfigurációs módszert használhat, amelyet a célcsomópontokon futó operációs rendszer képes felismerni és feldolgozni, beleértve a hagyományos rendszerhéj-szkriptelést, a Pythont és a YAML-t.
Ebben a gyakorlatban a következő feladatokat fogja elvégezni:
- 1. feladat: SSH-alapú hitelesítés konfigurálása az Azure CycleCloud-fürtcsomópontokon
- 2. feladat: Cloud-init szkript hozzáadása a fürtcsomópontokhoz
- 3. feladat: A cloud-init funkció ellenőrzése az ütemező csomóponton
- 4. feladat: A cloud-init funkció ellenőrzése a számítási csomópontokon
- 5. feladat: A gyakorlatkörnyezet megtisztítása
Jegyzet
A gyakorlat megkezdése előtt győződjön meg arról, hogy sikeresen végrehajtotta az előző gyakorlatot.
1. feladat: SSH-alapú hitelesítés konfigurálása az Azure CycleCloud-fürtcsomópontokon
A cloud-init szkriptek végrehajtásának ellenőrzéséhez az Azure Cloud Shellből csatlakozik majd a fürtcsomópontokhoz az Azure CycleCloud CLI-vel. Ez a kapcsolat SSH-kulcsalapú hitelesítésre támaszkodik, ezért fel kell töltenie a fürtcsomópontokra elosztott nyilvános kulcsnak megfelelő titkos kulcsot az Azure Cloud Shell kezdőlapjára.
Nyissa meg az Azure portált, és amikor megkérdezik, hitelesítsen egy Microsoft-fiókkal vagy egy Microsoft Entra-fiókkal, amely közreműködői vagy tulajdonosi szerepkörrel rendelkezik az ebben a modulban használt Azure-előfizetésben.
Az Azure Portalon nyissa meg a Cloud Shell a keresőmező melletti eszköztár ikonjának kiválasztásával, és győződjön meg arról, hogy Bash-munkamenetet futtat.
Az Azure Cloud Shell panel eszköztárán válassza ki a negyedik ikont, amely egy oldalt jelenít meg, és az ellenkező irányba mutató függőleges nyílpár látható. Ezután a legördülő menüben válassza a Feltöltéslehetőséget.
A Megnyitás párbeszédpanelen keresse meg a titkos kulcsot tartalmazó .pem fájl helyét, és válassza a Megnyitáslehetőséget.
Futtassa a következő parancsokat a Cloud Shellben a feltöltött .pem fájl megfelelő helyre való áthelyezéséhez és a szükséges fájlszintű engedélyek konfigurálásához (cserélje le a
<private_key.pem>helyőrzőt a .pem fájl nevére):mkdir -p ~/.ssh mv private_key.pem ~/.ssh chmod 600 ~/.ssh/cc-ssh-keys.pem
2. feladat: Cloud-init szkript hozzáadása a fürtcsomópontokhoz
A szkriptek fürtcsomópontokhoz való hozzáadásának lehetősége közvetlenül az Azure CycleCloud grafikus felületéről érhető el. Ezzel ugyanazt a cloud-init szkriptet rendeli hozzá az ütemezőhöz és a számítási csomópontokhoz, és ellenőrzi annak működését. A szkript hozzáad egy bejegyzést 10.10.10.10 cc.contoso.com a /etc/hosts fájlhoz.
Ha még nem csatlakozik az Azure CycleCloud-webalkalmazáshoz, nyisson meg egy másik böngészőablakot, és keresse meg a https://<IP_address> URL-címet. Ha a rendszer kéri, ellenőrizze, hogy folytatja-e a műveletet.
Ha a rendszer hitelesítést kér, jelentkezzen be az Azure CycleCloud-alkalmazás felhasználói fiókjának hitelesítő adatainak rendszergazdai szerepkörrel való megadásával.
Az Azure CycleCloud grafikus felületén lépjen a Fürtök lapra. A fürtök listájában válassza a contoso-custom-slurm-lab-cluster bejegyzést, majd válassza a Szerkesztéslehetőséget.
A Edit contoso-custom-slurm-lab-cluster előugró ablakban válassza ki a Cloud-init bejegyzést, és a Cloud-init konfigurációs szakaszban található ütemező lapon adja meg a következő szkriptet:
#!/bin/bash echo "10.10.10.10 www.contoso.com" >> /etc/hosts
Ugyanabban az előugró ablakban, amelyben a Cloud-init bejegyzés van kiválasztva, jelölje ki a többi lapot (beleértve cuda, hpcés htc) és írja be ugyanazt a szkriptet. Válassza Mentéslehetőséget.
3. feladat: A cloud-init funkció ellenőrzése az ütemező csomóponton
A cloud-init funkciójának az ütemező csomóponton való ellenőrzéséhez indítsa el a klasztert. Ez elindítja az ütemező csomópont telepítését. A csomópont futtatása után csatlakozhat hozzá az Azure Cloud Shellből, és ellenőrizheti, hogy a /etc/hosts fájl tartalmazza-e a 10.10.10.10 www.contoso.combejegyzést.
Az Azure CycleCloud-webalkalmazást megjelenítő böngészőablakban válassza a Start hivatkozást a contoso-custom-slurm-lab-cluster lapon. Amikor a rendszer megerősítést kér, válassza OKlehetőséget.
Jegyzet
Ha a fürt már fut, le kell állítania és újra kell indítania ahhoz, hogy az új konfiguráció érvényesüljön, ellenkező esetben az új beállítások nem lesznek láthatóak a következő lépésekben.
A csomópontok listájában válassza ki a Ütemező bejegyzést, és kövesse nyomon annak állapotát a Részletek panelen, várva, amíg az Beszerzés állapotról Készállapotra nem változik.
Jegyzet
Ez körülbelül három percet is igénybe vehet.
A Részletek panelen válassza a Csatlakozáslehetőséget. A Csatlakozás csomóponthoz: ütemező előugró ablakban, a A CycleCloud CLI szakaszában válassza ki azt a bejegyzést, amely tartalmazza a parancsot, amely lehetővé teszi, hogy csatlakozzon az ütemező csomóponthoz, majd válassza a Bezáráslehetőséget.
Jegyzet
A parancsnak a
cyclecloud connect scheduler -c contoso-custom-slurm-lab-clusterformátumot kell követnie.Váltson a webböngésző ablakára a Cloud Shell panellel, és futtassa az előző lépésben másolt parancsot.
Jegyzet
A parancsnak a következő formátumban kell kimenetet létrehoznia:
m@Azure:~$ cyclecloud connect scheduler -c contoso-custom-slurm-lab-cluster Connecting to cc-admin@40.87.52.25 (contoso-custom-slurm-lab-cluster scheduler) using SSH [cc-admin@ip-0A000304 ~]$Amikor csatlakozik az ütemező csomóponthoz, futtassa a következő parancsot annak ellenőrzéséhez, hogy a /etc/hosts fájl tartalmazza-e a 10.10.10.10
www.contoso.combejegyzést:grep "10.10.10.10 www.contoso.com" /etc/hostsJegyzet
A parancsnak a következő formátumban kell kimenetet létrehoznia:
[cc-admin@ip-0A000304 ~]$ grep "10.10.10.10 www.contoso.com" /etc/hosts 10.10.10.10 www.contoso.com
4. feladat: A cloud-init funkció ellenőrzése a számítási csomópontokon
Most megismétli az egyenértékű lépések sorozatát a számítási csomópontok felhőalapú init funkciójának ellenőrzéséhez.
Fontos
Ahhoz, hogy az egyenértékű eljárást alkalmazza a számítási csomópontok cloud-init funkciójának ellenőrzéséhez, el kell távolítania és újra kell helyeznie a megfelelő virtuálisgép-méretezési csoportot. Ez a lépés a Slurm-alapú fürtökre vonatkozik, mert ebben az esetben az ütemező automatikus skálázási integrációja megköveteli, hogy az Azure CycleCloud előre feltöltse a számítási csomópontokat. Ennek eredményeképpen a gyakorlatban korábban alkalmazott cloud-init konfiguráció nem érinti a már meglévő csomópontokat.
Miközben csatlakozik az ütemező csomóponthoz, futtassa az alábbi parancsokat a Cloud Shellben az Azure CycleCloud-fürt számítási csomópontjainak eltávolításához és újraelosztásához, és állítsa le a kapcsolatot az ütemező csomóponttal:
sudo -i cd /opt/cycle/jetpack/system/bootstrap/slurm ./cyclecloud_slurm.sh remove_nodes ./cyclecloud_slurm.sh scale exit exitJegyzet
A következő üzenetek fognak megjelenni: A következő csomópontok eltávolításának kísérlete folyamatban, majd a fürt újraskálázása befejeződött, miután ez a lépés befejeződött.
A számítógépen váltson a böngészőablakra, amely megjeleníti az Azure CycleCloud-webalkalmazás contoso-custom-slurm-lab-cluster oldalát. A Csomópontok lapon válassza ki a htc sort, majd a Részletek panelen válassza a htc-1 bejegyzést, majd válassza a Műveletek lapfejlécet. A legördülő menüben válassza a Startlehetőséget, majd válassza OK lehetőséget, amikor a rendszer megerősítést kér.
A Részletek panelen figyelje az újonnan elindított csomópontot, és várja meg, amíg a csomópont állapota megváltozik Beszerzése állapotról Készállapotra.
Jegyzet
Ez körülbelül három percet is igénybe vehet.
A Részletek panelen válassza a Csatlakozáslehetőséget. A Csatlakozás a csomóponthoz: htc-1 előugró ablakban válassza ki a bejegyzést a A CycleCloud CLI szakasz használatával, amely lehetővé teszi, hogy csatlakozzon az ütemező csomóponthoz, és válassza a bezárása:
Jegyzet
A parancs formátumának
cyclecloud connect htc-1 -c contoso-custom-slurm-lab-clusterkell lennie.Váltson a Cloud Shell panelre, és futtassa az előző lépésben másolt parancsot.
Jegyzet
A parancsnak a következő formátumban kell kimenetet létrehoznia:
m@Azure:~$ cyclecloud connect htc-1 -c contoso-custom-slurm-lab-cluster Connecting to cc-admin@10.0.3.5 (contoso-custom-slurm-lab-cluster htc-1) through SSH bastion at cc-admin@40.87.52.25 [cc-admin@ip-0A000305 ~]$Amikor csatlakozik a htc-1 csomóponthoz, futtassa a következő parancsot annak ellenőrzéséhez, hogy a /etc/hosts fájl tartalmazza-e a 10.10.10.10
www.contoso.combejegyzést:cat /etc/hosts | grep "10.10.10.10 www.contoso.com"Jegyzet
A pont elérése után törölnie kell az ebben és a modul korábbi gyakorlataiban üzembe helyezett összes erőforrást. Ez lehetővé teszi, hogy elkerülje az erőforrások Azure-előfizetésen való fenntartásával kapcsolatos díjakat.
5. feladat: A laborkörnyezet megtisztítása
Az Azure CycleCloud alkalmazással végzett fürt testreszabásának tesztelése befejeződött. Az Azure-erőforrások használatához kapcsolódó szükségtelen költségek elkerülése érdekében most leállítja a fürtöt, és eltávolítja a modul gyakorlatai során kiosztott összes erőforrást.
Az Azure CycleCloud-webalkalmazás grafikus felületét megjelenítő webböngészőben válassza a contoso-custom-slurm-lab-cluster lapon található Leállítás hivatkozást, és amikor a rendszer megerősítést kér, válassza OKlehetőséget.
A lezárás folyamatának figyelése.
Jegyzet
A folyamat magában foglalja a fürt fő csomópontja szerepét ellátó Azure VM visszavonását. Ez körülbelül öt percet is igénybe vehet.
Jegyzet
A laborban kiépített összes többi erőforrás törléséhez törölnie kell a fürterőforrásokat üzemeltető erőforráscsoportokat.
Az Azure portálon lépjen a fürterőforrásokat üzemeltető erőforráscsoport panelére, és válassza az eszköztáron a Erőforráscsoport törlése bejegyzést. Az erőforráscsoport nevének törlésének megerősítéséhez írja be az erőforráscsoport nevét a szövegmezőbe, majd válassza a Törléslehetőséget. A törlés megerősítéséhez válassza újra a Törlés lehetőséget.
Jegyzet
A Slurm-erőforrásokhoz további erőforráscsoportok is tartozhatnak. A többletköltségek elkerülése érdekében mindenképpen törölje ezeket a Slurm-hoz kapcsolódó erőforráscsoportokat és azok erőforrásait.
Gratulálok! Sikeresen elvégezte a modul harmadik és egyben utolsó gyakorlatát. Ebben a gyakorlatban megvizsgálta a cloud-init használatát az Azure CycleCloud klaszterekben, és tesztelte egy egyszerű Bash szkripttel, amely módosította az egyes csomópontokon található helyi fájlok tartalmát. A fürtcsomópontokhoz való csatlakozással és a módosított fájlok tartalmának áttekintésével érvényesítette az eredményt. Ezt követően megszüntette a klasztert, és törölte az összes, a modulban használt klasztererőforrást a szükségtelen költségek elkerülése érdekében.