Öğretici - Azure Kubernetes Service (AKS) kümesi oluşturma

Kubernetes, kapsayıcılı uygulamalar için dağıtılmış bir platform sunar. Azure Kubernetes Service (AKS) ile hızla üretime hazır bir Kubernetes kümesi oluşturabilirsiniz.

Bu öğreticide AKS'de bir Kubernetes kümesi dağıtacaksınız. Şunları yapmayı öğreneceksiniz:

  • Azure Container Registry'de (ACR) kimlik doğrulaması yapabilecek bir AKS kümesi dağıtın.
  • Kubernetes CLI'sini yükleyin kubectl.
  • kubectl'yu AKS kümenize bağlanacak şekilde yapılandırın.

Başlamadan önce

Önceki derslerde bir kapsayıcı görüntüsü oluşturdunuz ve bunu bir ACR örneğine yüklediniz. Başlangıç olarak Öğretici 1 - Uygulamayı AKS için Hazırlayın ile devam edin.

Bu öğretici, faturalanabilir AKS kümesi kaynakları oluşturur ve Azure aboneliğinizde Sahip veya Azure hesap yöneticisi rolüne sahip olmanızı gerektirir.

  • Azure CLI kullanıyorsanız bu öğretici, Azure CLI 2.35.0 veya sonraki bir sürümünü çalıştırmanızı gerektirir. Sürümünüzü az --version ile kontrol edin. Yüklemek veya yükseltmek için bkz . Azure CLI'yı yükleme.
  • Azure PowerShell kullanıyorsanız bu öğretici, Azure PowerShell sürüm 5.9.0 veya üzerini çalıştırmanızı gerektirir. Sürümünüzü Get-InstalledModule -Name Az ile kontrol edin. Yüklemek veya yükseltmek için bkz . Azure PowerShell'i yükleme.
  • Azure Geliştirici CLI kullanıyorsanız bu öğretici, Azure Geliştirici CLI 1.5.1 veya sonraki bir sürümünü çalıştırmanızı gerektirir. Sürümünüzü azd version ile kontrol edin. Yüklemek veya yükseltmek için bkz . Azure Geliştirici CLI'sini yükleme.

Kubernetes kümesi oluşturma

AKS kümeleri, kullanıcılara atanan rollere göre kaynaklara erişim tanımlamanızı sağlayan Kubernetes rol tabanlı erişim denetimini (Kubernetes RBAC) kullanabilir. Kullanıcıya birden çok rol atanırsa, izinler birleştirilir. İzinlerin kapsamı tek bir ad alanı veya tüm küme genelinde olabilir.

AKS ve Kubernetes RBAC hakkında daha fazla bilgi edinmek için bkz . AKS'de Kubernetes RBAC ve Microsoft Entra kimliklerini kullanarak küme kaynaklarına erişimi denetleme.

Bu öğretici için Azure CLI sürüm 2.35.0 veya üzeri gerekir. Sürümünüzü az --version ile kontrol edin. Yüklemek veya yükseltmek için bkz . Azure CLI'yı yükleme. Azure Cloud Shell'de Bash ortamını kullanıyorsanız en son sürüm zaten yüklüdür.

Kubernetes CLI'yi yükleme

Kubernetes kümenize bağlanmak için Kubernetes CLI'sini kubectlkullanırsınız. Azure Cloud Shell'i kullanıyorsanız kubectl zaten yüklüdür. Komutları yerel olarak çalıştırıyorsanız, yüklemek kubectliçin Azure CLI veya Azure PowerShell'i kullanabilirsiniz.

  • kubectl yükleyin yerel olarak, az aks install-cli komutunu kullanarak.

    az aks install-cli
    

AKS kümesi oluşturma

AKS kümeleri, kullanıcılara atanan rollere göre kaynaklara erişim tanımlamanızı sağlayan Kubernetes rol tabanlı erişim denetimini (Kubernetes RBAC) kullanabilir. Kullanıcılara birden çok rol atandığında izinler birleştirilir. İzinlerin kapsamı tek bir ad alanı veya tüm küme genelinde olabilir. Daha fazla bilgi için bkz . AKS'de Kubernetes RBAC ve Microsoft Entra Id kullanarak küme kaynaklarına erişimi denetleme.

Aks kümesinin diğer Azure kaynaklarıyla etkileşim kurmasına izin vermek için Azure platformu otomatik olarak bir küme kimliği oluşturur. Bu örnekte, küme kimliğine önceki öğreticide oluşturduğunuz ACR örneğinden görüntü çekme hakkı verilir. Komutu başarıyla yürütmek için Azure aboneliğinizde Sahip veya Azure hesabı yöneticisi rolüne sahip olmanız gerekir.

  • komutunu kullanarak az aks create bir AKS kümesi oluşturun. Aşağıdaki örnek, myResourceGroup adlı kaynak grubunda myAKSCluster adlı bir küme oluşturur. Bu kaynak grubu westus2 bölgesindeki önceki öğreticide oluşturulmuştur. $ACRNAME ayarladığımız ortam değişkenini kullanmaya devam edeceğiz. Bu ortam değişkeni ayarlı değilse, şimdi daha önce kullandığınız değere ayarlayın.

Bir küme seçeneği belirleyin ve yalnızca eşleşen komut bloğunu çalıştırın. AKS kümesi oluşturmak için iki seçeneğiniz vardır. Ayrıntılı karşılaştırma için buraya bakın.

  1. AKS Otomatik (önerilen) — küme kurulumunu, işlemlerini ve düğüm yönetimini otomatik hale getiren tam olarak yönetilen bir Kubernetes deneyimi. Basitleştirilmiş işlemler için ve AKS Desktop uygulama kullanıcı arabirimini önerilen varsayılan değerlerle kullanmak için bu seçeneği belirleyin.

    Bu komut bloğunu yalnızca AKS Otomatik'i seçtiyseniz çalıştırın.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --sku automatic \
        --attach-acr $ACRNAME
    
    AKS_ID=$(az aks show --resource-group myResourceGroup --name myAKSCluster --query id -o tsv)
    ENTRA_OBJECT_ID=$(az ad signed-in-user show --query id -o tsv)
    
    # Grant yourself admin permissions to the cluster using the Azure Kubernetes Service RBAC Cluster Admin role.
    az role assignment create --role "Azure Kubernetes Service RBAC Cluster Admin" \
        --assignee $ENTRA_OBJECT_ID \
        --scope $AKS_ID
    
  2. AKS Standard — küme yapılandırması ve düğüm yönetimi üzerinde tam denetim sağlar. Küme ayarlarını özelleştirmeniz gerekiyorsa bu seçeneği belirleyin. AKS Desktop'ı Standart kümelerle kullanmak için oluşturma zamanında ek küme seçenekleri belirtin.

    Bu komut bloğunu yalnızca AKS Standard'ı seçtiyseniz çalıştırın.

    Önemli

    Bu eğitim üç düğümlü bir küme oluşturur. Kümeyi oluşturmaya çalışırken hata iletisi alırsanız Azure aboneliğiniz için kota artışı istemeniz veya farklı bir Azure bölgesi denemeniz gerekebilir. Alternatif olarak, daha az düğüm kullanabilir veya düğüm VM boyutu parametresini atlayabilir ve varsayılan VM boyutunu kullanabilirsiniz. AKS kaynak sınırları ve bölge kullanılabilirliği hakkında bilgi için bkz . AKS'de kotalar, sanal makine boyutu kısıtlamaları ve bölge kullanılabilirliği.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 3 \
        --node-vm-size standard_l8s_v3 \
        --generate-ssh-keys \
        --attach-acr $ACRNAME
    

    Not

    SSH anahtarlarını zaten oluşturduysanız, benzeri linuxProfile.ssh.publicKeys.keyData is invalidbir hatayla karşılaşabilirsiniz. Devam etmek için parametresi olmadan --generate-ssh-keys komutu yeniden deneyin.

Sahip veya Azure hesabı yöneticisi rolüne ihtiyaç duymamak için, hizmet sorumlusunu ACR'den görüntü çekecek şekilde el ile de yapılandırabilirsiniz. Daha fazla bilgi için hizmet sorumlularıyla ACR kimlik doğrulaması veya çekme gizli anahtarı ile Kubernetes'ten kimlik doğrulama konularına bakın. Alternatif olarak, daha kolay yönetim için hizmet sorumlusu yerine yönetilen kimlik kullanabilirsiniz.

kubectl istemcisini kullanarak kümeye bağlanma

  1. kubectl öğesini az aks get-credentials komutunu kullanarak Kubernetes kümenize bağlanacak şekilde yapılandırın. Aşağıdaki örnek, myResourceGroup'ta myAKSCluster adlı AKS kümesinin kimlik bilgilerini alır.

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    
  2. Küme düğümlerinin listesini döndüren komutunu kullanarak kubectl get nodes kümenize bağlantıyı doğrulayın.

    kubectl get nodes
    

    Aşağıdaki örnek çıktı, küme düğümlerinin listesini gösterir:

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-19366578-vmss000000   Ready    agent   47h   v1.30.9
    aks-nodepool1-19366578-vmss000001   Ready    agent   47h   v1.30.9
    aks-nodepool1-19366578-vmss000002   Ready    agent   47h   v1.30.9
    

Sonraki Adımlar

Bu öğreticide, AKS'de bir Kubernetes kümesi dağıttınız ve kubectl'i kümeye bağlanacak şekilde yapılandırdınız. Şunları öğrendiniz:

  • ACR'de kimlik doğrulaması yapabilecek bir AKS kümesi dağıtın.
  • Kubernetes CLI'sini yükleyin kubectl.
  • kubectl'yu AKS kümenize bağlanacak şekilde yapılandırın.

Sonraki öğreticide kümenizde Azure Container Storage'ı dağıtmayı ve genel kısa ömürlü birim oluşturmayı öğreneceksiniz. Azure Geliştirici CLI kullanıyorsanız veya kota sorunları nedeniyle depolama için iyileştirilmiş bir VM türünü kullanamadıysanız doğrudan Kapsayıcılı uygulama dağıtma öğreticisine geçin.