4.10.6. 로컬 스토리지 장치에 대한 검색 및 프로비저닝 자동화

로컬 스토리지 Operator는 로컬 스토리지 검색 및 프로비저닝을 자동화합니다. 이 기능을 사용하면 배포 중에 연결된 장치가 있는 베어 메탈, VMware 또는 AWS 스토어 인스턴스와 같이 동적 프로비저닝을 사용할 수 없는 경우 설치를 단순화할 수 있습니다.

중요

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

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.

다음 절차에 따라 로컬 장치를 자동으로 검색하고 선택한 장치에 대한 로컬 볼륨을 자동으로 프로비저닝하십시오.

주의

LocalVolumeSet 오브젝트를 주의해서 사용합니다. 로컬 디스크에서 PV(영구 볼륨)를 자동으로 프로비저닝하면 로컬 PV에서 일치하는 모든 장치를 클레임할 수 있습니다. LocalVolumeSet 오브젝트를 사용하는 경우 Local Storage Operator가 노드에서 로컬 장치를 관리하는 유일한 엔터티인지 확인합니다.

사전 요구 사항

  • 클러스터 관리자 권한이 있어야 합니다.
  • Local Storage Operator가 설치되어 있습니다.
  • OpenShift Container Platform 노드에 로컬 디스크가 연결되어 있습니다.
  • OpenShift Container Platform 웹 콘솔과 oc 명령줄 인터페이스(CLI)에 액세스할 수 있습니다.

절차

  1. 웹 콘솔에서 로컬 장치를 자동으로 검색할 수 있도록 하려면 다음을 수행합니다.

    1. 관리자Operator설치된 Operator로 이동하여 로컬 볼륨 검색 탭을 클릭합니다.
    2. 로컬 볼륨 검색 만들기를 클릭합니다.
    3. 모든 또는 특정 노드에서 사용 가능한 디스크를 검색할지의 여부에 따라 모든 노드 또는 노드 선택을 선택합니다.

      참고

      모든 노드 또는 노드 선택을 사용하여 필터링하는지의 여부와 관계없이 작업자 노드만 사용할 수 있습니다.

    4. Create를 클릭합니다.

이름이 auto-discover-devices인 로컬 볼륨 검색 인스턴스가 표시됩니다.

  1. 노드에 사용 가능한 장치 목록을 표시하려면 다음을 수행합니다.

    1. OpenShift Container Platform 웹 콘솔에 로그인합니다.
    2. 컴퓨팅노드로 이동합니다.
    3. 열기를 원하는 노드 이름을 클릭합니다. "노드 세부 정보" 페이지가 표시됩니다.
    4. 선택한 장치 목록을 표시하려면 디스크 탭을 선택합니다.

      로컬 디스크가 추가되거나 제거되면 장치 목록이 지속적으로 업데이트됩니다. 장치를 이름, 상태, 유형, 모델, 용량 및 모드로 필터링할 수 있습니다.

  2. 웹 콘솔에서 발견된 장치에 대한 로컬 볼륨을 자동으로 프로비저닝하려면 다음을 수행합니다.

    1. Operator설치된 Operator로 이동하고 Operator 목록에서 로컬 스토리지를 선택합니다.
    2. 로컬 볼륨 세트로컬 볼륨 세트 만들기를 선택합니다.
    3. 볼륨 세트 이름과 스토리지 클래스 이름을 입력합니다.
    4. 그에 따라 필터를 적용하려면 모든 노드 또는 노드 선택을 선택합니다.

      참고

      모든 노드 또는 노드 선택을 사용하여 필터링하는지의 여부와 관계없이 작업자 노드만 사용할 수 있습니다.

    5. 로컬 볼륨 세트에 적용할 디스크 유형, 모드, 크기 및 제한을 선택하고 만들기를 클릭합니다.

      몇 분 후에 “Operator 조정됨”을 나타내는 메시지가 표시됩니다.

  1. 대신 CLI에서 검색된 장치에 대한 로컬 볼륨을 프로비저닝하려면 다음을 수행합니다.

    1. 다음 예와 같이 local-volume-set.yaml과 같은 로컬 볼륨 세트를 정의하는 오브젝트 YAML 파일을 생성합니다.

      apiVersion: local.storage.openshift.io/v1alpha1
      kind: LocalVolumeSet
      metadata:
        name: example-autodetect
      spec:
        nodeSelector:
          nodeSelectorTerms:
            - matchExpressions:
                - key: kubernetes.io/hostname
                  operator: In
                  values:
                    - worker-0
                    - worker-1
        storageClassName: example-storageclass 1
        volumeMode: Filesystem
        fsType: ext4
        maxDeviceCount: 10
        deviceInclusionSpec:
          deviceTypes: 2
            - disk
            - part
          deviceMechanicalProperties:
            - NonRotational
          minSize: 10G
          maxSize: 100G
          models:
            - SAMSUNG
            - Crucial_CT525MX3
          vendors:
            - ATA
            - ST2000LM
      1
      검색된 장치에서 프로비저닝된 영구 볼륨에 대해 생성된 스토리지 클래스를 결정합니다.
      2
      로컬 볼륨 세트 기능을 사용할 때 Local Storage Operator는 논리 볼륨 관리(LVM) 장치 사용을 지원하지 않습니다.
    2. 로컬 볼륨 세트 오브젝트를 생성합니다.

      $ oc apply -f local-volume-set.yaml
    3. 로컬 영구 볼륨이 스토리지 클래스를 기반으로 동적으로 프로비저닝되었는지 확인합니다.

      $ oc get pv

      출력 예

      NAME                CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS      CLAIM   STORAGECLASS           REASON   AGE
      local-pv-1cec77cf   100Gi      RWO            Delete           Available           example-storageclass            88m
      local-pv-2ef7cd2a   100Gi      RWO            Delete           Available           example-storageclass            82m
      local-pv-3fa1c73    100Gi      RWO            Delete           Available           example-storageclass            48m

참고

결과는 노드에서 제거된 후 삭제됩니다. 심볼릭 링크는 수동으로 제거해야 합니다.