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.
- Interfejs wiersza polecenia platformy Azure
- Azure PowerShell
- Interfejs wiersza polecenia dla deweloperów 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.
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ć kubectl
program za pomocą interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.
- Interfejs wiersza polecenia platformy Azure
- Azure PowerShell
- Interfejs wiersza polecenia dla deweloperów platformy Azure
Zainstaluj
kubectl
lokalnie przy użyciuaz 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.
- Interfejs wiersza polecenia platformy Azure
- Azure PowerShell
- Interfejs wiersza polecenia dla deweloperów platformy Azure
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 . Będziemy nadal używać zmiennej środowiskowej ,$ACRNAME
która jest ustawiona w poprzednim samouczku. Jeśli nie masz tego zestawu zmiennych środowiskowych, ustaw ją teraz na tę samą wartość, która została wcześniej użyta.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
- Interfejs wiersza polecenia platformy Azure
- Azure PowerShell
- Interfejs wiersza polecenia dla deweloperów platformy Azure
Skonfiguruj
kubectl
, aby nawiązać połączenie z klastremaz 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
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-vmss000000 Ready agent 47h v1.28.9 aks-nodepool1-19366578-vmss000001 Ready agent 47h v1.28.9
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.
Azure Kubernetes Service