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 is een beheerde Kubernetes-ervaring waarmee configuraties voor AKS-clusters en bewerkingen worden geautomatiseerd en aanbevolen procedures worden ingesloten. AKS Automatic bevat ook een [pod readiness SLA][azure-sla] die 99,9% van de in aanmerking komende podgereedheidsoperaties binnen 5 minuten garandeert, waarbij een betrouwbare, zelfherstellende infrastructuur voor uw toepassingen wordt gewaarborgd. In deze snelstart leert u de volgende zaken:
- 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 enables Azure Policy op uw AKS-cluster, maar u moet de
Microsoft.PolicyInsights-resourceprovider vooraf registreren in uw abonnement. Zie Azure resourceproviders en -typen voor meer informatie.
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Get gestart met Azure Cloud Shell voor meer informatie.
Als u CLI-referentieopdrachten liever lokaal uitvoert, installeer de Azure CLI. Als u op Windows of macOS werkt, kunt u overwegen Azure CLI uit te voeren 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 de Azure CLI met behulp van de opdracht az. Volg de stappen die worden weergegeven in uw terminal om het verificatieproces te voltooien. Zie Authenticate to Azure using Azure CLI voor andere aanmeldingsopties.
Wanneer u hierom wordt gevraagd, installeert u de Azure CLI-extensie bij het eerste gebruik. Zie Uitbreidingen gebruiken en beheren met de Azure CLI voor 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.
- Azure CLI versie 2.77.0 of hoger. Zoek uw versie met behulp van de
az --versionopdracht. Zie Install Azure CLI om de installatie of upgrade uit te voeren. 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 om resources te factureren met behulp van de opdracht
az account set.
- Als u een Bicep-bestand wilt implementeren, hebt u schrijftoegang nodig voor de resources die u maakt en toegang tot alle bewerkingen op het resourcetype
Microsoft.Resources/deployments. Als u bijvoorbeeld een virtuele machine (VM) wilt maken, hebt uMicrosoft.Compute/virtualMachines/writeenMicrosoft.Resources/deployments/*machtigingen nodig. Zie Azure ingebouwde rollen voor een lijst met rollen en machtigingen.
Beperkingen
- De systeemknooppuntpool van AKS-clusters vereist implementatie in Azure regio's die ondersteuning bieden voor ten minste drie beschikbaarheidszones, tijdelijke besturingssysteemschijf en Azure Linux-besturingssysteem.
- AKS Automatic is beschikbaar in de volgende regio's:
australiaeast,austriaeast,belgiumcentral,brazilsouth,canadacentral,centralindia,centralus,chilecentral,denmarkeast,eastasia,eastus,eastus2,francecentral,germanywestcentral,indonesiacentral,israelcentral,italynorth,japaneast,japanwest,koreacentral,malaysiawest,mexicocentral,newzealandnorth,northcentralus,northeurope,norwayeast,polandcentral,southafricanorth,southcentralus,southeastasia,spaincentral,swedencentral,switzerlandnorth,uaenorth,uksouth,westeurope,westus,westus2,westus3. - Het automatische AKS-cluster heeft noderesourcegroepvergrendeling vooraf geconfigureerd, waardoor wijzigingen in de MC_ resourcegroep niet zijn toegestaan, waardoor virtuele netwerkkoppelingen in de standaardzone Private DNS zone niet zijn toegestaan. Voor scenario's over meerdere VNet's of aangepaste DNS-scenario's, gebruik aangepast netwerk- en privé-DNS door Een privé Azure Kubernetes Service (AKS) automatisch cluster in een aangepast virtueel netwerk te maken.
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 weergaven voor specifieke VM-families en aanvragen voor quotumverhoging indienen via de 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.
Maak een resourcegroep met behulp van de az group create opdracht. In het volgende voorbeeld wordt een resourcegroep met de naam myResourceGroup gemaakt op de locatie eastus:
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
Maak een automatisch AKS-cluster met behulp van de az aks create-opdracht, waarbij de --sku-parameter is ingesteld op automatic. In het volgende voorbeeld wordt een cluster met de naam myAKSAutomaticCluster gemaakt met Managed Prometheus en de Container Insights-integratie 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.
Automatisch Kubernetes-cluster maken
Als u een automatisch AKS-cluster wilt maken, zoekt en selecteert u Kubernetes-services. Hiermee gaat u naar de pagina Kubernetes Center (preview).
Op de pagina Kubernetes Center (preview) selecteer Maken>Automatische Kubernetes-cluster.
Vul op het tabblad Basis alle vereiste velden in (Abonnement, Resourcegroep, Kubernetes-clusternaam en Regio) en selecteer vervolgens Volgende.
Selecteer op het tabblad Monitoring de gewenste bewakingsconfiguraties uit Azure Monitor (Container Insights), Managed Prometheus, Grafana Dashboards, AcNS (Container Network Observability) en Waarschuwingen en selecteer vervolgens Next.
Selecteer op het tabblad Advanced de gewenste geavanceerde configuraties privétoegang, Azure virtuele netwerken, beheerde identiteit, ACNS (Container Network Security) en beheerde Kubernetes-naamruimten en selecteer vervolgens Review + create.
Controleer de configuraties op het tabblad Controleren en maken en selecteer vervolgens Maken om het automatische AKS-cluster te implementeren.
Ga aan de slag met het configureren van uw eerste toepassing vanuit GitHub en stel een geautomatiseerde implementatiepijplijn in.
Het Bicep-bestand controleren
Het volgende Bicep bestand definieert een automatisch AKS-cluster:
@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'
}
}
Zie de Microsoft.ContainerService/managedClusters-referentie voor meer informatie over de resource die is gedefinieerd in het Bicep-bestand.
Het Bicep-bestand implementeren
Sla het bestand Bicep op als main.bicep naar uw lokale computer.
Belangrijk
Het bestand Bicep stelt de parameter
clusterNamein 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 opdracht [
az deployment group create][az-deployment-group-create].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. U kunt lokaal installeren kubectl met behulp van de az aks install-cli opdracht. Automatische AKS-clusters worden geconfigureerd met Microsoft Entra ID voor op rollen gebaseerd toegangsbeheer van Kubernetes (RBAC).
Opmerking
Wanneer u een cluster maakt met behulp van de Azure CLI, worden er aan uw gebruiker ingebouwde rollen toegewezen voor .
Configureer
kubectlom verbinding te maken met uw Kubernetes-cluster met behulp van hetaz aks get-credentialscommando. Deze opdracht downloadt referenties en configureert de Kubernetes CLI om deze te gebruiken.az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticClusterControleer de verbinding met uw cluster met behulp van de
kubectl getopdracht. Met deze opdracht wordt een lijst met de clusterknooppunten geretourneerd.kubectl get nodesIn 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-12345678-vmss000000 Ready agent 2m26s v1.28.5 aks-nodepool1-12345678-vmss000001 Ready agent 2m26s v1.28.5 aks-nodepool1-12345678-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 12mOpen een webbrowser naar het externe IP-adres van uw ingress om de Azure Store-app in werking te zien.
Het cluster verwijderen
Als u niet van plan bent om de zelfstudie AKS te doorlopen, moet u onnodige resources opschonen om Azure kosten te voorkomen.
Verwijder de resourcegroep, containerservice en alle gerelateerde resources met behulp van de az group delete opdracht.
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.
Verwante inhoud
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.
Zie de