2.3. 선택적 구성
OpenShift 샌드박스 컨테이너 Operator를 설치한 후 다음 옵션을 구성할 수 있습니다.
2.3.1. 로컬 블록 볼륨 프로비저닝 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift 샌드박스 컨테이너와 함께 로컬 블록 볼륨을 사용할 수 있습니다. 먼저 LSO(Local Storage Operator)를 사용하여 로컬 블록 볼륨을 프로비저닝해야 합니다. 그런 다음 로컬 블록 볼륨이 있는 노드를 활성화해야 OpenShift 샌드박스 컨테이너 워크로드를 실행해야 합니다.
LSO(Local Storage Operator)를 사용하여 OpenShift 샌드박스 컨테이너의 로컬 블록 볼륨을 프로비저닝할 수 있습니다. 로컬 볼륨 프로비저너는 정의된 리소스에 지정된 경로에서 블록 볼륨 장치를 찾습니다.
사전 요구 사항
- Local Storage Operator가 설치되어 있습니다.
다음 조건을 충족하는 로컬 디스크가 있습니다.
- 노드에 연결되어 있습니다.
- 마운트되지 않았습니다.
- 파티션이 포함되어 있지 않습니다.
프로세스
로컬 볼륨 리소스를 생성합니다. 이 리소스는 로컬 볼륨에 대한 노드 및 경로를 정의해야 합니다.
참고동일한 장치에 다른 스토리지 클래스 이름을 사용하지 마십시오. 이렇게 하면 여러 PV(영구 볼륨)가 생성됩니다.
예: 블록
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Local Storage Operator가 설치된 네임스페이스입니다.
- 2
- 선택 사항: 로컬 스토리지 볼륨이 연결된 노드 목록이 포함된 노드 선택기입니다. 이 예에서는
oc get node
에서 가져온 노드 호스트 이름을 사용합니다. 값을 정의하지 않으면 Local Storage Operator에서 사용 가능한 모든 노드에서 일치하는 디스크를 찾습니다. - 3
- 영구 볼륨 오브젝트를 생성할 때 사용할 스토리지 클래스의 이름입니다.
- 4
- 이 설정은
wipefs
를 호출할지 여부를 정의합니다. 즉, 파티션 테이블 서명(마이크 문자열)을 제거하여 Local Storage Operator 프로비저닝에 디스크를 사용할 준비가 되었습니다. 서명 이외의 다른 데이터는 삭제되지 않습니다. 기본값은 "false"입니다(wipefs
가 호출되지 않음).forceWipeDevicesAndDestroyAllData
를 "true"로 설정하면 이전 데이터를 다시 사용해야 하는 디스크에 남아 있을 수 있는 시나리오에서 유용할 수 있습니다. 이러한 시나리오에서는 이 필드를 true로 설정하면 관리자가 디스크를 수동으로 지울 필요가 없습니다. - 5
- 선택할 로컬 스토리지 장치 목록이 포함된 경로입니다. 로컬 블록 장치가 있는 노드를 활성화하여 OpenShift 샌드박스 컨테이너 워크로드를 실행할 때 이 경로를 사용해야 합니다.
- 6
- 이 값을
LocalVolume
리소스의 filepath로 바꿉니다(예:/dev/disk/
). 프로비저너가 배포되면 이러한 로컬 디스크에 PV가 생성됩니다.by-id
/wwn
OpenShift Container Platform 클러스터에 로컬 볼륨 리소스를 생성합니다. 방금 생성한 파일을 지정합니다.
oc apply -f <local-volume>.yaml
$ oc apply -f <local-volume>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프로비저너가 생성되었고 해당 데몬 세트가 생성되었는지 확인합니다.
oc get all -n openshift-local-storage
$ oc get all -n openshift-local-storage
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 원하는
데몬 세트 프로세스 및현재
개수를 기록해 둡니다.원하는
개수가0
이면 라벨 선택기가 유효하지 않음을 나타냅니다.영구 볼륨이 생성되었는지 확인합니다.
oc get pv
$ oc get pv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1cec77cf 100Gi RWO Delete Available local-sc 88m local-pv-2ef7cd2a 100Gi RWO Delete Available local-sc 82m local-pv-3fa1c73 100Gi RWO Delete Available local-sc 48m
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE local-pv-1cec77cf 100Gi RWO Delete Available local-sc 88m local-pv-2ef7cd2a 100Gi RWO Delete Available local-sc 82m local-pv-3fa1c73 100Gi RWO Delete Available local-sc 48m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
LocalVolume
오브젝트를 편집해도 안전하지 않은 작업이 발생할 수 있으므로 기존 영구 볼륨이 변경되지 않습니다.
2.3.2. 노드가 로컬 블록 장치를 사용하도록 활성화 링크 복사링크가 클립보드에 복사되었습니다!
로컬 블록 장치로 노드를 구성하여 정의된 볼륨 리소스에 지정된 경로에서 OpenShift 샌드박스 컨테이너 워크로드를 실행할 수 있습니다.
사전 요구 사항
- LSO(Local Storage Operator)를 사용하여 블록 장치를 프로비저닝합니다.
프로세스
로컬 블록 장치가 있는 각 노드를 활성화하여 다음 명령을 실행하여 OpenShift 샌드박스 컨테이너 워크로드를 실행합니다.
oc debug node/worker-0 -- chcon -vt container_file_t /host/path/to/device
$ oc debug node/worker-0 -- chcon -vt container_file_t /host/path/to/device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /path/to/device
는 로컬 스토리지 리소스를 생성할 때 정의한 경로와 동일해야 합니다.출력 예
system_u:object_r:container_file_t:s0 /host/path/to/device
system_u:object_r:container_file_t:s0 /host/path/to/device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3.3. NodeFeatureDiscovery 사용자 정의 리소스 생성 링크 복사링크가 클립보드에 복사되었습니다!
NodeFeatureDiscovery
CR(사용자 정의 리소스)을 생성하여 NFD(Node Feature Discovery) Operator에서 작업자 노드에서 OpenShift 샌드박스 컨테이너를 지원할 수 있는지 확인하는 구성 매개변수를 정의합니다.
사용자가 알고 있는 선택된 작업자 노드에만 kata
런타임을 설치하려면 feature.node.kubernetes.io/runtime.kata=true
레이블을 선택한 노드에 적용하고 KataConfig
CR에서 checkNodeEligibility: true
를 설정합니다.
모든 작업자 노드에 kata
런타임을 설치하려면 KataConfig
CR에 checkNodeEligibility: false
를 설정합니다.
이러한 두 시나리오에서는 NodeFeatureDiscovery
CR을 생성할 필요가 없습니다. 노드가 OpenShift 샌드박스 컨테이너를 실행할 수 있는지 확인하는 경우 feature.node.kubernetes.io/runtime.kata=true
레이블만 수동으로 적용해야 합니다.
다음 절차에서는 feature.node.kubernetes.io/runtime.kata=true
레이블을 모든 적격 노드에 적용하고 노드 자격을 확인하도록 KataConfig
리소스를 구성합니다.
사전 요구 사항
- NFD Operator가 설치되어 있습니다.
프로세스
다음 예에 따라
nfd.yaml
매니페스트 파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow NodeFeatureDiscovery
CR을 생성합니다.oc create -f nfd.yaml
$ oc create -f nfd.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NodeFeatureDiscovery
CR은feature.node.kubernetes.io/runtime.kata=true
레이블을 모든 적격 작업자 노드에 적용합니다.
다음 예에 따라
kata-config.yaml
매니페스트 파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow KataConfig
CR을 생성합니다.oc create -f kata-config.yaml
$ oc create -f kata-config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
클러스터의 적격한 노드에 올바른 레이블이 적용되었는지 확인합니다.
oc get nodes --selector='feature.node.kubernetes.io/runtime.kata=true'
$ oc get nodes --selector='feature.node.kubernetes.io/runtime.kata=true'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME STATUS ROLES AGE VERSION compute-3.example.com Ready worker 4h38m v1.25.0 compute-2.example.com Ready worker 4h35m v1.25.0
NAME STATUS ROLES AGE VERSION compute-3.example.com Ready worker 4h38m v1.25.0 compute-2.example.com Ready worker 4h35m v1.25.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow