NetApp AIPod 구축을 위한 Kubernetes StorageClasses 예
-
이 문서 사이트의 PDF
![](https://docs.netapp.com/common/images/pdf-zip.png)
별도의 PDF 문서 모음
Creating your file...
Astra Trident를 사용하여 Kubernetes 클러스터 내에서 스토리지 리소스를 동적으로 프로비저닝하려면 먼저 하나 이상의 Kubernetes StorageClasses를 생성해야 합니다. 다음 예제는 에서 이 솔루션의 구성 요소를 배포할 때 만들 수 있는 다양한 유형의 StorageClasses를 나타냅니다 "NetApp AIPod". StorageClasses에 대한 자세한 내용은 를 참조하십시오 "Astra Trident 문서".
-
NetApp은 섹션에서 생성한 FlexGroup 지원 Trident 백엔드에 대한 StorageClass를 생성할 것을 권장합니다 "NetApp AIPod 구축을 위한 Astra Trident 백엔드의 예", 1단계. 다음 예제 명령은 섹션에서 만든 두 예제 백엔드에 해당하는 여러 StorageClasses를 만드는 방법을 보여 줍니다 "NetApp AIPod 구축을 위한 Astra Trident 백엔드의 예", 단계 1 - 를 활용하는 단계 "RDMA 상의 NFS" 그리고 그렇지 않은 것.
영구 볼륨은 해당 PersistentVolumeClaim(PVC)이 삭제되어도 삭제되지 않도록 다음 예에서는 "Retain"의 "reclaimPolicy" 값을 사용합니다. '청구 정책' 필드에 대한 자세한 내용은 공식 을 참조하십시오 "Kubernetes 문서".
참고: 다음 예제 StorageClasses는 최대 전송 크기인 262144를 사용합니다. 이 최대 전송 크기를 사용하려면 그에 따라 ONTAP 시스템에서 최대 전송 크기를 구성해야 합니다. 을 참조하십시오 "ONTAP 설명서" 를 참조하십시오.
참고: RDMA를 통해 NFS를 사용하려면 ONTAP 시스템에서 NFS over RDMA를 구성해야 합니다. 자세한 내용은 ONTAP documentation 링크를 참조하십시오.
참고: 다음 예제에서 StorageClass 정의 파일의 StoragePool 필드에 특정 백엔드가 지정되지 않았습니다.
$ cat << EOF > ./storage-class-aipod-flexgroups-retain.yaml apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: aipod-flexgroups-retain provisioner: csi.trident.netapp.io mountOptions: ["vers=4.1", "nconnect=16", "rsize=262144", "wsize=262144"] parameters: backendType: "ontap-nas-flexgroup" storagePools: "aipod-flexgroups-iface1:.*" reclaimPolicy: Retain EOF $ kubectl create -f ./storage-class-aipod-flexgroups-retain.yaml storageclass.storage.k8s.io/aipod-flexgroups-retain created $ cat << EOF > ./storage-class-aipod-flexgroups-retain-rdma.yaml apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: aipod-flexgroups-retain-rdma provisioner: csi.trident.netapp.io mountOptions: ["vers=4.1", "proto=rdma", "max_connect=16", "rsize=262144", "wsize=262144"] parameters: backendType: "ontap-nas-flexgroup" storagePools: "aipod-flexgroups-iface1:.*" reclaimPolicy: Retain EOF $ kubectl create -f ./storage-class-aipod-flexgroups-retain-rdma.yaml storageclass.storage.k8s.io/aipod-flexgroups-retain-rdma created $ kubectl get storageclass NAME PROVISIONER AGE aipod-flexgroups-retain csi.trident.netapp.io 0m aipod-flexgroups-retain-rdma csi.trident.netapp.io 0m
-
또한 섹션에서 생성한 FlexVol 지원 Trident 백엔드에 해당하는 StorageClass를 생성하는 것이 좋습니다 "AIPod 구축을 위한 Astra Trident 백엔드의 예", 2단계. 다음 명령 예에서는 FlexVol 볼륨에 대한 단일 StorageClass를 생성하는 것을 보여 줍니다.
참고: 다음 예제에서 StorageClass 정의 파일의 StoragePool 필드에 특정 백엔드가 지정되지 않았습니다. Kubernetes를 사용하여 이 StorageClass를 사용하여 볼륨을 관리하는 경우 Trident는 를 사용하는 사용 가능한 백엔드를 사용합니다
ontap-nas
드라이버.$ cat << EOF > ./storage-class-aipod-flexvols-retain.yaml apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: aipod-flexvols-retain provisioner: netapp.io/trident parameters: backendType: "ontap-nas" reclaimPolicy: Retain EOF $ kubectl create -f ./storage-class-aipod-flexvols-retain.yaml storageclass.storage.k8s.io/aipod-flexvols-retain created $ kubectl get storageclass NAME PROVISIONER AGE aipod-flexgroups-retain csi.trident.netapp.io 0m aipod-flexgroups-retain-rdma csi.trident.netapp.io 0m aipod-flexvols-retain csi.trident.netapp.io 0m