Använda Azure Managed Lustre CSI-drivrutinen med Azure Kubernetes Service
Den här artikeln beskriver hur du planerar, installerar och använder Azure Managed Lustre i Azure Kubernetes Service (AKS) med Azure Managed Lustre Kubernetes containersupportgränssnittsdrivrutin (Azure Managed Lustre CSI-drivrutin).
Om Azure Managed Lustre CSI-drivrutinen för AKS
Med CSI-drivrutinen (Azure Managed Lustre Container Support Interface) för AKS kan du komma åt Azure Managed Lustre Storage som beständiga lagringsvolymer från Kubernetes-containrar som distribuerats i Azure Kubernetes Service (AKS).
Kompatibla Kubernetes-versioner
Azure Managed Lustre CSI-drivrutinen för AKS är kompatibel med Azure Kubernetes Service (AKS). Andra Kubernetes-installationer stöds inte för närvarande.
AKS Kubernetes version 1.21 och senare stöds. Detta inkluderar alla versioner som för närvarande är tillgängliga när du skapar ett nytt AKS-kluster.
Viktigt
Azure Managed Lustre CSI-drivrutinen fungerar för närvarande bara med Ubuntu Linux OS SKU för nodpooler i AKS.
Kompatibla Lustre-versioner
Azure Managed Lustre CSI-drivrutinen för AKS är kompatibel med Azure Managed Lustre. Andra Lustre-installationer stöds inte för närvarande.
Azure Managed Lustre CSI-drivrutinsversionerna 0.1.10 och senare stöds med den aktuella versionen av Azure Managed Lustre-tjänsten.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En terminalmiljö med Azure CLI-verktyg installerade. Se Kom igång med Azure CLI
- kubectl, Kubernetes-hanteringsverktyget, installeras i terminalmiljön. Se Snabbstart: Distribuera ett Azure Kubernetes Service-kluster (AKS) med Azure CLI
- Skapa en Azure Managed Lustre-distribution. Se Dokumentation om Azure Managed Lustre-filsystem
Planera din AKS-distribution
Det finns flera alternativ när du distribuerar Azure Kubernetes Service som påverkar åtgärden mellan AKS och Azure Managed Lustre.
Fastställa vilken nätverkstyp som ska användas med AKS
Det finns två nätverkstyper som är kompatibla med Ubuntu Linux OS SKU, kubenet och CNI-drivrutinen (Azure Container Network Interface). Båda alternativen fungerar med Azure Managed Lustre CSI-drivrutinen för AKS, men de har olika krav som måste förstås när du konfigurerar virtuella nätverk och AKS. Mer information om hur du avgör rätt val finns i Nätverksbegrepp för program i Azure Kubernetes Service (AKS).
Fastställa nätverksarkitektur för sammankoppling av AKS och Azure Managed Lustre
Azure Managed Lustre fungerar i ett privat virtuellt nätverk. Kubernetes måste ha nätverksanslutning till det virtuella Azure Managed Lustre-nätverket. Det finns två vanliga sätt att konfigurera nätverk mellan Azure Managed Lustre och AKS.
- Installera AKS i egna Virtual Network och skapa en peering för virtuella nätverk med Azure Managed Lustre-Virtual Network.
- Använd alternativet Bring Your Own Networking i AKS för att installera AKS i ett nytt undernät på Azure Managed Lustre-Virtual Network.
Anteckning
Installation av AKS i samma undernät som Azure Managed Lustre rekommenderas inte.
Peering-AKS och virtuella Azure Managed Lustre-nätverk
Alternativet att peerkoppla två olika virtuella nätverk har fördelen att separera hanteringen av de olika nätverken till olika privilegierade roller. Peering kan också ge ytterligare flexibilitet eftersom det kan göras i Azure-prenumerationer eller regioner. Virtual Network peering kräver samordning mellan de två nätverken för att undvika att välja motstridiga IP-nätverksutrymmen.
Installera AKS i ett undernät i det virtuella Azure Managed Lustre-nätverket
Alternativet att installera AKS-klustret i det virtuella Azure Managed Lustre-nätverket med funktionen Bring Your Own Network i AKS kan vara fördelaktigt där du vill ha scenarier där nätverket hanteras unikt. Ytterligare ett undernät som uppfyller dina AKS-nätverkskrav måste skapas i det virtuella Azure Managed Lustre-nätverket.
Det finns ingen behörighetsavgränsning för nätverkshantering vid etablering av AKS till Azure Managed Lustre Network och AKS-tjänstens huvudnamn behöver privilegier i det virtuella Azure Managed Lustre-nätverket.
Installationsöversikt
Utför följande steg för att aktivera Azure Managed Lustre CSI-drivrutinen för Kubernetes:
Installera Azure Managed Lustre CSI-drivrutinen för Kubernetes.
Kontrollera installationen genom att eventuellt använda en ekopodd för att bekräfta att drivrutinen fungerar.
I följande avsnitt beskrivs varje uppgift mer detaljerat.
Skapa ett Azure Managed Lustre-filsystem
Om du inte redan har skapat ditt Azure Managed Lustre-filsystemkluster skapar du klustret nu. Anvisningar finns i Skapa ett Azure Managed Lustre-filsystem i Azure Portal. För närvarande kan drivrutinen endast användas med ett befintligt Azure Managed Lustre-filsystem.
Skapa ett AKS-kluster
Om du inte redan har skapat aks-klustret skapar du en klusterdistribution. Se Distribuera ett Azure Kubernetes Service-kluster (AKS).
Skapa peering för virtuella nätverk
Anteckning
Hoppa över det här nätverkspeeringssteget om du har installerat AKS i ett undernät i det virtuella Azure Managed Lustre-nätverket.
Det virtuella AKS-nätverket skapas i en separat resursgrupp från AKS-klustrets resursgrupp. Du hittar namnet på den här resursgruppen genom att gå till AKS-klustret i Azure-portalen och välja bladet Egenskaper och hitta resursgruppen Infrastruktur . Den här resursgruppen innehåller det virtuella nätverk som måste kopplas ihop med det virtuella Azure Managed Lustre-nätverket. Den matchar mönstret MC_<aks-rg-name>_<aks-cluster-name>_<region>.
Läs Virtual Network peering för att peerkoppla det virtuella AKS-nätverket med ditt virtuella Azure Manages Lustre-nätverk.
Tips
På grund av namngivning av MC_ resursgrupper och virtuella nätverk kan namn på nätverk vara liknande eller samma för flera AKS-distributioner. När du konfigurerar peering bör du vara uppmärksam på att du väljer de AKS-nätverk som du vill välja.
Ansluta till AKS-klustret
Anslut till Azure Kubernetes Service-klustret genom att göra följande:
Öppna en terminalsession med åtkomst till Azure CLI-verktygen och logga in på ditt Azure-konto.
az login
Logga in på Azure Portal.
Leta reda på ditt AKS-kluster. Välj bladet Översikt och välj sedan knappen Anslut och kopiera kommandot för Ladda ned klusterautentiseringsuppgifter.
I terminalsessionen klistrar du in kommandot för att ladda ned autentiseringsuppgifterna. Det är ett kommando som liknar:
az aks get-credentials --subscription <AKS_subscription_id> --resource_group <AKS_resource_group_name> --name <name_of_AKS>
Installera kubectl om det inte finns i din miljö.
az aks install-cli
Kontrollera att den aktuella kontexten är det AKS-kluster som du precis har installerat autentiseringsuppgifterna och att du kan ansluta till det:
kubectl config current-context kubectl get deployments --all-namespaces=true
Installera CSI-drivrutinen
Installera CSI-drivrutinen genom att köra följande kommando:
curl -skSL https://raw.githubusercontent.com/kubernetes-sigs/azurelustre-csi-driver/main/deploy/install-driver.sh | bash
Exempel på lokala installationskommandon finns i Installera Azure Lustre CSI-drivrutin i ett Kubernetes-kluster.
Skapa och konfigurera en beständig volym
Gör följande för att skapa en beständig volym för ett befintligt Azure Managed Lustre-filsystem:
Kopiera följande konfigurationsfiler från mappen /docs/examples/ på lagringsplatsen azurelustre-csi-driver . Om du klonade lagringsplatsen när du installerade CSI-drivrutinen har du redan lokala kopior tillgängliga.
- storageclass_existing_lustre.yaml
- pvc_storageclass.yaml
Om du inte vill klona hela lagringsplatsen kan du ladda ned varje fil individuellt. Öppna var och en av följande länkar, kopiera filens innehåll och klistra sedan in innehållet i en lokal fil med samma filnamn.
Uppdatera det interna namnet på Lustre-klustret och MSG-IP-adressen i filen storageclass_existing_lustre.yaml .
Båda inställningarna visas i Azure Portal på sidan Klientanslutning för ditt Azure Lustre-filsystem.
Gör följande uppdateringar:
Ersätt
EXISTING_LUSTRE_FS_NAME
med det systemtilldelade interna namnet på Lustre-klustret i ditt Azure Managed Lustre-filsystem. Det interna namnet är vanligtvislustrefs
. Det interna namnet är inte det namn som du gav filsystemet när du skapade det.Det föreslagna
mount
kommandot innehåller namnet som är markerat i följande adresssträng.Ersätt
EXISTING_LUSTRE_IP_ADDRESS
med MSG IP-adressen.
Kör följande
kubectl
kommando för att skapa lagringsklassen och det beständiga volymanspråket:kubectl create -f storageclass_existing_lustre.yaml kubectl create -f pvc_storageclass.yaml
Kontrollera installationen
Om du vill kontrollera installationen kan du använda en echo-podd för att bekräfta att drivrutinen fungerar.
Om du vill visa tidsstämplar i konsolen under skrivningar kör du följande kommandon:
Lägg till följande kod i ekopodden:
while true; do echo $(date) >> /mnt/lustre/outfile; tail -1 /mnt/lustre/outfile; sleep 1; done
Om du vill visa tidsstämplar i konsolen under skrivningar kör du följande
kubectl
kommando:`kubectl logs -f lustre-echo-date`
Nästa steg
- Lär dig hur du exporterar filer från filsystemet med ett arkivjobb.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för