Een volume met twee protocollen inrichten in Azure Kubernetes Service
In deze sectie wordt beschreven hoe u een volume met twee protocollen van Azure NetApp Files statisch beschikbaar maakt voor Kubernetes. Er worden instructies gegeven voor zowel SMB- als NFS-protocollen. U kunt hetzelfde volume via SMB beschikbaar maken voor Windows-werkknooppunten en via NFS naar Linux-werkknooppunten.
Definieer variabelen voor later gebruik. Vervang myresourcegroup, myaccountname, mypool1, myvolname door een geschikte waarde van uw volume met twee protocollen.
Maak een bestand met de naam pv-nfs.yaml en kopieer dit in de volgende YAML. Zorg ervoor dat de server overeenkomt met het uitvoer-IP-adres uit de vorige stap en dat het pad overeenkomt met de uitvoer van creationToken hierboven. De capaciteit moet ook overeenkomen met de volumegrootte uit stap 2.
Maak het permanente volume met behulp van de kubectl apply opdracht:
kubectl apply -f pv-nfs.yaml
Controleer of de status van het permanente volume beschikbaar is met behulp van de kubectl describe opdracht:
kubectl describe pv pv-nfs
Een permanente volumeclaim maken voor NFS
Maak een bestand met de naam pvc-nfs.yaml en kopieer dit in de volgende YAML. Dit manifest maakt een PVC met de naam pvc-nfs 100Gi-opslag en ReadWriteMany toegangsmodus, die overeenkomt met de PV die u hebt gemaakt.
Maak de permanente volumeclaim met behulp van de kubectl apply opdracht:
kubectl apply -f pvc-nfs.yaml
Controleer of de status van de permanente volumeclaim afhankelijk is met behulp van de kubectl describe opdracht:
kubectl describe pvc pvc-nfs
Koppelen binnen een pod met behulp van NFS
Maak een bestand met de naam nginx-nfs.yaml en kopieer dit in de volgende YAML. Dit manifest definieert een nginx pod die gebruikmaakt van de permanente volumeclaim.
Controleer of de pod wordt uitgevoerd met behulp van de kubectl apply opdracht:
kubectl describe pod nginx-nfs
Controleer of het volume op de pod is gekoppeld door verbinding kubectl exec te maken met de pod en vervolgens te gebruiken df -h om te controleren of het volume is gekoppeld.
kubectl exec -it nginx-nfs -- sh
/ # df -h
Filesystem Size Used Avail Use% Mounted on
...
10.0.0.4:/myfilepath2 100T 384K 100T 1% /mnt/azure
...
Een geheim maken met de domeinreferenties
Maak een geheim op uw AKS-cluster voor toegang tot de AD-server met behulp van de kubectl create secret opdracht. Dit geheim wordt gebruikt door het permanente Kubernetes-volume voor toegang tot het SMB-volume van Azure NetApp Files. Gebruik de volgende opdracht om het geheim te maken, waarbij u USERNAME uw gebruikersnaam, PASSWORD uw wachtwoord en DOMAIN_NAME uw Active Directory-domeinnaam vervangt.
Controleer of de csi-smb controllerpod wordt uitgevoerd en elk werkknooppunt een pod heeft die wordt uitgevoerd met behulp van de kubectl get pods opdracht:
Definieer variabelen voor later gebruik. Vervang myresourcegroup, myaccountname, mypool1, myvolname door een geschikte waarde van uw volume met twee protocollen.
Maak een bestand met de naam pv-smb.yaml en kopieer dit in de volgende YAML. Vervang indien nodig door myvolname de creationToken en vervang deze door ANF-1be3.contoso.com\myvolname de waarde van smbServerFqdn de vorige stap. Zorg ervoor dat u uw AD-referentiesgeheim opneemt, samen met de naamruimte waar deze zich bevindt die u in een vorige stap hebt gemaakt.
apiVersion: v1
kind: PersistentVolume
metadata:
name: anf-pv-smb
spec:
storageClassName: ""
capacity:
storage: 100Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
mountOptions:
- dir_mode=0777
- file_mode=0777
- vers=3.0
csi:
driver: smb.csi.k8s.io
readOnly: false
volumeHandle: myvolname # make sure it's a unique name in the cluster
volumeAttributes:
source: \\ANF-1be3.contoso.com\myvolname
nodeStageSecretRef:
name: smbcreds
namespace: default
Maak het permanente volume met behulp van de kubectl apply opdracht:
kubectl apply -f pv-smb.yaml
Controleer of de status van het permanente volume beschikbaar is met behulp van de kubectl describe opdracht:
kubectl describe pv anf-pv-smb
Een permanente volumeclaim maken voor SMB
Maak een bestandsnaam pvc-smb.yaml en kopieer deze in de volgende YAML.
Maak de permanente volumeclaim met behulp van de kubectl apply opdracht:
kubectl apply -f pvc-smb.yaml
Controleer of de status van de permanente volumeclaim afhankelijk is met behulp van de kubectl describe opdracht:
kubectl describe pvc anf-pvc-smb
Koppelen binnen een pod met behulp van SMB
Maak een bestand met de naam iis-smb.yaml en kopieer dit in de volgende YAML. Dit bestand wordt gebruikt om een Internet Information Services-pod te maken om het volume aan pad te /inetpub/wwwrootkoppelen.
Controleer of uw volume op de pod is gekoppeld met behulp van de opdracht kubectl exec om verbinding te maken met de pod. Gebruik vervolgens de dir opdracht in de juiste map om te controleren of het volume is gekoppeld en de grootte overeenkomt met de grootte van het volume dat u hebt ingericht.
kubectl exec -it iis-pod –- cmd.exe
De uitvoer van de opdracht lijkt op het volgende voorbeeld:
Microsoft Windows [Version 10.0.20348.1668]
(c) Microsoft Corporation. All rights reserved.
C:\>cd /inetpub/wwwroot
C:\inetpub\wwwroot>dir
Volume in drive C has no label.
Volume Serial Number is 86BB-AA55
Directory of C:\inetpub\wwwroot
05/04/2023 08:15 PM <DIR> .
05/04/2023 08:15 PM <DIR> ..
0 File(s) 0 bytes
2 Dir(s) 107,373,838,336 bytes free
Volgende stappen
Astra Trident ondersteunt veel functies met Azure NetApp Files. Zie voor meer informatie:
De bron voor deze inhoud vindt u op GitHub, waar u ook problemen en pull-aanvragen kunt maken en controleren. Bekijk onze gids voor inzenders voor meer informatie.