Sdílet prostřednictvím


Přístup k soukromému clusteru Azure Kubernetes Service (AKS)

Když přistupujete k privátnímu clusteru AKS, musíte se k němu připojit z virtuální sítě clusteru, partnerské sítě nebo nakonfigurovaného privátního koncového bodu. Tyto přístupy vyžadují konfiguraci sítě VPN, Express Route, nasazení jumpboxu ve virtuální síti clusteru nebo vytvoření privátního koncového bodu uvnitř jiné virtuální sítě.

Pomocí Azure CLI můžete přistupovat command invoke k privátním clusterům bez nutnosti konfigurace sítě VPN nebo ExpressRoute. command invoke umožňuje vzdáleně volat příkazy, například kubectl a helm, ve vašem privátním clusteru prostřednictvím rozhraní Azure API bez přímého připojení ke clusteru. Akce Microsoft.ContainerService/managedClusters/runcommand/action řídí Microsoft.ContainerService/managedclusters/commandResults/read oprávnění pro použití command invoke.

Pomocí webu Azure Portal můžete pomocí Run command funkce spouštět příkazy v privátním clusteru. Tato Run command funkce používá stejné command invoke funkce ke spouštění příkazů ve vašem clusteru.

Než začnete

Než začnete, ujistěte se, že máte následující prostředky a oprávnění:

  • Existující privátní cluster. Pokud ho nemáte, přečtěte si téma Vytvoření privátního clusteru AKS.
  • Azure CLI verze 2.24.0 nebo novější. Verzi zjistíte spuštěním příkazu az --version. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI.
  • Přístup k rolím Microsoft.ContainerService/managedClusters/runcommand/action a Microsoft.ContainerService/managedclusters/commandResults/read rolím v clusteru

Omezení

Pod vytvořený příkazem run poskytuje helm a nejnovější kompatibilní verzi clusteru kubectl s kustomize.

command invoke spouští příkazy z vašeho clusteru, takže všechny příkazy spouštěné tímto způsobem podléhají nakonfigurovaným omezením sítě a jakýmkoli jiným nakonfigurovaným omezením. Ujistěte se, že v clusteru je dostatek uzlů a prostředků k naplánování tohoto podu příkazů.

Poznámka:

Výstup je command invoke omezen na velikost 512 kB.

Spouštění příkazů v clusteru AKS

Slouží command invoke ke spuštění jednoho příkazu.

  • Spuštěním příkazu v clusteru spusťte az aks command invoke --command příkaz. Následující ukázkový příkaz spustí kubectl get pods -n kube-system příkaz v clusteru myPrivateCluster v myResourceGroup.

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

Slouží command invoke ke spouštění více příkazů.

  • Pomocí příkazu spusťte ve svém clusteru az aks command invoke --command více příkazů. Následující ukázkový příkaz spustí tři helm příkazy v clusteru myPrivateCluster v myResourceGroup.

    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"
    

Slouží command invoke ke spouštění příkazů s připojeným souborem nebo adresářem.

  • Pomocí příkazu s parametrem spusťte příkazy s připojeným souborem nebo adresářem az aks command invoke --command --file . Následující ukázkový příkaz se spustí kubectl apply -f deployment.yaml -n default v clusteru myPrivateCluster v myResourceGroup. Soubor deployment.yaml je připojen z aktuálního adresáře na vývojovém počítači, kde az aks command invoke byl spuštěn.

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

Slouží command invoke ke spouštění příkazů se všemi soubory v připojeném aktuálním adresáři.

  • Pomocí příkazu s parametrem spusťte příkazy se všemi soubory v aktuálním adresáři, které jsou --file připojenéaz aks command invoke --command. Následující ukázkový příkaz se spustí kubectl apply -f deployment.yaml configmap.yaml -n default v clusteru myPrivateCluster v myResourceGroup. Soubory deployment.yaml jsou configmap.yaml součástí aktuálního adresáře na vývojovém počítači, na kterém az aks command invoke byl spuštěný.

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