Citrix Hypervisor

스토리지 저장소 관리

중요:

Citrix Hypervisor 8.2 누적 업데이트 1은 2025년 6월 25일에 수명이 종료됩니다. 원활한 전환과 지속적인 지원을 위해 지금 XenServer 8로의 업그레이드를 계획하십시오. 자세한 내용은 업그레이드.

Citrix Virtual Apps and Desktops 라이센스 파일을 사용하여 Citrix Hypervisor 8.2 누적 업데이트 1 호스트에 라이센스를 부여하는 경우 이러한 라이센스 파일은 XenServer 8과 호환되지 않습니다. 업그레이드하기 전에 XenServer 8에서 사용할 XenServer Premium Edition 소켓 라이센스 파일을 얻어야 합니다. 이러한 소켓 라이센스 파일은 Citrix 워크로드를 실행하기 위한 Citrix for Private Cloud, Citrix Universal Hybrid Multi-Cloud, Citrix Universal MSP 및 Citrix Platform License 구독의 자격으로 사용할 수 있습니다. 아직 이러한 새로운 서브스크립션으로 전환하지 않은 Citrix 고객은 XenServer Premium Edition 소켓 라이센스 10,000개에 대한 무료 프로모션에 참여를 요청할 수 있습니다. 자세한 내용은 XenServer 서버.

업그레이드하기 전에 XenServer 8에 대한 호환 라이센스를 얻지 못한 경우 호스트를 업그레이드할 때 90일 평가판으로 되돌아갑니다. 평가판은 Premium Edition과 동일한 기능을 제공하지만 몇 가지 제한 사항이 있습니다. 자세한 내용은 XenServer 8 라이센스 개요.

이 섹션에서는 스토리지 저장소 유형을 만들고 Citrix Hypervisor 서버에서 사용할 수 있도록 하는 방법에 대해 설명합니다. 또한 라이브 VDI 마이그레이션을 포함하여 SR(스토리지 저장소)의 지속적인 관리에 필요한 다양한 작업을 다룹니다.

스토리지 리포지토리 만들기

이 섹션에서는 다양한 유형의 SR (스토리지 저장소) 을 만들고 Citrix Hypervisor 서버에서 사용할 수 있도록 하는 방법을 설명합니다. 제공된 예에서는 xe CLI를 사용하여 SR을 생성하는 방법을 다룹니다. 사용에 대한 자세한 내용은 새 스토리지 저장소 XenCenter를 사용하여 SR을 추가하는 마법사는 XenCenter 설명서.

메모:

lvmext 유형의 로컬 SR은 xe CLI를 사용해서만 생성할 수 있습니다. 생성 후에는 XenCenter 또는 xe CLI를 통해 모든 SR 유형을 관리할 수 있습니다.

CLI를 사용하여 호스트에서 사용할 스토리지 저장소를 생성하는 두 가지 기본 단계가 있습니다.

  1. SR 유형을 프로브하여 필요한 매개변수에 대한 값을 확인합니다.

  2. SR을 생성하여 SR 개체 및 관련 PBD 개체를 초기화하고, PBD를 연결하고, SR을 활성화합니다.

이러한 단계는 생성되는 SR 유형에 따라 세부적으로 다릅니다. 모든 예에서, sr-create 명령은 성공하면 생성된 SR의 UUID를 반환합니다.

SR은 다음과 같을 수 있습니다. 파괴 더 이상 사용하지 않을 때 물리적 장치를 확보합니다. SR은 다음과 같을 수도 있습니다. 잊혀진 을 클릭하여 한 Citrix Hypervisor 서버에서 SR을 분리하여 다른 서버에 연결합니다. 자세한 내용은 SR 제거 다음 섹션에서 설명합니다.

SR 프로브

sr-probe 명령은 다음과 같은 방식으로 사용할 수 있습니다.

  • SR 생성에 사용할 알 수 없는 매개변수를 식별하려면 다음을 수행합니다.
  • 기존 SR 목록을 반환하려면 다음과 같이 하십시오.

두 경우 모두 sr-probe 는 SR 유형과 해당 SR 유형에 대한 하나 이상의 device-config 매개변수를 지정하여 작동합니다. 불완전한 매개변수 세트가 제공되면 sr-probe 명령은 매개변수가 누락되었으며 누락된 매개변수에 대한 가능한 옵션을 나타내는 오류 메시지를 반환합니다. 전체 매개 변수 집합이 제공되면 기존 SR 목록이 반환됩니다. 모든 sr-probe 출력은 XML로 반환됩니다.

예를 들어, 이름 또는 IP 주소를 지정하여 알려진 iSCSI 대상을 검색할 수 있습니다. 대상에서 사용할 수 있는 IQN 집합이 반환됩니다.

      xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10

      Error code: SR_BACKEND_FAILURE_96
      Error parameters: , The request is missing or has an incorrect target IQN parameter, \
      <?xml version="1.0" ?>
      <iscsi-target-iqns>
          <TGT>
              <Index>
                  0
              </Index>
              <IPAddress>
                  192.168.1.10
              </IPAddress>
              <TargetIQN>
                  iqn.192.168.1.10:filer1
              </TargetIQN>
          </TGT>
      </iscsi-target-iqns>
<!--NeedCopy-->

동일한 대상을 다시 프로빙하고 이름/IP 주소와 원하는 IQN을 모두 지정하면 대상/IQN에서 사용 가능한 SCSIid (LUN) 세트가 반환됩니다.

      xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10  \
      device-config:targetIQN=iqn.192.168.1.10:filer1

      Error code: SR_BACKEND_FAILURE_107
      Error parameters: , The SCSIid parameter is missing or incorrect, \
      <?xml version="1.0" ?>
      <iscsi-target>
          <LUN>
              <vendor>
                  IET
              </vendor>
              <LUNid>
                  0
              </LUNid>
              <size>
                  42949672960
              </size>
              <SCSIid>
                  149455400000000000000000002000000b70200000f000000
              </SCSIid>
          </LUN>
      </iscsi-target>
<!--NeedCopy-->

동일한 대상을 검색하고 세 매개 변수를 모두 제공하면 LUN에 있는 SR 목록(있는 경우)이 반환됩니다.

      xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10  \
      device-config:targetIQN=192.168.1.10:filer1 \
      device-config:SCSIid=149455400000000000000000002000000b70200000f000000

      <?xml version="1.0" ?>
      <SRlist>
          <SR>
              <UUID>
                  3f6e1ebd-8687-0315-f9d3-b02ab3adc4a6
              </UUID>
              <Devlist>
                  /dev/disk/by-id/scsi-149455400000000000000000002000000b70200000f000000
              </Devlist>
          </SR>
      </SRlist>
<!--NeedCopy-->

각 SR 유형에 대해 다음 매개변수를 검색할 수 있습니다.

SR 타입 종속성 순서대로 device-config 매개변수 프로브할 수 있습니까? sr-create에 필요합니까?
lvmoiscsi target 아니요
  chapuser 아니요 아니요
  chappassword 아니요 아니요
  targetIQN
  SCSIid
lvmohba SCSIid
lvmofcoe SCSIid
nfs server 아니요
  serverpath
‘중소기업’ server 아니요
  username 아니요 아니요
  password 아니요 아니요
lvm device 아니요
ext device 아니요

SR 제거

SR(스토리지 저장소)은 일시적 또는 영구적으로 제거할 수 있습니다.

떼다: 저장 장치와 풀 또는 호스트 간의 연결을 끊습니다(PBD Unplug). SR(및 해당 VDI)에 액세스할 수 없게 됩니다. VDI의 컨텐츠와 VM에서 VDI에 액세스하는 데 사용하는 메타 정보는 보존됩니다. 분리는 예를 들어 유지 관리를 위해 SR을 임시로 오프라인으로 전환할 때 사용할 수 있습니다. 분리된 SR은 나중에 다시 연결할 수 있습니다.

잊다: 물리적 디스크에서 SR의 컨텐츠는 보존되지만 VM을 해당 VDI에 연결하는 정보는 영구적으로 삭제됩니다. 예를 들어 SR 콘텐츠를 제거하지 않고 SR을 다른 Citrix Hypervisor 서버에 다시 연결할 수 있습니다.

무찌르다: 물리 디스크에서 SR의 컨텐츠를 삭제합니다.

메모:

SMB 스토리지를 사용하는 경우 SMB SR을 분리하기 전에 스토리지에서 공유를 제거하지 마십시오.

삭제 또는 삭제의 경우 SR에 연결된 PBD를 호스트에서 분리해야 합니다.

  1. PBD를 분리하여 해당 Citrix Hypervisor 서버에서 SR을 분리합니다.

      xe pbd-unplug uuid=pbd_uuid
    <!--NeedCopy-->
    
  2. SR을 제거하려면 sr-destroy 명령을 사용하세요. 이 명령은 SR을 삭제하고, Citrix Hypervisor 서버 데이터베이스에서 SR 및 해당 PBD를 삭제하고, 물리적 디스크에서 SR 콘텐츠를 삭제합니다.

      xe sr-destroy uuid=sr_uuid
    <!--NeedCopy-->
    
  3. SR을 잊으려면 sr-forget 명령을 사용하세요. 이 명령은 Citrix Hypervisor 서버 데이터베이스에서 SR 및 해당 PBD를 제거하지만 실제 SR 컨텐츠는 물리적 미디어에 그대로 둡니다.

      xe sr-forget uuid=sr_uuid
    <!--NeedCopy-->
    

메모:

SR에 해당하는 소프트웨어 개체가 가비지 수집되는 데 다소 시간이 걸릴 수 있습니다.

SR 소개

이전에 다시 도입하려면 잊혀진 SR, PBD를 생성합니다. PBD를 적절한 Citrix Hypervisor 서버에 수동으로 연결하여 SR을 활성화합니다.

다음 예제에서는 lvmoiscsi유형의 SR을 소개합니다.

  1. 기존 SR을 프로브하여 UUID를 확인합니다.

      xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10 \
          device-config:targetIQN=192.168.1.10:filer1 \
          device-config:SCSIid=149455400000000000000000002000000b70200000f000000
    <!--NeedCopy-->
    
  2. sr-probe 명령에서 반환된 기존 SR UUID를 소개합니다. 새 SR의 UUID가 반환됩니다.

      xe sr-introduce content-type=user name-label="Example Shared LVM over iSCSI SR" \
          shared=true uuid=valid_sr_uuid type=lvmoiscsi
    <!--NeedCopy-->
    
  3. SR과 함께 사용할 PBD를 생성합니다. 새 PBD의 UUID가 반환됩니다.

      xe pbd-create type=lvmoiscsi host-uuid=valid_uuid sr-uuid=valid_sr_uuid \
          device-config:target=192.168.0.1 \
          device-config:targetIQN=192.168.1.10:filer1 \
          device-config:SCSIid=149455400000000000000000002000000b70200000f000000
    <!--NeedCopy-->
    
  4. PBD를 연결하여 SR을 연결합니다.

      xe pbd-plug uuid=pbd_uuid
    <!--NeedCopy-->
    
  5. PBD 플러그의 상태를 확인합니다. 성공하면 현재 첨부됨 속성이 true인 경우:

      xe pbd-list sr-uuid=sr_uuid
    <!--NeedCopy-->
    

메모:

리소스 풀의 각 서버에 대해 3-5단계를 수행합니다. XenCenter의 Repair Storage Repository(스토리지 저장소 복구) 기능을 사용하여 이러한 단계를 수행할 수도 있습니다.

라이브 LUN 확장

용량 요구 사항을 충족하려면 Citrix Hypervisor 서버에 프로비저닝된 LUN의 크기를 늘리기 위해 스토리지 어레이에 용량을 추가해야 할 수 있습니다. 라이브 LUN 확장을 사용하면 VM 다운타임 없이 LUN 크기를 늘릴 수 있습니다.

스토리지 배열에 더 많은 용량을 추가한 후 다음을 입력합니다.

  xe sr-scan sr-uuid=sr_uuid
<!--NeedCopy-->

이 명령은 SR을 다시 검색하고 추가 용량이 추가되어 사용 가능하게 됩니다.

이 작업은 XenCenter에서도 사용할 수 있습니다. 크기를 조정할 SR을 선택한 다음 재검색.

경고:

  • LUN을 축소하거나 자를 수 없습니다. 스토리지 배열의 LUN 크기를 줄이면 데이터가 손실될 수 있습니다.

라이브 VDI 마이그레이션

라이브 VDI 마이그레이션을 통해 관리자는 VM을 종료하지 않고 VM VDI(가상 디스크 이미지)를 재배치할 수 있습니다. 이 기능을 사용하면 다음과 같은 관리 작업을 수행할 수 있습니다.

  • 저렴한 로컬 스토리지에서 빠르고 복원력이 뛰어난 어레이 지원 스토리지로 VM을 이동합니다.
  • 개발 환경에서 프로덕션 환경으로 VM 이동.
  • VM이 스토리지 용량에 의해 제한되는 경우 스토리지 계층 간 이동Moving between tiers of storage when a VM is limited by storage capacity.
  • 스토리지 어레이 업그레이드를 수행합니다.

제한 사항 및 주의 사항

라이브 VDI 마이그레이션에는 다음과 같은 제한 사항 및 주의 사항이 적용됩니다

  • 대상 저장소에 사용 가능한 충분한 디스크 공간이 있어야 합니다.

XenCenter를 사용하여 가상 디스크를 이동하려면

  1. 안에 리소스 창에서 가상 디스크가 저장된 SR을 선택한 다음 보관 탭.

  2. 안에 가상 디스크 목록에서 이동하려는 가상 디스크를 선택한 다음 움직이다.

  3. 안에 가상 디스크 이동 대화 상자에서 VDI를 이동할 대상 SR을 선택합니다.

    메모:

    SR에 다른 가상 디스크를 위한 충분한 공간이 있는지 확인: 사용 가능한 공간이 사용 가능한 SR 목록에 표시됩니다.

  4. 클릭 움직이다 을 클릭하여 가상 디스크를 이동합니다.

xe CLI 참조는 vdi-pool-migrate를 참조하세요.

SR 간 콜드 VDI 마이그레이션(오프라인 마이그레이션)

VM과 연결된 VDI는 유지 관리 요구 사항 또는 계층화된 스토리지 구성을 수용하기 위해 한 SR에서 다른 SR로 복사할 수 있습니다. XenCenter를 사용하면 VM 및 모든 VDI를 동일하거나 다른 SR에 복사할 수 있습니다. XenCenter와 xe CLI를 함께 사용하여 개별 VDI를 복사할 수 있습니다.

xe CLI 참조는 vm-migrate를 참조하세요.

VM의 모든 VDI를 다른 SR에 복사

XenCenter VM 복사 기능은 동일하거나 다른 SR에서 선택한 VM에 대한 모든 VDI의 복사본을 만듭니다. 소스 VM 및 VDI는 기본적으로 영향을 받지 않습니다. 복사본을 생성하지 않고 VM을 선택한 SR로 이동하려면 [가상 시스템 복사] 대화 상자에서 [원본 VM 제거] 옵션을 선택합니다.

  1. VM을 종료합니다.
  2. XenCenter 내에서 VM을 선택한 다음 가상 머신 > VM 복사 선택.
  3. 원하는 대상 SR을 선택합니다.

개별 VDI를 다른 SR로 복사

xe CLI와 XenCenter를 함께 사용하여 SR 간에 개별 VDI를 복사할 수 있습니다.

  1. VM을 종료합니다.

  2. xe CLI를 사용하여 이동할 VDI의 UUID를 식별합니다. VM에 DVD 드라이브가 있는 경우, vdi-uuid데이터베이스에 없음 으로 나열되어 무시될 수 있습니다.

      xe vbd-list vm-uuid=valid_vm_uuid
    <!--NeedCopy-->
    

    메모:

    vbd-list 명령은 VBD와 VDI UUID를 모두 표시합니다. VBD UUID가 아닌 VDI UUID를 기록해야 합니다.

  3. XenCenter에서 VM 스토리지 탭. 이동할 각 VDI에 대해 VDI를 선택하고 떼다 단추. 이 단계는 vbd-destroy 명령을 사용해서도 수행할 수 있습니다.

    메모:

    vbd-destroy 명령을 사용하여 VDI UUID를 분리하는 경우 먼저 VBD에 매개변수 other-config:ownertrue로 설정되어 있는지 확인합니다. 이 매개변수를 false로 설정합니다. other-config:owner=true 와 함께 vbd-destroy 명령을 실행하면 연관된 VDI도 삭제됩니다.

  4. vdi-copy 명령을 사용하여 이동할 각 VM VDI를 원하는 SR로 복사합니다.

      xe vdi-copy uuid=valid_vdi_uuid sr-uuid=valid_sr_uuid
    <!--NeedCopy-->
    
  5. XenCenter에서 VM 스토리지 탭. 클릭 붙이다 을 클릭하고 새 SR에서 VDI를 선택합니다. 이 단계는 vbd-create 명령을 사용해서도 수행할 수 있습니다.

  6. 원래 VDI를 삭제하려면 보관 XenCenter에 있는 원래 SR의 탭입니다. 원래 VDI는 VM 필드에 빈 값으로 나열됩니다. 를 사용하십시오. 삭제하다 버튼을 눌러 VDI를 삭제합니다.

로컬 파이버 채널 SR을 공유 SR로 변환

xe CLI 및 XenCenter 사용 스토리지 저장소 복구 로컬 FC SR을 공유 FC SR로 변환하는 기능:

  1. 리소스 풀의 모든 호스트를 Citrix Hypervisor 8.2로 업그레이드합니다.

  2. 풀의 모든 호스트에 SR의 LUN 구역이 적절하게 지정되어 있는지 확인합니다. sr-probe 명령을 사용하여 각 호스트에 LUN이 있는지 확인하는 방법에 대한 자세한 내용은 SR 프로브 를 참조하세요.

  3. SR을 공유로 변환:

      xe sr-param-set shared=true uuid=local_fc_sr
    <!--NeedCopy-->
    
  4. SR이 XenCenter의 호스트 수준에서 풀 수준으로 이동되어 이제 공유됨을 나타냅니다. SR은 현재 풀의 모든 호스트에 연결되어 있지 않음을 나타내기 위해 빨간색 느낌표로 표시됩니다.

  5. SR을 선택한 다음 보관 > 스토리지 저장소 복구 선택.

  6. 클릭 수리 을 클릭하여 풀의 각 호스트에 대해 PBD를 만들고 연결합니다.

discard를 사용하여 백업 어레이의 블록 기반 스토리지를 위한 공간 회수

공간 회수를 사용하여 씬 프로비저닝된 LUN에서 사용되지 않는 블록을 확보할 수 있습니다. 공간이 해제된 후 스토리지 배열은 이 회수된 공간을 재사용할 수 있습니다.

메모:

공간 재확보는 일부 유형의 스토리지 배열에서만 사용할 수 있습니다. 어레이가 이 기능을 지원하는지 여부와 특정 구성이 필요한지 여부를 확인하려면 하드웨어 호환성 목록 및 스토리지 공급업체별 설명서가 있습니다.

XenCenter를 사용하여 공간을 회수하려면 다음을 수행합니다.

  1. 을(를) 선택합니다. 인프라 을 확인한 다음 SR에 연결된 서버 또는 풀을 선택합니다.

  2. 클릭 보관 탭.

  3. 목록에서 SR을 선택하고 확보된 공간 확보.

  4. 클릭 작업을 확인합니다.

  5. 클릭 알림을 그런 다음 이벤트 을 클릭하여 작업 상태를 봅니다.

자세한 내용을 보려면 XenCenter에서 F1를 눌러 온라인 도움말에 액세스하세요.

xe CLI를 사용하여 공간을 회수하려면 다음 명령을 사용할 수 있습니다.

  xe host-call-plugin host-uuid=host_uuid \
      plugin=trim fn=do_trim args:sr_uuid=sr_uuid

노트:

  • 이 작업은 어레이에서 씬 프로비저닝된 LUN을 기반으로 하는 LVM 기반 SR에만 사용할 수 있습니다. 로컬 SSD도 공간 회수의 이점을 누릴 수 있습니다.
  • NFS 및 EXT3/EXT4와 같은 파일 기반 SR의 경우 공간 회수가 필요하지 않습니다. 이 확보된 공간 확보 이러한 SR 유형에 대해서는 XenCenter에서 버튼을 사용할 수 없습니다.
  • 파일 기반 SR 또는 씩 프로비저닝된 LVM 기반 SR에 대해 space reclamation xe 명령을 실행하는 경우 명령이 오류를 반환합니다.
  • 공간 재확보는 집약적인 작업이며 스토리지 어레이 성능을 저하시킬 수 있습니다. 따라서 어레이에서 공간 회수가 필요한 경우에만 이 작업을 시작하십시오. 이 작업은 최대 어레이 수요 시간 외에 예약하는 것이 좋습니다.

스냅샷을 삭제할 때 자동으로 공간 회수

Citrix Hypervisor를 사용하여 스냅샷을 삭제할 때 LVM 기반 SR에 할당된 공간이 자동으로 회수되며 VM을 재부팅할 필요가 없습니다. 이 작업을 ‘온라인 병합’이라고 합니다. 온라인 병합은 모든 유형의 SR에 적용됩니다. 그러나 GFS2 SR은 리프 병합을 수행할 수 없습니다 - 즉, VM이 쓰는 VDI는 GFS2 SR의 상위 항목과 병합할 수 없습니다.

경우에 따라 자동화된 공간 회수를 진행하지 못할 수 있습니다. 다음과 같은 시나리오에서는 오프라인 병합 도구를 사용하는 것이 좋습니다.

  • VM I/O 처리량이 상당한 경우
  • 일정 기간 후에 공간이 회수되지 않는 조건에서

노트:

  • 오프라인 병합 도구를 실행하면 수행된 일시 중단/다시 시작 작업으로 인해 VM에 약간의 가동 중지 시간이 발생합니다.
  • 도구를 실행하기 전에 더 이상 원하지 않는 스냅샷과 클론을 삭제합니다. 이 도구는 나머지 스냅샷/클론을 감안할 때 가능한 한 많은 공간을 회수합니다. 전체 공간을 회수하려면 모든 스냅샷과 클론을 삭제합니다.
  • VM 디스크는 단일 호스트의 공유 또는 로컬 스토리지에 있어야 합니다. 두 가지 유형의 스토리지에 디스크가 있는 VM은 병합할 수 없습니다.

오프라인 병합 도구를 사용하여 공간 확보

XenCenter를 사용하여 숨겨진 개체를 사용하도록 설정합니다. 클릭 보기 > 숨겨진 개체. 리소스 창에서 UUID를 가져올 VM을 선택합니다. UUID는 일반 탭.

안에 자원 창에서 리소스 풀 마스터(목록의 첫 번째 호스트)를 선택합니다. 이 일반 탭에 UUID가 표시됩니다. 리소스 풀을 사용하지 않는 경우 VM의 호스트를 선택합니다.

  1. 호스트에서 콘솔을 열고 다음 명령을 실행합니다.

      xe host-call-plugin host-uuid=host-UUID \
          plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=VM-UUID
    <!--NeedCopy-->
    

    예를 들어, VM UUID가 9bad4022-2c2d-dee6-abf5-1b6195b1dad5 이고 호스트 UUID가 b8722062-de95-4d95-9baa-a5fe343898ea인 경우 다음 명령을 실행합니다.

      xe host-call-plugin host-uuid=b8722062-de95-4d95-9baa-a5fe343898ea \
          plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=9bad4022-2c2d-dee6-abf5-1b6195b1dad5
    <!--NeedCopy-->
    
  2. 이 명령은 VM을 일시 중단하고(이미 전원이 꺼져 있지 않은 경우) 공간 회수 프로세스를 시작한 다음 VM을 다시 시작합니다.

노트:

오프라인 병합 도구를 실행하기 전에 VM을 수동으로 종료하거나 일시 중단하는 것이 좋습니다. XenCenter 또는 Citrix Hypervisor CLI를 사용하여 VM을 종료하거나 일시 중단할 수 있습니다. 실행 중인 VM에서 병합 도구를 실행하는 경우 이 도구는 자동으로 VM을 일시 중단하고, 필요한 VDI 병합 작업을 수행하고, VM을 다시 시작합니다. Agile VM이 다른 호스트에서 다시 시작될 수 있습니다.

병합할 VDI(가상 디스크 이미지)가 공유 스토리지에 있는 경우 풀 마스터에서 오프라인 병합 도구를 실행해야 합니다.

병합할 VDI가 로컬 스토리지에 있는 경우 로컬 스토리지가 연결된 서버에서 오프라인 병합 도구를 실행합니다.

디스크 I/O 작업

디스크 I/O 스케줄러 및 디스크 I/O 우선 순위 설정을 구성하여 디스크 성능을 변경할 수 있습니다.

메모:

이 섹션에 설명된 디스크 I/O 기능은 EqualLogic, NetApp 또는 NFS 스토리지에는 적용되지 않습니다.

디스크 I/O 스케줄러 조정

일반적인 성능을 위해 기본 디스크 스케줄러 noop 이 모든 새로운 SR 유형에 적용됩니다. noop 스케줄러는 동일한 장치에 액세스하는 경쟁 VM에 가장 공정한 성능을 제공합니다.

  1. 다음 명령을 사용하여 디스크 스케줄러를 조정합니다.

      xe sr-param-set other-config:scheduler=<option> uuid=<sr_uuid>
    <!--NeedCopy-->
    

    &lt;option&gt; 의 값은 다음 항목 중 하나일 수 있습니다: noop, cfq, 또는 deadline.

  2. scheduler 매개 변수가 적용되도록 해당 PBD를 분리했다가 다시 연결합니다.

      xe pbd-unplug uuid=<pbd_uuid>
      xe pbd-plug uuid=<pbd_uuid>
    <!--NeedCopy-->
    

디스크 I/O 요청 우선순위를 적용하려면 기본 설정을 재정의하고 SR에 cfq 디스크 스케줄러를 할당합니다.

가상 디스크 I/O 요청 우선 순위 지정

가상 디스크에는 선택적 I/O 요청 우선 순위 설정이 있습니다. 이러한 설정을 사용하여 특정 VM의 디스크에 대한 I/O를 다른 디스크보다 우선 순위가 지정할 수 있습니다.

VBD에 대한 디스크 I/O 요청 우선 순위 매개 변수를 구성하기 전에 SR에 대한 디스크 스케줄러가 적절하게 설정되었는지 확인합니다. SR에서 스케줄러 매개변수를 cfq 로 설정하고 관련 PBD를 분리했다가 다시 연결해야 합니다. 스케줄러를 조정하는 방법에 대한 자세한 내용은 디스크 I/O 스케줄러 조정.

여러 호스트가 동일한 LUN에 액세스하는 공유 SR의 경우 동일한 호스트에서 LUN에 액세스하는 VBD에 우선 순위 설정이 적용됩니다. 이러한 설정은 풀의 호스트 간에 적용되지 않습니다.

호스트는 원격 스토리지에 요청을 발행하지만 요청 우선 순위는 원격 스토리지에 의해 수행됩니다.

디스크 I/O 요청 매개 변수 설정

다음 매개변수와 함께 xe vbd-param-set 명령을 사용하여 이러한 설정을 기존 가상 디스크에 적용할 수 있습니다.

  • qos_algorithm_type - 이 매개변수는 가상 디스크에 지원되는 유일한 알고리즘인 ionice값으로 설정해야 합니다.

  • qos_algorithm_param - 이 매개변수를 사용하여 키/값 쌍을 설정합니다. 가상 디스크의 경우 qos_algorithm_paramsched 키를 사용하고 값에 따라 class 키도 필요합니다.

    qos_algorithm_param:sched 는 다음 값 중 하나를 가질 수 있습니다.

    • sched=rt 또는 sched=real-time - 이 값은 스케줄링 매개변수를 실시간 우선순위로 설정합니다. 값을 설정하려면 클래스 매개변수가 필요합니다.

    • sched=idle - 이 값은 스케줄링 매개변수를 유휴 우선순위로 설정합니다. 따라서 값을 설정하기 위해 클래스 매개변수가 필요하지 않습니다.

    • sched=anything - 이 값은 스케줄링 매개변수를 최선의 우선 순위로 설정합니다. 이를 위해서는 값을 설정하기 위해 클래스 매개변수가 필요합니다.

    qos_algorithm_param:class 는 다음 값 중 하나를 가질 수 있습니다.

    • 다음 키워드 중 하나: 가장 높음, 높음, 보통, 낮음, 가장 낮음.

    • 0에서 7 사이의 정수로, 7은 가장 높은 우선 순위이고 0은 가장 낮은 우선 순위입니다. 예를 들어 우선 순위가 5인 I/O 요청에는 우선 순위가 2인 I/O 요청보다 우선 순위가 높습니다.

본보기

예를 들어, 다음 CLI 명령은 가상 디스크의 VBD가 실시간 우선 순위 5를 사용하도록 설정합니다.

  xe vbd-param-set uuid=<vbd_uuid> qos_algorithm_type=ionice
  xe vbd-param-set uuid=<vbd_uuid> qos_algorithm_params:sched=rt
  xe vbd-param-set uuid=<vbd_uuid> qos_algorithm_params:class=5
  xe sr-param-set uuid=<sr_uuid> other-config:scheduler=cfq
  xe pbd-unplug uuid=<pbd_uuid>
  xe pbd-plug uuid=<pbd_uuid>
<!--NeedCopy-->