4.11. NFS를 사용하는 영구저장장치
OpenShift Container Platform 클러스터는 NFS를 사용하는 영구 스토리지와 함께 프로비저닝될 수 있습니다. PV(영구 볼륨) 및 PVC(영구 볼륨 클레임)는 프로젝트 전체에서 볼륨을 공유하는 편리한 방법을 제공합니다. PV 정의에 포함된 NFS 관련 정보는 Pod
정의에서 직접 정의될 수 있지만, 이렇게 하면 볼륨이 별도의 클러스터 리소스로 생성되지 않아 볼륨에서 충돌이 발생할 수 있습니다.
추가 리소스
4.11.1. 프로비저닝
OpenShift Container Platform에서 볼륨으로 마운트하기 전에 기본 인프라에 스토리지가 있어야 합니다. NFS 볼륨을 프로비저닝하려면, NFS 서버 목록 및 내보내기 경로만 있으면 됩니다.
절차
PV에 대한 오브젝트 정의를 생성합니다.
apiVersion: v1 kind: PersistentVolume metadata: name: pv0001 1 spec: capacity: storage: 5Gi 2 accessModes: - ReadWriteOnce 3 nfs: 4 path: /tmp 5 server: 172.17.0.2 6 persistentVolumeReclaimPolicy: Retain 7
- 1
- 볼륨의 이름입니다. 이는 다양한
oc <command> pod
에서 PV ID입니다. - 2
- 이 볼륨에 할당된 스토리지의 용량입니다.
- 3
- 볼륨에 대한 액세스를 제어하는 것으로 표시되지만 실제로 레이블에 사용되며 PVC를 PV에 연결하는 데 사용됩니다. 현재는
accessModes
를 기반으로 하는 액세스 규칙이 적용되지 않습니다. - 4
- 사용 중인 볼륨 유형으로, 이 경우에는
nfs
플러그인입니다. - 5
- NFS 서버에서 내보낸 경로입니다.
- 6
- NFS 서버의 호스트 이름 또는 IP 주소입니다.
- 7
- PV의 회수 정책입니다. 이는 릴리스될 때 볼륨에 발생하는 작업을 정의합니다.
참고각 NFS 볼륨은 클러스터의 모든 스케줄링 가능한 노드에서 마운트할 수 있어야 합니다.
PV가 생성되었는지 확인합니다.
$ oc get pv
출력 예
NAME LABELS CAPACITY ACCESSMODES STATUS CLAIM REASON AGE pv0001 <none> 5Gi RWO Available 31s
새 PV에 바인딩하는 영구 볼륨 클레임을 생성합니다.
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: nfs-claim1 spec: accessModes: - ReadWriteOnce 1 resources: requests: storage: 5Gi 2 volumeName: pv0001 storageClassName: ""
영구 볼륨 클레임이 생성되었는지 확인합니다.
$ oc get pvc
출력 예
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE nfs-claim1 Bound pv0001 5Gi RWO 2m