5.4. 논리 볼륨 관리자 스토리지를 사용하는 영구 스토리지


LVM(Logical Volume Manager) 스토리지는 TopoLVM CSI 드라이버를 사용하여 단일 노드 OpenShift 클러스터에서 로컬 스토리지를 동적으로 프로비저닝합니다.

LVM Storage는 Logical Volume Manager를 사용하여 씬 프로비저닝 볼륨을 생성하고 제한된 리소스 단일 노드 OpenShift 클러스터에서 블록 스토리지의 동적 프로비저닝을 제공합니다.

LVM 스토리지를 사용하여 볼륨 그룹, PVC(영구 볼륨 클레임), 볼륨 스냅샷 및 볼륨 복제를 생성할 수 있습니다.

5.4.1. 논리 볼륨 관리자 스토리지 설치

단일 노드 OpenShift 클러스터에 LVM(Logical Volume Manager) 스토리지를 설치하고 워크로드의 스토리지를 동적으로 프로비저닝하도록 구성할 수 있습니다.

OpenShift Container Platform CLI(oc), OpenShift Container Platform 웹 콘솔 또는 RHACM(Red Hat Advanced Cluster Management)을 사용하여 단일 노드 OpenShift 클러스터에 LVM 스토리지를 배포할 수 있습니다.

5.4.1.1. LVM 스토리지를 설치하기 위한 사전 요구 사항

LVM 스토리지를 설치하기 위한 전제 조건은 다음과 같습니다.

  • 최소 10밀리CPU 및 100MiB의 RAM이 있는지 확인합니다.
  • 모든 관리 클러스터에 스토리지를 프로비저닝하는 데 사용되는 전용 디스크가 있는지 확인합니다. LVM 스토리지는 비어 있고 파일 시스템 서명이 포함되지 않은 디스크만 사용합니다. 디스크가 비어 있고 파일 시스템 서명을 포함하지 않도록 하려면 디스크를 사용하기 전에 초기화하십시오.
  • 이전 LVM 스토리지 설치에서 구성한 스토리지 장치를 재사용할 수 있는 개인 CI 환경에 LVM 스토리지를 설치하기 전에 사용하지 않는 디스크를 지웁니다. LVM 스토리지를 설치하기 전에 디스크를 지우지 않으면 수동 조작 없이 디스크를 재사용할 수 없습니다.

    참고

    사용 중인 디스크를 초기화할 수 없습니다.

  • RHACM(Red Hat Advanced Cluster Management)을 사용하여 LVM 스토리지를 설치하려면 OpenShift Container Platform 클러스터에 RHACM을 설치해야 합니다. RHACM을 사용하여 LVM 스토리지 설치 섹션을 참조하십시오.

5.4.1.2. OpenShift Container Platform 웹 콘솔을 사용하여 LVM 스토리지 설치

Red Hat OpenShift Container Platform OperatorHub를 사용하여 LVM 스토리지를 설치할 수 있습니다.

사전 요구 사항

  • 단일 노드 OpenShift 클러스터에 액세스할 수 있습니다.
  • cluster-admin 및 Operator 설치 권한이 있는 계정을 사용하고 있습니다.

절차

  1. OpenShift Container Platform 웹 콘솔에 로그인합니다.
  2. Operators OperatorHub를 클릭합니다.
  3. 스크롤하거나 키워드로 필터링 상자에 LVM 스토리지 를 입력하여 LVM 스토리지를 찾습니다.
  4. 설치를 클릭합니다.
  5. Operator 설치 페이지에서 다음 옵션을 설정합니다.

    1. stable-4.12채널을 업데이트합니다.
    2. 클러스터의 특정 네임스페이스로 설치 모드 입니다.
    3. Operator 권장 네임스페이스 openshift-storage로 네임스페이스 가 설치되어 있습니다. openshift-storage 네임스페이스가 없으면 Operator 설치 중에 생성됩니다.
    4. 자동 또는 수동으로의 승인 전략 .

      자동 업데이트를 선택하면 OLM(Operator Lifecycle Manager)은 개입 없이 Operator의 실행 중인 인스턴스를 자동으로 업그레이드합니다.

      수동 업데이트를 선택하면 OLM에서 업데이트 요청을 생성합니다. 클러스터 관리자는 Operator를 최신 버전으로 업데이트하기 위해 해당 업데이트 요청을 수동으로 승인해야 합니다.

  6. 설치를 클릭합니다.

검증 단계

  • LVM Storage에 성공적으로 설치를 나타내는 녹색 눈금이 표시되는지 확인합니다.

5.4.1.3. RHACM을 사용한 LVM 스토리지 설치

LVM Storage는 RHACM(Red Hat Advanced Cluster Management)을 사용하여 단일 노드 OpenShift 클러스터에 배포됩니다. PlacementRule 리소스에 지정된 선택기와 일치하는 관리 클러스터에 Operator를 배포하고 구성하는 RHACM에 정책 오브젝트를 생성합니다. 이 정책은 나중에 가져오고 배치 규칙을 충족하는 클러스터에도 적용됩니다.

사전 요구 사항

  • cluster-admin 및 Operator 설치 권한이 있는 계정을 사용하여 RHACM 클러스터에 액세스할 수 있습니다.
  • LVM 스토리지에서 사용할 각 단일 노드 OpenShift 클러스터의 전용 디스크입니다.
  • 단일 노드 OpenShift 클러스터는 RHACM에서 가져오거나 생성해야 합니다.

절차

  1. OpenShift Container Platform 인증 정보를 사용하여 RHACM CLI에 로그인합니다.
  2. 정책을 생성할 네임스페이스를 생성합니다.

    # oc create ns lvms-policy-ns
  3. 정책을 생성하려면 다음 YAML을 policy-lvms-operator.yaml 과 같은 이름으로 파일에 저장합니다.

    apiVersion: apps.open-cluster-management.io/v1
    kind: PlacementRule
    metadata:
      name: placement-install-lvms
    spec:
      clusterConditions:
      - status: "True"
        type: ManagedClusterConditionAvailable
      clusterSelector: 
    1
    
        matchExpressions:
        - key: mykey
          operator: In
          values:
          - myvalue
    ---
    apiVersion: policy.open-cluster-management.io/v1
    kind: PlacementBinding
    metadata:
      name: binding-install-lvms
    placementRef:
      apiGroup: apps.open-cluster-management.io
      kind: PlacementRule
      name: placement-install-lvms
    subjects:
    - apiGroup: policy.open-cluster-management.io
      kind: Policy
      name: install-lvms
    ---
    apiVersion: policy.open-cluster-management.io/v1
    kind: Policy
    metadata:
      annotations:
        policy.open-cluster-management.io/categories: CM Configuration Management
        policy.open-cluster-management.io/controls: CM-2 Baseline Configuration
        policy.open-cluster-management.io/standards: NIST SP 800-53
      name: install-lvms
    spec:
      disabled: false
      remediationAction: enforce
      policy-templates:
      - objectDefinition:
          apiVersion: policy.open-cluster-management.io/v1
          kind: ConfigurationPolicy
          metadata:
            name: install-lvms
          spec:
            object-templates:
            - complianceType: musthave
              objectDefinition:
                apiVersion: v1
                kind: Namespace
                metadata:
                  labels:
                    openshift.io/cluster-monitoring: "true"
                    pod-security.kubernetes.io/enforce: privileged
                    pod-security.kubernetes.io/audit: privileged
                    pod-security.kubernetes.io/warn: privileged
                  name: openshift-storage
            - complianceType: musthave
              objectDefinition:
                apiVersion: operators.coreos.com/v1
                kind: OperatorGroup
                metadata:
                  name: openshift-storage-operatorgroup
                  namespace: openshift-storage
                spec:
                  targetNamespaces:
                  - openshift-storage
            - complianceType: musthave
              objectDefinition:
                apiVersion: operators.coreos.com/v1alpha1
                kind: Subscription
                metadata:
                  name: lvms
                  namespace: openshift-storage
                spec:
                  installPlanApproval: Automatic
                  name: lvms-operator
                  source: redhat-operators
                  sourceNamespace: openshift-marketplace
            remediationAction: enforce
            severity: low
      - objectDefinition:
          apiVersion: policy.open-cluster-management.io/v1
          kind: ConfigurationPolicy
          metadata:
            name: lvms
          spec:
            object-templates:
               - complianceType: musthave
                 objectDefinition:
                   apiVersion: lvm.topolvm.io/v1alpha1
                   kind: LVMCluster
                   metadata:
                     name: my-lvmcluster
                     namespace: openshift-storage
                   spec:
                     storage:
                       deviceClasses:
                       - name: vg1
                         deviceSelector: 
    2
    
                           paths:
                           - /dev/disk/by-path/pci-0000:87:00.0-nvme-1
                           - /dev/disk/by-path/pci-0000:88:00.0-nvme-1
                         thinPoolConfig:
                           name: thin-pool-1
                           sizePercent: 90
                           overprovisionRatio: 10
                         nodeSelector: 
    3
    
                           nodeSelectorTerms:
                           - matchExpressions:
                               - key: app
                                 operator: In
                                 values:
                                 - test1
            remediationAction: enforce
            severity: low
    1
    LVM Storage를 설치하려는 단일 노드 OpenShift 클러스터에 설정된 라벨과 일치하도록 PlacementRule.spec.clusterSelector 의 키와 값을 바꿉니다.
    2
    볼륨 그룹을 기본 디스크로 제어하거나 제한하려면 LVMCluster YAML의 deviceSelector 섹션에 디스크의 로컬 경로를 수동으로 지정할 수 있습니다.
    3
    추가 작업자 노드의 하위 집합인 노드 필터를 추가하려면 nodeSelector 섹션에서 필요한 필터를 지정합니다. LVM Storage는 새 노드가 표시될 때 추가 작업자 노드를 감지하고 사용합니다.
    중요

    nodeSelector 노드 필터 일치는 Pod 레이블 일치와 동일하지 않습니다.

  4. 다음 명령을 실행하여 네임스페이스에 정책을 생성합니다.

    # oc create -f policy-lvms-operator.yaml -n lvms-policy-ns 
    1
    1
    policy-lvms-operator.yaml 은 정책이 저장되는 파일의 이름입니다.

    이렇게 하면 lvms-policy-ns 네임스페이스에 Policy, PlacementRule, PlacementBinding 오브젝트가 생성됩니다. 이 정책은 배치 규칙과 일치하는 클러스터에 Namespace,OperatorGroup,Subscription, LVMCluster 리소스를 생성합니다. 그러면 선택 기준과 일치하는 단일 노드 OpenShift 클러스터에 Operator가 배포되고 스토리지를 프로비저닝하는 데 필요한 리소스를 설정하도록 구성합니다. Operator는 LVMCluster CR에 지정된 모든 디스크를 사용합니다. 디스크가 지정되지 않은 경우 Operator는 단일 노드 OpenShift 노드에서 사용되지 않는 디스크를 모두 사용합니다.

    중요

    장치를 LVMCluster 에 추가한 후에는 제거할 수 없습니다.

5.4.1.4. LVM 스토리지에 사용되는 장치의 크기를 구성하는 제한 사항

LVM 스토리지를 사용하여 스토리지를 프로비저닝하는 데 사용할 수 있는 장치의 크기를 구성하는 제한 사항은 다음과 같습니다.

  • 프로비저닝할 수 있는 총 스토리지 크기는 기본 LVM(Logical Volume Manager) 씬 풀의 크기와 초과 프로비저닝 요인으로 제한됩니다.
  • 논리 볼륨의 크기는 PE(물리 확장 영역) 및 논리 확장 영역(LE)의 크기에 따라 다릅니다.

    • 물리 및 논리 장치 생성 중에 PE 및 LE의 크기를 정의할 수 있습니다.
    • 기본 PE 및 LE 크기는 4MB입니다.
    • PE 크기가 증가하면 커널 제한 및 디스크 공간에 따라 LVM의 최대 크기가 결정됩니다.
Expand
표 5.1. 기본 PE 및 LE 크기를 사용하는 다양한 아키텍처의 크기 제한
아키텍처RHEL 6RHEL 7RHEL 8RHEL 9

32비트

16 TB

-

-

-

64비트

8 EB [1]

100 TB [2]

8 EB [1]

500 TB [2]

8 EB

8 EB

  1. 중간 크기.
  2. 테스트된 크기.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

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

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동