28.12. 기존 레거시 스토리지에 스토리지 클래스 사용
28.12.1. 개요
이 예에서는 레거시 데이터 볼륨이 존재하며 cluster-admin
또는 storage-admin
은 특정 프로젝트에서 사용할 수 있도록 설정해야 합니다. 스토리지 클래스를 사용하면 StorageClass 이름에 대해 클레임과 정확히 일치하는 값이 있어야 하므로 클레임에서 이 볼륨에 액세스할 수 있는 다른 사용자와 프로젝트가 발생할 가능성이 줄어듭니다. 이 예제에서는 동적 프로비저닝도 비활성화합니다. 이 예제에서는 다음을 가정합니다.
- OpenShift Container Platform, GCE, 영구 디스크에 대해 어느 정도 익숙한 경우
- OpenShift Container Platform이 GCE를 사용하도록 올바르게 구성되어 있습니다.
28.12.1.1. 시나리오 1: 레거시 데이터로 스토리지 클래스를 기존 영구 볼륨에 연결
cluster-admin
또는 storage-admin
으로 기록 금융 데이터에 대한 StorageClass 를 정의하고 생성합니다.
예 28.23. 스토리지 클래스 finance-history 오브젝트 정의
정의를 YAML 파일(finance-history-storageclass.yaml
)에 저장하고 StorageClass 를 만듭니다.
# oc create -f finance-history-storageclass.yaml storageclass "finance-history" created # oc get storageclass NAME TYPE finance-history no-provisioning
cluster-admin
또는 storage-admin
사용자는 올바른 StorageClass 이름을 올바른 사용자, 그룹 및 프로젝트로 중계합니다.
StorageClass 가 있습니다. cluster-admin
또는 storage-admin
은 StorageClass 에 사용할 영구 볼륨(PV)을 생성할 수 있습니다. 새 GCE 디스크(gce-pv.yaml)에 연결하는 GCE(동적 프로비저닝되지 않음) 및 영구 볼륨을 사용하여 수동으로 프로비저닝된 디스크를 생성합니다.
예 28.24. 재무 기록 PV 오브젝트
apiVersion: v1 kind: PersistentVolume metadata: name: pv-finance-history spec: capacity: storage: 35Gi accessModes: - ReadWriteMany gcePersistentDisk: readOnly: false pdName: the-existing-PD-volume-name-that-contains-the-valuable-data 1 fsType: ext4 storageClassName: finance-history 2
cluster-admin
또는 storage-admin
으로 PV를 생성하고 확인합니다.
# oc create -f gce-pv.yaml persistentvolume "pv-finance-history" created # oc get pv NAME CAPACITY ACCESSMODES RECLAIMPOLICY STATUS CLAIM REASON AGE pv-finance-history 35Gi RWX Retain Available 2d
pv-finance-history
Available(사용 가능)이 있으며 사용할 준비가 되어 있습니다.
사용자로 PVC(영구 볼륨 클레임)를 YAML 파일로 생성하고 올바른 StorageClass 이름을 지정합니다.
예 28.25. finance-history 오브젝트 정의 클레임
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-finance-history
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 20Gi
storageClassName: finance-history 1
- 1
- StorageClass 이름은 정확히 일치해야 합니다. 그렇지 않으면 클레임이 삭제되거나 이름과 일치하는 다른 StorageClass 가 생성될 때까지 바인딩되지 않습니다.
PVC 및 PV를 생성하고 보고 바인딩되었는지 확인합니다.
# oc create -f pvc-finance-history.yaml persistentvolumeclaim "pvc-finance-history" created # oc get pvc NAME STATUS VOLUME CAPACITY ACCESSMODES AGE pvc-finance-history Bound pv-finance-history 35Gi RWX 9m # oc get pv (cluster/storage-admin) NAME CAPACITY ACCESSMODES RECLAIMPOLICY STATUS CLAIM REASON AGE pv-finance-history 35Gi RWX Retain Bound default/pvc-finance-history 5m
기존 데이터( 동적 프로비저닝 없음) 및 동적 프로비저닝에 대해 동일한 클러스터에서 StorageClass 를 사용할 수 있습니다 .