6.11.5. PVC를 사용하여 울트라 디스크가 있는 머신을 배포하는 머신 세트


Azure에서 실행되는 머신 세트를 생성하여 울트라 디스크가 있는 머신을 배포할 수 있습니다. Ultra 디스크는 가장 까다로운 데이터 워크로드에 사용하기 위한 고성능 스토리지입니다.

in-tree 플러그인과 CSI 드라이버는 모두 PVC를 사용하여 울트라 디스크를 활성화합니다. PVC를 생성하지 않고 울트라 디스크가 있는 머신을 데이터 디스크로 배포할 수도 있습니다.

6.11.5.1. 머신 세트를 사용하여 울트라 디스크가 있는 머신 생성

머신 세트 YAML 파일을 편집하여 Azure에 울트라 디스크가 있는 머신을 배포할 수 있습니다.

사전 요구 사항

  • 기존 Microsoft Azure 클러스터가 있어야 합니다.

절차

  1. 기존 Azure MachineSet CR(사용자 정의 리소스)을 복사하고 다음 명령을 실행하여 편집합니다.

    $ oc edit machineset <machine_set_name>

    여기서 <machine_set_name >은 울트라 디스크가 있는 머신을 프로비저닝하려는 머신 세트입니다.

  2. 표시된 위치에 다음 행을 추가합니다.

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    spec:
      template:
        spec:
          metadata:
            labels:
              disk: ultrassd 
    1
    
          providerSpec:
            value:
              ultraSSDCapability: Enabled 
    2
    1
    이 머신 세트에서 생성한 노드를 선택하는 데 사용할 라벨을 지정합니다. 이 절차에서는 이 값에 disk.ultrassd 를 사용합니다.
    2
    이 라인은 울트라 디스크를 사용할 수 있습니다.
  3. 다음 명령을 실행하여 업데이트된 구성을 사용하여 머신 세트를 생성합니다.

    $ oc create -f <machine_set_name>.yaml
  4. 다음 YAML 정의가 포함된 스토리지 클래스를 생성합니다.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: ultra-disk-sc 
    1
    
    parameters:
      cachingMode: None
      diskIopsReadWrite: "2000" 
    2
    
      diskMbpsReadWrite: "320" 
    3
    
      kind: managed
      skuname: UltraSSD_LRS
    provisioner: disk.csi.azure.com 
    4
    
    reclaimPolicy: Delete
    volumeBindingMode: WaitForFirstConsumer 
    5
    1
    스토리지 클래스의 이름을 지정합니다. 이 절차에서는 이 값에 Ultra-disk-sc 를 사용합니다.
    2
    스토리지 클래스의 IOPS 수를 지정합니다.
    3
    스토리지 클래스의 처리량(MBps)을 지정합니다.
    4
    AKS(Azure Kubernetes Service) 버전 1.21 이상의 경우 disk.csi.azure.com 을 사용합니다. 이전 버전의 AKS의 경우 kubernetes.io/azure-disk 를 사용합니다.
    5
    선택 사항: 디스크를 사용할 Pod 생성을 기다리려면 이 매개변수를 지정합니다.
  5. 다음 YAML 정의가 포함된 Ultra-disk-sc 스토리지 클래스를 참조하는 PVC(영구 볼륨 클레임)를 생성합니다.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: ultra-disk 
    1
    
    spec:
      accessModes:
      - ReadWriteOnce
      storageClassName: ultra-disk-sc 
    2
    
      resources:
        requests:
          storage: 4Gi 
    3
    1
    PVC 이름을 지정합니다. 이 절차에서는 이 값에 Ultra-disk 를 사용합니다.
    2
    이 PVC는 Ultra-disk-sc 스토리지 클래스를 참조합니다.
    3
    스토리지 클래스의 크기를 지정합니다. 최소 값은 4Gi 입니다.
  6. 다음 YAML 정의가 포함된 Pod를 생성합니다.

    apiVersion: v1
    kind: Pod
    metadata:
      name: nginx-ultra
    spec:
      nodeSelector:
        disk: ultrassd 
    1
    
      containers:
      - name: nginx-ultra
        image: alpine:latest
        command:
          - "sleep"
          - "infinity"
        volumeMounts:
        - mountPath: "/mnt/azure"
          name: volume
      volumes:
        - name: volume
          persistentVolumeClaim:
            claimName: ultra-disk 
    2
    1
    울트라 디스크를 사용할 수 있는 머신 세트의 레이블을 지정합니다. 이 절차에서는 이 값에 disk.ultrassd 를 사용합니다.
    2
    이 Pod는 Ultra-disk PVC를 참조합니다.

검증

  1. 다음 명령을 실행하여 머신이 생성되었는지 확인합니다.

    $ oc get machines

    시스템은 Running 상태여야 합니다.

  2. 실행 중이고 노드가 연결된 시스템의 경우 다음 명령을 실행하여 파티션을 검증합니다.

    $ oc debug node/<node_name> -- chroot /host lsblk

    이 명령에서 oc debug node/<node_name >은 노드 < node_name >에서 디버깅 쉘을 시작하고 -- --로 명령을 전달합니다. 전달된 명령 chroot /host 는 기본 호스트 OS 바이너리에 대한 액세스를 제공하며 lsblk 에는 호스트 OS 시스템에 연결된 블록 장치가 표시됩니다.

다음 단계

  • Pod 내에서 울트라 디스크를 사용하려면 마운트 지점을 사용하는 워크로드를 생성합니다. 다음 예와 유사한 YAML 파일을 생성합니다.

    apiVersion: v1
    kind: Pod
    metadata:
      name: ssd-benchmark1
    spec:
      containers:
      - name: ssd-benchmark1
        image: nginx
        ports:
          - containerPort: 80
            name: "http-server"
        volumeMounts:
        - name: lun0p1
          mountPath: "/tmp"
      volumes:
        - name: lun0p1
          hostPath:
            path: /var/lib/lun0p1
            type: DirectoryOrCreate
      nodeSelector:
        disktype: ultrassd
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

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

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

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

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동