NetApp ONTAP iSCSI 設定
要透過 iSCSI 將NetApp ONTAP儲存系統與 VMware Tanzu Kubernetes 叢集整合以實現持久性卷,第一步是透過登入每個節點並配置 iSCSI 公用程式或軟體包來掛載 iSCSI 卷,從而準備節點。為此,請按照本"關聯"。
|
NetApp不建議對 VMware Tanzu Kubernetes 叢集的 NAT 部署使用此程序。 |
|
TKGI 使用 Bosh VM 作為運行不可變配置映像的 Tanzu Kubernetes 叢集的節點,且 Bosh VM 上 iSCSI 套件的任何手動變更在重新啟動後都不會保留。因此, NetApp建議使用 NFS 磁碟區作為由 TKGI 部署和營運的 Tanzu Kubernetes 叢集的持久儲存。 |
在叢集節點準備好 iSCSI 磁碟區後,您必須建立一個能夠與儲存系統通訊的後端。我們在此解決方案中配置了一個基本的後端,但是,如果您正在尋找更多自訂選項,請存取文檔"這裡"。
在ONTAP中建立 SVM
若要在ONTAP中建立 SVM,請完成下列步驟:
-
登入ONTAP系統管理器,導覽至“儲存”>“儲存虛擬機”,然後按一下“新增”。
-
輸入 SVM 的名稱,啟用 iSCSI 協議,然後提供資料 LIF 的詳細資訊。
-
輸入 SVM 管理帳戶的詳細信息,然後按一下「儲存」。
-
若要將聚合指派給 SVM,請導覽至“儲存體”>“儲存虛擬機器”,按一下新建立的 SVM 旁的省略號,然後按一下“編輯”。勾選「限製卷建立到首選本機層」複選框,並將所需的聚合附加到該複選框。
建立後端和儲存類
-
對於提供 NFS 服務的NetApp ONTAP系統,請在跳轉主機上建立後端設定文件,其中包含 backendName、managementLIF、dataLIF、svm、使用者名稱、密碼和其他詳細資訊。
{ "version": 1, "storageDriverName": "ontap-san", "backendName": "ontap-san+10.61.181.231", "managementLIF": "172.21.224.201", "dataLIF": "10.61.181.231", "svm": "trident_svm_iscsi", "username": "admin", "password": "password" }
-
透過執行以下指令來建立Trident後端。
[netapp-user@rhel7 trident-installer]$ ./tridentctl -n trident create backend -f backend-ontap-san.json +------------------------+----------------+--------------------------------------+--------+---------+ | NAME | STORAGE DRIVER | UUID | STATE | VOLUMES | +------------------------+----------------+--------------------------------------+--------+---------+ | ontap-san+10.61.181.231 | ontap-san | 6788533c-7fea-4a35-b797-fb9bb3322b91 | online | 0 | +------------------------+----------------+--------------------------------------+--------+---------+
-
建立後端後,接下來必須建立儲存類別。以下範例儲存類別定義突顯了必要欄位和基本欄位。參數 `backendType`應該反映新建立的Trident後端的儲存驅動程式。還要注意名稱欄位值,該值必須在後續步驟中引用。
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ontap-iscsi provisioner: csi.trident.netapp.io parameters: backendType: "ontap-san"
有一個可選字段稱為 `fsType`這是在這個文件中定義的。在 iSCSI 後端,可以將此值設定為特定的 Linux 檔案系統類型(XFS、ext4 等),或者可以刪除此值以允許 Tanzu Kubernetes 叢集決定使用哪種檔案系統。 -
透過執行 kubectl 命令建立儲存類別。
[netapp-user@rhel7 trident-installer]$ kubectl create -f storage-class-iscsi.yaml storageclass.storage.k8s.io/ontap-iscsi created
-
建立儲存類別後,您必須建立第一個持久化磁碟區宣告 (PVC)。下面給出了一個 PVC 定義範例。確保 `storageClassName`欄位與剛剛建立的儲存類別的名稱相符。 PVC 定義可根據需要配置的工作負載進一步客製化。
kind: PersistentVolumeClaim apiVersion: v1 metadata: name: basic spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: ontap-iscsi
-
透過發出 kubectl 指令來建立 PVC。創建可能需要一些時間,具體取決於所創建的備份卷的大小,因此您可以在創建完成時觀察該過程。
[netapp-user@rhel7 trident-installer]$ kubectl create -f pvc-basic.yaml persistentvolumeclaim/basic created [netapp-user@rhel7 trident-installer]$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE basic Bound pvc-7ceac1ba-0189-43c7-8f98-094719f7956c 1Gi RWO ontap-iscsi 3s