Rövid útmutató: Linux-tárolók üzembe helyezése a Service Fabricben
Az Azure Service Fabric egy elosztott rendszerplatform, amely skálázható és megbízható mikroszolgáltatások és tárolók üzembe helyezésére és kezelésére szolgál.
Ez a rövid útmutató bemutatja, hogyan helyezhet üzembe Linux-tárolókat egy Service Fabric-fürtön az Azure-ban. Miután elkészült, egy szavazóalkalmazást kap, amely egy Python-alapú webes előtérrendszert és egy Redis-alapú háttérrendszert tartalmaz, amely egy Service Fabric-fürtben fut. Azt is megismeri, hogyan végezheti el egy alkalmazás feladatátvételét és hogyan skálázhatja a fürtben lévő alkalmazásokat.
Előfeltételek
Az oktatóanyag elvégzéséhez:
Mielőtt hozzákezdene, hozzon létre egy ingyenes Azure-fiókot , ha még nem rendelkezik előfizetéssel.
Az Azure CLI telepítése
A Service Fabric SDK és a parancssori felület telepítése
A Git telepítése
Az alkalmazáscsomag beszerzése
A tárolók a Service Fabric szolgáltatásban való üzembe helyezéséhez jegyzékfájlok egy készletére lesz szükség (az alkalmazásdefinícióra), amelyek leírják az egyes tárolókat és az alkalmazást.
A konzolon a git használatával klónozza az alkalmazásdefiníció másolatát; majd módosítsa a címtárakat a Voting
klón könyvtárára.
git clone https://github.com/Azure-Samples/service-fabric-containers.git
cd service-fabric-containers/Linux/container-tutorial/Voting
Service Fabric-fürt létrehozása
Ha az alkalmazást üzembe szeretné helyezni az Azure-ban, szüksége lesz egy Service Fabric-fürtre a futtatásához. Az alábbi parancsok egy ötcsomópontos fürtöt hoznak létre az Azure-ban. A parancsok önaláírt tanúsítványt is létrehoznak, hozzáadják egy kulcstartóhoz, és helyileg letöltik a tanúsítványt. Az új tanúsítvány a fürt védelmére szolgál az üzembe helyezéskor, és az ügyfelek hitelesítésére szolgál.
Tetszés szerint módosíthatja a változóértékeket. Például a westus az eastus helyett a helyhez.
Megjegyzés
A kulcstartók nevének univerzálisan egyedinek kell lennie, mivel https://{vault-name}.vault.azure.net néven érhetők el.
#!/bin/bash
# Variables
ResourceGroupName='containertestcluster'
ClusterName='containertestcluster'
Location='eastus'
Password='q6D7nN%6ck@6'
Subject='containertestcluster.eastus.cloudapp.azure.com'
VaultName='containertestvault'
VmPassword='Mypa$$word!321'
VmUserName='sfadminuser'
# Login to Azure and set the subscription
az login
az account set --subscription <mySubscriptionID>
# Create resource group
az group create --name $ResourceGroupName --location $Location
# Create secure five node Linux cluster. Creates a key vault in a resource group
# and creates a certificate in the key vault. The certificate's subject name must match
# the domain that you use to access the Service Fabric cluster. The certificate is downloaded locally.
az sf cluster create --resource-group $ResourceGroupName --location $Location --certificate-output-folder . --certificate-password $Password --certificate-subject-name $Subject --cluster-name $ClusterName --cluster-size 5 --os UbuntuServer1804 --vault-name $VaultName --vault-resource-group $ResourceGroupName --vm-password $VmPassword --vm-user-name $VmUserName
Megjegyzés
A webes előtérrendszer a konfigurációja szerint a 80-as porton figyeli a bejövő forgalmat. Alapértelmezés szerint a 80-as port meg van nyitva a fürt virtuális gépén és az Azure Load Balanceren.
A környezet konfigurálása
A Service Fabric számos eszközt nyújt, amelyekkel kezelheti a fürtöket és azok alkalmazásait:
- A Service Fabric Explorert, amely egy böngészőalapú eszköz.
- A Service Fabric parancssori felületet (CLI-t), amely az Azure CLI-n fut.
- PowerShell-parancsokat.
Ebben a rövid útmutatóban a Service Fabric parancssori felületét és a Service Fabric Explorer (egy webes eszköz) fogja használni. A Service Fabric Explorer használatához importálnia kell a pfx tanúsítványfájlt a böngészőbe. Alapértelmezés szerint a PFX-fájlnak nincs jelszava.
A Mozilla Firefox az alapértelmezett böngésző az Ubuntu 18.04-ben. A tanúsítvány a Firefoxba importálásához kattintson a böngésző jobb felső sarkában lévő menügombra, majd a Beállítások gombra. A Beállítások oldalon a keresőmezővel keressen rá a „tanúsítványok” kifejezésre. Kattintson a Tanúsítványkezelő gombra, válassza a Saját tanúsítványok fület, kattintson az Importálás lehetőségre, és kövesse az utasításokat a tanúsítvány importálásához.
A Service Fabric-alkalmazás üzembe helyezése
Csatlakozzon a Service Fabric-fürthöz az Azure-ban a parancssori felület használatával. A végpont a fürt felügyeleti végpontja. A PEM-fájlt az előző szakaszban hozta létre.
sfctl cluster select --endpoint https://containertestcluster.eastus.cloudapp.azure.com:19080 --pem containertestcluster22019013100.pem --no-verify
Használja a telepítési szkriptet a szavazóalkalmazás definíciójának a fürtbe való másolásához, regisztrálja az alkalmazás típusát, és hozza létre az alkalmazás egy példányát. A PEM-tanúsítványfájlnak ugyanabban a könyvtárban kell lennie, mint a install.sh fájlnak.
./install.sh
Nyisson meg egy webböngészőt, majd navigáljon a fürt Service Fabric Explorer-végpontjára. A végpont formátuma a következő: https://< my-azure-service-fabric-cluster-url>:19080/Explorer, például
https://containertestcluster.eastus.cloudapp.azure.com:19080/Explorer
.Bontsa ki az Alkalmazások csomópontot, és ellenőrizze, hogy van-e bejegyzés a szavazóalkalmazás típusához és a létrehozott példányhoz.
A futó tárolóhoz való csatlakozáshoz nyisson meg egy webböngészőt, és navigáljon a fürt URL-címére – például:
http://containertestcluster.eastus.cloudapp.azure.com:80
. Ekkor a szavazóalkalmazásnak kell megjelennie a böngészőben.
Megjegyzés
A Docker Compose használatával is üzembe helyezhet Service Fabric-alkalmazásokat. A következő paranccsal például üzembe helyezheti és telepítheti az alkalmazást a fürtön a Docker Compose használatával.
sfctl compose create --deployment-name TestApp --file-path ../docker-compose.yml
Tároló feladatátvétele a fürtben
A Service Fabric biztosítja, hogy meghibásodás esetén a tárolópéldányok automatikusan áthelyeződjenek a fürt más csomópontjaira. Manuálisan is ürítheti a csomópontokat a tárolók tekintetében, és azokat zökkenőmentesen helyezheti át a fürt más csomópontjaira. A Service Fabric több módot nyújt a szolgáltatások méretezésére. A következő lépésekben a Service Fabric Explorert használjuk.
Az előtértároló feladatátvételéhez hajtsa végre a következő lépéseket:
Nyissa meg a Service Fabric Explorert a fürtben – például:
https://containertestcluster.eastus.cloudapp.azure.com:19080/Explorer
.Kattintson a fabric:/Voting/azurevotefront csomópontra a fanézetben, és bontsa ki a partíciós csomópontot (egy GUID jelöli). Figyelje meg a csomópont nevét a fanézetben, amely azokat a csomópontokat mutatja, amelyeken a tároló jelenleg fut; például:
_nodetype_1
.Bontsa ki a Csomópontok csomópontot a fanézetben. Kattintson a három pontra (...) a tárolót futtató csomópont mellett.
Válassza az Újraindítás lehetőséget a csomópont újraindításához, majd erősítse meg az újraindítási műveletet. Az újraindítás kikényszeríti a tároló feladatátvételét a fürt egy másik csomópontjára.
Alkalmazások és szolgáltatások méretezése a fürtökben
A Service Fabric-szolgáltatások könnyen méretezhetők egy adott fürtben a szolgáltatások terhelésének megfelelően. A szolgáltatások méretezése a fürtben futó példányok számának módosításával történik.
A webes előtér-szolgáltatás méretezéséhez hajtsa végre a következő lépéseket:
Nyissa meg a Service Fabric Explorert a fürtben – például:
https://containertestcluster.eastus.cloudapp.azure.com:19080
.Kattintson a három pontra a fanézetben a fabric:/Voting/azurevotefront csomópont mellett, és válassza a Szolgáltatás méretezése lehetőséget.
Most már méretezheti a webes előtér-szolgáltatás példányainak számát.
Módosítsa a számot 2-re, és kattintson a Szolgáltatás méretezése gombra.
Kattintson a fabric:/Voting/azurevotefront csomópontra a fanézetben, és bontsa ki a partíciós csomópontot (egy GUID jelöli).
Most láthatja, hogy a szolgáltatás két példánnyal rendelkezik. A fanézetben megtekintheti, hogy a példányok melyik csomópontokon futnak.
Ezzel az egyszerű felügyeleti eljárással megduplázta az előtér-szolgáltatás számára a felhasználói terhelések feldolgozásához rendelkezésre álló erőforrások mennyiségét. Fontos tudni, hogy nincs szükség több példányra ahhoz, hogy a szolgáltatás megbízhatóan fusson. Ha egy szolgáltatás meghibásodik, a Service Fabric gondoskodik róla, hogy egy új szolgáltatáspéldány elinduljon a fürtben.
Az erőforrások eltávolítása
Használja a sablonban megadott eltávolítási szkriptet (uninstall.sh) az alkalmazáspéldánynak a fürtről történő törléséhez, és törölje az alkalmazástípus regisztrációját. A szkriptnek némi időre van szüksége a példány kiürítéséhez, ezért a telepítési szkriptet nem érdemes azonnal ezen szkript után futtatni. A Service Fabric Explorerrel megállapíthatja, hogy mikor lett eltávolítva a példány és mikor lett megszüntetve az alkalmazástípus regisztrációja.
./uninstall.sh
A fürt és az összes általa használt erőforrás törlésének legegyszerűbb módja az erőforráscsoport törlése.
Jelentkezzen be az Azure-ba, és válassza ki azt az előfizetés-azonosítót, amellyel el szeretné távolítani a fürtöt. Az Azure Portalra bejelentkezve keresheti meg az előfizetés azonosítóját. Törölje az erőforráscsoportot és az összes fürterőforrást az az group delete paranccsal.
az login
az account set --subscription <guid>
ResourceGroupName="containertestcluster"
az group delete --name $ResourceGroupName
Ha végzett a fürt használatával, eltávolíthatja a tanúsítványt a tanúsítványtárolóból. Például:
- Windows rendszeren: Használja a Tanúsítványok MMC beépülő modult. Ügyeljen arra, hogy a Saját felhasználói fiókot válassza a beépülő modul hozzáadásakor. Lépjen a
Certificates - Current User\Personal\Certificates
helyre, és távolítsa el a tanúsítványt. - Mac rendszeren: Használja a Keychain alkalmazást.
- Ubuntu rendszeren: Kövesse a tanúsítványok megtekintéséhez használt lépéseket, majd távolítsa el a tanúsítványt.
Következő lépések
Ebben a rövid útmutatóban üzembe helyezett egy Linux-alapú tárolóalkalmazást egy Service Fabric-fürtön az Azure-ban, elvégezte az alkalmazás feladatátvételét és méretezte azt a fürtben. Ha többet szeretne megtudni a Linux-tárolók Service Fabricben való használatával kapcsolatban, folytassa a Linux-tárolóalkalmazásokkal kapcsolatos oktatóanyaggal.