6장. DAS(Dynamic Accelerator Slicer) Operator


중요

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

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

Dynamic Accelerator Slicer(DAS) Operator를 사용하면 노드가 부팅될 때 정의된 정적으로 분할된 GPU를 사용하는 대신 OpenShift Container Platform에서 GPU 액셀러레이터를 동적으로 분할할 수 있습니다. 이를 통해 특정 워크로드 요구 사항에 따라 GPU를 동적으로 분할하여 리소스 활용도를 높일 수 있습니다.

동적 분할은 클러스터의 모든 노드에서 미리 필요한 모든 액셀러레이터 파티션을 모르는 경우 유용합니다.

DAS Operator에는 현재 NVIDIA MG(Multi-Instance GPU)에 대한 참조 구현이 포함되어 있으며 향후 다른 공급업체의 NVIDIA MPS 또는 GPU와 같은 추가 기술을 지원하도록 설계되었습니다.

제한

Dynamic Accelerator Slicer Operator를 사용하는 경우 다음과 같은 제한 사항이 적용됩니다.

  • 잠재적인 비호환성을 파악하고 다양한 GPU 드라이버 및 운영 체제에서 시스템이 원활하게 작동하는지 확인해야 합니다.
  • Operator는 H100 및 A100과 같은 특정 NSXG 호환 NVIDIA GPU 및 드라이버에서만 작동합니다.
  • Operator는 노드의 GPU 서브 세트만 사용할 수 없습니다.
  • NVIDIA 장치 플러그인은 Dynamic Accelerator Slicer Operator와 함께 사용하여 클러스터의 GPU 리소스를 관리할 수 없습니다.
참고

DAS Operator는MIG 지원 GPU에서 작동하도록 설계되었습니다. 이는 전체 GPU 대신MIG 슬라이스를 할당합니다. DAS Operator를 설치하면 전체 GPU를 할당하는 nvidia.com/gpu: "1" 과 같은 NVIDIA 장치 플러그인을 통해 표준 리소스 요청을 사용할 수 없습니다.

6.1. Dynamic Accelerator Slicer Operator 설치

클러스터 관리자는 OpenShift Container Platform 웹 콘솔 또는 OpenShift CLI를 사용하여 DAS(Dynamic Accelerator Slicer) Operator를 설치할 수 있습니다.

6.1.1. 웹 콘솔을 사용하여 Dynamic Accelerator Slicer Operator 설치

클러스터 관리자는 OpenShift Container Platform 웹 콘솔을 사용하여 DAS(Dynamic Accelerator Slicer) Operator를 설치할 수 있습니다.

사전 요구 사항

  • cluster-admin 권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.
  • 필요한 사전 요구 사항을 설치했습니다.

    • cert-manager Operator for Red Hat OpenShift
    • NFD(Node Feature Discovery) Operator
    • NVIDIA GPU Operator
    • NodeFeatureDiscovery CR

프로세스

  1. HMAC 지원을 위해 NVIDIA GPU Operator를 구성합니다.

    1. OpenShift Container Platform 웹 콘솔에서 Ecosystem Installed Operators 로 이동합니다.
    2. 설치된 Operator 목록에서 NVIDIA GPU Operator 를 선택합니다.
    3. ClusterPolicy 탭을 클릭한 다음 Create ClusterPolicy 를 클릭합니다.
    4. YAML 편집기에서 기본 콘텐츠를 다음 클러스터 정책 구성으로 교체하여 기본 NVIDIA 장치 플러그인을 비활성화하고>-<G 지원을 활성화합니다.

      apiVersion: nvidia.com/v1
      kind: ClusterPolicy
      metadata:
        name: gpu-cluster-policy
      spec:
        daemonsets:
          rollingUpdate:
            maxUnavailable: "1"
          updateStrategy: RollingUpdate
        dcgm:
          enabled: true
        dcgmExporter:
          config:
            name: ""
          enabled: true
          serviceMonitor:
            enabled: true
        devicePlugin:
          config:
            default: ""
            name: ""
          enabled: false
          mps:
            root: /run/nvidia/mps
        driver:
          certConfig:
            name: ""
          enabled: true
          kernelModuleConfig:
            name: ""
          licensingConfig:
            configMapName: ""
            nlsEnabled: true
          repoConfig:
            configMapName: ""
          upgradePolicy:
            autoUpgrade: true
            drain:
              deleteEmptyDir: false
              enable: false
              force: false
              timeoutSeconds: 300
            maxParallelUpgrades: 1
            maxUnavailable: 25%
            podDeletion:
              deleteEmptyDir: false
              force: false
              timeoutSeconds: 300
            waitForCompletion:
              timeoutSeconds: 0
          useNvidiaDriverCRD: false
          useOpenKernelModules: false
          virtualTopology:
            config: ""
        gdrcopy:
          enabled: false
        gds:
          enabled: false
        gfd:
          enabled: true
        mig:
          strategy: mixed
        migManager:
          config:
            default: ""
            name: default-mig-parted-config
          enabled: true
          env:
            - name: WITH_REBOOT
              value: 'true'
            - name: MIG_PARTED_MODE_CHANGE_ONLY
              value: 'true'
        nodeStatusExporter:
          enabled: true
        operator:
          defaultRuntime: crio
          initContainer: {}
          runtimeClass: nvidia
          use_ocp_driver_toolkit: true
        sandboxDevicePlugin:
          enabled: true
        sandboxWorkloads:
          defaultWorkload: container
          enabled: false
        toolkit:
          enabled: true
          installDir: /usr/local/nvidia
        validator:
          plugin:
            env:
            - name: WITH_WORKLOAD
              value: "false"
          cuda:
            env:
            - name: WITH_WORKLOAD
              value: "false"
        vfioManager:
          enabled: true
        vgpuDeviceManager:
          enabled: true
        vgpuManager:
          enabled: false
      Copy to Clipboard Toggle word wrap
    5. 생성 을 클릭하여 클러스터 정책을 적용합니다.
    6. 워크로드 Pod 로 이동하여 nvidia-gpu-operator 네임스페이스를 선택하여 클러스터 정책 배포를 모니터링합니다.
    7. NVIDIA GPU Operator 클러스터 정책이 Ready 상태가 될 때까지 기다립니다. 다음을 통해 이를 모니터링할 수 있습니다.

      1. 에코시스템 설치된 Operator → NVIDIA GPU Operator 로 이동합니다.
      2. ClusterPolicy 탭을 클릭하고 상태가 ready 인지 확인합니다.
    8. nvidia-gpu-operator 네임스페이스를 선택하고 워크로드 Pod로 이동하여 NVIDIA GPU Operator 네임스페이스의 모든 Pod 가 실행 중인지 확인합니다.
    9. MIG 지원 GPU가 있는 노드에 레이블을 지정하여MIG 모드를 활성화합니다.

      1. 컴퓨팅 노드로 이동합니다.
      2. MIG 가능 GPU가 있는 노드를 선택합니다.
      3. 작업 라벨 편집을 클릭합니다.
      4. nvidia.com/mig.config=all-enabled 레이블을 추가합니다.
      5. 저장을 클릭합니다.
      6. CheG 가능 GPU를 사용하여 각 노드에 대해 반복합니다.

        중요

        MIG 레이블을 적용하면 레이블이 지정된 노드가 재부팅되어 HMACG 모드를 활성화합니다. 계속하기 전에 노드가 다시 온라인 상태가 될 때까지 기다립니다.

    10. nvidia.com/mig.config=all-enabled 레이블이 Labels 섹션에 표시되는지 확인하여 GPU 노드에서 NSXG 모드가 성공적으로 활성화되었는지 확인합니다. 레이블을 찾으려면 컴퓨팅 → 노드로 이동하여 GPU 노드를 선택하고 세부 정보 탭을 클릭합니다.
  2. OpenShift Container Platform 웹 콘솔에서 에코시스템 소프트웨어 카탈로그 를 클릭합니다.
  3. 필터 상자에서 Dynamic Accelerator Slicer 또는 DAS 를 검색하여 DAS Operator를 찾습니다.
  4. Dynamic Accelerator Slicer 를 선택하고 설치를 클릭합니다.
  5. Operator 설치 페이지에서 다음을 수행합니다.

    1. 설치 모드에서 모든 네임스페이스(기본값) 를 선택합니다.
    2. 설치된 네임스페이스 Operator 권장 네임스페이스: 프로젝트 das-operator를 선택합니다.
    3. 새 네임스페이스를 생성하는 경우 네임스페이스 이름으로 das-operator 를 입력합니다.
    4. 업데이트 채널을 선택합니다.
    5. 승인 전략으로 자동 또는 수동 을 선택합니다.
  6. 설치를 클릭합니다.
  7. OpenShift Container Platform 웹 콘솔에서 에코시스템 설치된 Operator 를 클릭합니다.
  8. 목록에서 DAS Operator 를 선택합니다.
  9. 제공된 API 테이블 열에서 DASOperator 를 클릭합니다. 그러면 Operator 세부 정보 페이지의 DASOperator 탭으로 이동합니다.
  10. DASOperator 생성을 클릭합니다. 그러면 DASOperator YAML 보기가 표시됩니다.
  11. YAML 편집기에서 다음 예제를 붙여넣습니다.

    DASOperator CR의 예

    apiVersion: inference.redhat.com/v1alpha1
    kind: DASOperator
    metadata:
      name: cluster 
    1
    
      namespace: das-operator
    spec:
      logLevel: Normal
      operatorLogLevel: Normal
      managementState: Managed
    Copy to Clipboard Toggle word wrap

    1
    DASOperator CR의 이름은 cluster 여야 합니다.
  12. 생성을 클릭합니다.

검증

DAS Operator가 성공적으로 설치되었는지 확인하려면 다음을 수행하십시오.

  1. 에코시스템 설치된 Operator 페이지로 이동합니다.
  2. Dynamic Accelerator Slicerdas-operator 네임스페이스에 성공 상태로 나열되어 있는지 확인합니다.

DASOperator CR이 성공적으로 설치되었는지 확인하려면 다음을 수행하십시오.

  • DASOperator CR을 생성한 후 웹 콘솔에서 DASOperator 목록 보기로 이동합니다. CR의 Status 필드는 모든 구성 요소가 실행 중일 때 Available 로 변경됩니다.
  • 선택 사항입니다. OpenShift CLI에서 다음 명령을 실행하여 DASOperator CR이 성공적으로 설치되었는지 확인할 수 있습니다.

    $ oc get dasoperator -n das-operator
    Copy to Clipboard Toggle word wrap

    출력 예

    NAME     	STATUS    	AGE
    cluster  	Available	3m
    Copy to Clipboard Toggle word wrap

참고

설치 중에 Operator는 실패 상태를 표시할 수 있습니다. 나중에 Succeeded 메시지와 함께 설치에 성공하면 실패 메시지를 무시할 수 있습니다.

Pod를 확인하여 설치를 확인할 수도 있습니다.

  1. 워크로드 Pod 페이지로 이동하여 das-operator 네임스페이스를 선택합니다.
  2. 모든 DAS Operator 구성 요소 Pod가 실행 중인지 확인합니다.

    • DAS-operator Pod (main Operator Controller)
    • DAS-operator-webhook Pod (webhook 서버)
    • DAS-scheduler Pod(scheduler 플러그인)
    • DAS-daemonset Pod(MIG 호환 GPU가 있는 노드에서만)
참고

das-daemonset Pod는 rpcG 호환 GPU 하드웨어가 있는 노드에만 표시됩니다. daemonset Pod가 표시되지 않는 경우 클러스터에 지원되는 GPU 하드웨어가 있고 NVIDIA GPU Operator가 올바르게 구성되었는지 확인합니다.

문제 해결

Operator가 설치되지 않은 경우 다음 절차를 사용하십시오.

  1. 에코시스템 설치된 Operator 페이지로 이동하여 Operator 서브스크립션설치 계획 탭의 상태에 장애 또는 오류가 있는지 검사합니다.
  2. 워크로드 Pod 페이지로 이동하여 das-operator 네임스페이스에서 Pod 로그를 확인합니다.

6.1.2. CLI를 사용하여 Dynamic Accelerator Slicer Operator 설치

클러스터 관리자는 OpenShift CLI를 사용하여 DAS(Dynamic Accelerator Slicer) Operator를 설치할 수 있습니다.

사전 요구 사항

  • cluster-admin 권한이 있는 계정을 사용하여 OpenShift Container Platform 클러스터에 액세스할 수 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • 필요한 사전 요구 사항을 설치했습니다.

    • cert-manager Operator for Red Hat OpenShift
    • NFD(Node Feature Discovery) Operator
    • NVIDIA GPU Operator
    • NodeFeatureDiscovery CR

프로세스

  1. HMAC 지원을 위해 NVIDIA GPU Operator를 구성합니다.

    1. 다음 클러스터 정책을 적용하여 기본 NVIDIA 장치 플러그인을 비활성화하고MIG 지원을 활성화합니다. 다음 콘텐츠를 사용하여 gpu-cluster-policy.yaml 이라는 파일을 생성합니다.

      apiVersion: nvidia.com/v1
      kind: ClusterPolicy
      metadata:
        name: gpu-cluster-policy
      spec:
        daemonsets:
          rollingUpdate:
            maxUnavailable: "1"
          updateStrategy: RollingUpdate
        dcgm:
          enabled: true
        dcgmExporter:
          config:
            name: ""
          enabled: true
          serviceMonitor:
            enabled: true
        devicePlugin:
          config:
            default: ""
            name: ""
          enabled: false
          mps:
            root: /run/nvidia/mps
        driver:
          certConfig:
            name: ""
          enabled: true
          kernelModuleConfig:
            name: ""
          licensingConfig:
            configMapName: ""
            nlsEnabled: true
          repoConfig:
            configMapName: ""
          upgradePolicy:
            autoUpgrade: true
            drain:
              deleteEmptyDir: false
              enable: false
              force: false
              timeoutSeconds: 300
            maxParallelUpgrades: 1
            maxUnavailable: 25%
            podDeletion:
              deleteEmptyDir: false
              force: false
              timeoutSeconds: 300
            waitForCompletion:
              timeoutSeconds: 0
          useNvidiaDriverCRD: false
          useOpenKernelModules: false
          virtualTopology:
            config: ""
        gdrcopy:
          enabled: false
        gds:
          enabled: false
        gfd:
          enabled: true
        mig:
          strategy: mixed
        migManager:
          config:
            default: ""
            name: default-mig-parted-config
          enabled: true
          env:
            - name: WITH_REBOOT
              value: 'true'
            - name: MIG_PARTED_MODE_CHANGE_ONLY
              value: 'true'
        nodeStatusExporter:
          enabled: true
        operator:
          defaultRuntime: crio
          initContainer: {}
          runtimeClass: nvidia
          use_ocp_driver_toolkit: true
        sandboxDevicePlugin:
          enabled: true
        sandboxWorkloads:
          defaultWorkload: container
          enabled: false
        toolkit:
          enabled: true
          installDir: /usr/local/nvidia
        validator:
          plugin:
            env:
            - name: WITH_WORKLOAD
              value: "false"
          cuda:
            env:
            - name: WITH_WORKLOAD
              value: "false"
        vfioManager:
          enabled: true
        vgpuDeviceManager:
          enabled: true
        vgpuManager:
          enabled: false
      Copy to Clipboard Toggle word wrap
    2. 다음 명령을 실행하여 클러스터 정책을 적용합니다.

      $ oc apply -f gpu-cluster-policy.yaml
      Copy to Clipboard Toggle word wrap
    3. 다음 명령을 실행하여 NVIDIA GPU Operator 클러스터 정책이 Ready 상태에 도달하는지 확인합니다.

      $ oc get clusterpolicies.nvidia.com gpu-cluster-policy -w
      Copy to Clipboard Toggle word wrap

      STATUS 열에 준비 상태가 표시될 때까지 기다립니다.

      출력 예

      NAME                 STATUS   AGE
      gpu-cluster-policy   ready    2025-08-14T08:56:45Z
      Copy to Clipboard Toggle word wrap

    4. 다음 명령을 실행하여 NVIDIA GPU Operator 네임스페이스의 모든 Pod가 실행 중인지 확인합니다.

      $ oc get pods -n nvidia-gpu-operator
      Copy to Clipboard Toggle word wrap

      모든 Pod에 Running 또는 Completed 상태가 표시되어야 합니다.

    5. 다음 명령을 실행하여MIG 지원 GPU가 있는 노드에 레이블을 지정하여MIG 모드를 활성화합니다.

      $ oc label node $NODE_NAME nvidia.com/mig.config=all-enabled --overwrite
      Copy to Clipboard Toggle word wrap

      $NODE_NAME 을>-<G 가능 GPU가 있는 각 노드의 이름으로 바꿉니다.

      중요

      MIG 레이블을 적용한 후 레이블이 지정된 노드가 재부팅되어>-<G 모드를 활성화합니다. 계속하기 전에 노드가 다시 온라인 상태가 될 때까지 기다립니다.

    6. 다음 명령을 실행하여 노드가MIG 모드를 성공적으로 활성화했는지 확인합니다.

      $ oc get nodes -l nvidia.com/mig.config=all-enabled
      Copy to Clipboard Toggle word wrap
  2. DAS Operator의 네임스페이스를 생성합니다.

    1. das-operator 네임스페이스를 정의하는 다음 Namespace CR(사용자 정의 리소스)을 생성하고 YAML을 das-namespace.yaml 파일에 저장합니다.

      apiVersion: v1
      kind: Namespace
      metadata:
        name: das-operator
        labels:
          name: das-operator
          openshift.io/cluster-monitoring: "true"
      Copy to Clipboard Toggle word wrap
    2. 다음 명령을 실행하여 네임스페이스를 생성합니다.

      $ oc create -f das-namespace.yaml
      Copy to Clipboard Toggle word wrap
  3. 다음 오브젝트를 생성하여 이전 단계에서 생성한 네임스페이스에 DAS Operator를 설치합니다.

    1. 다음 OperatorGroup CR을 생성하고 YAML을 das-operatorgroup.yaml 파일에 저장합니다.

      apiVersion: operators.coreos.com/v1
      kind: OperatorGroup
      metadata:
        generateName: das-operator-
        name: das-operator
        namespace: das-operator
      Copy to Clipboard Toggle word wrap
    2. 다음 명령을 실행하여 OperatorGroup CR을 생성합니다.

      $ oc create -f das-operatorgroup.yaml
      Copy to Clipboard Toggle word wrap
    3. 다음 Subscription CR을 생성하고 YAML을 das-sub.yaml 파일에 저장합니다.

      서브스크립션의 예

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: das-operator
        namespace: das-operator
      spec:
        channel: "stable"
        installPlanApproval: Automatic
        name: das-operator
        source: redhat-operators
        sourceNamespace: openshift-marketplace
      Copy to Clipboard Toggle word wrap

    4. 다음 명령을 실행하여 서브스크립션 오브젝트를 생성합니다.

      $ oc create -f das-sub.yaml
      Copy to Clipboard Toggle word wrap
    5. das-operator 프로젝트로 변경합니다.

      $ oc project das-operator
      Copy to Clipboard Toggle word wrap
    6. 다음 DASOperator CR을 생성하고 YAML을 das-dasoperator.yaml 파일에 저장합니다.

      DASOperator CR의 예

      apiVersion: inference.redhat.com/v1alpha1
      kind: DASOperator
      metadata:
        name: cluster 
      1
      
        namespace: das-operator
      spec:
        managementState: Managed
        logLevel: Normal
        operatorLogLevel: Normal
      Copy to Clipboard Toggle word wrap

      1
      DASOperator CR의 이름은 cluster 여야 합니다.
    7. 다음 명령을 실행하여 dasoperator CR을 생성합니다.

      oc create -f das-dasoperator.yaml
      Copy to Clipboard Toggle word wrap

검증

  • 다음 명령을 실행하여 Operator 배포가 성공했는지 확인합니다.

    $ oc get pods
    Copy to Clipboard Toggle word wrap

    출력 예

    NAME                                    READY   STATUS    RESTARTS   AGE
    das-daemonset-6rsfd                     1/1     Running   0          5m16s
    das-daemonset-8qzgf                     1/1     Running   0          5m16s
    das-operator-5946478b47-cjfcp           1/1     Running   0          5m18s
    das-operator-5946478b47-npwmn           1/1     Running   0          5m18s
    das-operator-webhook-59949d4f85-5n9qt   1/1     Running   0          68s
    das-operator-webhook-59949d4f85-nbtdl   1/1     Running   0          68s
    das-scheduler-6cc59dbf96-4r85f          1/1     Running   0          68s
    das-scheduler-6cc59dbf96-bf6ml          1/1     Running   0          68s
    Copy to Clipboard Toggle word wrap

    배포에 성공하면 Running 상태의 모든 포드가 표시됩니다. 배포에는 다음이 포함됩니다.

    das-operator
    기본 Operator 컨트롤러 Pod
    das-operator-webhook
    Pod 요청 변경을 위한 Webhook 서버 Pod
    das-scheduler
    MIG 슬라이스 할당을 위한 스케줄러 플러그인 Pod
    das-daemonset

    MIG 호환 GPU가 있는 노드에서만 실행되는 DaemonSet Pod

    참고

    das-daemonset Pod는>-<G 호환 GPU 하드웨어가 있는 노드에만 표시됩니다. daemonset Pod가 표시되지 않는 경우 클러스터에 지원되는 GPU 하드웨어가 있고 NVIDIA GPU Operator가 올바르게 구성되었는지 확인합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat