Scaling storage
수평 및 수직 확장 옵션
초록
보다 포괄적 수용을 위한 오픈 소스 용어 교체
Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.
Red Hat 문서에 관한 피드백 제공
문서 개선을 위한 의견을 보내 주십시오. Red Hat이 이를 개선하는 방법을 알려 주십시오. 피드백을 제공하려면 다음을 수행하십시오.
특정 문구에 대한 간단한 주석은 다음과 같습니다.
- 문서가 Multi-page HTML 형식으로 표시되는지 확인합니다. 또한 문서 오른쪽 상단에 Feedback (피드백) 버튼이 있는지 확인합니다.
- 마우스 커서를 사용하여 주석 처리하려는 텍스트 부분을 강조 표시합니다.
- 강조 표시된 텍스트 아래에 표시되는 피드백 추가 팝업을 클릭합니다.
- 표시된 지침을 따릅니다.
보다 상세하게 피드백을 제출하려면 다음과 같이 Bugzilla 티켓을 생성하십시오.
- Bugzilla 웹 사이트로 이동하십시오.
- 구성 요소 섹션에서 문서 를 선택합니다.
- Description 필드에 문서 개선을 위한 제안 사항을 기입하십시오. 관련된 문서의 해당 부분 링크를 알려주십시오.
- Submit Bug를 클릭하십시오.
preface
내부 모드에서 OpenShift Container Storage의 스토리지 용량을 확장하려면 다음 중 하나를 수행할 수 있습니다.
- 스토리지 노드 확장 - 기존 Red Hat OpenShift Container Storage 작업자 노드에 스토리지 용량 추가
- 스토리지 노드 확장 - 스토리지 용량이 포함된 새 작업자 노드 추가
외부 모드에서 스토리지를 확장하려면 Red Hat Ceph Storage 설명서를 참조하십시오.
1장. 스토리지 노드 확장 요구사항
스토리지 노드를 확장하기 전에 다음 섹션을 참조하여 특정 Red Hat OpenShift Container Storage 인스턴스의 노드 요구 사항을 파악하십시오.
- 플랫폼 요구 사항
스토리지 장치 요구 사항
항상 다양한 스토리지 용량이 있는지 확인합니다.
스토리지가 완전히 가득 차면 스토리지에서 용량을 추가하거나 삭제하거나 콘텐츠를 마이그레이션하여 공간을 확보할 수 없습니다. 완전한 스토리지는 복구하기가 매우 어렵습니다.
클러스터 스토리지 용량이 75%(near-full) 및 85%(전체)에 도달하면 용량 경고가 발생합니다. 항상 용량 경고를 즉시 처리하고 정기적으로 스토리지를 검토하여 스토리지 공간이 부족하지 않도록 합니다.
스토리지 공간이 완전히 부족할 경우 Red Hat 고객 지원에 문의하십시오.
1.1. Red Hat OpenShift Container Storage에 지원되는 배포
사용자 프로비저닝 인프라:
- AWS(Amazon Web Services)
- VMware
- 베어 메탈
- IBM Power Systems
- IBM Z 또는 LinuxONE
설치 관리자 프로비저닝 인프라:
- AWS(Amazon Web Services)
- Microsoft Azure
- Red Hat Virtualization
- VMware
2장. 스토리지 용량 확장
배포 유형에 따라 다음 절차 중 하나를 선택하여 스토리지 용량을 확장할 수 있습니다.
- 스토리지 장치의 동적 또는 자동 프로비저닝을 사용하는 AWS, VMware, Red Hat Virtualization 또는 Azure 인프라의 경우 다음을 참조하십시오. 2.2절. “OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장”
- 로컬 스토리지 장치를 사용하는 베어 메탈, VMware 또는 Red Hat Virtualization 인프라의 경우 다음을 참조하십시오. 2.3절. “로컬 스토리지 장치를 사용하여 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장”
- 로컬 스토리지 장치를 사용하는 IBM Z 또는 LinuxONE 인프라의 경우 다음을 참조하십시오. 2.4절. “IBM Z 또는 LinuxONE 인프라의 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장”
- 로컬 스토리지 장치를 사용하는 IBM Power Systems의 경우 다음을 참조하십시오. 2.5절. “로컬 스토리지 장치를 사용하여 IBM Power Systems 인프라의 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장”
배포 중에 프로비저닝된 스토리지 클래스 이외의 스토리지 클래스를 사용하여 확장하려면 확장하기 전에 추가 스토리지 클래스도 정의해야 합니다. 자세한 내용은 스토리지 클래스 생성을 참조하십시오.
OpenShift Container Storage는 이기종 OSD 크기를 지원하지 않습니다.
2.1. 스토리지 클래스 생성
새 스토리지 클래스를 정의하여 기존 프로바이더에서 스토리지를 동적으로 프로비저닝할 수 있습니다.
사전 요구 사항
- OpenShift 웹 콘솔에 대한 관리자 액세스.
절차
- OpenShift 웹 콘솔에 로그인합니다.
- 스토리지 → 스토리지 클래스를 클릭합니다.
- 스토리지 클래스 생성을 클릭합니다.
- 스토리지 클래스 Name (이름) 및 Description (설명)을 입력합니다.
- 필수 회수 정책 및 배포 프로그램을 선택합니다.
- Create(만들기 )를 클릭하여 스토리지 클래스를 만듭니다.
검증 단계
- 스토리지 → 스토리지 클래스를 클릭하고 새 스토리지 클래스를 볼 수 있는지 확인합니다.
2.2. OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장
다음 인프라에서 구성된 Red Hat OpenShift Container Storage 작업자 노드에 스토리지 용량 및 성능을 추가하려면 다음 절차를 사용하십시오.
- AWS
- VMware vSphere
- Red Hat Virtualization
- Microsoft Azure
사전 요구 사항
- 실행 중인 OpenShift Container Storage Platform.
- OpenShift 웹 콘솔의 관리 권한.
- 배포 중에 프로비저닝된 스토리지 클래스 이외의 스토리지 클래스를 사용하여 확장하려면 먼저 추가 스토리지 클래스를 정의합니다. 자세한 내용은 스토리지 클래스 생성을 참조하십시오.
절차
- OpenShift 웹 콘솔에 로그인합니다.
- Operators → 설치된 Operator를 클릭합니다.
- OpenShift Container Storage Operator를 클릭합니다.
- Storage Cluster(스토리지 클러스터 ) 탭을 클릭합니다.
- 표시된 목록에는 항목이 하나만 있어야 합니다. 맨 오른쪽에 있는 (^^)를 클릭하여 옵션 메뉴를 확장합니다.
- options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.
스토리지 클래스를 선택합니다.
배포 중에 생성된 기본 스토리지 클래스를 사용하는 경우 AWS에서 스토리지 클래스를
gp2
, VMware의thin
, Red Hat Virtualization의ovirt-csi-sc
또는 Microsoft Azure의managed_premium
으로 설정합니다. 다른 스토리지 클래스를 생성한 경우 적합한 중 하나를 선택합니다.중요공급자의 기본값 이외의 스토리지 클래스를 사용하는 것은 기술 프리뷰 기능입니다.
기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
Raw Capacity(고유 용량 ) 필드에는 스토리지 클래스 생성 중에 설정된 크기가 표시됩니다. OpenShift Container Storage는 복제본 수를 3개 사용하므로 소비되는 총 스토리지 양은 이 양의 3배입니다.
- Add(추가 )를 클릭하고 클러스터 상태가 Ready 로 변경될 때까지 기다립니다.
검증 단계
Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.
선택한 항목에 따라 용량이 증가합니다.
참고원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.
새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.
새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
PVC 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 스토리지 → 영구 볼륨 클레임 을 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
(선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.
새 OSD 포드가 실행 중인 노드를 식별합니다.
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
예를 들면 다음과 같습니다.
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.
디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.
$ oc debug node/<node name> $ chroot /host
"lsblk"를 실행하고
ocs-deviceset
이름 옆의 "crypt" 키워드를 확인하십시오.$ lsblk
Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.
2.3. 로컬 스토리지 장치를 사용하여 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장
다음 인프라에서 구성된 로컬 스토리지 기반 OpenShift Container Storage 작업자 노드에 스토리지 용량(추가 스토리지 장치)을 추가하려면 다음 절차를 사용하십시오.
- 베어 메탈
- VMware
- Red Hat Virtualization
사전 요구 사항
- OpenShift Container Platform 클러스터에 로그인해야 합니다.
로컬 스토리지 운영자가 설치되어 있어야 합니다. 인프라에 적용되는 다음 절차를 사용하십시오.
-
이전 버전에서 OpenShift Container Storage 버전 4.8로 업그레이드하고
LocalVolumeDiscovery 및 LocalVolume
Set
오브젝트를 아직 생성하지 않은 경우 로컬 스토리지에서 지원하는 클러스터의 업데이트 후 구성 변경에 설명된 절차에 따라 수행합니다. - 원래 OpenShift Container StorageCluster가 생성된 것과 각 노드(예: 2TB NVMe 드라이브)에 동일한 스토리지 유형 및 크기가 연결된 세 개의 OpenShift Container Platform 작업자 노드가 있어야 합니다.
절차
용량을 추가하려면 배포 중에 프로비저닝한 스토리지 클래스 또는 필터와 일치하는 기타 스토리지 클래스를 사용할 수 있습니다.
- OpenShift 웹 콘솔에서 Operator → 설치된 Operator 를 클릭합니다.
- OpenShift Container Storage Operator를 클릭합니다.
- Storage Cluster(스토리지 클러스터 ) 탭을 클릭합니다.
- 표시된 목록에는 항목이 하나만 있어야 합니다. 맨 오른쪽에 있는 (^^)를 클릭하여 옵션 메뉴를 확장합니다.
- options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.
- 요구 사항에 따라 디스크를 추가한 스토리지 클래스 또는 새 스토리지 클래스를 선택합니다. 표시되는 사용 가능한 용량은 스토리지 클래스에서 사용 가능한 로컬 디스크를 기반으로 합니다.
추가를 클릭합니다.
스토리지 클러스터가 Ready 상태가 될 때까지 몇 분 정도 기다려야 할 수 있습니다.
검증 단계
Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.
선택한 항목에 따라 용량이 증가합니다.
참고원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.
새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.
새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
PVC 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 스토리지 → 영구 볼륨 클레임 을 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
(선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.
새 OSD 포드가 실행 중인 노드를 식별합니다.
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
예를 들면 다음과 같습니다.
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.
디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.
$ oc debug node/<node name> $ chroot /host
"lsblk"를 실행하고
ocs-deviceset
이름 옆의 "crypt" 키워드를 확인하십시오.$ lsblk
Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.
2.4. IBM Z 또는 LinuxONE 인프라의 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장
구성된 Red Hat OpenShift Container Storage 작업자 노드에 스토리지 용량 및 성능을 추가하려면 다음 절차를 사용하십시오.
사전 요구 사항
- 실행 중인 OpenShift Container Storage Platform.
- OpenShift 웹 콘솔의 관리 권한.
- 배포 중에 프로비저닝된 스토리지 클래스 이외의 스토리지 클래스를 사용하여 확장하려면 먼저 추가 스토리지 클래스를 정의합니다. 자세한 내용은 스토리지 클래스 생성을 참조하십시오.
절차
zFCP 디스크를 사용하여 하드웨어 리소스 추가
다음 명령을 사용하여 모든 디스크를 나열합니다.
$ lszdev
출력 예:
TYPE ID ON PERS NAMES zfcp-host 0.0.8204 yes yes zfcp-lun 0.0.8204:0x102107630b1b5060:0x4001402900000000 yes no sda sg0 zfcp-lun 0.0.8204:0x500407630c0b50a4:0x3002b03000000000 yes yes sdb sg1 qeth 0.0.bdd0:0.0.bdd1:0.0.bdd2 yes no encbdd0 generic-ccw 0.0.0009 yes no
SCSI 디스크는 ID 섹션에서
<device
으로 표시됩니다. 첫 번째 디스크는 운영 체제에 사용됩니다. 새 디스크의 장치 ID는 같을 수 있습니다.-id>:<wwpn>:<lun-id> 구조를 사용하여 zfcp
-lun다음 명령으로 새 SCSI 디스크를 추가합니다.
$ chzdev -e 0.0.8204:0x400506630b1b50a4:0x3001301a00000000
참고새 디스크의 장치 ID는 교체할 디스크와 동일해야 합니다. 새 디스크는 WWPN 및 LUN ID로 식별됩니다.
모든 FCP 장치를 나열하여 새 디스크가 구성되었는지 확인합니다.
$ lszdev zfcp-lun TYPE ID ON PERS NAMES zfcp-lun 0.0.8204:0x102107630b1b5060:0x4001402900000000 yes no sda sg0 zfcp-lun 0.0.8204:0x500507630b1b50a4:0x4001302a00000000 yes yes sdb sg1 zfcp-lun 0.0.8204:0x400506630b1b50a4:0x3001301a00000000 yes yes sdc sg2
- OpenShift 웹 콘솔로 이동합니다.
- 왼쪽 네비게이션 바에서 Operators (운영자)를 클릭합니다.
- 설치된 Operator 를 선택합니다.
- 창에서 OpenShift Container Storage Operator를 클릭합니다.
- 상단 네비게이션 바에서 마우스 오른쪽으로 스크롤하고 Storage(스토리지) Cluster(클러스터 ) 탭을 클릭합니다.
- 표시된 목록 옆에 있는 (^)를 클릭하여 옵션 메뉴를 확장합니다.
options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.
Raw Capacity(고유 용량 ) 필드에는 스토리지 클래스 생성 중에 설정된 크기가 표시됩니다. OpenShift Container Storage는 복제본 수를 3개 사용하므로 소비되는 총 스토리지 양은 이 양의 3배입니다.
- Add(추가 )를 클릭하고 클러스터 상태가 Ready 로 변경될 때까지 기다립니다.
검증 단계
Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 용량 분석 카드를 확인합니다.
선택한 항목에 따라 용량이 증가합니다.
참고원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.
Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.
2.5. 로컬 스토리지 장치를 사용하여 IBM Power Systems 인프라의 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장
다음 절차에 따라 IBM Power Systems 인프라에서 구성된 로컬 스토리지 기반 OpenShift Container Storage 작업자 노드에 스토리지 용량(추가 스토리지 장치)을 추가합니다.
사전 요구 사항
- RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.
로컬 스토리지 운영자가 설치되어 있어야 합니다. 다음 절차를 사용하십시오.
-
이전 버전에서 OpenShift Container Storage 4.8로 업그레이드하고
LocalVolumeDiscovery
오브젝트를 아직 생성하지 않은 경우 로컬 스토리지에서 지원하는 클러스터의 업데이트 후 구성 변경에 설명된 절차에 따라 지금 수행합니다. - 원래 OpenShift Container Storage StorageCluster와 동일한 스토리지 유형 및 크기를 사용하여 각 노드(예: 0.5TB SSD)에 연결된 세 개의 OpenShift Container Platform 작업자 노드가 있어야 합니다.
절차
OpenShift Container Storage가 설치된 OpenShift Container Platform 노드에 스토리지 용량을 추가하려면 다음을 수행해야 합니다.
추가하려는 사용 가능한 장치를 찾습니다. 즉, 작업자 노드당 최소 하나의 장치를 찾습니다. 해당 배포 가이드에서 사용 가능한 스토리지 장치를 찾는 절차는 다음과 같습니다.
참고스토리지를 추가하려는 모든 기존 노드(최소 3)에 대해 이 프로세스를 수행해야 합니다.
LocalVolume
CR(사용자 정의 리소스)에 디스크를 추가합니다.$ oc edit -n openshift-local-storage localvolume localblock
출력 예:
spec: logLevel: Normal managementState: Managed nodeSelector: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - worker-0 - worker-1 - worker-2 storageClassDevices: - devicePaths: - /dev/sda - /dev/sdx # newly added device storageClassName: localblock volumeMode: Block
CR을 편집한 후 변경 사항을 저장해야 합니다.
출력 예:
localvolume.local.storage.openshift.io/localblock edited
이 CR에서 새 장치가 추가되었음을 확인할 수 있습니다.
-
sdx
-
localVolume
CR에 사용된스토리지 클래스
이름으로 새로 생성된 PV를 표시합니다.$ oc get pv | grep localblock | grep Available
출력 예:
local-pv-a04ffd8 500Gi RWO Delete Available localblock 24s local-pv-a0ca996b 500Gi RWO Delete Available localblock 23s local-pv-c171754a 500Gi RWO Delete Available localblock 23s
- OpenShift 웹 콘솔로 이동합니다.
- 왼쪽 네비게이션 바에서 Operators (운영자)를 클릭합니다.
- 설치된 Operator 를 선택합니다.
- 창에서 OpenShift Container Storage Operator를 클릭합니다.
- 상단 네비게이션 바에서 마우스 오른쪽으로 스크롤하고 Storage(스토리지) Cluster(클러스터 ) 탭을 클릭합니다.
- 표시된 목록에는 항목이 하나만 있어야 합니다. 맨 오른쪽에 있는 (^^)를 클릭하여 옵션 메뉴를 확장합니다.
options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.
이 대화 상자에서 스토리지 클래스 이름을
localVolume
CR에 사용된 이름으로 설정합니다. 표시되는 사용 가능한 용량은 스토리지 클래스에서 사용 가능한 로컬 디스크를 기반으로 합니다.설정을 완료하고 나면 Add(추가 )를 클릭합니다.
스토리지 클러스터가 Ready 상태가 될 때까지 몇 분 정도 기다려야 할 수 있습니다.
검증 단계
Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.
선택한 항목에 따라 용량이 증가합니다.
참고원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.
새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.
새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
PVC 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 스토리지 → 영구 볼륨 클레임 을 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
(선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.
새 OSD 포드가 실행 중인 노드를 식별합니다.
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
예를 들면 다음과 같습니다.
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.
디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.
$ oc debug node/<node name> $ chroot /host
"lsblk"를 실행하고
ocs-deviceset
이름 옆의 "crypt" 키워드를 확인하십시오.$ lsblk
Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.
3장. 스토리지 용량 확장
스토리지 용량을 확장하려면 다음 단계를 수행해야 합니다.
- 새 노드 추가
- 새 노드가 성공적으로 추가되었는지 확인합니다.
- 스토리지 용량 확장
OpenShift Container Storage는 이기종 OSD 크기를 지원하지 않습니다.
3.1. 노드 추가
기존 작업자 노드가 지원되는 최대 OSD에서 이미 실행되고 있는 경우 스토리지 용량을 늘리도록 노드를 추가할 수 있습니다. 이 경우 초기 구성 중에 선택한 용량의 OSD가 3개씩 증가합니다.
배포 유형에 따라 다음 절차 중 하나를 선택하여 스토리지 노드를 추가할 수 있습니다.
- AWS 또는 Azure 또는 Red Hat Virtualization 설치 관리자 프로비저닝 인프라의 경우 설치 관리자가 프로비저닝한 인프라에 노드 추가를참조하십시오.
- AWS 또는 VMware 사용자 프로비저닝 인프라의 경우 사용자 프로비저닝 인프라에 노드 추가를참조하십시오.
- 베어 메탈, IBM Z 또는 LinuxONE, VMware 또는 Red Hat Virtualization 인프라의 경우 로컬 스토리지 장치를 사용하여 노드 추가를 참조하십시오.
- IBM Power Systems의 경우 IBM Power Systems에서 로컬 스토리지 장치를 사용하여 노드 추가를 참조하십시오. https://access.redhat.com/documentation/en-us/red_hat_openshift_container_storage/4.8/html-single/scaling_storage/index#adding-a-node-using-a-local-storage-device-power_ibm-power
3.1.1. 설치 관리자가 프로비저닝한 인프라에 노드 추가
다음 설치 프로그램이 프로비저닝된 인프라에 노드를 추가하려면 다음 절차를 사용하십시오.
- AWS
- Azure
- Red Hat Virtualization
- VMware
사전 요구 사항
- RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.
절차
- 컴퓨팅 → 머신 세트로 이동합니다.
- 노드를 추가할 머신 세트에서 시스템 개수 편집을 선택합니다.
- 노드 크기를 추가하고 Save(저장 )를 클릭합니다.
- 컴퓨팅 → 노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
OpenShift Container Storage 레이블을 새 노드에 적용합니다.
- 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집.
- cluster.ocs.openshift.io/openshift-storage 를 추가하고 Save(저장 )를 클릭합니다.
각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.
검증 단계
- 새 노드가 추가 되었는지 확인하려면 새 노드 추가 확인을 참조하십시오.
3.1.2. 사용자 프로비저닝 인프라에 노드 추가
AWS 또는 VMware 사용자 프로비저닝 인프라에 노드를 추가하려면 다음 절차를 사용하십시오.
사전 요구 사항
- RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.
절차
AWS 사용자가 프로비저닝한 인프라 또는 VMware 사용자 프로비저닝 인프라에 노드를 추가하는지에 따라 다음 단계를 수행합니다.
AWS의 경우
- 필요한 인프라를 사용하여 새 AWS 시스템 인스턴스를 생성합니다. 플랫폼 요구 사항을 참조하십시오.
- 새 AWS 머신 인스턴스를 사용하여 새 OpenShift Container Platform 노드를 생성합니다.
VMware의 경우:
- vSphere에 필요한 인프라를 사용하여 새 VM을 생성합니다. 플랫폼 요구 사항을 참조하십시오.
- 새 VM을 사용하여 새 OpenShift Container Platform 작업자 노드를 생성합니다.
Pending 상태인
OpenShift Container Storage와 관련된 CSR(인증서 서명 요청)을 확인합니다.$ oc get csr
새 노드에 필요한 모든 OpenShift Container Storage CSR을 승인합니다.
$ oc adm certificate approve <Certificate_Name>
- 컴퓨팅 → 노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
다음 중 하나를 사용하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.
- 출처: 사용자 인터페이스
- 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집을클릭합니다.
-
cluster.ocs.openshift.io/openshift-storage
를 추가하고 Save(저장 )를 클릭합니다.
- 명령줄 인터페이스의
다음 명령을 실행하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
참고각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.
검증 단계
- 새 노드가 추가 되었는지 확인하려면 새 노드 추가 확인을 참조하십시오.
3.1.3. 로컬 스토리지 장치를 사용하여 노드 추가
다음 절차에 따라 다음 노드에 노드를 추가합니다.
- 베어 메탈
- IBM Z 또는 LinuxONE
- VMware
- Red Hat Virtualization
사전 요구 사항
- RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.
- 원래 OpenShift Container Storage StorageCluster가 생성된 것과 같이 각 노드(예: 2TB SSD 또는 2TB NVMe 드라이브)에 동일한 스토리지 유형 및 크기가 연결된 세 개의 OpenShift Container Platform 작업자 노드가 있어야 합니다.
-
이전 버전에서 OpenShift Container Storage 버전 4.8로 업그레이드하고
LocalVolumeDiscovery 및 LocalVolume
Set
오브젝트를 아직 생성하지 않은 경우 로컬 스토리지에서 지원하는 클러스터의 업데이트 후 구성 변경에 설명된 절차에 따라 수행합니다.
절차
베어 메탈, IBM Power Systems, IBM Z 또는 LinuxONE, VMware 인프라 또는 Red Hat Virtualization 플랫폼에 노드를 추가하는지에 따라 다음 단계를 수행합니다.
VMware의 경우:
- vSphere에 필요한 인프라를 사용하여 새 VM을 생성합니다. 플랫폼 요구 사항을 참조하십시오.
- 새 VM을 사용하여 새 OpenShift Container Platform 작업자 노드를 생성합니다.
Red Hat Virtualization의 경우:
- 필요한 인프라를 사용하여 Red Hat Virtualization에서 새 VM 생성. 플랫폼 요구 사항을 참조하십시오.
- 새 VM을 사용하여 새 OpenShift Container Platform 작업자 노드를 생성합니다.
베어 메탈의 경우:
- 필수 인프라로 새로운 베어 메탈 시스템을 가져옵니다. 플랫폼 요구 사항을 참조하십시오.
- 새 베어 메탈 머신을 사용하여 새 OpenShift Container Platform 노드를 생성합니다.
IBM Z 또는 LinuxONE의 경우:
- 필수 인프라로 새 IBM Z 또는 LinuxONE 시스템을 가져옵니다. 플랫폼 요구 사항을 참조하십시오.
새 IBM Z 또는 LinuxONE 머신을 사용하여 새 OpenShift Container Platform 노드를 생성합니다.
Pending 상태인
OpenShift Container Storage와 관련된 CSR(인증서 서명 요청)을 확인합니다.$ oc get csr
새 노드에 필요한 모든 OpenShift Container Storage CSR을 승인합니다.
$ oc adm certificate approve <Certificate_Name>
- 컴퓨팅 → 노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
다음 중 하나를 사용하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.
- 출처: 사용자 인터페이스
- 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집을클릭합니다.
cluster.ocs.openshift.io/openshift-storage
를 추가하고 Save(저장 )를 클릭합니다.- 명령줄 인터페이스의
다음 명령을 실행하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
OpenShift 웹 콘솔에서 Operators → 설치된 Operator 를 클릭합니다.
프로젝트 드롭다운 목록에서 Local Storage Operator가 설치된 프로젝트를 선택해야 합니다.
- Local Storage (로컬 스토리지)를 클릭합니다.
- Local Volume Discovery(로컬 볼륨 검색 ) 탭을 클릭합니다.
-
LocalVolumeDiscovery
옆에 있는 Action menu(PS ) → Local Volume Discovery(로컬 볼륨 검색 편집 ) 를 클릭합니다. -
YAML에서 노드 선택기 아래
values
필드에 새 노드의 호스트 이름을 추가합니다. - 저장을 클릭합니다.
- Local Volume Sets(로컬 볼륨 세트 ) 탭을 클릭합니다.
-
LocalVolumeSet
옆의 작업 메뉴 (PS) → 로컬 볼륨 세트 편집을 클릭합니다. YAML에서 노드
선택기
아래values
필드에 새 노드의 호스트 이름을 추가합니다.그림 3.1. 새 호스트 이름의 추가 표시 YAML
- 저장을 클릭합니다.
각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.
검증 단계
- 새 노드가 추가 되었는지 확인하려면 새 노드 추가 확인을 참조하십시오.
3.1.4. IBM Power Systems에서 로컬 스토리지 장치를 사용하여 노드 추가
사전 요구 사항
- RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.
- 원래 OpenShift Container StorageCluster가 생성된 것과 동일한 스토리지 유형 및 크기가 각 노드(예: 2TB SSD 드라이브)에 연결된 세 개의 OpenShift Container Platform 작업자 노드가 있어야 합니다.
-
이전 버전의 OpenShift Container Storage에서 업그레이드하고
LocalVolumeDiscovery
오브젝트를 아직 생성하지 않은 경우 로컬 스토리지에서 지원하는 클러스터의 업데이트 후 구성 변경에 설명된 절차에 따라 지금 수행합니다.
절차
IBM Power Systems의 경우:
- 필수 인프라로 새 IBM Power 시스템 가져오기. 플랫폼 요구 사항을 참조하십시오.
새 IBM Power Systems 머신을 사용하여 새 OpenShift Container Platform 노드를 생성합니다.
Pending 상태인
OpenShift Container Storage와 관련된 CSR(인증서 서명 요청)을 확인합니다.$ oc get csr
새 노드에 필요한 모든 OpenShift Container Storage CSR을 승인합니다.
$ oc adm certificate approve <Certificate_Name>
- 컴퓨팅 → 노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
다음 중 하나를 사용하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.
- 출처: 사용자 인터페이스
- 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집을클릭합니다.
cluster.ocs.openshift.io/openshift-storage
를 추가하고 Save(저장 )를 클릭합니다.- 명령줄 인터페이스의
다음 명령을 실행하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=''
OpenShift 웹 콘솔에서 Operators → 설치된 Operator 를 클릭합니다.
프로젝트 드롭다운 목록에서 Local Storage Operator가 설치된 프로젝트를 선택해야 합니다.
- Local Storage (로컬 스토리지)를 클릭합니다.
- Local Volume Discovery(로컬 볼륨 검색 ) 탭을 클릭합니다.
-
LocalVolumeDiscovery
→ 로컬 볼륨 검색 편집 옆에 있는 작업 메뉴(kube) 를 클릭합니다. -
YAML에서 노드 선택기 아래
values
필드에 새 노드의 호스트 이름을 추가합니다. - 저장을 클릭합니다.
- Local Volume(로컬 볼륨 ) 탭을 클릭합니다.
-
LocalVolume
옆의 작업 메뉴 (PS) → 로컬 볼륨 편집을 클릭합니다. YAML에서 노드
선택기
아래values
필드에 새 노드의 호스트 이름을 추가합니다.그림 3.2. 새 호스트 이름의 추가 표시 YAML
- 저장을 클릭합니다.
각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.
검증 단계
- 새 노드가 추가 되었는지 확인하려면 새 노드 추가 확인을 참조하십시오.
3.1.5. 새 노드 추가 확인
다음 명령을 실행하고 새 노드가 출력에 있는지 확인합니다.
$ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
워크로드 → Pod 를 클릭하여 새 노드의 다음 Pod가 Running 상태인지 확인합니다.
-
csi-cephfsplugin-*
-
csi-rbdplugin-*
-
3.2. 새로 추가된 노드에 용량 추가
새로 추가된 노드에 용량을 추가하려면 Add Capacity(
용량 추가) 옵션을 사용하여 스토리지 클러스터를 3개의 OSD로 확장하거나 스토리지 클러스터를 활성화된 경우 원하는 개수만큼 스토리지 클러스터를 확장할 수 있는 유연한 확장 기능을 사용합니다.
3.2.1. 용량 추가 옵션을 사용하여 3개의 OSD로 용량을 추가합니다.
사용자 인터페이스에서 용량 추가 옵션을 사용하여 동적 및 로컬 스토리지에 대한 3 개의 OSD별로 용량을 추가하려면 용량을 추가하여 스토리지 확장을 참조하십시오. 유연한 확장 기능을 활성화하거나 포함하지 않고 스토리지 클러스터에 용량 추가 옵션을 사용할 수 있습니다.
3.2.2. YAML을 사용하여 용량 추가
유연한 확장을 사용하면 기본 3개의 OSD 세트 대신 YAML을 사용하여 한 번에 1개 이상의 OSD로 용량을 추가할 수 있습니다. 그러나 클러스터가 균형을 유지하는 방식으로 디스크를 추가해야 합니다.
유연한 확장은 스토리지 클러스터 생성의 내부 연결 모드에만 지원됩니다. 스토리지 클러스터의 유연한 확장은 Red Hat OpenShift Container Storage 4.7의 새로운 배포에만 사용할 수 있으며 업그레이드된 클러스터에는 사용할 수 없습니다.
유연한 확장을 위해 3개의 노드가 있는 클러스터를 생성하고 가용성 영역이 3개 미만인 클러스터를 생성합니다. OpenShift 웹 콘솔은 3개 미만의 가용성 영역에 분산된 3개의 노드를 감지하고 유연한 확장을 가능하게 합니다.
스토리지 클러스터를 생성한 후에는 유연한 확장 기능을 활성화하거나 비활성화할 수 없습니다.
3.2.2.1. 유연한 스케일링이 활성화되었는지 확인
스토리지 클러스터에서 유연한 확장이 활성화되어 있는지 확인하려면 다음 단계를 수행합니다.
- OpenShift Container Storage Operator를 클릭합니다.
- Storage Cluster(스토리지 클러스터 ) 탭을 클릭합니다.
- 스토리지 클러스터 옆에 있는 작업 메뉴(kube) 를 클릭합니다.
- Edit Storage Cluster (스토리지 클러스터 편집)를 클릭합니다. YAML로 리디렉션됩니다.
YAML에서
spec
섹션에서 flexibilityScaling 키를
검색하고status
섹션에서failureDomain
을 검색합니다.유연한 확장이
true이고failureDomain
이 host로 설정된 경우 유연한 확장 기능이 활성화됩니다.spec: flexibleScaling: true […] status: failureDomain: host
3.2.2.2. YAML을 사용하여 1 OSD의 배수로 용량 추가
YAML을 통해 스토리지 클러스터에 OSD를 유연하게 추가하려면 다음 단계를 수행합니다.
사전 요구 사항
- OpenShift Container Platform 웹 콘솔에 대한 관리자 액세스 권한
- 유연한 확장이 활성화된 스토리지 클러스터.
- 용량을 추가하는 데 사용 가능한 추가 디스크.
절차
- Operators → 설치된 Operator 를 클릭하여 설치된 모든 Operator를 확인합니다. 선택한 프로젝트가 openshift-storage인지 확인합니다.
- OpenShift Container Storage 운영자를 클릭합니다.
- Storage Cluster(스토리지 클러스터) 탭을 클릭합니다.
- 확장할 스토리지 클러스터 옆에 있는 작업 메뉴 (kube) 를 클릭합니다.
- Edit Storage Cluster (스토리지 클러스터 편집)를 클릭합니다. YAML로 리디렉션됩니다.
-
YAML에서 키
개수를
검색합니다. 이 count 매개변수는 용량을 확장합니다. 클러스터에 추가할 OSD 수만큼 개수를 늘립니다.
중요YAML의
count
매개변수가 사용 가능한 디스크 수에 따라 늘어나는지 확인하고 클러스터가 균형을 유지하는 방식으로 디스크를 추가합니다.- 저장을 클릭합니다.
스토리지 클러스터가 Ready 상태가 될 때까지 몇 분 정도 기다려야 할 수 있습니다.
검증 단계
Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.
선택한 항목에 따라 용량이 증가합니다.
참고원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.
새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.
새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
PVC 상태를 보려면 다음을 수행합니다.
- OpenShift 웹 콘솔에서 스토리지 → 영구 볼륨 클레임 을 클릭합니다.
-
프로젝트 드롭다운 목록에서
openshift-storage
를 선택합니다.
(선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.
새 OSD 포드가 실행 중인 노드를 식별합니다.
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
예를 들면 다음과 같습니다.
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.
디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.
$ oc debug node/<node name> $ chroot /host
"lsblk"를 실행하고
ocs-deviceset
이름 옆의 "crypt" 키워드를 확인하십시오.$ lsblk
Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.