Skip to main content
NetApp Solutions
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

ONTAP AI 구축을 위한 Kubernetes StorageClasses의 예

기여자

Trident를 사용하여 Kubernetes 클러스터 내에서 스토리지 리소스를 동적으로 프로비저닝하려면 먼저 하나 이상의 Kubernetes StorageClasses를 생성해야 합니다. 다음 예제는 ONTAP AI POD에 NetApp AI Control Plane 솔루션을 구축할 경우 생성할 수 있는 다양한 유형의 StorageClasses를 보여줍니다. StorageClasses에 대한 자세한 내용은 를 참조하십시오 "Trident 문서".

  1. NetApp은 섹션에 생성한 각 FlexGroup 지원 Trident 백엔드에 대해 별도의 StorageClass를 생성할 것을 권장합니다 "ONTAP AI 배포에 대한 Trident 백엔드 예", 1단계. 이러한 세분화된 StorageClasses를 사용하면 특정 LIF(Trident 백엔드를 생성할 때 지정한 LIF)에 해당하는 NFS 마운트를 StorageClass 사양 파일에 지정된 특정 백엔드에서 추가할 수 있습니다. 다음 예제 명령은 섹션에 생성된 두 예제 백엔드에 해당하는 두 개의 StorageClasses를 생성하는 방법을 보여 줍니다 "ONTAP AI 배포에 대한 Trident 백엔드 예", 1단계. StorageClasses에 대한 자세한 내용은 를 참조하십시오 "Trident 문서".

    영구 볼륨은 해당 PersistentVolumeClaim(PVC)이 삭제되어도 삭제되지 않도록 다음 예에서는 "Retain"의 "reclaimPolicy" 값을 사용합니다. '청구 정책' 필드에 대한 자세한 내용은 공식 을 참조하십시오 "Kubernetes 문서".

    $ cat << EOF > ./storage-class-ontap-ai-flexgroups-retain-iface1.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: ontap-ai-flexgroups-retain-iface1
    provisioner: netapp.io/trident
    parameters:
      backendType: "ontap-nas-flexgroup"
      storagePools: "ontap-ai-flexgroups-iface1:.*"
    reclaimPolicy: Retain
    EOF
    $ kubectl create -f ./storage-class-ontap-ai-flexgroups-retain-iface1.yaml
    storageclass.storage.k8s.io/ontap-ai-flexgroups-retain-iface1 created
    $ cat << EOF > ./storage-class-ontap-ai-flexgroups-retain-iface2.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: ontap-ai-flexgroups-retain-iface2
    provisioner: netapp.io/trident
    parameters:
      backendType: "ontap-nas-flexgroup"
      storagePools: "ontap-ai-flexgroups-iface2:.*"
    reclaimPolicy: Retain
    EOF
    $ kubectl create -f ./storage-class-ontap-ai-flexgroups-retain-iface2.yaml
    storageclass.storage.k8s.io/ontap-ai-flexgroups-retain-iface2 created
    $ kubectl get storageclass
    NAME                                PROVISIONER         AGE
    ontap-ai-flexgroups-retain-iface1   netapp.io/trident   0m
    ontap-ai-flexgroups-retain-iface2   netapp.io/trident   0m
  2. 또한 섹션에서 생성한 FlexVol 지원 Trident 백엔드에 해당하는 StorageClass를 생성하는 것이 좋습니다 "ONTAP AI 배포에 대한 Trident 백엔드 예", 2단계. 다음 명령 예에서는 FlexVol 볼륨에 대한 단일 StorageClass를 생성하는 것을 보여 줍니다.

    다음 예에서는 FlexVol 지원 Trident 백엔드가 하나만 생성되었기 때문에 StorageClass 정의 파일에 특정 백엔드가 지정되지 않습니다. Kubernetes를 사용하여 이 StorageClass를 사용하는 볼륨을 관리할 경우 Trident는 'ONTAP-NAS' 드라이버를 사용하는 사용 가능한 백엔드를 사용하려고 합니다.

    $ cat << EOF > ./storage-class-ontap-ai-flexvols-retain.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: ontap-ai-flexvols-retain
    provisioner: netapp.io/trident
    parameters:
      backendType: "ontap-nas"
    reclaimPolicy: Retain
    EOF
    $ kubectl create -f ./storage-class-ontap-ai-flexvols-retain.yaml
    storageclass.storage.k8s.io/ontap-ai-flexvols-retain created
    $ kubectl get storageclass
    NAME                                PROVISIONER         AGE
    ontap-ai-flexgroups-retain-iface1   netapp.io/trident   1m
    ontap-ai-flexgroups-retain-iface2   netapp.io/trident   1m
    ontap-ai-flexvols-retain            netapp.io/trident   0m
  3. 또한 FlexGroup 볼륨에 대한 일반 StorageClass를 생성하는 것이 좋습니다. 다음 예제 명령은 FlexGroup 볼륨에 대한 단일 일반 StorageClass 를 생성하는 방법을 보여 줍니다.

    StorageClass 정의 파일에 특정 백엔드가 지정되지 않았습니다. 따라서 Kubernetes를 사용하여 이 StorageClass를 사용하는 볼륨을 관리할 때 Trident는 'ONTAP-NAS-Flexgroup' 드라이버를 사용하는 사용 가능한 백엔드를 사용하려고 합니다.

$ cat << EOF > ./storage-class-ontap-ai-flexgroups-retain.yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ontap-ai-flexgroups-retain
provisioner: netapp.io/trident
parameters:
  backendType: "ontap-nas-flexgroup"
reclaimPolicy: Retain
EOF
$ kubectl create -f ./storage-class-ontap-ai-flexgroups-retain.yaml
storageclass.storage.k8s.io/ontap-ai-flexgroups-retain created
$ kubectl get storageclass
NAME                                PROVISIONER         AGE
ontap-ai-flexgroups-retain          netapp.io/trident   0m
ontap-ai-flexgroups-retain-iface1   netapp.io/trident   2m
ontap-ai-flexgroups-retain-iface2   netapp.io/trident   2m
ontap-ai-flexvols-retain            netapp.io/trident   1m