Scaling storage

Red Hat OpenShift Container Storage 4.8

수평 및 수직 확장 옵션

초록

이 문서에서는 Red Hat OpenShift Container Storage의 옵션 확장에 대해 설명합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.

Red Hat 문서에 관한 피드백 제공

문서 개선을 위한 의견을 보내 주십시오. Red Hat이 이를 개선하는 방법을 알려 주십시오. 피드백을 제공하려면 다음을 수행하십시오.

  • 특정 문구에 대한 간단한 주석은 다음과 같습니다.

    1. 문서가 Multi-page HTML 형식으로 표시되는지 확인합니다. 또한 문서 오른쪽 상단에 Feedback (피드백) 버튼이 있는지 확인합니다.
    2. 마우스 커서를 사용하여 주석 처리하려는 텍스트 부분을 강조 표시합니다.
    3. 강조 표시된 텍스트 아래에 표시되는 피드백 추가 팝업을 클릭합니다.
    4. 표시된 지침을 따릅니다.
  • 보다 상세하게 피드백을 제출하려면 다음과 같이 Bugzilla 티켓을 생성하십시오.

    1. Bugzilla 웹 사이트로 이동하십시오.
    2. 구성 요소 섹션에서 문서 를 선택합니다.
    3. Description 필드에 문서 개선을 위한 제안 사항을 기입하십시오. 관련된 문서의 해당 부분 링크를 알려주십시오.
    4. 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장. 스토리지 용량 확장

배포 유형에 따라 다음 절차 중 하나를 선택하여 스토리지 용량을 확장할 수 있습니다.

배포 중에 프로비저닝된 스토리지 클래스 이외의 스토리지 클래스를 사용하여 확장하려면 확장하기 전에 추가 스토리지 클래스도 정의해야 합니다. 자세한 내용은 스토리지 클래스 생성을 참조하십시오.

참고

OpenShift Container Storage는 이기종 OSD 크기를 지원하지 않습니다.

2.1. 스토리지 클래스 생성

새 스토리지 클래스를 정의하여 기존 프로바이더에서 스토리지를 동적으로 프로비저닝할 수 있습니다.

사전 요구 사항

  • OpenShift 웹 콘솔에 대한 관리자 액세스.

절차

  1. OpenShift 웹 콘솔에 로그인합니다.
  2. 스토리지스토리지 클래스를 클릭합니다.
  3. 스토리지 클래스 생성을 클릭합니다.
  4. 스토리지 클래스 Name (이름) 및 Description (설명)을 입력합니다.
  5. 필수 회수 정책배포 프로그램을 선택합니다.
  6. Create(만들기 )를 클릭하여 스토리지 클래스를 만듭니다.

검증 단계

  • 스토리지스토리지 클래스를 클릭하고 새 스토리지 클래스를 볼 수 있는지 확인합니다.

2.2. OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장

다음 인프라에서 구성된 Red Hat OpenShift Container Storage 작업자 노드에 스토리지 용량 및 성능을 추가하려면 다음 절차를 사용하십시오.

  • AWS
  • VMware vSphere
  • Red Hat Virtualization
  • Microsoft Azure

사전 요구 사항

  • 실행 중인 OpenShift Container Storage Platform.
  • OpenShift 웹 콘솔의 관리 권한.
  • 배포 중에 프로비저닝된 스토리지 클래스 이외의 스토리지 클래스를 사용하여 확장하려면 먼저 추가 스토리지 클래스를 정의합니다. 자세한 내용은 스토리지 클래스 생성을 참조하십시오.

절차

  1. OpenShift 웹 콘솔에 로그인합니다.
  2. Operators → 설치된 Operator를 클릭합니다.
  3. OpenShift Container Storage Operator를 클릭합니다.
  4. Storage Cluster(스토리지 클러스터 ) 탭을 클릭합니다.
  5. 표시된 목록에는 항목이 하나만 있어야 합니다. 맨 오른쪽에 있는 (^^)를 클릭하여 옵션 메뉴를 확장합니다.
  6. options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.
  7. 스토리지 클래스를 선택합니다.

    배포 중에 생성된 기본 스토리지 클래스를 사용하는 경우 AWS에서 스토리지 클래스를 gp2, VMware의 thin, Red Hat Virtualization의 ovirt-csi-sc 또는 Microsoft Azure의 managed_premium 으로 설정합니다. 다른 스토리지 클래스를 생성한 경우 적합한 중 하나를 선택합니다.

    중요

    공급자의 기본값 이외의 스토리지 클래스를 사용하는 것은 기술 프리뷰 기능입니다.

    기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

    자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

    Raw Capacity(고유 용량 ) 필드에는 스토리지 클래스 생성 중에 설정된 크기가 표시됩니다. OpenShift Container Storage는 복제본 수를 3개 사용하므로 소비되는 총 스토리지 양은 이 양의 3배입니다.

  8. Add(추가 )를 클릭하고 클러스터 상태가 Ready 로 변경될 때까지 기다립니다.

검증 단계

  • Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.

    선택한 항목에 따라 용량이 증가합니다.

    참고

    원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.

  • 새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.

    • 새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
    • PVC 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 스토리지영구 볼륨 클레임 을 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
  • (선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.

    1. 새 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
    2. 이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.

      1. 디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.

        $ oc debug node/<node name>
        $ chroot /host
      2. "lsblk"를 실행하고 ocs-deviceset 이름 옆의 "crypt" 키워드를 확인하십시오.

        $ lsblk
중요

Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.

2.3. 로컬 스토리지 장치를 사용하여 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장

다음 인프라에서 구성된 로컬 스토리지 기반 OpenShift Container Storage 작업자 노드에 스토리지 용량(추가 스토리지 장치)을 추가하려면 다음 절차를 사용하십시오.

  • 베어 메탈
  • VMware
  • Red Hat Virtualization

사전 요구 사항

절차

용량을 추가하려면 배포 중에 프로비저닝한 스토리지 클래스 또는 필터와 일치하는 기타 스토리지 클래스를 사용할 수 있습니다.

  1. OpenShift 웹 콘솔에서 Operator → 설치된 Operator 를 클릭합니다.
  2. OpenShift Container Storage Operator를 클릭합니다.
  3. Storage Cluster(스토리지 클러스터 ) 탭을 클릭합니다.
  4. 표시된 목록에는 항목이 하나만 있어야 합니다. 맨 오른쪽에 있는 (^^)를 클릭하여 옵션 메뉴를 확장합니다.
  5. options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.
  6. 요구 사항에 따라 디스크를 추가한 스토리지 클래스 또는 새 스토리지 클래스를 선택합니다. 표시되는 사용 가능한 용량은 스토리지 클래스에서 사용 가능한 로컬 디스크를 기반으로 합니다.
  7. 추가를 클릭합니다.

    스토리지 클러스터가 Ready 상태가 될 때까지 몇 분 정도 기다려야 할 수 있습니다.

검증 단계

  • Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.

    선택한 항목에 따라 용량이 증가합니다.

    참고

    원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.

  • 새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.

    • 새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
    • PVC 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 스토리지영구 볼륨 클레임 을 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
  • (선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.

    1. 새 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
    2. 이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.

      1. 디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.

        $ oc debug node/<node name>
        $ chroot /host
      2. "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 웹 콘솔의 관리 권한.
  • 배포 중에 프로비저닝된 스토리지 클래스 이외의 스토리지 클래스를 사용하여 확장하려면 먼저 추가 스토리지 클래스를 정의합니다. 자세한 내용은 스토리지 클래스 생성을 참조하십시오.

절차

  1. zFCP 디스크를 사용하여 하드웨어 리소스 추가

    1. 다음 명령을 사용하여 모든 디스크를 나열합니다.

      $ 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>:<wwpn>:<lun-id> 구조를 사용하여 zfcp -lun 으로 표시됩니다. 첫 번째 디스크는 운영 체제에 사용됩니다. 새 디스크의 장치 ID는 같을 수 있습니다.

    2. 다음 명령으로 새 SCSI 디스크를 추가합니다.

      $ chzdev -e 0.0.8204:0x400506630b1b50a4:0x3001301a00000000
      참고

      새 디스크의 장치 ID는 교체할 디스크와 동일해야 합니다. 새 디스크는 WWPN 및 LUN ID로 식별됩니다.

    3. 모든 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
  2. OpenShift 웹 콘솔로 이동합니다.
  3. 왼쪽 네비게이션 바에서 Operators (운영자)를 클릭합니다.
  4. 설치된 Operator 를 선택합니다.
  5. 창에서 OpenShift Container Storage Operator를 클릭합니다.
  6. 상단 네비게이션 바에서 마우스 오른쪽으로 스크롤하고 Storage(스토리지) Cluster(클러스터 ) 탭을 클릭합니다.
  7. 표시된 목록 옆에 있는 (^)를 클릭하여 옵션 메뉴를 확장합니다.
  8. options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.

    Raw Capacity(고유 용량 ) 필드에는 스토리지 클래스 생성 중에 설정된 크기가 표시됩니다. OpenShift Container Storage는 복제본 수를 3개 사용하므로 소비되는 총 스토리지 양은 이 양의 3배입니다.

  9. Add(추가 )를 클릭하고 클러스터 상태가 Ready 로 변경될 때까지 기다립니다.

검증 단계

  1. Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 용량 분석 카드를 확인합니다.

    선택한 항목에 따라 용량이 증가합니다.

    참고

    원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.

중요

Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.

2.5. 로컬 스토리지 장치를 사용하여 IBM Power Systems 인프라의 OpenShift Container Storage 노드에 용량을 추가하여 스토리지 확장

다음 절차에 따라 IBM Power Systems 인프라에서 구성된 로컬 스토리지 기반 OpenShift Container Storage 작업자 노드에 스토리지 용량(추가 스토리지 장치)을 추가합니다.

사전 요구 사항

절차

  1. OpenShift Container Storage가 설치된 OpenShift Container Platform 노드에 스토리지 용량을 추가하려면 다음을 수행해야 합니다.

    1. 추가하려는 사용 가능한 장치를 찾습니다. 즉, 작업자 노드당 최소 하나의 장치를 찾습니다. 해당 배포 가이드에서 사용 가능한 스토리지 장치를 찾는 절차는 다음과 같습니다.

      참고

      스토리지를 추가하려는 모든 기존 노드(최소 3)에 대해 이 프로세스를 수행해야 합니다.

    2. 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
  2. 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
  3. OpenShift 웹 콘솔로 이동합니다.
  4. 왼쪽 네비게이션 바에서 Operators (운영자)를 클릭합니다.
  5. 설치된 Operator 를 선택합니다.
  6. 창에서 OpenShift Container Storage Operator를 클릭합니다.
  7. 상단 네비게이션 바에서 마우스 오른쪽으로 스크롤하고 Storage(스토리지) Cluster(클러스터 ) 탭을 클릭합니다.
  8. 표시된 목록에는 항목이 하나만 있어야 합니다. 맨 오른쪽에 있는 (^^)를 클릭하여 옵션 메뉴를 확장합니다.
  9. options(옵션) 메뉴에서 Add Capacity (용량 추가)를 선택합니다.

    이 대화 상자에서 스토리지 클래스 이름을 localVolume CR에 사용된 이름으로 설정합니다. 표시되는 사용 가능한 용량은 스토리지 클래스에서 사용 가능한 로컬 디스크를 기반으로 합니다.

  10. 설정을 완료하고 나면 Add(추가 )를 클릭합니다.

    스토리지 클러스터가 Ready 상태가 될 때까지 몇 분 정도 기다려야 할 수 있습니다.

검증 단계

  • Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.

    선택한 항목에 따라 용량이 증가합니다.

    참고

    원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.

  • 새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.

    • 새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
    • PVC 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 스토리지영구 볼륨 클레임 을 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
  • (선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.

    1. 새 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
    2. 이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.

      1. 디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.

        $ oc debug node/<node name>
        $ chroot /host
      2. "lsblk"를 실행하고 ocs-deviceset 이름 옆의 "crypt" 키워드를 확인하십시오.

        $ lsblk
중요

Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.

3장. 스토리지 용량 확장

스토리지 용량을 확장하려면 다음 단계를 수행해야 합니다.

  • 새 노드 추가
  • 새 노드가 성공적으로 추가되었는지 확인합니다.
  • 스토리지 용량 확장
참고

OpenShift Container Storage는 이기종 OSD 크기를 지원하지 않습니다.

3.1. 노드 추가

기존 작업자 노드가 지원되는 최대 OSD에서 이미 실행되고 있는 경우 스토리지 용량을 늘리도록 노드를 추가할 수 있습니다. 이 경우 초기 구성 중에 선택한 용량의 OSD가 3개씩 증가합니다.

배포 유형에 따라 다음 절차 중 하나를 선택하여 스토리지 노드를 추가할 수 있습니다.

3.1.1. 설치 관리자가 프로비저닝한 인프라에 노드 추가

다음 설치 프로그램이 프로비저닝된 인프라에 노드를 추가하려면 다음 절차를 사용하십시오.

  • AWS
  • Azure
  • Red Hat Virtualization
  • VMware

사전 요구 사항

  • RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.

절차

  1. 컴퓨팅머신 세트로 이동합니다.
  2. 노드를 추가할 머신 세트에서 시스템 개수 편집을 선택합니다.
  3. 노드 크기를 추가하고 Save(저장 )를 클릭합니다.
  4. 컴퓨팅노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
  5. OpenShift Container Storage 레이블을 새 노드에 적용합니다.

    1. 새 노드의 경우 작업 메뉴 (PS)레이블 편집.
    2. cluster.ocs.openshift.io/openshift-storage 를 추가하고 Save(저장 )를 클릭합니다.
참고

각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.

검증 단계

3.1.2. 사용자 프로비저닝 인프라에 노드 추가

AWS 또는 VMware 사용자 프로비저닝 인프라에 노드를 추가하려면 다음 절차를 사용하십시오.

사전 요구 사항

  • RHOCP(OpenShift Container Platform) 클러스터에 로그인해야 합니다.

절차

  1. AWS 사용자가 프로비저닝한 인프라 또는 VMware 사용자 프로비저닝 인프라에 노드를 추가하는지에 따라 다음 단계를 수행합니다.

    • AWS의 경우

      1. 필요한 인프라를 사용하여 새 AWS 시스템 인스턴스를 생성합니다. 플랫폼 요구 사항을 참조하십시오.
      2. 새 AWS 머신 인스턴스를 사용하여 새 OpenShift Container Platform 노드를 생성합니다.
    • VMware의 경우:

      1. vSphere에 필요한 인프라를 사용하여 새 VM을 생성합니다. 플랫폼 요구 사항을 참조하십시오.
      2. 새 VM을 사용하여 새 OpenShift Container Platform 작업자 노드를 생성합니다.
  2. Pending 상태인 OpenShift Container Storage와 관련된 CSR(인증서 서명 요청)을 확인합니다.

    $ oc get csr
  3. 새 노드에 필요한 모든 OpenShift Container Storage CSR을 승인합니다.

    $ oc adm certificate approve <Certificate_Name>
  4. 컴퓨팅노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
  5. 다음 중 하나를 사용하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.

    출처: 사용자 인터페이스
    1. 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집을클릭합니다.
    2. 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

사전 요구 사항

절차

  1. 베어 메탈, IBM Power Systems, IBM Z 또는 LinuxONE, VMware 인프라 또는 Red Hat Virtualization 플랫폼에 노드를 추가하는지에 따라 다음 단계를 수행합니다.

    • VMware의 경우:

      1. vSphere에 필요한 인프라를 사용하여 새 VM을 생성합니다. 플랫폼 요구 사항을 참조하십시오.
      2. 새 VM을 사용하여 새 OpenShift Container Platform 작업자 노드를 생성합니다.
    • Red Hat Virtualization의 경우:

      1. 필요한 인프라를 사용하여 Red Hat Virtualization에서 새 VM 생성. 플랫폼 요구 사항을 참조하십시오.
      2. 새 VM을 사용하여 새 OpenShift Container Platform 작업자 노드를 생성합니다.
    • 베어 메탈의 경우:

      1. 필수 인프라로 새로운 베어 메탈 시스템을 가져옵니다. 플랫폼 요구 사항을 참조하십시오.
      2. 새 베어 메탈 머신을 사용하여 새 OpenShift Container Platform 노드를 생성합니다.
  • IBM Z 또는 LinuxONE의 경우:

    1. 필수 인프라로 새 IBM Z 또는 LinuxONE 시스템을 가져옵니다. 플랫폼 요구 사항을 참조하십시오.
    2. 새 IBM Z 또는 LinuxONE 머신을 사용하여 새 OpenShift Container Platform 노드를 생성합니다.

      1. Pending 상태인 OpenShift Container Storage와 관련된 CSR(인증서 서명 요청)을 확인합니다.

        $ oc get csr
      2. 새 노드에 필요한 모든 OpenShift Container Storage CSR을 승인합니다.

        $ oc adm certificate approve <Certificate_Name>
      3. 컴퓨팅노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
      4. 다음 중 하나를 사용하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.

        출처: 사용자 인터페이스
    3. 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집을클릭합니다.
    4. cluster.ocs.openshift.io/openshift-storage 를 추가하고 Save(저장 )를 클릭합니다.

      명령줄 인터페이스의
  • 다음 명령을 실행하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.

    $ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
    1. OpenShift 웹 콘솔에서 Operators설치된 Operator 를 클릭합니다.

      프로젝트 드롭다운 목록에서 Local Storage Operator가 설치된 프로젝트를 선택해야 합니다.

    2. Local Storage (로컬 스토리지)를 클릭합니다.
    3. Local Volume Discovery(로컬 볼륨 검색 ) 탭을 클릭합니다.
    4. LocalVolumeDiscovery 옆에 있는 Action menu(PS ) → Local Volume Discovery(로컬 볼륨 검색 편집 ) 를 클릭합니다.
    5. YAML에서 노드 선택기 아래 values 필드에 새 노드의 호스트 이름을 추가합니다.
    6. 저장을 클릭합니다.
    7. Local Volume Sets(로컬 볼륨 세트 ) 탭을 클릭합니다.
    8. LocalVolumeSet 옆의 작업 메뉴 (PS)로컬 볼륨 세트 편집을 클릭합니다.
    9. YAML에서 노드 선택기 아래 values 필드에 새 노드의 호스트 이름을 추가합니다.

      그림 3.1. 새 호스트 이름의 추가 표시 YAML

      새 호스트 이름의 추가를 보여주는 YAML 스크린샷입니다.
    10. 저장을 클릭합니다.
참고

각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.

검증 단계

3.1.4. IBM Power Systems에서 로컬 스토리지 장치를 사용하여 노드 추가

사전 요구 사항

절차

  • IBM Power Systems의 경우:

    1. 필수 인프라로 새 IBM Power 시스템 가져오기. 플랫폼 요구 사항을 참조하십시오.
    2. 새 IBM Power Systems 머신을 사용하여 새 OpenShift Container Platform 노드를 생성합니다.

      1. Pending 상태인 OpenShift Container Storage와 관련된 CSR(인증서 서명 요청)을 확인합니다.

        $ oc get csr
      2. 새 노드에 필요한 모든 OpenShift Container Storage CSR을 승인합니다.

        $ oc adm certificate approve <Certificate_Name>
      3. 컴퓨팅노드를 클릭하고 새 노드가 Ready 상태인지 확인합니다.
      4. 다음 중 하나를 사용하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.

        출처: 사용자 인터페이스
    3. 새 노드의 경우 작업 메뉴 (PS) → 레이블 편집을클릭합니다.
    4. cluster.ocs.openshift.io/openshift-storage 를 추가하고 Save(저장 )를 클릭합니다.

      명령줄 인터페이스의
  • 다음 명령을 실행하여 OpenShift Container Storage 레이블을 새 노드에 적용합니다.

    $ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=''
    1. OpenShift 웹 콘솔에서 Operators설치된 Operator 를 클릭합니다.

      프로젝트 드롭다운 목록에서 Local Storage Operator가 설치된 프로젝트를 선택해야 합니다.

    2. Local Storage (로컬 스토리지)를 클릭합니다.
    3. Local Volume Discovery(로컬 볼륨 검색 ) 탭을 클릭합니다.
    4. LocalVolumeDiscovery → 로컬 볼륨 검색 편집 옆에 있는 작업 메뉴(kube) 를 클릭합니다.
    5. YAML에서 노드 선택기 아래 values 필드에 새 노드의 호스트 이름을 추가합니다.
    6. 저장을 클릭합니다.
    7. Local Volume(로컬 볼륨 ) 탭을 클릭합니다.
    8. LocalVolume 옆의 작업 메뉴 (PS)로컬 볼륨 편집을 클릭합니다.
    9. YAML에서 노드 선택기 아래 values 필드에 새 노드의 호스트 이름을 추가합니다.

      그림 3.2. 새 호스트 이름의 추가 표시 YAML

      새 호스트 이름의 추가를 보여주는 YAML 스크린샷입니다.
    10. 저장을 클릭합니다.
참고

각각 다른 영역에 하나씩 3 개의 노드를 추가하는 것이 좋습니다. 노드 3개를 추가하고 모든 노드에 대해 이 절차를 수행해야 합니다.

검증 단계

3.1.5. 새 노드 추가 확인

  1. 다음 명령을 실행하고 새 노드가 출력에 있는지 확인합니다.

    $ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
  2. 워크로드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. 유연한 스케일링이 활성화되었는지 확인

스토리지 클러스터에서 유연한 확장이 활성화되어 있는지 확인하려면 다음 단계를 수행합니다.

  1. OpenShift Container Storage Operator를 클릭합니다.
  2. Storage Cluster(스토리지 클러스터 ) 탭을 클릭합니다.
  3. 스토리지 클러스터 옆에 있는 작업 메뉴(kube) 를 클릭합니다.
  4. Edit Storage Cluster (스토리지 클러스터 편집)를 클릭합니다. YAML로 리디렉션됩니다.
  5. YAML에서 spec 섹션에서 flexibility Scaling 키를 검색하고 status 섹션에서 failureDomain 을 검색합니다. 유연한 확장이 true이고 failureDomain 이 host로 설정된 경우 유연한 확장 기능이 활성화됩니다.

    spec:
    flexibleScaling: true
    […]
    status:
    failureDomain: host

3.2.2.2. YAML을 사용하여 1 OSD의 배수로 용량 추가

YAML을 통해 스토리지 클러스터에 OSD를 유연하게 추가하려면 다음 단계를 수행합니다.

사전 요구 사항

  • OpenShift Container Platform 웹 콘솔에 대한 관리자 액세스 권한
  • 유연한 확장이 활성화된 스토리지 클러스터.
  • 용량을 추가하는 데 사용 가능한 추가 디스크.

절차

  1. Operators설치된 Operator 를 클릭하여 설치된 모든 Operator를 확인합니다. 선택한 프로젝트가 openshift-storage인지 확인합니다.
  2. OpenShift Container Storage 운영자를 클릭합니다.
  3. Storage Cluster(스토리지 클러스터) 탭을 클릭합니다.
  4. 확장할 스토리지 클러스터 옆에 있는 작업 메뉴 (kube) 를 클릭합니다.
  5. Edit Storage Cluster (스토리지 클러스터 편집)를 클릭합니다. YAML로 리디렉션됩니다.
  6. YAML에서 키 개수를 검색합니다. 이 count 매개변수는 용량을 확장합니다.
  7. 클러스터에 추가할 OSD 수만큼 개수를 늘립니다.

    중요

    YAML의 count 매개변수가 사용 가능한 디스크 수에 따라 늘어나는지 확인하고 클러스터가 균형을 유지하는 방식으로 디스크를 추가합니다.

  8. 저장을 클릭합니다.

스토리지 클러스터가 Ready 상태가 될 때까지 몇 분 정도 기다려야 할 수 있습니다.

검증 단계

  • Overview → Block and File(개요 → 블록 및 파일 ) 탭으로 이동한 다음 Raw Capacity breakdown 카드를 확인합니다.

    선택한 항목에 따라 용량이 증가합니다.

    참고

    원시 용량은 복제를 고려하지 않고 전체 용량을 보여줍니다.

  • 새 OSD와 해당 새 PVC가 생성되었는지 확인합니다.

    • 새로 생성된 OSD의 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 워크로드 → 포드를 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
    • PVC 상태를 보려면 다음을 수행합니다.

      1. OpenShift 웹 콘솔에서 스토리지영구 볼륨 클레임 을 클릭합니다.
      2. 프로젝트 드롭다운 목록에서 openshift-storage 를 선택합니다.
  • (선택 사항) 클러스터에서 클러스터 전체 암호화가 활성화된 경우 새 OSD 장치가 암호화되었는지 확인합니다.

    1. 새 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
    2. 이전 단계에서 식별된 각 노드에 대해 다음을 수행합니다.

      1. 디버그 포드를 만들고 선택한 호스트에 대해 chroot 환경을 엽니다.

        $ oc debug node/<node name>
        $ chroot /host
      2. "lsblk"를 실행하고 ocs-deviceset 이름 옆의 "crypt" 키워드를 확인하십시오.

        $ lsblk
중요

Red Hat 지원 팀의 지원 만 통해 클러스터 감소가 지원됩니다.