4.9. NFS를 사용하는 영구저장장치
NFS를 사용하여 영구 스토리지로 OpenShift Container Platform 클러스터를 프로비저닝할 수 있습니다.
PV(영구 볼륨) 및 PVC(영구 볼륨 클레임)는 프로젝트 전체에서 볼륨을 공유하는 편리한 방법을 제공합니다. PV 정의에 포함된 NFS 관련 정보는 Pod 정의에서 직접 정의될 수 있지만, 이렇게 하면 볼륨이 별도의 클러스터 리소스로 생성되지 않아 볼륨에서 충돌이 발생할 수 있습니다.
in-tree NFS 프로비저너는 사용자 네임스페이스를 지원하지 않습니다.
4.9.1. NFS 사용하여 영구 스토리지 프로비저닝 링크 복사링크가 클립보드에 복사되었습니다!
NFS 서버 및 내보내기 경로를 참조하는 PV(영구 볼륨) 및 PVC(영구 볼륨 클레임) 오브젝트를 생성하여 OpenShift Container Platform용 영구 스토리지를 프로비저닝할 수 있습니다.
사전 요구 사항
- 적절한 내보내기 경로가 구성된 기본 인프라에서 NFS 스토리지를 사용할 수 있습니다.
절차
PV에 대한 오브젝트 정의를 생성합니다.
apiVersion: v1 kind: PersistentVolume metadata: name: pv0001 spec: capacity: storage: 5Gi accessModes: - ReadWriteOnce nfs: path: /tmp server: 172.17.0.2 persistentVolumeReclaimPolicy: Retain다음과 같습니다.
metadata.name-
볼륨의 이름을 지정합니다. 이는 다양한
oc명령에서 PV ID입니다. spec.capacity.storage- 이 볼륨에 할당된 스토리지 용량을 지정합니다.
spec.accessModes.ReadWriteOnce-
볼륨에 대한 액세스를 제어하는 것으로 표시되지만 실제로 레이블에 사용되며 PVC를 PV에 연결하는 데 사용됩니다. 현재는
accessModes를 기반으로 하는 액세스 규칙이 적용되지 않습니다. spec. NFS-
사용 중인 볼륨 유형입니다(이 경우
NFS플러그인). spec. NFS.path- NFS 서버에서 내보낸 경로를 지정합니다.
spec. NFS.server- NFS 서버의 호스트 이름 또는 IP 주소를 지정합니다.
spec.persistentVolumeReclaimPolicyPV의 회수 정책을 지정합니다. 이는 릴리스될 때 볼륨에 발생하는 작업을 정의합니다.
참고각 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 resources: requests: storage: 5Gi volumeName: pv0001 storageClassName: ""다음과 같습니다.
spec.accessModes.ReadWriteOnce- 액세스 모드는 보안을 적용하지 않고 PV를 PVC에 일치시키기 위한 레이블 역할을 합니다.
spec.resources.requests.storage- 이 클레임에서는 5Gi 이상의 용량을 제공하는 PV를 찾습니다.
영구 볼륨 클레임이 생성되었는지 확인합니다.
$ oc get pvc출력 예
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE nfs-claim1 Bound pv0001 5Gi RWO 2m