저장소 클래스 및 PVC를 구성합니다
Kubernetes StorageClass 개체를 구성하고 스토리지 클래스를 생성하여 Trident에 볼륨 프로비저닝 방법을 지시합니다. 구성된 Kubernetes StorageClass를 사용하여 PV에 대한 액세스를 요청하는 PersistentVolumeClaim(PVC)을 생성합니다. 그런 다음 PV를 포드에 장착할 수 있습니다.
스토리지 클래스를 생성합니다
Kubernetes StorageClass 개체를 구성합니다
그만큼 "Kubernetes StorageClass 객체" 객체는 Trident 해당 클래스에 사용되는 프로비저너로 식별하고 Trident 볼륨을 프로비저닝하는 방법을 지시합니다. NFS를 사용하여 볼륨에 대한 Storageclass를 설정하려면 이 예제를 사용하세요(전체 속성 목록은 아래의 Trident 속성 섹션을 참조하세요).
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
provisioningType: "thin"
snapshots: "true"
iSCSI를 사용하여 볼륨에 대한 Storageclass를 설정하려면 다음 예를 사용하세요.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-san"
provisioningType: "thin"
snapshots: "true"
AWS Bottlerocket에서 NFSv3 볼륨을 프로비저닝하려면 필요한 를 mountOptions
스토리지 클래스에 추가합니다.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-gold
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
media: "ssd"
provisioningType: "thin"
snapshots: "true"
mountOptions:
- nfsvers=3
- nolock
Trident에서 볼륨을 프로비저닝하는 방법을 제어하는 데 사용되는 및 매개 변수와 스토리지 클래스가 상호 작용하는 방법에 대한 자세한 PersistentVolumeClaim
내용은 을 "Kubernetes 및 Trident 오브젝트"참조하십시오.
스토리지 클래스를 생성합니다
-
Kubernetes 오브젝트이므로 를 사용하십시오
kubectl
Kubernetes에서 생성해야 합니다.kubectl create -f storage-class-ontapnas.yaml
-
이제 Kubernetes와 Trident 모두에서 * BASIC-CSI * 스토리지 클래스가 표시되고 Trident는 백엔드에서 풀을 검색해야 합니다.
kubectl get sc basic-csi
NAME PROVISIONER AGE basic-csi csi.trident.netapp.io 15h
PVC를 작성합니다
A "PersistentVolumeClaim"(PVC)는 클러스터의 PersistentVolume에 대한 액세스 요청입니다.
PVC는 특정 크기 또는 액세스 모드의 저장을 요청하도록 구성할 수 있습니다. 클러스터 관리자는 연결된 StorageClass를 사용하여 PersistentVolume 크기 및 액세스 모드(예: 성능 또는 서비스 수준)를 제어할 수 있습니다.
PVC를 생성한 후 포드에 볼륨을 장착할 수 있습니다.
샘플 매니페스트
PersistentVolumeClaim 샘플 매니페스트
이러한 예는 기본적인 PVC 구성 옵션을 보여줍니다.
이 예에서는 이름이 인 StorageClass와 연결된 rwx 액세스 권한이 있는 기본 PVC를 보여 `basic-csi`줍니다.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-storage
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: ontap-gold
이 예에서는 RWO 액세스가 있는 iSCSI용 기본 PVC를 보여줍니다. 이 PVC는 StorageClass와 연결되어 있습니다. protection-gold
.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-san
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: protection-gold
PVC 생성
-
PVC를 작성합니다.
kubectl create -f pvc.yaml
-
PVC 상태를 확인합니다.
kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE pvc-storage Bound pv-name 2Gi RWO 5m
Trident에서 볼륨을 프로비저닝하는 방법을 제어하는 데 사용되는 및 매개 변수와 스토리지 클래스가 상호 작용하는 방법에 대한 자세한 PersistentVolumeClaim
내용은 을 "Kubernetes 및 Trident 오브젝트"참조하십시오.
Trident 특성
이러한 매개 변수는 지정된 유형의 볼륨을 프로비저닝하는 데 사용해야 하는 Trident 관리 스토리지 풀을 결정합니다.
속성 | 유형 | 값 | 제공합니다 | 요청하십시오 | 에 의해 지원됩니다 |
---|---|---|---|---|---|
미디어 1 |
문자열 |
HDD, 하이브리드, SSD |
풀에는 이 유형의 미디어가 포함되어 있으며, 하이브리드는 둘 모두를 의미합니다 |
지정된 미디어 유형입니다 |
ONTAP-NAS, ONTAP-NAS-이코노미, ONTAP-NAS-Flexgroup, ONTAP-SAN, solidfire-SAN |
프로비저닝 유형 |
문자열 |
얇고 두껍습니다 |
풀은 이 프로비저닝 방법을 지원합니다 |
프로비저닝 방법이 지정되었습니다 |
Thick: All ONTAP; Thin: All ONTAP & solidfire-SAN |
백엔드 유형 |
문자열 |
ONTAP-NAS, ONTAP-NAS-이코노미, ONTAP-NAS-Flexgroup, ONTAP-SAN, solidfire-SAN, GCP-CV, Azure-NetApp-파일, ONTAP-SAN-이코노미 |
풀이 이 백엔드 유형에 속합니다 |
백엔드가 지정되었습니다 |
모든 드라이버 |
스냅샷 수 |
불입니다 |
참, 거짓 |
풀은 스냅샷이 있는 볼륨을 지원합니다 |
스냅샷이 활성화된 볼륨 |
ONTAP-NAS, ONTAP-SAN, solidfire-SAN, GCP-CV |
복제 |
불입니다 |
참, 거짓 |
풀은 볼륨 클론을 지원합니다 |
클론이 활성화된 볼륨 |
ONTAP-NAS, ONTAP-SAN, solidfire-SAN, GCP-CV |
암호화 |
불입니다 |
참, 거짓 |
풀은 암호화된 볼륨을 지원합니다 |
암호화가 활성화된 볼륨입니다 |
ONTAP-NAS, ONTAP-NAS-이코노미, ONTAP-NAS-Flexgroups, ONTAP-SAN |
IOPS |
내부 |
양의 정수입니다 |
풀은 이 범위에서 IOPS를 보장할 수 있습니다 |
볼륨은 이러한 IOPS를 보장합니다 |
solidfire-SAN |
1: ONTAP Select 시스템에서 지원되지 않습니다