Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Helm , Kubernetes uygulamalarının yaşam döngüsünü yüklemenize ve yönetmenize yardımcı olan bir açık kaynak paketleme aracıdır. Helm, APT ve Yum gibi Linux paket yöneticilerine benzer şekilde, önceden yapılandırılmış Kubernetes kaynaklarının paketleri olan Kubernetes grafiklerini yönetir.
Bu hızlı başlangıçta, AKS'de bir uygulamayı paketlemek ve çalıştırmak için Helm'i kullanacaksınız. Helm kullanarak mevcut bir uygulamayı yükleme hakkında bilgi için bkz . AKS'de Helm ile mevcut uygulamaları yükleme.
Önkoşullar
- Azure aboneliği. Azure aboneliğiniz yoksa ücretsiz hesap oluşturabilirsiniz.
- Azure CLI veya Azure PowerShell yüklü.
- Helm v3 yüklü.
Azure Container Registry oluşturmak
Uygulamanızı Helm kullanarak AKS kümenizde çalıştırmak için kapsayıcı görüntülerinizi bir Azure Container Registry'de (ACR) depolamanız gerekir. Kayıt defteri adınızın Azure içinde benzersiz olması ve 5-50 alfasayısal karakter içermesi gerekir. Yalnızca küçük harf karakterlere izin verilir. Temel SKU, geliştirme amaçlı dağıtımlar için uygun maliyetli, depolama ve aktarım hızı açısından dengeli bir giriş noktasıdır.
az group create komutunu kullanarak bir Azure kaynak grubu oluşturun . Aşağıdaki örnek eastus konumunda myResourceGroup adlı bir kaynak grubu oluşturur.
az group create --name myResourceGroup --location eastusaz acr create komutunu çağırarak benzersiz bir ada sahip bir Azure Container Registry oluşturun. Aşağıdaki örnek, Temel SKU ile myhelmacr adlı bir ACR oluşturur.
az acr create --resource-group myResourceGroup --name myhelmacr --sku BasicÇıkışınız aşağıdaki daraltılmış örnek çıkışa benzer olmalıdır. ACR'inizin sonraki bir adımda kullanması için loginServer değerinizi not alın.
{ "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 kümesi oluşturma
Kapsayıcı görüntülerini çekmek ve çalıştırmak için yeni AKS kümenizin ACR'nize erişmesi gerekir.
az aks create komutunu
--attach-acrparametresiyle kullanarak, kümenin ACR'nize erişimini sağlamak için bir AKS kümesi oluşturun. Aşağıdaki örnek, myAKSCluster adlı bir AKS kümesi oluşturur ve myhelmacr ACR'ye erişim verir.myhelmacröğesini ACR'nizin adıyla değiştirdiğinizden emin olun.az aks create --resource-group myResourceGroup --name myAKSCluster --location eastus --attach-acr myhelmacr --generate-ssh-keys
AKS kümenize bağlanma
Kubernetes kümesini yerel olarak bağlamak için Kubernetes komut satırı istemcisi kubectl'yi kullanırsınız.
kubectl Azure Cloud Shell kullanıyorsanız zaten yüklüdür.
kubectlkomutunu kullanarak yerel olarak yükleyin.az aks install-clikubectlKubernetes kümenize bağlanacak şekilde yapılandırmak için az aks get-credentials komutunu kullanın. Aşağıdaki komut, myResourceGroup'ta myAKSCluster adlı AKS kümesinin kimlik bilgilerini alır.az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Örnek uygulamayı indirin:
Bu hızlı başlangıçta Azure Vote uygulaması kullanılır.
komutunu kullanarak
git cloneGitHub'dan uygulamayı kopyalayın.git clone https://github.com/Azure-Samples/azure-voting-app-redis.gitazure-votekomutunu kullanarakcddizinine geçin.cd azure-voting-app-redis/azure-vote/
Örnek uygulamayı derleme ve ACR'ye gönderme
az acr build komutunu kullanarak görüntüyü derleyin ve ACR'nize gönderin. Aşağıdaki örnek azure-vote-front:v1 adlı bir görüntü oluşturur ve myhelmacr ACR'ye gönderir.
myhelmacröğesini ACR'nizin adıyla değiştirdiğinizden emin olun.az acr build --image azure-vote-front:v1 --registry myhelmacr --file Dockerfile .
Not
Helm grafiklerini ACR'nize de aktarabilirsiniz. Daha fazla bilgi için Helm çizelgelerini bir Azure kapsayıcı kayıt defterine gönderme ve çekme kısmına bakın.
Helm grafiğinizi oluşturma
komutunu kullanarak
helm createHelm grafiğinizi oluşturun.helm create azure-vote-frontNot
Bu kılavuzda gösterilen kapsayıcı görüntüsü sürümleri bu örnekle çalışacak şekilde test edilmiştir, ancak kullanılabilir en son sürüm olmayabilir.
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: v1komutunu kullanarak Helm grafiği bağımlılıklarınızı güncelleştirin
helm dependency update.helm dependency update azure-vote-frontazure-vote-front/values.yaml dosyasını aşağıdaki değişikliklerle güncelleştirin.
- Görüntü ayrıntılarını, kapsayıcı bağlantı noktasını ve dağıtım adını ayarlamak için bir redis bölümü ekleyin.
- Ön uç bölümünü redis dağıtımına bağlamak için bir arka uçAdı ekleyin.
-
image.repository ögesini
<loginServer>/azure-vote-frontile değiştirin. - image.tag değerini.
- service.type dosyasını LoadBalancer olarak değiştirin.
Örneğin:
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 ...Redis
envadını geçirmek için azure-vote-front/templates/deployment.yaml dosyasına bir bölüm ekleyin.... 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 }} ...
Helm grafiğinizi çalıştırın
Helm grafiğinizi kullanarak uygulamanızı
helm installkomutuyla yükleyin.helm install azure-vote-front azure-vote-front/Hizmetin genel IP adresi döndürmesi birkaç dakika sürer.
kubectl get servicekomutunu--watchargümanıyla kullanarak ilerleme durumunu izleyin.kubectl get service azure-vote-front --watchHizmet hazır olduğunda,
EXTERNAL-IPdeğeri<pending>'den bir IP adresine değişir. İzleme işlemini durdurmakCTRL+Ciçin basınkubectl.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 2m6sÖrnek uygulamayı görmek için
<EXTERNAL-IP>kullanarak bir tarayıcıda uygulamanızın yük dengeleyicisine gidin.
Kümeyi sil
Kaynak grubunuzu, AKS kümenizi, Azure kapsayıcı kayıt defterinizi, ACR'de depolanan kapsayıcı görüntülerinizi ve tüm ilgili kaynakları kaldırmak için az group delete komutunu, silme işlemini onaylamak için
--yesparametresiyle ve işlemin tamamlanmasını beklemeden komut istemine dönmek için--no-waitparametresiyle kullanın.az group delete --name myResourceGroup --yes --no-wait
Not
AKS kümenizi sistem tarafından atanan yönetilen kimlikle (bu hızlı başlangıçtaki varsayılan kimlik seçeneği) oluşturduysanız, kimlik platform tarafından yönetilir ve kaldırılması gerekmez.
AKS kümenizi bir hizmet sorumlusuyla oluşturduysanız, kümeyi sildiğinizde hizmet sorumlusu kaldırılmaz. Hizmet sorumlusunu kaldırmak için AKS hizmet sorumlusuyla ilgili önemli noktalar ve silme başlığına bakınız.
Sonraki adımlar
Helm kullanma hakkında daha fazla bilgi için Helm belgelerine bakın.