Gyakorlat – Fejlesztési környezet beállítása az AKS-sel
A példaforgatókönyvben a csapatnak egy tárolórendszerképet kell üzembe helyeznie az Azure Container Registryből az AKS-ben.
Ebben a leckében a következőket teheti meg:
- Csatlakozás az AKS Kubernetes-fürthöz az Azure Cloud Shell kubectl használatával.
- Konfiguráljon egy üzembehelyezési jegyzékfájlt az express.js-tárolóhoz.
- Helyezze üzembe a tárolórendszerképet a tárolóregisztrációs adatbázisból az AKS Kubernetes-fürtön.
- Application Gateway engedélyezése a fürthöz.
- Tekintse át és telepítse a szolgáltatásjegyzékfájlt.
Megjegyzés:
Ha kilép az Azure Cloud Shell lapról, újra kell alkalmaznia a következő parancsokat, vagy meg kell adnia az egyes lépések erőforrásneveit.
```azurecli-interactive
# Environment variable for the registry name
REGISTRYNAME={registry_name}
# Environment variable for the resource group name
RESOURCEGROUP={resource-group-name}
# Environment variable for the cluster name
CLUSTERNAME={cluster-name}
```
Csatlakozás a fürthöz a kubectl használatával
Lépjen az Azure Cloud Shellre, és konfigurálja
kubectl
a Kubernetes-fürthöz való csatlakozást aaz aks get-credentials
paranccsal.az aks get-credentials --resource-group $RESOURCEGROUP --name $CLUSTERNAME
Ellenőrizze a fürthöz való kapcsolatot a
kubectl get nodes
parancs használatával, amely a fürtcsomópontok listáját adja vissza.kubectl get nodes
Kérje le a
ACR login server
nevét aaz acr list
parancs használatával.az acr list --resource-group $RESOURCEGROUP --query "[].{acrLoginServer:loginServer}" --output table
Tároló üzembe helyezése az AKS-ben
Módosítsa a könyvtárakat a
aks
forráskód mappájába.cd mslearn-cloud-native-apps-express/aks
Nyissa meg az integrált szerkesztőt a Cloud Shellben a
code .
Nyissa meg a fájlt a
deployment.yaml
konfiguráció áttekintéséhez. Tartalmazza az express.js-tároló AKS-ben való üzembe helyezésére vonatkozó utasításokat.# deployment.yaml apiVersion: apps/v1 kind: Deployment metadata: name: cna-express spec: selector: # Define the wrapping strategy matchLabels: # Match all pods with the defined labels app: cna-express # Labels follow the `name: value` template template: # This is the template of the pod inside the deployment metadata: labels: app: cna-express spec: containers: - image: <AcrLoginServer>/expressimage # Add your ACR login server from step 3 here name: expressimage ports: - containerPort: 80
deployment.yaml
A területen cserélje le<AcrLoginServer>
az ACR bejelentkezési kiszolgáló nevét. Győződjön meg arról, hogy a/expressimage
sor végén hagyja el a vonalat.Mentse a jegyzékfájlt a CTRL S billentyűkombinációval + , és zárja be a szerkesztőt a CTRL Q billentyűkombinációval. +
A jegyzékfájl alkalmazása
Küldje el az üzembehelyezési jegyzékfájlt a fürtnek a
kubectl apply
parancs használatával.kubectl apply -f ./deployment.yaml
A parancs kimenete a következő példához hasonlót eredményez:
deployment.apps/cna-express created
Ellenőrizze, hogy az üzembe helyezés sikeres volt-e a
kubectl get deploy
parancs használatával.kubectl get deploy cna-express
A parancsnak az alábbi példához hasonló táblát kell kihoznia:
NAME READY UP-TO-DATE AVAILABLE AGE cna-express 0/1 1 0 16s
Ellenőrizze, hogy a pod fut-e a
kubectl get pods
paranccsal.kubectl get pods
A parancsnak az alábbi példához hasonló táblát kell kihoznia:
NAME READY STATUS RESTARTS AGE cna-express-7c58c5f699-r79mv 1/1 Running 0 63s
Az Application Gateway engedélyezése a fürthöz
A Kubernetes-fürtök teljes üzembe helyezése és elérése eltarthat egy ideig. Időt takaríthat meg, ha most engedélyezi az Application Gatewayt a fürt számára, mivel akár 15 percet is igénybe vehet a teljes működés.
Lépjen az Azure Portalra , és válassza ki az AKS-fürtöt.
A Gépház területen válassza a Hálózatkezelés lehetőséget.
A Forgalom útválasztása csoportban jelölje be a HTTP-alkalmazások útválasztásának engedélyezése jelölőnégyzetet.
Az Application Gateway bejövőforgalom-vezérlése alatt jelölje be a Bejövő forgalom vezérlő engedélyezése jelölőnégyzetet.
Select Apply.
A szolgáltatásjegyzék áttekintése
Lépjen az Azure Cloud Shellre , és győződjön meg arról, hogy a
aks
mappában van.Nyissa meg az integrált szerkesztőt a Cloud Shellben a következő használatával
code .
: .Nyissa meg a fájlt a
service.yaml
konfiguráció áttekintéséhez. Nem kell szerkesztenie semmit, csak vegye figyelembe, hogy a szolgáltatáscna-express
nevét fogjuk adni.# service.yaml apiVersion: v1 kind: Service metadata: name: cna-express spec: type: ClusterIP selector: app: cna-express ports: - port: 80 # SERVICE exposed port name: http # SERVICE port name protocol: TCP # The protocol the SERVICE will listen to targetPort: 4000
Zárja be a szerkesztőt a CTRL Q billentyűkombinációval. +
A szolgáltatás üzembe helyezése
Küldje el a szolgáltatásjegyzéket a fürtnek a
kubectl apply
paranccsal.kubectl apply -f ./service.yaml
A parancs kimenete a következő példához hasonlót eredményez:
service/cna-express created
Ellenőrizze, hogy az üzembe helyezés sikeres volt-e a
kubectl get service
parancs használatával.kubectl get service cna-express
A parancs kimenete a következő példához hasonlót eredményez. Győződjön meg arról, hogy az oszlop
CLUSTER-IP
ip-címmel van kitöltve, az oszlopEXTERNAL-IP
<none>
pedig80/TCP
PORT(S)
az .NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE cna-express ClusterIP 10.0.158.189 <none> 80/TCP 42s
Ha a külső IP-cím
<none>
értékre van állítva, az alkalmazás nem érhető el a külső ügyfelek számára. A szolgáltatás csak a belső fürt számára érhető el. A bejövőforgalom-vezérlő ezt módosítja.