Samouczek — tworzenie klastra usługi Azure Kubernetes Service (AKS)

Usługa Kubernetes zapewnia rozproszoną platformę dla konteneryzowanych aplikacji. Dzięki usłudze Azure Kubernetes Service (AKS) można szybko utworzyć gotowy do produkcji klaster Kubernetes.

W tym samouczku, część trzecia z siedmiu, wdrożysz klaster Kubernetes w usłudze AKS. Dowiedz się, jak odbywa się:

  • Wdróż klaster usługi AKS, który może uwierzytelniać się w usłudze Azure Container Registry (ACR).
  • Zainstaluj interfejs wiersza polecenia platformy Kubernetes, kubectl.
  • Skonfiguruj kubectl , aby nawiązać połączenie z klastrem usługi AKS.

Zanim rozpoczniesz

W poprzednich samouczkach utworzono obraz kontenera i przekazano go do wystąpienia usługi ACR. Rozpocznij od samouczka 1 — przygotuj aplikację dla usługi AKS , aby kontynuować.

  • Jeśli używasz interfejsu wiersza polecenia platformy Azure, ten samouczek wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.53 lub nowszej. Sprawdź wersję za pomocą polecenia az --version. Aby zainstalować lub uaktualnić, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
  • Jeśli używasz programu Azure PowerShell, ten samouczek wymaga programu Azure PowerShell w wersji 5.9.0 lub nowszej. Sprawdź wersję za pomocą polecenia Get-InstalledModule -Name Az. Aby zainstalować lub uaktualnić, zobacz Instalowanie programu Azure PowerShell.
  • Jeśli używasz interfejsu wiersza polecenia dla deweloperów platformy Azure, ten samouczek wymaga interfejsu wiersza polecenia dla deweloperów platformy Azure w wersji 1.5.1 lub nowszej. Sprawdź wersję za pomocą polecenia azd version. Aby zainstalować lub uaktualnić, zobacz Instalowanie interfejsu wiersza polecenia dla deweloperów platformy Azure.

Tworzenie klastra Kubernetes

Klastry usługi AKS mogą używać kontroli dostępu opartej na rolach (Kubernetes RBAC) platformy Kubernetes, która umożliwia definiowanie dostępu do zasobów na podstawie ról przypisanych do użytkowników. Jeśli użytkownik ma przypisane wiele ról, uprawnienia są łączone. Uprawnienia mogą być ograniczone do jednej przestrzeni nazw lub w całym klastrze.

Aby dowiedzieć się więcej na temat kontroli dostępu opartej na rolach usług AKS i Kubernetes, zobacz Kontrola dostępu do zasobów klastra przy użyciu kontroli dostępu opartej na rolach platformy Kubernetes i tożsamości usługi Microsoft Entra w usłudze AKS.

Ten samouczek wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.53 lub nowszej. Sprawdź wersję za pomocą polecenia az --version. Aby zainstalować lub uaktualnić, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Instalowanie interfejsu wiersza polecenia rozwiązania Kubernetes

Interfejs wiersza polecenia kubernetes, kubectl, umożliwia nawiązanie połączenia z klastrem Kubernetes. Jeśli korzystasz z usługi Azure Cloud Shell, narzędzie kubectl jest już zainstalowane. Jeśli uruchamiasz polecenia lokalnie, możesz zainstalować kubectlprogram za pomocą interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.

  • Zainstaluj kubectl lokalnie przy użyciu az aks install-cli polecenia .

    az aks install-cli
    

Tworzenie klastra AKS

Klastry usługi AKS mogą używać kontroli dostępu opartej na rolach (Kubernetes RBAC) platformy Kubernetes, która umożliwia definiowanie dostępu do zasobów na podstawie ról przypisanych do użytkowników. Uprawnienia są łączone, gdy użytkownicy mają przypisane wiele ról. Uprawnienia mogą być ograniczone do jednej przestrzeni nazw lub w całym klastrze. Aby uzyskać więcej informacji, zobacz Control access to cluster resources using Kubernetes RBAC and Microsoft Entra ID in AKS (Kontrola dostępu do zasobów klastra przy użyciu kontroli dostępu opartej na rolach platformy Kubernetes i identyfikatora Entra firmy Microsoft w usłudze AKS).

Aby uzyskać informacje na temat limitów zasobów i dostępności regionów usługi AKS, zobacz Limity przydziału, ograniczenia rozmiaru maszyny wirtualnej i dostępność regionów w usłudze AKS.

Uwaga

Aby zapewnić niezawodne działanie klastra, należy uruchomić co najmniej dwa węzły.

Aby umożliwić klastrowi usługi AKS interakcję z innymi zasobami platformy Azure, platforma Azure automatycznie tworzy tożsamość klastra. W tym przykładzie tożsamość klastra ma prawo do ściągania obrazów z wystąpienia usługi ACR utworzonego w poprzednim samouczku. Aby wykonać polecenie pomyślnie, musisz mieć rolę właściciela lub administratora konta platformy Azure w ramach subskrypcji platformy Azure.

  • Utwórz klaster usługi AKS przy użyciu az aks create polecenia . W poniższym przykładzie tworzony jest klaster o nazwie myAKSCluster w grupie zasobów o nazwie myResourceGroup. Ta grupa zasobów została utworzona w poprzednim samouczku w regionie eastus .

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 2 \
        --generate-ssh-keys \
        --attach-acr <acrName>
    

    Uwaga

    Jeśli klucze SSH są już wygenerowane, może wystąpić błąd podobny do linuxProfile.ssh.publicKeys.keyData is invalid. Aby kontynuować, spróbuj ponownie wykonać polecenie bez parametru --generate-ssh-keys .

Aby uniknąć konieczności posiadania lub roli administratora konta platformy Azure, możesz również ręcznie skonfigurować jednostkę usługi w celu ściągnięcia obrazów z usługi ACR. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie ACR za pomocą jednostek usługi lub Uwierzytelnianie z platformy Kubernetes przy użyciu wpisu tajnego ściągania. Alternatywnie można użyć tożsamości zarządzanej zamiast jednostki usługi, aby ułatwić zarządzanie.

Nawiązywanie połączenia z klastrem przy użyciu narzędzia kubectl

  1. Skonfiguruj kubectl , aby nawiązać połączenie z klastrem az aks get-credentials Kubernetes przy użyciu polecenia . Poniższy przykład pobiera poświadczenia dla klastra usługi AKS o nazwie myAKSCluster w grupie myResourceGroup.

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    
  2. Sprawdź połączenie z klastrem kubectl get nodes przy użyciu polecenia , które zwraca listę węzłów klastra.

    kubectl get nodes
    

    Poniższe przykładowe dane wyjściowe zawierają listę węzłów klastra.

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-19366578-vmss000002   Ready    agent   47h   v1.25.6
    aks-nodepool1-19366578-vmss000003   Ready    agent   47h   v1.25.6
    

Następne kroki

W tym samouczku wdrożono klaster Kubernetes w usłudze AKS i skonfigurowano kubectl go do nawiązywania połączenia z klastrem. W tym samouczku omówiono:

  • Wdróż klaster usługi AKS, który może uwierzytelniać się w usłudze ACR.
  • Zainstaluj interfejs wiersza polecenia platformy Kubernetes, kubectl.
  • Skonfiguruj kubectl , aby nawiązać połączenie z klastrem usługi AKS.

W następnym samouczku dowiesz się, jak wdrożyć aplikację w klastrze.