OpenShift Container Storage is now OpenShift Data Foundation starting with version 4.9.
5장. 업데이트 후 구성 변경
경우에 따라 모든 기능이 예상대로 작동하는지 확인하기 위해 업데이트 후 추가 구성 단계가 필요합니다.
5.1. 로컬 스토리지에서 지원하는 클러스터의 업데이트 후 구성
Red Hat OpenShift Container Platform 4.6 이상에서 Local Storage Operator는 로컬 스토리지 관리를 위한 새로운 사용자 정의 리소스 유형을 제공합니다.
-
LocalVolumeDiscovery
-
LocalVolumeSet
이러한 리소스 유형은 이전 버전의 업데이트의 일부로 자동으로 처리되지 않으며 수동으로 생성해야 합니다.
5.1.1. 명령줄을 사용하여 LocalVolumeDiscovery 사용자 정의 리소스 생성
LocalVolumeDiscovery
사용자 지정 리소스를 생성하여 장치 관리 사용자 인터페이스에서 로컬 장치의 상태를 검색하고 클러스터 노드에서 사용 가능한 장치에 대한 정보를 제공할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform 클러스터에 대한 관리 액세스
절차
Local Storage Operator가 설치된 프로젝트로 변경합니다.
$ oc project local-storage-project
local-storage-project 를 Local Storage 프로젝트 이름으로 교체합니다.
버전 4.5 및 이전 버전에서 기본 로컬 스토리지 프로젝트의 이름은
local-storage
입니다. 버전 4.6 이상에서 기본 로컬 스토리지 프로젝트의 이름은openshift-local-storage
입니다.LocalVolumeDiscovery
사용자 정의 리소스를 정의합니다.예를 들어
local-volume-discovery.yaml
파일에서 다음을 정의합니다.apiVersion: local.storage.openshift.io/v1alpha1 kind: LocalVolumeDiscovery metadata: name: auto-discover-devices spec: nodeSelector: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - worker1.example.com - worker2.example.com - worker3.example.com
LocalVolumeDiscovery
사용자 정의 리소스를 생성합니다.$ oc create -f local-volume-discovery.yaml
검증 단계
- OpenShift 웹 콘솔에 로그인합니다.
-
컴퓨팅
노드 를 클릭하고 노드 이름을 클릭합니다. - 디스크 탭을 클릭하고 해당 노드에서 사용 가능한 장치를 볼 수 있는지 확인합니다.
5.1.2. 명령줄을 사용하여 로컬 볼륨 세트 사용자 정의 리소스 생성
지정된 조건에 따라 특정 스토리지 장치를 영구 볼륨으로 자동으로 프로비저닝하는 LocalVolumeSet
사용자 정의 리소스를 생성합니다. nodeSelector
기준과 일치하는 노드의 deviceInclusionSpec
기준과 일치하는 모든 장치에 대해 영구 볼륨이 생성됩니다.
사전 요구 사항
- OpenShift Container Platform 클러스터에 대한 관리 액세스
절차
local-volume-set.yaml
파일에LocalVolumeSet
사용자 정의 리소스를 정의합니다.apiVersion: local.storage.openshift.io/v1alpha1 kind: LocalVolumeSet metadata: name: localblock spec: nodeSelector: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - worker1.example.com - worker2.example.com - worker3.example.com storageClassName: localblock volumeMode: Block maxDeviceCount: 10 # optional, limit devices provisioned per node deviceInclusionSpec: deviceTypes: # list of types to allow - disk - part # omit this to use only whole devices deviceMechanicalProperty: - NonRotational minSize: 100Gi # optional, minimum size of device to allow maxSize: 100Ti # optional, maximum size of device to allow models: # (optional) list of models to allow - SAMSUNG - Crucial_CT525MX3 vendors: # (optional) list of device vendors to allow - ATA - ST2000LM
위의 정의는
worker1
,worker2
및worker3
노드에서 특정 공급 업체가 제공하는 100GB 및 100 TB 크기의 특정 모델에서 전체 디스크 또는 파티션을 선택합니다.로컬 블록
스토리지 클래스가 생성되고 영구 볼륨이 검색된 장치에서 프로비저닝됩니다.중요minSize
에 적절한 값을 선택하여 시스템 파티션이 선택되지 않도록 합니다.로컬 볼륨 세트 생성
.$ oc create -f local-volume-set.yaml
검증 단계
다음 명령을 사용하여
deviceInclusionSpec
과 일치하는 장치에 대한 영구 볼륨의 프로비저닝을 추적합니다. 영구 볼륨을 프로비저닝하는 데 몇 분이 걸릴 수 있습니다.$ oc describe localvolumeset localblock [...] Status: Conditions: Last Transition Time: 2020-11-17T05:03:32Z Message: DiskMaker: Available, LocalProvisioner: Available Status: True Type: DaemonSetsAvailable Last Transition Time: 2020-11-17T05:03:34Z Message: Operator reconciled successfully. Status: True Type: Available Observed Generation: 1 Total Provisioned Device Count: 4 Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Discovered 2m30s (x4 localvolumeset- ip-10-0-147-124.us-east- NewDevice over 2m30s) symlink-controller 2.compute.internal - found possible matching disk, waiting 1m to claim Normal FoundMatch 89s (x4 localvolumeset- ip-10-0-147-124.us-east- ingDisk over 89s) symlink-controller 2.compute.internal - symlinking matching disk
프로비저닝된 영구 볼륨의 상태를 확인합니다.
$ oc get pv ACCESS RECLAIM STORAGE NAME CAPACITY MODES POLICY STATUS CLASS AGE local-pv- 500Gi RWO Delete Available localblock 7m48s 3584969f local-pv- 500Gi RWO Delete Available localblock 7m48s 3aee84fa local-pv- 500Gi RWO Delete Available localblock 7m48s 644d09ac local-pv- 500Gi RWO Delete Available localblock 7m48s c73cee1
5.1.3. 주석 추가
이전 버전에서 OpenShift Container Storage 4.6으로 업그레이드할 때 사용자 인터페이스를 통해 실패한 스토리지 장치를 교체하도록 스토리지 클러스터에 주석을 추가하려면 다음 절차를 사용하십시오.
절차
- OpenShift Container Platform 웹 콘솔에 로그인합니다.
-
홈
검색을 클릭합니다. - 클러스터에서 스토리지 클러스터를 검색하고 해당 클러스터를 클릭합니다.
-
ocs-storagecluster
옆의 작업 메뉴 (tekton) → 주석 편집을 클릭합니다. -
KEY 및 VALUE 에 각각
cluster.ocs.openshift.io/local-devices
및true
를 추가합니다. - 저장을 클릭합니다.