Azure Elastic SAN Preview-kötetek Csatlakozás Azure Kubernetes Service-fürtre
Ez a cikk azt ismerteti, hogyan csatlakoztathat azure elastic storage area network (SAN) előzetes verziójú kötetet egy Azure Kubernetes Service-fürtből (AKS). A kapcsolat létrehozásához engedélyezze a Kubernetes iSCSI CSI-illesztőprogramját a fürtön. Ezzel az illesztőprogrammal elérheti a köteteket az Elastic SAN-on, ha állandó köteteket hoz létre az AKS-fürtön, majd csatolja az Elastic SAN-köteteket az állandó kötetekhez.
Tudnivalók az illesztőprogramról
Az iSCSI CSI-illesztő egy nyílt forráskód projekt, amely lehetővé teszi, hogy iSCSI-n keresztül csatlakozzon egy Kubernetes-fürthöz. Mivel az illesztőprogram egy nyílt forráskód projekt, a Microsoft nem nyújt támogatást az illesztőprogramból eredő problémákból.
A Kubernetes iSCSI CSI-illesztőprogramja elérhető a GitHubon:
- Kubernetes iSCSI-illesztőprogram-adattár
- Tudnivalók
- ISCSI-illesztőprogramokkal kapcsolatos problémák jelentése
Licencelés
A Kubernetes iSCSI CSI-illesztőprogramja Apache 2.0 licenccel rendelkezik.
Előfeltételek
- Használja a legújabb Azure CLI-t , vagy telepítse a legújabb Azure PowerShell-modult
- Az iSCSI CSI-illesztőprogram kompatibilitási követelményeinek teljesítése
- Rugalmas san előzetes verzió üzembe helyezése
- Virtuális hálózati végpont konfigurálása
- Virtuális hálózati szabályok konfigurálása
Limitations
- A dinamikus kiépítés jelenleg nem támogatott
- Jelenleg csak
ReadWriteOnce
a hozzáférési mód támogatott
Első lépések
Illesztőprogram telepítése
curl -skSL https://raw.githubusercontent.com/kubernetes-csi/csi-driver-iscsi/master/deploy/install-driver.sh | bash -s master --
Az üzembe helyezés után ellenőrizze a podok állapotát, hogy az illesztőprogram telepítve van-e.
kubectl -n kube-system get pod -o wide -l app=csi-iscsi-node
Kötetinformációk lekérése
Szüksége van a kötet StorageTargetIQN, StorageTargetPortalHostName és StorageTargetPortalPort azonosítójára.
A következő Azure PowerShell-paranccsal szerezheti be őket:
Get-AzElasticSanVolume -ResourceGroupName $resourceGroupName -ElasticSanName $sanName -VolumeGroupName $searchedVolumeGroup -Name $searchedVolume
A következő Azure CLI-paranccsal is beszerezheti őket:
az elastic-san volume show --elastic-san-name --name --resource-group --volume-group-name
Cluster configuration
Miután lekérte a kötet adatait, létre kell hoznia néhány yaml-fájlt az új erőforrásokhoz az AKS-fürtön.
Storageclass
A következő példában hozzon létre egy storageclass.yml fájlt. Ez a fájl határozza meg az állandó kötet tárosztályát.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: sanVolume
provisioner: manual
Állandó kötet
A tárolási osztály létrehozása után hozzon létre egy pv.yml fájlt. Ez a fájl határozza meg az állandó kötetet. Az alábbi példában cserélje le yourTargetPortal
a , yourTargetPortalPort
és yourIQN
a korábban összegyűjtött értékeket, majd a példában hozzon létre egy pv.yml fájlt. Ha több mint 1 gibibyte tárterületre van szüksége, és rendelkezésre áll, cserélje le 1Gi
a szükséges tárterületre.
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: iscsiplugin-pv
labels:
name: data-iscsiplugin
spec:
storageClassName: sanVolume
accessModes:
- ReadWriteOnce
capacity:
storage: 1Gi
csi:
driver: iscsi.csi.k8s.io
volumeHandle: iscsi-data-id
volumeAttributes:
targetPortal: "yourTargetPortal:yourTargetPortalPort"
portals: "[]"
iqn: "yourIQN"
lun: "0"
iscsiInterface: "default"
discoveryCHAPAuth: "true"
sessionCHAPAuth: "false"
A pv.yml fájl létrehozása után hozzon létre egy állandó kötetet a következő paranccsal:
kubectl apply -f pathtoyourfile/pv.yaml
Állandó kötet jogcíme
Ezután hozzon létre egy állandó mennyiségi jogcímet. Használja a korábban definiált tárolási osztályt a definiált állandó kötettel. Az alábbiakban egy példa látható a pvc.yml fájl megjelenésére:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: iscsiplugin-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: sanVolume
selector:
matchExpressions:
- key: name
operator: In
values: ["data-iscsiplugin"]
A pvc.yml fájl létrehozása után hozzon létre egy állandó mennyiségi jogcímet.
kubectl apply -f pathtoyourfile/pvc.yaml
A PersistentVolumeClaim létrehozásának és a PersistentVolume-hoz való kötésének ellenőrzéséhez futtassa a következő parancsot:
kubectl get pvc pathtoyourfile
Végül hozzon létre egy podjegyzéket. Az alábbiakban egy példa látható a pod.yml fájl megjelenésére. Segítségével saját podjegyzéket készíthet, lecserélheti a , image
és mountPath
a saját értékeitname
:
apiVersion: v1
kind: Pod
metadata:
name: nginx
spec:
containers:
- image: maersk/nginx
imagePullPolicy: Always
name: nginx
ports:
- containerPort: 80
protocol: TCP
volumeMounts:
- mountPath: /var/www
name: iscsi-volume
volumes:
- name: iscsi-volume
persistentVolumeClaim:
claimName: iscsiplugin-pvc
A pod.yml fájl létrehozása után hozzon létre egy podot.
kubectl apply -f pathtoyourfile/pod.yaml
A pod létrehozásának ellenőrzéséhez futtassa a következő parancsot:
kubectl get pods
Ezzel sikeresen csatlakoztatott egy rugalmas SAN-kötetet az AKS-fürthöz.
Következő lépések
Rugalmas SAN-előzetes verzió üzembe helyezésének megtervezése