Skip to main content
NetApp container solutions
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

NetApp ONTAP iSCSI 設定

貢獻者 kevin-hoke

要透過 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,請完成下列步驟:

  1. 登入ONTAP系統管理器,導覽至“儲存”>“儲存虛擬機”,然後按一下“新增”。

  2. 輸入 SVM 的名稱,啟用 iSCSI 協議,然後提供資料 LIF 的詳細資訊。

    iSCSI SVM 資料 LIF

  3. 輸入 SVM 管理帳戶的詳細信息,然後按一下「儲存」。

    iSCSI SVM 管理

  4. 若要將聚合指派給 SVM,請導覽至“儲存體”>“儲存虛擬機器”,按一下新建立的 SVM 旁的省略號,然後按一下“編輯”。勾選「限製卷建立到首選本機層」複選框,並將所需的聚合附加到該複選框。

    SVM聚合分配

建立後端和儲存類

  1. 對於提供 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"
    }
  2. 透過執行以下指令來建立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 |
    +------------------------+----------------+--------------------------------------+--------+---------+
  3. 建立後端後,接下來必須建立儲存類別。以下範例儲存類別定義突顯了必要欄位和基本欄位。參數 `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 叢集決定使用哪種檔案系統。
  4. 透過執行 kubectl 命令建立儲存類別。

    [netapp-user@rhel7 trident-installer]$ kubectl create -f storage-class-iscsi.yaml
    storageclass.storage.k8s.io/ontap-iscsi created
  5. 建立儲存類別後,您必須建立第一個持久化磁碟區宣告 (PVC)。下面給出了一個 PVC 定義範例。確保 `storageClassName`欄位與剛剛建立的儲存類別的名稱相符。 PVC 定義可根據需要配置的工作負載進一步客製化。

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: basic
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 1Gi
      storageClassName: ontap-iscsi
  6. 透過發出 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