Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Helm egy nyílt forráskódú csomagolóeszköz, amely segít a Kubernetes-alkalmazások életciklusának telepítésében és kezelésében. A Linux-csomagkezelőkhöz, például az APT-hez és a Yumhoz hasonlóan a Helm kezeli a Kubernetes-diagramokat, amelyek előre konfigurált Kubernetes-erőforrások csomagjai.
Ebben a rövid útmutatóban a Helm használatával csomagolhat és futtathat alkalmazásokat az AKS-en. A meglévő alkalmazások Helm használatával történő telepítésével kapcsolatos információkért lásd : Meglévő alkalmazások telepítése a Helmrel az AKS-ben.
Előfeltételek
- Egy Azure előfizetés. Ha nem rendelkezik Azure előfizetéssel, létrehozhat egy ingyenes fiókot.
- Azure CLI vagy Azure PowerShell telepítve van.
- A Helm v3 telepítve van.
Azure Container Registry létrehozása
A konténerképeket az Azure Container Registry (ACR) rendszerben kell tárolni ahhoz, hogy az alkalmazás az AKS-fürtben Helm használatával fusson. A beállításjegyzék nevének egyedinek kell lennie Azure belül, és 5–50 alfanumerikus karaktert kell tartalmaznia. Csak kisbetűk engedélyezettek. Az Alapszintű termékváltozat költséghatékony, fejlesztési célú belépési pontként szolgál, és kiegyenlített tárolási kapacitást és teljesítményt biztosít.
Hozzon létre egy Azure erőforráscsoportot a az group create paranccsal. A következő példában létrehozunk egy myResourceGroup nevű erőforráscsoportot az eastus helyen.
az group create --name myResourceGroup --location eastusHozzon létre egy egyedi nevű Azure Container Registry a az acr create parancs meghívásával. Az alábbi példa létrehoz egy myhelmacr nevű ACR-t az alapszintű termékváltozattal.
az acr create --resource-group myResourceGroup --name myhelmacr --sku BasicA kimenetnek a következő sűrített példakimenethez hasonlóan kell kinéznie. Jegyezze fel a loginServer értékét az ACR-hez, hogy később használhassa.
{ "adminUserEnabled": false, "creationDate": "2023-12-26T22:36:23.998425+00:00", "id": "/subscriptions/<ID>/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myhelmacr", "location": "eastus", "loginServer": "myhelmacr.azurecr.io", "name": "myhelmacr", "networkRuleSet": null, "provisioningState": "Succeeded", "resourceGroup": "myResourceGroup", "sku": { "name": "Basic", "tier": "Basic" }, "status": null, "storageAccount": null, "tags": {}, "type": "Microsoft.ContainerRegistry/registries" }
AKS-fürt létrehozása
Az új AKS-fürtnek hozzá kell férnie az ACR-hez a tárolólemezképek lekéréséhez és futtatásához.
Hozzon létre egy AKS-fürtöt az az aks create parancs és a
--attach-acrparaméter segítségével, hogy hozzáférést biztosítson a fürt számára az ACR-hez. Az alábbi példa létrehoz egy myAKSCluster nevű AKS-fürtöt, és hozzáférést biztosít a myhelmacr ACR-hez. Cserélje le amyhelmacrcímkét az ACR nevére.az aks create --resource-group myResourceGroup --name myAKSCluster --location eastus --attach-acr myhelmacr --generate-ssh-keys
Csatlakozás az AKS-klaszterhez
Kubernetes-fürt helyi csatlakoztatásához használja a Kubernetes parancssori ügyfelet, a Kubectl-et.
kubectl már telepítve van, ha Azure Cloud Shell használ.
Telepítse
kubectlhelyileg az az aks install-cli paranccsal.az aks install-cliKonfigurálja
kubectla saját Kubernetes-klaszteréhez való csatlakozáshoz az 'az aks get-credentials' paranccsal. Az alábbi parancs lekéri a myAKSCluster nevű AKS-fürt hitelesítő adatait a myResourceGroup-ban.az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
A mintaalkalmazás letöltése
Ez a rövid útmutató a Azure Szavazás alkalmazást használja.
Klónozza az alkalmazást a GitHub-ról a
git cloneparanccsal.git clone https://github.com/Azure-Samples/azure-voting-app-redis.gitLépjen a
azure-votekönyvtárra acdparanccsal.cd azure-voting-app-redis/azure-vote/
A mintaalkalmazás létrehozása és leküldése az ACR-be
A az acr build parancs használatával hozza létre és küldje el a rendszerképet az ACR-be. Az alábbi példa létrehoz egy azure-vote-front:v1 nevű képet, és leküldi a myhelmacr ACR-be. Cserélje le a
myhelmacrcímkét az ACR nevére.az acr build --image azure-vote-front:v1 --registry myhelmacr --file Dockerfile .
Megjegyzés
Helm-diagramokat is importálhat az ACR-be. További információ: Push és pull Helm-diagramok egy Azure tárolóregisztrációs adatbázisba.
A Helm-diagram létrehozása
Hozza létre a Helm-diagramot a
helm createparanccsal.helm create azure-vote-frontFrissítse az azure-vote-front/Chart.yaml fájlt, hogy hozzáadjon egy függőséget a redis charthoz a
https://charts.bitnami.com/bitnamicharttárból, és frissítse aappVersionelemetv1-ra, ahogyan az alábbi példában látható.Megjegyzés
Az útmutatóban látható tárolórendszerkép-verziókat teszteltük, hogy működjenek ezzel a példával, de lehet, hogy nem a legújabb verzió érhető el.
apiVersion: v2 name: azure-vote-front description: A Helm chart for Kubernetes dependencies: - name: redis version: 17.3.17 repository: https://charts.bitnami.com/bitnami ... # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. appVersion: v1Frissítse a Helm-diagram függőségeit a
helm dependency updateparanccsal.helm dependency update azure-vote-frontFrissítse az azure-vote-front/values.yaml parancsot az alábbi módosításokkal.
- Adjon hozzá egy redis szakaszt a kép részleteinek, a konténer portjának és az üzembe helyezés nevének beállításához.
- Adjon hozzá egy backendName-et az előtér részének a redis telepítéséhez való összekapcsolásához.
- Az image.repository módosítása erre:
<loginServer>/azure-vote-front. - A image.tag-t
v1-re kell módosítani. - Módosítsa a service.type értékét LoadBalancer-re.
Példa:
replicaCount: 1 backendName: azure-vote-backend-master redis: image: registry: mcr.microsoft.com repository: oss/bitnami/redis tag: 6.0.8 fullnameOverride: azure-vote-backend auth: enabled: false image: repository: myhelmacr.azurecr.io/azure-vote-front pullPolicy: IfNotPresent tag: "v1" ... service: type: LoadBalancer port: 80 ...Adjon hozzá egy
envszakaszt az azure-vote-front/templates/deployment.yaml fájlhoz a redis telepítés nevének átadásához.... containers: - name: {{ .Chart.Name }} securityContext: {{- toYaml .Values.securityContext | nindent 12 }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} env: - name: REDIS value: {{ .Values.backendName }} ...
A Helm-diagram futtatása
Telepítse az alkalmazást a Helm-diagram használatával a
helm installparancs használatával.helm install azure-vote-front azure-vote-front/Néhány percig tart, amíg a szolgáltatás egy nyilvános IP-címet ad vissza. Használja a
kubectl get serviceparancsot a--watchargumentummal a folyamat figyeléséhez.kubectl get service azure-vote-front --watchHa a szolgáltatás készen áll, az
EXTERNAL-IPérték<pending>-ről IP-címre változik. Nyomja leCTRL+Cazkubectlórafolyamat leállításához.NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE azure-vote-front LoadBalancer 10.0.18.228 <pending> 80:32021/TCP 6s ... azure-vote-front LoadBalancer 10.0.18.228 52.188.140.81 80:32021/TCP 2m6sKeresse meg az alkalmazás terheléselosztóját egy böngészőben a
<EXTERNAL-IP>mintaalkalmazás megtekintéséhez.
A fürt törlése
Távolítsa el az erőforráscsoportot, az AKS-fürtöt, az Azure tárolóregisztrációs adatbázist, az ACR-ben tárolt konténerképeket és az összes kapcsolódó erőforrást az az csoport törlése parancsot a
--yesparaméterrel, hogy megerősítse a törlést, és a--no-waitparaméterrel, hogy anélkül térjen vissza a parancssorba, hogy megvárná a művelet befejezését.az group delete --name myResourceGroup --yes --no-wait
Megjegyzés
Ha az AKS-fürtöt egy rendszer által hozzárendelt felügyelt identitással hozta létre (ami az alapértelmezett beállítás ebben a gyorsútmutatóban), az identitást a platform kezeli, így nincs szükség annak eltávolítására.
Ha az AKS-fürtöt szolgáltatási főazonosítóval hozta létre, a szolgáltatási főazonosító nem kerül törlésre a fürt eltávolításakor. A szolgáltatásnév eltávolításához tekintse meg az AKS szolgáltatásnévvel kapcsolatos szempontokat és a törlést.
Következő lépések
A Helm használatáról további információt a Helm dokumentációjában talál.