Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: ✔️ AKS Automatic
Usługa Azure Kubernetes Service (AKS) Automatic zapewnia najłatwiejsze zarządzane środowisko kubernetes dla deweloperów, inżynierów DevOps i inżynierów platformy. Idealne rozwiązanie dla nowoczesnych aplikacji sztucznej inteligencji, usługa AKS Automatic automatyzuje konfigurację i operacje klastra usługi AKS oraz osadza konfiguracje najlepszych rozwiązań. Użytkownicy dowolnego poziomu umiejętności mogą korzystać z bezpieczeństwa, wydajności i niezawodności Automatyki AKS dla swoich aplikacji. Usługa AKS Automatic obejmuje również umowę SLA dotyczącą gotowości zasobników, która gwarantuje zakończenie 99,9% operacji gotowości zasobników w ciągu 5 minut, zapewniając niezawodną, samonaprawiającą się infrastrukturę dla aplikacji.
Z tego przewodnika Szybki start dowiesz się, jak wykonywać następujące zadania:
- Wdrażanie klastra automatycznego usługi AKS.
- Uruchom przykładową aplikację z wieloma kontenerami z grupą mikrousług i frontonów internetowych symulujących scenariusz sprzedaży detalicznej.
Zanim rozpoczniesz
- Ten szybki start zakłada, że masz podstawową wiedzę na temat pojęć związanych z platformą Kubernetes. Aby uzyskać więcej informacji, zobacz temat Kubernetes core concepts for Azure Kubernetes Service (AKS) (Kubernetes — podstawowe pojęcia dotyczące usługi Azure Kubernetes Service (AKS)).
- Usługa AKS Automatic włączy usługę Azure Policy w klastrze usługi AKS, ale należy wstępnie zarejestrować dostawcę
Microsoft.PolicyInsightszasobów w ramach subskrypcji, aby zapewnić bezproblemowe środowisko pracy. Aby uzyskać więcej informacji, zobacz Dostawcy zasobów i typy platformy Azure .
Użyj środowiska Bash w Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Get started with Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj Azure CLI. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze platformy Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby zakończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Uwierzytelnianie na platformie Azure przy użyciu interfejsu wiersza polecenia platformy Azure.
Gdy zostaniesz o to poproszony/a, zainstaluj rozszerzenie Azure CLI przy pierwszym użyciu. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Używanie rozszerzeń i zarządzanie nimi za pomocą interfejsu wiersza polecenia platformy Azure.
Uruchom az version, aby sprawdzić zainstalowaną wersję i biblioteki zależne. Aby przeprowadzić uaktualnienie do najnowszej wersji, uruchom polecenie az upgrade.
- Ten artykuł wymaga wersji 2.77.0 lub nowszej interfejsu wiersza polecenia platformy Azure. Jeśli używasz usługi Azure Cloud Shell, najnowsza wersja jest już tam zainstalowana.
- Jeśli masz wiele subskrypcji platformy Azure, wybierz odpowiedni identyfikator subskrypcji, w którym zasoby mają być rozliczane przy użyciu
az account setpolecenia .
- Aby wdrożyć plik Bicep, musisz zapisać dostęp do tworzonych zasobów i uzyskać dostęp do wszystkich operacji w typie
Microsoft.Resources/deploymentszasobu. Aby na przykład utworzyć maszynę wirtualną, potrzebne są uprawnieniaMicrosoft.Compute/virtualMachines/writeiMicrosoft.Resources/deployments/*. Aby uzyskać listę ról i uprawnień, zobacz Role wbudowane platformy Azure.
Ograniczenia
- Pula węzłów systemowych klastrów automatycznych AKS musi być wdrożona w regionach platformy Azure, które obsługują co najmniej trzy strefy dostępności, efemeryczne dyski systemu operacyjnego oraz system operacyjny Azure Linux.
- Klastry automatyczne usługi AKS można tworzyć tylko w regionach, w których integracja z siecią wirtualną serwera INTERFEJSu API jest ogólnie dostępna .
Ważne
AKS Automatic próbuje dynamicznie wybrać rozmiar maszyny wirtualnej dla system puli węzłów na podstawie pojemności dostępnej w ramach subskrypcji. Upewnij się, że subskrypcja ma limit przydziału dla 16 procesorów wirtualnych o dowolnym z następujących rozmiarów w regionie, w którym wdrażasz klaster: Standard_D4lds_v5, Standard_D4ads_v5, Standard_D4ds_v5, Standard_D4d_v5, Standard_D4d_v4, Standard_DS3_v2, Standard_DS12_v2, Standard_D4alds_v6, Standard_D4lds_v6 lub Standard_D4alds_v5. Możesz wyświetlić limity przydziału dla określonych rodzin maszyn wirtualnych i przesłać żądania zwiększenia limitu przydziału za pośrednictwem witryny Azure Portal.
Jeśli masz dodatkowe pytania, dowiedz się więcej, zapoznaj się z dokumentami rozwiązywania problemów.
Tworzenie grupy zasobów
Grupa zasobów platformy Azure to grupa logiczna, w której zasoby platformy Azure są wdrażane i zarządzane.
W poniższym przykładzie tworzona jest grupa zasobów o nazwie myResourceGroup w lokalizacji eastus.
Utwórz grupę zasobów przy użyciu polecenia az group create.
az group create --name myResourceGroup --location eastus
Następujące przykładowe dane wyjściowe przypominają pomyślne utworzenie grupy zasobów:
{
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
"location": "eastus",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Tworzenie klastra automatycznego usługi AKS
Aby utworzyć klaster automatyczny usługi AKS, użyj az aks create polecenia . Poniższy przykład tworzy klaster o nazwie myAKSAutomaticCluster z włączoną integracją z funkcją Managed Prometheus i Container Insights.
az aks create \
--resource-group myResourceGroup \
--name myAKSAutomaticCluster \
--sku automatic
Po kilku minutach polecenie zostanie wykonane i zwróci informacje o klastrze w formacie JSON.
Łączenie z klastrem
Aby zarządzać klastrem Kubernetes, użyj klienta wiersza polecenia kubernetes kubectl.
kubectl jest już zainstalowany, jeśli używasz usługi Azure Cloud Shell. Aby zainstalować kubectl lokalnie, uruchom az aks install-cli polecenie . Klastry automatyczne AKS są konfigurowane z użyciem Microsoft Entra ID dla kontroli dostępu opartej na rolach (RBAC) w Kubernetes.
Uwaga
Podczas tworzenia klastra przy użyciu interfejsu wiersza polecenia platformy Azure użytkownik ma przypisane wbudowane role dla programu Azure Kubernetes Service RBAC Cluster Admin.
Skonfiguruj kubectl, aby nawiązać połączenie z klastrem Kubernetes za pomocą polecenia az aks get-credentials. To polecenie pobiera poświadczenia i konfiguruje Kubernetes CLI do ich użycia.
az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticCluster
Zweryfikuj połączenie z klastrem, używając polecenia kubectl get. To polecenie zwraca listę węzłów klastra.
kubectl get nodes
Przykładowy wynik poniżej pokazuje, jak proszono Cię o zalogowanie się.
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
Po zalogowaniu się następujące przykładowe dane wyjściowe przedstawiają zarządzane pule węzłów systemu. Upewnij się, że stan węzła to Gotowe.
NAME STATUS ROLES AGE VERSION
aks-nodepool1-13213685-vmss000000 Ready agent 2m26s v1.28.5
aks-nodepool1-13213685-vmss000001 Ready agent 2m26s v1.28.5
aks-nodepool1-13213685-vmss000002 Ready agent 2m26s v1.28.5
Tworzenie automatycznego klastra Kubernetes
Aby utworzyć klaster automatyczny usługi AKS, wyszukaj pozycję Kubernetes Services i wybierz pozycję Automatyczny klaster Kubernetes z opcji listy rozwijanej.
Na karcie Podstawy wypełnij wszystkie pola obowiązkowe (Subskrypcja, Grupa zasobów, Nazwa klastra Kubernetes i Region), aby rozpocząć pracę:
Na karcie Monitorowanie wybierz konfiguracje monitorowania z poziomu usługi Azure Monitor, zarządzanego rozwiązania Prometheus, pulpitów nawigacyjnych narzędzia Grafana, możliwości obserwowania sieci kontenerów (ACNS) i/lub skonfiguruj alerty. Włącz zarządzaną aplikację Grafana (opcjonalnie), dodaj tagi (opcjonalnie) i przejdź do utworzenia klastra.
Na karcie Zaawansowane zaktualizuj ustawienia sieci (opcjonalnie), tożsamości zarządzanej (opcjonalnie), zabezpieczeń i zarządzanych przestrzeni nazw (opcjonalnie) i przejdź do tworzenia klastra.
Rozpocznij konfigurowanie pierwszej aplikacji z usługi GitHub i konfigurowanie zautomatyzowanego potoku wdrażania.
Łączenie z klastrem
Aby zarządzać klastrem Kubernetes, użyj klienta wiersza polecenia kubernetes kubectl.
kubectl jest już zainstalowany, jeśli używasz usługi Azure Cloud Shell. Aby zainstalować kubectl lokalnie, uruchom polecenie az aks install-cli . Klastry automatyczne AKS są konfigurowane z użyciem Microsoft Entra ID dla kontroli dostępu opartej na rolach (RBAC) w Kubernetes. Podczas tworzenia klastra przy użyciu witryny Azure Portal użytkownik ma przypisane wbudowane role dla programu Azure Kubernetes Service RBAC Cluster Admin.
Skonfiguruj kubectl, aby nawiązać połączenie z klastrem Kubernetes za pomocą polecenia az aks get-credentials. To polecenie pobiera poświadczenia i konfiguruje Kubernetes CLI do ich użycia.
az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticCluster
Zweryfikuj połączenie z klastrem, używając polecenia kubectl get. To polecenie zwraca listę węzłów klastra.
kubectl get nodes
Przykładowy wynik poniżej pokazuje, jak proszono Cię o zalogowanie się.
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
Po zalogowaniu się następujące przykładowe dane wyjściowe przedstawiają zarządzane pule węzłów systemu. Upewnij się, że stan węzła to Gotowe.
NAME STATUS ROLES AGE VERSION
aks-nodepool1-13213685-vmss000000 Ready agent 2m26s v1.28.5
aks-nodepool1-13213685-vmss000001 Ready agent 2m26s v1.28.5
aks-nodepool1-13213685-vmss000002 Ready agent 2m26s v1.28.5
Tworzenie grupy zasobów
Grupa zasobów platformy Azure to grupa logiczna, w której zasoby platformy Azure są wdrażane i zarządzane. Podczas tworzenia grupy zasobów zostanie wyświetlony monit o określenie lokalizacji. Ta lokalizacja to lokalizacja magazynu metadanych grupy zasobów i lokalizacja, w której zasoby są uruchamiane na platformie Azure, jeśli nie określisz innego regionu podczas tworzenia zasobów.
W poniższym przykładzie tworzona jest grupa zasobów o nazwie myResourceGroup w lokalizacji eastus.
Utwórz grupę zasobów przy użyciu polecenia az group create.
az group create --name myResourceGroup --location eastus
Następujące przykładowe dane wyjściowe przypominają pomyślne utworzenie grupy zasobów:
{
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
"location": "eastus",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Przejrzyj plik programu Bicep
Ten plik Bicep definiuje klaster automatyczny usługi AKS. W wersji zapoznawczej należy określić profil puli agentów puli węzłów systemu .
@description('The name of the managed cluster resource.')
param clusterName string = 'myAKSAutomaticCluster'
@description('The location of the managed cluster resource.')
param location string = resourceGroup().location
resource aks 'Microsoft.ContainerService/managedClusters@2024-03-02-preview' = {
name: clusterName
location: location
sku: {
name: 'Automatic'
}
properties: {
agentPoolProfiles: [
{
name: 'systempool'
mode: 'System'
count: 3
}
]
}
identity: {
type: 'SystemAssigned'
}
}
Aby uzyskać więcej informacji na temat zasobu zdefiniowanego w pliku Bicep, zobacz dokumentację Microsoft.ContainerService/managedClusters .
Wdróż plik Bicep
Zapisz plik Bicep jako main.bicep na komputerze lokalnym.
Ważne
Plik Bicep ustawia
clusterNameparametr na ciąg myAKSAutomaticCluster. Jeśli chcesz użyć innej nazwy klastra, pamiętaj o zaktualizowaniu ciągu do preferowanej nazwy klastra przed zapisaniem pliku na komputerze.Wdróż plik Bicep przy użyciu interfejsu wiersza polecenia platformy Azure.
az deployment group create --resource-group myResourceGroup --template-file main.bicepUtworzenie klastra AKS może potrwać kilka minut. Przed przejściem do następnego kroku poczekaj na pomyślne wdrożenie klastra.
Łączenie z klastrem
Aby zarządzać klastrem Kubernetes, użyj klienta wiersza polecenia kubernetes kubectl.
kubectl jest już zainstalowany, jeśli używasz usługi Azure Cloud Shell. Aby zainstalować kubectl lokalnie, uruchom polecenie az aks install-cli . Klastry automatyczne AKS są konfigurowane z użyciem Microsoft Entra ID dla kontroli dostępu opartej na rolach (RBAC) w Kubernetes.
Ważne
Podczas tworzenia klastra przy użyciu Bicep należy przypisać jedną z wbudowanych ról, takich jak Azure Kubernetes Service RBAC Reader, Azure Kubernetes Service RBAC Writer, Azure Kubernetes Service RBAC Admin lub Azure Kubernetes Service RBAC Cluster Admin, do użytkowników, określając zakres do klastra lub określonej przestrzeni nazw, na przykład przy użyciu az role assignment create --role "Azure Kubernetes Service RBAC Cluster Admin" --scope <AKS cluster resource id> --assignee user@contoso.com. Upewnij się również, że użytkownicy mają wbudowaną Azure Kubernetes Service Cluster User rolę, aby mogli uruchamiać polecenie az aks get-credentials, a następnie uzyskać narzędzie kubeconfig klastra usługi AKS przy użyciu az aks get-credentials polecenia .
Skonfiguruj kubectl, aby nawiązać połączenie z klastrem Kubernetes za pomocą polecenia az aks get-credentials. To polecenie pobiera poświadczenia i konfiguruje Kubernetes CLI do ich użycia.
az aks get-credentials --resource-group myResourceGroup --name
Zweryfikuj połączenie z klastrem, używając polecenia kubectl get. To polecenie zwraca listę węzłów klastra.
kubectl get nodes
Przykładowy wynik poniżej pokazuje, jak proszono Cię o zalogowanie się.
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
Po zalogowaniu się następujące przykładowe dane wyjściowe przedstawiają zarządzane pule węzłów systemu. Upewnij się, że stan węzła to Gotowe.
NAME STATUS ROLES AGE VERSION
aks-nodepool1-13213685-vmss000000 Ready agent 2m26s v1.28.5
aks-nodepool1-13213685-vmss000001 Ready agent 2m26s v1.28.5
aks-nodepool1-13213685-vmss000002 Ready agent 2m26s v1.28.5
Wdrażanie aplikacji
Aby wdrożyć aplikację, należy użyć pliku manifestu, aby utworzyć wszystkie obiekty wymagane do uruchomienia aplikacji sklepu AKS. Plik manifestu Kubernetes definiuje żądany stan klastra, taki jak jakie obrazy kontenerów mają być uruchamiane. Manifest obejmuje następujące wdrożenia i usługi Kubernetes:
- Front sklepu: aplikacja internetowa dla klientów do wyświetlania produktów i składania zamówień.
- Usługa produktu: wyświetla informacje o produkcie.
- Usługa zamówień: składa zamówienia.
- Rabbit MQ: kolejka komunikatów dla kolejki zamówień.
Uwaga
Nie zalecamy uruchamiania kontenerów stanowych, takich jak Rabbit MQ, bez trwałego przechowywania w środowisku produkcyjnym. Są one używane tutaj dla uproszczenia, ale zalecamy korzystanie z usług zarządzanych, takich jak Azure Cosmos DB lub Azure Service Bus.
Utwórz przestrzeń nazw
aks-store-demow celu wdrożenia zasobów platformy Kubernetes.kubectl create ns aks-store-demoWdróż aplikację przy użyciu
kubectl applypolecenia waks-store-demoprzestrzeni nazw. Plik YAML definiujący wdrożenie znajduje się w witrynie GitHub.kubectl apply -n aks-store-demo -f https://raw.githubusercontent.com/Azure-Samples/aks-store-demo/main/aks-store-ingress-quickstart.yamlNastępujące przykładowe dane wyjściowe przedstawiają wdrożenia i usługi:
statefulset.apps/rabbitmq created configmap/rabbitmq-enabled-plugins created service/rabbitmq created deployment.apps/order-service created service/order-service created deployment.apps/product-service created service/product-service created deployment.apps/store-front created service/store-front created ingress/store-front created
Testowanie aplikacji
Podczas uruchamiania aplikacji usługa Kubernetes uwidacznia fronton aplikacji w Internecie. Ten proces może potrwać kilka minut.
Sprawdź status wdrożonych podów za pomocą polecenia kubectl get pods. Przed kontynuowaniem upewnij się, że wszystkie zasobniki są
Runninggotowe. Jeśli jest to pierwsze wdrożone obciążenie, automatyczne aprowizowanie węzłów może potrwać kilka minut, aby utworzyć pulę węzłów do uruchamiania zasobników.kubectl get pods -n aks-store-demoSprawdź publiczny adres IP aplikacji frontonu sklepu. Monitoruj postęp, używając polecenia kubectl get service z argumentem
--watch.kubectl get ingress store-front -n aks-store-demo --watchDane wyjściowe ADRESU dla
store-frontusługi początkowo są puste:NAME CLASS HOSTS ADDRESS PORTS AGE store-front webapprouting.kubernetes.azure.com * 80 12mGdy adres zmieni się z pustego na rzeczywisty publiczny adres IP, użyj polecenia
CTRL-C, aby zatrzymaćkubectlproces oglądania.Następujące przykładowe dane wyjściowe pokazują prawidłowy publiczny adres IP przypisany do usługi:
NAME CLASS HOSTS ADDRESS PORTS AGE store-front webapprouting.kubernetes.azure.com * 4.255.22.196 80 12mOtwórz przeglądarkę internetową pod zewnętrznym adresem IP ruchu przychodzącego, aby zobaczyć działanie aplikacji sklepu Azure Store.
Usuwanie klastra
Jeśli nie planujesz przechodzenia przez samouczek AKS, wyczyść niepotrzebne zasoby, aby uniknąć opłat Azure. Uruchom polecenie az group delete , aby usunąć grupę zasobów, usługę kontenera i wszystkie powiązane zasoby.
az group delete --name myResourceGroup --yes --no-wait
Uwaga
Klaster usługi AKS został utworzony przy użyciu przypisanej przez system tożsamości zarządzanej, która jest domyślną opcją tożsamości używaną w tym przewodniku Szybki start. Platforma zarządza tą tożsamością, więc nie trzeba jej ręcznie usuwać.
Następne kroki
W tym przewodniku Szybki start wdrożono klaster Kubernetes przy użyciu usługi AKS Automatic , a następnie wdrożono w niej prostą aplikację z wieloma kontenerami. Ta przykładowa aplikacja służy tylko do celów demonstracyjnych i nie reprezentuje wszystkich najlepszych rozwiązań dla aplikacji Kubernetes. Aby uzyskać wskazówki dotyczące tworzenia pełnych rozwiązań za pomocą usługi AKS dla środowiska produkcyjnego, zobacz Wskazówki dotyczące rozwiązania AKS.
Aby dowiedzieć się więcej o usłudze AKS Automatic, przejdź do wprowadzenia.