Komut çağırma veya Komut çalıştırma özelliğini kullanarak özel bir Azure Kubernetes Service (AKS) kümesine erişme

Özel bir AKS kümesine erişirken kümeye küme sanal ağından, eşlenmiş ağdan veya yapılandırılmış bir özel uç noktadan bağlanmanız gerekir. Bu yaklaşımlar bir VPN, Express Route yapılandırmayı, küme sanal ağında bir sıçrama kutusu dağıtmayı veya başka bir sanal ağın içinde özel uç nokta oluşturmayı gerektirir.

Azure CLI ile vpn veya Express Route yapılandırmaya gerek kalmadan özel kümelere erişmek için kullanabilirsiniz command invoke . command invoke, kümeye doğrudan bağlanmadan Azure API aracılığıyla özel kümenizde ve helmgibi kubectl komutları uzaktan çağırmanıza olanak tanır. Microsoft.ContainerService/managedClusters/runcommand/action ve Microsoft.ContainerService/managedclusters/commandResults/read eylemleri, kullanma command invokeizinlerini denetler.

Azure portalı ile bu özelliği kullanarak Run command özel kümenizde komut çalıştırabilirsiniz. Bu özellik, Run command kümenizde komut çalıştırmak için aynı command invoke işlevselliği kullanır.

Başlamadan önce

Başlamadan önce aşağıdaki kaynaklara ve izinlere sahip olduğunuzdan emin olun:

  • Var olan bir özel küme. Bir kümeniz yoksa bkz . Özel AKS kümesi oluşturma.
  • Azure CLI sürüm 2.24.0 veya üzeri. Sürümü bulmak için az --version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.
  • Kümedeki Microsoft.ContainerService/managedClusters/runcommand/action ve Microsoft.ContainerService/managedclusters/commandResults/read rollerine erişim.

Sınırlamalar

komutu tarafından run oluşturulan pod ile kümeniz kustomizeiçin en son uyumlu sürümünü kubectl sağlarhelm.

command invoke kümenizdeki komutları çalıştırdığından, bu şekilde çalıştırılan tüm komutlar yapılandırılan ağ kısıtlamalarınıza ve diğer yapılandırılmış kısıtlamalara tabidir. Kümenizde bu komut podlarını zamanlamak için yeterli düğüm ve kaynak olduğundan emin olun.

Not

için command invoke çıkış boyutu 512 kb ile sınırlıdır.

AKS kümenizde komut çalıştırma

Tek bir komut çalıştırmak için kullanın command invoke

  • komutunu kullanarak az aks command invoke --command kümenizde bir komut çalıştırın. Aşağıdaki örnek komut, myResourceGroup'taki myPrivateCluster kümesinde komutunu çalıştırırkubectl get pods -n kube-system.

    az aks command invoke \
      --resource-group myResourceGroup \
      --name myPrivateCluster \
      --command "kubectl get pods -n kube-system"
    

Birden çok komut çalıştırmak için kullanın command invoke

  • komutunu kullanarak az aks command invoke --command kümenizde birden çok komut çalıştırın. Aşağıdaki örnek komut, myResourceGroup'taki myPrivateCluster kümesinde üç helm komut çalıştırır.

    az aks command invoke \
      --resource-group myResourceGroup \
      --name myPrivateCluster \
      --command "helm repo add bitnami https://charts.bitnami.com/bitnami && helm repo update && helm install my-release bitnami/nginx"
    

Ekli dosya veya dizinle komutları çalıştırmak için kullanın command invoke

  • parametresiyle komutunu kullanarak az aks command invoke --command komutları ekli bir dosya veya dizinle --file çalıştırın. Aşağıdaki örnek komut, myResourceGroup'taki myPrivateCluster kümesinde çalışırkubectl apply -f deployment.yaml -n default. Dosya deployment.yaml , çalıştırıldığı az aks command invoke geliştirme bilgisayarındaki geçerli dizinden eklenir.

    az aks command invoke \
      --resource-group myResourceGroup \
      --name myPrivateCluster \
      --command "kubectl apply -f deployment.yaml -n default" \
      --file deployment.yaml
    

Geçerli dizindeki tüm dosyaların eklendiği komutları çalıştırmak için kullanın command invoke

  • komutunu parametresiyle kullanarak geçerli dizindeki tüm dosyaları ekli olarak az aks command invoke --command --file çalıştırın. Aşağıdaki örnek komut, myResourceGroup'taki myPrivateCluster kümesinde çalışırkubectl apply -f deployment.yaml configmap.yaml -n default. deployment.yaml ve configmap.yaml dosyaları, çalıştırıldığı az aks command invoke geliştirme bilgisayarındaki geçerli dizinin bir parçasıdır.

    az aks command invoke \
      --resource-group myResourceGroup \
      --name myPrivateCluster \
      --command "kubectl apply -f deployment.yaml configmap.yaml -n default" \
      --file .
    

Sorun giderme

ile ilgili en yaygın sorunlar az aks command invoke ve bunların nasıl çözüleceğini öğrenmek için bkz. Hataları çözmeaz aks command invoke.

Sonraki adımlar

Bu makalede, özel bir kümeye erişmeyi ve bu kümede komut çalıştırmayı öğrendiniz. AKS kümeleri hakkında daha fazla bilgi için aşağıdaki makalelere bakın: