NetApp ONTAP NFS 구성
NFS를 통해 NetApp ONTAP 스토리지 시스템과 Trident 통합을 활성화하려면 스토리지 시스템과의 통신을 지원하는 백엔드를 만들어야 합니다. 이 솔루션에서는 기본 백엔드를 구성하지만, 더욱 맞춤화된 옵션을 찾고 있다면 설명서를 방문하세요."여기" .
ONTAP 에서 SVM 만들기
-
ONTAP 시스템 관리자에 로그인하고 스토리지 > 스토리지 VM으로 이동한 다음 추가를 클릭합니다.
-
SVM의 이름을 입력하고, NFS 프로토콜을 활성화하고, NFS 클라이언트 액세스 허용 확인란을 선택하고, 워크로드 클러스터에서 볼륨을 PV로 마운트할 수 있도록 허용하기 위해 작업자 노드가 있는 서브넷을 내보내기 정책 규칙에 추가합니다.
NSX-T를 사용하여 사용자 클러스터 또는 워크로드 클러스터의 NAT 배포를 사용하는 경우 내보내기 정책 규칙에 Egress 서브넷(TKGS0의 경우) 또는 Floating IP 서브넷(TKGI의 경우)을 추가해야 합니다. -
데이터 LIF에 대한 세부 정보와 SVM 관리 계정에 대한 세부 정보를 제공한 다음 저장을 클릭합니다.
-
SVM에 집계를 할당합니다. 저장소 > 저장소 VM으로 이동한 다음 새로 만든 SVM 옆에 있는 줄임표를 클릭하고 편집을 클릭합니다. '선호하는 로컬 계층에 대한 볼륨 생성 제한' 확인란을 선택하고 필요한 집계를 첨부합니다.
-
Trident 설치될 사용자 또는 워크로드 클러스터의 NAT 배포의 경우, SNAT로 인해 스토리지 마운트 요청이 비표준 포트에서 도착할 수 있습니다. 기본적으로 ONTAP 루트 포트에서 시작된 볼륨 마운트 요청만 허용합니다. 따라서 ONTAP CLI에 로그인하고 비표준 포트에서 마운트 요청을 허용하도록 설정을 수정합니다.
ontap-01> vserver nfs modify -vserver tanzu_svm -mount-rootonly disabled
백엔드 및 StorageClass 생성
-
NFS를 제공하는 NetApp ONTAP 시스템의 경우, backendName, managementLIF, dataLIF, svm, 사용자 이름, 비밀번호 및 기타 세부 정보가 포함된 백엔드 구성 파일을 점프 호스트에 만듭니다.
{ "version": 1, "storageDriverName": "ontap-nas", "backendName": "ontap-nas+10.61.181.221", "managementLIF": "172.21.224.201", "dataLIF": "10.61.181.221", "svm": "trident_svm", "username": "admin", "password": "password" }
쉽게 식별할 수 있도록 NFS를 제공하는 storageDriverName과 dataLIF의 조합으로 사용자 지정 backendName 값을 정의하는 것이 가장 좋습니다. -
다음 명령을 실행하여 Trident 백엔드를 만듭니다.
[netapp-user@rhel7]$ ./tridentctl -n trident create backend -f backend-ontap-nas.json +-------------------------+----------------+--------------------------------------+--------+---------+ | NAME | STORAGE DRIVER | UUID | STATE | VOLUMES | +-------------------------+----------------+--------------------------------------+--------+---------+ | ontap-nas+10.61.181.221 | ontap-nas | be7a619d-c81d-445c-b80c-5c87a73c5b1e | online | 0 | +-------------------------+----------------+--------------------------------------+--------+---------+
-
백엔드를 만든 후에는 다음으로 스토리지 클래스를 만들어야 합니다. 다음 샘플 저장 클래스 정의는 필수 필드와 기본 필드를 강조해서 보여줍니다. 매개변수
backendType
새로 생성된 Trident 백엔드의 스토리지 드라이버를 반영해야 합니다.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ontap-nfs provisioner: csi.trident.netapp.io parameters: backendType: "ontap-nas"
-
kubectl 명령을 실행하여 스토리지 클래스를 생성합니다.
[netapp-user@rhel7 trident-installer]$ kubectl create -f storage-class-nfs.yaml storageclass.storage.k8s.io/ontap-nfs created
-
스토리지 클래스가 생성되면 첫 번째 영구 볼륨 클레임(PVC)을 생성해야 합니다. PVC 정의의 예는 아래와 같습니다. 다음 사항을 확인하세요.
storageClassName
필드는 방금 만든 저장소 클래스의 이름과 일치합니다. PVC 정의는 프로비저닝할 작업 부하에 따라 필요에 따라 추가로 사용자 정의할 수 있습니다.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: basic spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: ontap-nfs
-
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-b4370d37-0fa4-4c17-bd86-94f96c94b42d 1Gi RWO ontap-nfs 7s