Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här självstudien introducerar Azure Container Storage och visar hur du distribuerar och hanterar containerinbyggt lagringsutrymme för program som körs i Azure Kubernetes Service (AKS). Om du inte vill distribuera Azure Container Storage nu kan du hoppa över den här självstudien och fortsätta direkt till Distribuera ett program i AKS. Du behöver inte Azure Container Storage för det grundläggande storefront-programmet i den här självstudieserien.
Azure Container Storage förenklar hanteringen av tillståndskänsliga program i Kubernetes genom att erbjuda containerbaserad lagring skräddarsydd för en mängd olika arbetsbelastningar, inklusive databaser, analysplattformar och högpresterande program.
Viktigt!
Den här självstudien gäller endast för AKS Standard-kluster. Om du valde AKS Automatic i den föregående självstudien hoppar du över den här självstudien och fortsätter att distribuera ett program i AKS.
I slutet av den här självstudien kommer du att:
- Förstå hur Azure Container Storage stöder olika arbetsbelastningar i Kubernetes.
- Distribuera Azure Container Storage i ditt AKS-kluster.
- Skapa en allmän tillfällig volym.
Innan du börjar
I tidigare självstudier skapade du en containeravbildning, laddade upp den till en ACR-instans och skapade ett AKS-kluster. Börja med Självstudie 1 – Förbered applikationen för AKS för att följa med.
Den här självstudien skapar fakturerbara resurser och kräver behörighet för att uppdatera AKS-klusterinställningar och installera tillägg. Använd en identitet med minst deltagaråtkomst till resursgruppen som innehåller ditt AKS-kluster.
Bekräfta att målregionen stöds genom att granska den regionala tillgängligheten för Azure Container Storage.
Installera den senaste versionen av Azure CLI (2.83.0 eller senare) och logga sedan in med
az login. Använd inte Azure Cloud Shell eftersomaz upgradedet inte är tillgängligt.Installera Kubernetes kommandoradsklient,
kubectl. Du kan installera det lokalt genom att köraaz aks install-cli. Andra installationsalternativ finns i Installera kubectl.
Viktigt!
Den här självstudien gäller för Azure Container Storage (version 2.x.x), som stöder lokal NVMe-disk och Azure Elastic SAN som bakgrundslagringstyper. Den här självstudien använder lokal NVMe och skapar en allmän tillfällig volym. Om du vill använda lokal NVMe måste din virtuella dators SKU ha stöd för lokala NVMe-datadiskar, till exempel lagringsoptimerade eller GPU-accelererade virtuella datorer.
Om du föredrar att använda Azure Elastic SAN kan du läsa Använda Azure Container Storage med Azure Elastic SAN.
Installera Kubernetes-tillägget
Lägg till eller uppgradera till den senaste versionen av k8s-extension genom att köra följande kommando.
az extension add --upgrade --name k8s-extension
Kontrollera att tillägget är tillgängligt innan du fortsätter:
az extension show --name k8s-extension --query version --output tsv
Aktivera Azure Container Storage i ditt AKS-kluster
Kör följande kommando för att aktivera Azure Container Storage i ett befintligt AKS-kluster med hjälp av lokal NVMe. Azure Container Storage installerar den senaste tillgängliga versionen och uppdaterar sig själv automatiskt. Manuell versionsval stöds inte.
az aks update -n myAKSCluster -g myResourceGroup --enable-azure-container-storage ephemeralDisk
Om det här kommandot misslyckas med ett auktoriseringsfel kör du az account show för att verifiera den aktiva prenumerationen och bekräfta att din identitet har behörighet att uppdatera AKS-klustret.
Distributionen kan ta upp till fem minuter. När det är klart har AKS-klustret Azure Container Storage installerat och komponenterna för lokal NVMe-lagringstyp har distribuerats. Den skapar också standardlagringsklassen local-csi .
Anslut till klustret och verifiera status
Om du inte redan är ansluten till klustret från föregående tutorial, kör du följande kommandon. Om du redan är ansluten kan du hoppa över det här avsnittet.
Ladda ned autentiseringsuppgifterna för klustret och konfigurera Kubernetes CLI så att de används. Som standard lagras autentiseringsuppgifterna i
~/.kube/config. Ange en alternativ väg med--fileargumentet om det behövs.az aks get-credentials --resource-group myResourceGroup --name myAKSClusterFortsätt efter att kommandot rapporterar att kontextposter har sammanfogats till
~/.kube/config.Verifiera anslutningen genom att visa en lista över klusternoderna.
kubectl get nodesKontrollera att alla noder rapporterar statusen
Ready.
Verifiera lagringsklassen
Kör följande kommando för att kontrollera att lagringsklassen har skapats:
kubectl get storageclass local-csi
Du bör se utdata som liknar följande:
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
local-csi localdisk.csi.acstor.io Delete WaitForFirstConsumer true 10s
Distribuera en podd med allmän tillfällig volym
Skapa en podd med Fio (flexibel I/O-testare) för benchmarking och arbetsbelastningssimulering som använder en allmän tillfällig volym.
Skapa en YAML-manifestfil med namnet
fiopod.yaml. Kör till exempelcode fiopod.yaml.Klistra in följande kod och spara filen.
kind: Pod apiVersion: v1 metadata: name: fiopod spec: nodeSelector: "kubernetes.io/os": linux containers: - name: fio image: mayadata/fio args: ["sleep", "1000000"] volumeMounts: - mountPath: "/volume" name: ephemeralvolume volumes: - name: ephemeralvolume ephemeral: volumeClaimTemplate: spec: volumeMode: Filesystem accessModes: ["ReadWriteOnce"] storageClassName: local-csi resources: requests: storage: 10GiAnvänd YAML-manifestfilen för att distribuera podden.
kubectl apply -f fiopod.yaml
Verifiera distributionen och kör prestandatest
Kontrollera att podden körs:
kubectl get pod fiopod
Du bör se podden i körläge. När du har kört kan du köra ett Fio-benchmark-test:
kubectl exec -it fiopod -- fio --name=benchtest --size=800m --filename=/volume/test --direct=1 --rw=randrw --ioengine=libaio --bs=4k --iodepth=16 --numjobs=8 --time_based --runtime=60
Nu har du distribuerat en podd som använder lokal NVMe som lagringsplats, och du kan använda den för dina Kubernetes-arbetsbelastningar.
Mer information om Azure Container Storage finns i Vad är Azure Container Storage?
Rensa resurser
Du behöver inte Azure Container Storage för resten av den här självstudieserien, så vi rekommenderar att du tar bort den nu för att undvika onödiga Azure-avgifter.
Ta bort podden.
kubectl delete pod fiopodTa bort den generiska tillfälliga volymen.
kubectl delete pv ephemeralvolumeOm det här kommandot returnerar
NotFoundfortsätter du. Allmänna tillfälliga volymer tas bort automatiskt när podden tas bort.Ta bort tilläggsinstansen.
az aks update -n myAKSCluster -g myResourceGroup --disable-azure-container-storage
Nästa steg
I den här självstudien distribuerade du Azure Container Storage i ditt AKS-kluster. Du har lärt dig att:
- Aktivera Azure Container Storage i ditt AKS-kluster.
- Distribuera en podd med en allmän tillfällig volym.
I nästa handledning får du lära dig hur du distribuerar ett program till klustret.