Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: ✔️ AKS Automatisch
Azure Kubernetes Service (AKS) Automatic biedt de eenvoudigste beheerde Kubernetes-ervaring voor ontwikkelaars, DevOps-technici en platformtechnici. Ideaal voor moderne en AI-toepassingen, AKS Automatic automatiseert de installatie en bewerkingen van AKS-clusters en sluit best practice-configuraties in. Gebruikers van elk vaardigheidsniveau kunnen profiteren van de beveiliging, prestaties en betrouwbaarheid van AKS Automatic voor hun toepassingen. AKS Automatic bevat ook een SLA voor podgereedheid die garandeert dat 99,9% van de podgereedheidsbewerkingen binnen 5 minuten voltooid zijn, die ervoor zorgt dat uw toepassingen een betrouwbare, zelfhelende infrastructuur hebben.
In deze quickstart leert u het volgende:
- Een automatisch AKS-cluster implementeren.
- Voer een voorbeeldtoepassing met meerdere containers uit met een groep microservices en webfront-ends die een retailscenario simuleren.
Voordat u begint
- In deze snelstart wordt ervan uitgegaan dat u een basisbegrip hebt van Kubernetes-concepten. Zie Kubernetes-kernconcepten voor Azure Kubernetes Service (AKS) voor meer informatie.
- AKS Automatic schakelt Azure Policy in op uw AKS-cluster, maar u moet de
Microsoft.PolicyInsightsresourceprovider vooraf registreren in uw abonnement voor een soepelere ervaring. Zie Azure-resourceproviders en -typen voor meer informatie.
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht az login. Volg de stappen die worden weergegeven in uw terminal om het verificatieproces te voltooien. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Wanneer u hierom wordt gevraagd, installeert u de Azure CLI-extensie voor het eerste gebruik. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om naar de nieuwste versie te upgraden.
- Voor dit artikel is versie 2.77.0 of hoger van de Azure CLI vereist. Als u Azure Cloud Shell gebruikt, is de nieuwste versie daar al geïnstalleerd.
- Als u meerdere Azure-abonnementen hebt, selecteert u de juiste abonnements-id waarin de resources moeten worden gefactureerd met behulp van de
az account setopdracht.
- Als u een Bicep-bestand wilt implementeren, moet u schrijftoegang hebben voor de resources die u maakt en toegang tot alle bewerkingen op het
Microsoft.Resources/deploymentsresourcetype. Als u bijvoorbeeld een virtuele machine wilt maken, hebt uMicrosoft.Compute/virtualMachines/writeenMicrosoft.Resources/deployments/*machtigingen nodig. Zie Ingebouwde Azure-rollen voor een lijst met rollen en machtigingen.
Beperkingen
- De systeemknooppuntpool van AKS Automatische clusters vereist implementatie in Azure-regio's die ondersteuning bieden voor ten minste drie beschikbaarheidszones, tijdelijke besturingssysteemschijf en Azure Linux-besturingssysteem.
- U kunt alleen automatische AKS-clusters maken in regio's waar VNet-integratie van API Server algemeen beschikbaar is.
Belangrijk
AKS Automatic probeert dynamisch een grootte van een virtuele machine voor de system knooppuntgroep te selecteren op basis van de capaciteit die beschikbaar is in het abonnement. Zorg ervoor dat uw abonnement een quotum van 16 vCPU's heeft van een van de volgende grootten in de regio waarin u het cluster implementeert: 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 of Standard_D4alds_v5. U kunt quota voor specifieke VM-families weergeven en aanvragen voor quotumverhoging indienen via Azure Portal.
Als u aanvullende vragen hebt, vindt u meer informatie via de documentatie voor probleemoplossing.
Een brongroep maken
Een Azure-resourcegroep is een logische groep waarin Azure-resources worden geïmplementeerd en beheerd.
In het volgende voorbeeld wordt een resourcegroep met de naam myResourceGroup gemaakt in de regio eastus.
Maak een resourcegroep met behulp van de az group create opdracht.
az group create --name myResourceGroup --location eastus
Hieronder staat een voorbeelduitvoer die lijkt op een geslaagde aanmaak van de resourcegroep.
{
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
"location": "eastus",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Een automatisch AKS-cluster maken
Gebruik de az aks create opdracht om een automatisch AKS-cluster te maken. In het volgende voorbeeld wordt een cluster gemaakt met de naam myAKSAutomaticCluster waarvoor Beheerde Prometheus- en Container Insights-integratie is ingeschakeld.
az aks create \
--resource-group myResourceGroup \
--name myAKSAutomaticCluster \
--sku automatic
Na enkele minuten is de opdracht voltooid en retourneert deze informatie over het cluster in JSON-indeling.
Verbinding maken met het cluster
Als u een Kubernetes-cluster wilt beheren, gebruikt u de Kubernetes-opdrachtregelclient kubectl.
kubectl is al geïnstalleerd als u Azure Cloud Shell gebruikt. Als u lokaal wilt installeren kubectl , voert u de az aks install-cli opdracht uit. Automatische AKS-clusters worden geconfigureerd met Microsoft Entra-id voor op rollen gebaseerd toegangsbeheer (RBAC) van Kubernetes.
Opmerking
Wanneer u een cluster maakt met behulp van de Azure CLI, krijgt uw gebruiker ingebouwde rollen toegewezen voor Azure Kubernetes Service RBAC Cluster Admin.
Configureer kubectl om verbinding te maken met uw Kubernetes-cluster met behulp van het az aks get-credentials commando. Deze opdracht downloadt referenties en configureert de Kubernetes CLI om deze te gebruiken.
az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticCluster
Controleer de verbinding met uw cluster met behulp van de kubectl get opdracht. Met deze opdracht wordt een lijst met de clusterknooppunten geretourneerd.
kubectl get nodes
In de volgende voorbeelduitvoer ziet u hoe u wordt gevraagd u aan te melden.
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
Nadat u zich hebt aangemeld, ziet u in de volgende voorbeelduitvoer de pools van het beheerde systeemknooppunt. Zorg ervoor dat de status van het knooppunt gereed is.
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
Automatisch Kubernetes-cluster maken
Als u een automatisch AKS-cluster wilt maken, zoekt u naar Kubernetes Services en selecteert u Automatisch Kubernetes-cluster in de vervolgkeuzelijsten.
Vul op het tabblad Basis alle verplichte velden in (Abonnement, Resourcegroep, Kubernetes-clusternaam en Regio) die nodig zijn om aan de slag te gaan:
Kies op het tabblad Bewaking uw bewakingsconfiguraties van Azure Monitor, Managed Prometheus, Grafana Dashboards, Container Network Observability (ACNS) en/of configureer waarschuwingen. Schakel Managed Grafana (optioneel) in, voeg tags toe (optioneel) en ga verder met het maken van het cluster.
Werk op het tabblad Geavanceerd uw netwerk (optioneel), beheerde identiteit (optioneel), instellingen voor beveiliging en beheerde naamruimten (optioneel) bij en ga verder met het maken van het cluster.
Ga aan de slag met het configureren van uw eerste toepassing vanuit GitHub en stel een geautomatiseerde implementatiepijplijn in.
Verbinding maken met het cluster
Als u een Kubernetes-cluster wilt beheren, gebruikt u de Kubernetes-opdrachtregelclient kubectl.
kubectl is al geïnstalleerd als u Azure Cloud Shell gebruikt. Als u lokaal wilt installeren kubectl , voert u de opdracht az aks install-cli uit. Automatische AKS-clusters worden geconfigureerd met Microsoft Entra-id voor op rollen gebaseerd toegangsbeheer (RBAC) van Kubernetes. Wanneer u een cluster maakt met behulp van Azure Portal, wordt aan uw gebruiker ingebouwde rollen toegewezen voor Azure Kubernetes Service RBAC Cluster Admin.
Configureer kubectl om verbinding te maken met uw Kubernetes-cluster met behulp van het az aks get-credentials commando. Deze opdracht downloadt referenties en configureert de Kubernetes CLI om deze te gebruiken.
az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticCluster
Controleer de verbinding met uw cluster met behulp van de kubectl get opdracht. Met deze opdracht wordt een lijst met de clusterknooppunten geretourneerd.
kubectl get nodes
In de volgende voorbeelduitvoer ziet u hoe u wordt gevraagd u aan te melden.
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
Nadat u zich hebt aangemeld, ziet u in de volgende voorbeelduitvoer de pools van het beheerde systeemknooppunt. Zorg ervoor dat de status van het knooppunt gereed is.
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
Een brongroep maken
Een Azure-resourcegroep is een logische groep waarin Azure-resources worden geïmplementeerd en beheerd. Wanneer u een resourcegroep maakt, wordt u gevraagd een locatie op te geven. Deze locatie is de opslaglocatie van de metagegevens van uw resourcegroep en waar uw resources worden uitgevoerd in Azure als u geen andere regio opgeeft tijdens het maken van de resource.
In het volgende voorbeeld wordt een resourcegroep met de naam myResourceGroup gemaakt in de regio eastus.
Maak een resourcegroep met behulp van de az group create opdracht.
az group create --name myResourceGroup --location eastus
Hieronder staat een voorbeelduitvoer die lijkt op een geslaagde aanmaak van de resourcegroep.
{
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
"location": "eastus",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Het Bicep-bestand bekijken
Dit Bicep-bestand definieert een automatisch AKS-cluster. In de preview-fase moet u het profiel voor de agentgroep van het systeemknooppuntpool opgeven.
@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'
}
}
Raadpleeg de Microsoft.ContainerService/managedClusters referentie voor meer informatie over de in het Bicep-bestand bepaalde resource.
Het Bicep-bestand implementeren
Sla het Bicep-bestand op als main.bicep op uw lokale computer.
Belangrijk
Het Bicep-bestand stelt de
clusterNameparameter in op de tekenreeks myAKSAutomaticCluster. Als u een andere clusternaam wilt gebruiken, moet u de tekenreeks bijwerken naar de clusternaam van uw voorkeur voordat u het bestand opslaat op uw computer.Implementeer het Bicep-bestand met behulp van de Azure CLI.
az deployment group create --resource-group myResourceGroup --template-file main.bicepHet duurt enkele minuten om het AKS-cluster te maken. Wacht totdat het cluster met succes is geïmplementeerd voordat u met de volgende stap verdergaat.
Verbinding maken met het cluster
Als u een Kubernetes-cluster wilt beheren, gebruikt u de Kubernetes-opdrachtregelclient kubectl.
kubectl is al geïnstalleerd als u Azure Cloud Shell gebruikt. Als u lokaal wilt installeren kubectl , voert u de opdracht az aks install-cli uit. Automatische AKS-clusters worden geconfigureerd met Microsoft Entra-id voor op rollen gebaseerd toegangsbeheer (RBAC) van Kubernetes.
Belangrijk
Wanneer u een cluster maakt met Bicep, moet u een van de ingebouwde rollen, zoals Azure Kubernetes Service RBAC Reader, Azure Kubernetes Service RBAC Writerof Azure Kubernetes Service RBAC AdminAzure Kubernetes Service RBAC Cluster Admin aan uw gebruikers, toewijzen die zijn afgestemd op het cluster of een specifieke naamruimte, bijvoorbeeld met behulp van az role assignment create --role "Azure Kubernetes Service RBAC Cluster Admin" --scope <AKS cluster resource id> --assignee user@contoso.com. Zorg er ook voor dat uw gebruikers beschikken over de ingebouwde rol Azure Kubernetes Service Cluster User, zodat ze az aks get-credentials kunnen uitvoeren. Haal vervolgens de kubeconfig van uw AKS-cluster op met behulp van de opdracht az aks get-credentials.
Configureer kubectl om verbinding te maken met uw Kubernetes-cluster met behulp van het az aks get-credentials commando. Deze opdracht downloadt referenties en configureert de Kubernetes CLI om deze te gebruiken.
az aks get-credentials --resource-group myResourceGroup --name
Controleer de verbinding met uw cluster met behulp van de kubectl get opdracht. Met deze opdracht wordt een lijst met de clusterknooppunten geretourneerd.
kubectl get nodes
In de volgende voorbeelduitvoer ziet u hoe u wordt gevraagd u aan te melden.
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.
Nadat u zich hebt aangemeld, ziet u in de volgende voorbeelduitvoer de pools van het beheerde systeemknooppunt. Zorg ervoor dat de status van het knooppunt gereed is.
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
De toepassing implementeren
Als u de toepassing wilt implementeren, gebruikt u een manifestbestand om alle objecten te maken die nodig zijn om de AKS Store-toepassing uit te voeren. Een Kubernetes-manifestbestand definieert de gewenste status van een cluster, zoals welke containerinstallatiekopieën moeten worden uitgevoerd. Het manifest bevat de volgende Kubernetes-implementaties en -services:
- Webwinkel: Webtoepassing voor klanten om producten te bekijken en bestellingen te plaatsen.
- Productservice: toont productgegevens.
- Orderservice: Orders plaatsen.
- Rabbit MQ: Berichtensysteem voor een bestelwachtrij.
Opmerking
Het is niet aanbevolen om stateful containers, zoals Rabbit MQ, te draaien zonder permanente opslag in een productieomgeving. Deze worden hier gebruikt voor het gemak, maar we raden u aan beheerde services te gebruiken, zoals Azure Cosmos DB of Azure Service Bus.
Maak een naamruimte
aks-store-demoom de Kubernetes-resources in te implementeren.kubectl create ns aks-store-demoImplementeer de toepassing met behulp van de
kubectl applyopdracht in deaks-store-demonaamruimte. Het YAML-bestand dat de implementatie definieert, bevindt zich op GitHub.kubectl apply -n aks-store-demo -f https://raw.githubusercontent.com/Azure-Samples/aks-store-demo/main/aks-store-ingress-quickstart.yamlIn de volgende voorbeelduitvoer ziet u de implementaties en services:
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
De toepassing testen
Wanneer de toepassing wordt uitgevoerd, maakt een Kubernetes-service de front-end van de toepassing beschikbaar op internet. Dit proces kan enkele minuten duren.
Controleer de status van de geïmplementeerde pods met behulp van de opdracht kubectl get pods . Zorg ervoor dat alle pods gereed zijn
Runningvoordat u doorgaat. Als dit de eerste workload is die u implementeert, kan het enkele minuten duren voordat het automatisch inrichten van knooppunten een nodepool maakt om de pods te laten draaien.kubectl get pods -n aks-store-demoControleer op een openbaar IP-adres voor de store-front-toepassing. Controleer de voortgang met behulp van de opdracht kubectl get service met het
--watchargument.kubectl get ingress store-front -n aks-store-demo --watchAanvankelijk toont de ADRESUITVOER voor de
store-frontservice leeg:NAME CLASS HOSTS ADDRESS PORTS AGE store-front webapprouting.kubernetes.azure.com * 80 12mZodra het ADRES verandert van leeg naar een werkelijk openbaar IP-adres, gebruikt u
CTRL-Com hetkubectlobservatieproces te stoppen.In de volgende voorbeelduitvoer ziet u een geldig openbaar IP-adres dat is toegewezen aan de service:
NAME CLASS HOSTS ADDRESS PORTS AGE store-front webapprouting.kubernetes.azure.com * 4.255.22.196 80 12mGa met een webbrowser naar het externe IP-adres van uw ingress om de Azure Store-app in actie te zien.
Het cluster verwijderen
Als u niet van plan bent om de AKS-zelfstudie te doorlopen, moet u overbodige resources opschonen om Azure-kosten te voorkomen. Voer de opdracht az group delete uit om de resourcegroep, containerservice en alle gerelateerde resources te verwijderen.
az group delete --name myResourceGroup --yes --no-wait
Opmerking
Het AKS-cluster is gemaakt met een door het systeem toegewezen beheerde identiteit. Dit is de standaardidentiteitsoptie die in deze quickstart wordt gebruikt. Het platform beheert deze identiteit, zodat u deze niet handmatig hoeft te verwijderen.
Volgende stappen
In deze quickstart hebt u een Kubernetes-cluster geïmplementeerd met behulp van AKS Automatic en vervolgens een eenvoudige toepassing met meerdere containers erop geïmplementeerd. Deze voorbeeldtoepassing is alleen bedoeld voor demodoeleinden en vertegenwoordigt niet alle aanbevolen procedures voor Kubernetes-toepassingen. Zie de richtlijnen voor AKS-oplossingen voor meer informatie over het maken van volledige oplossingen met AKS voor productie.
Ga verder met de inleiding voor meer informatie over AKS Automatic.