Citrix Hypervisor

스토리지 저장소 관리

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

스토리지 저장소 생성

이 섹션에서는 다양한 유형의 SR(스토리지 저장소)을 만들어 Citrix Hypervisor 서버에서 사용할 수 있도록 하는 방법에 대해 설명합니다. 제공되는 예제에서는 xe CLI를 사용하여 SR을 만드는 방법에 대해 다룹니다. 새 스토리지 저장소 마법사를 사용하여 Citrix Hypervisor 센터를 사용하여 SR을 추가하는 방법에 대한 자세한 내용은 Citrix Hypervisor 센터 설명서를 참조하십시오.

참고:

로컬 SR은 lvmext 유형이며 xe CLI를 사용해서만 생성할 수 있습니다. 생성 후에는 Citrix Hypervisor 센터 또는 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로 반환됩니다.

예를 들어 알려진 iSCSI 대상은 이름이나 IP 주소를 지정하여 조사할 수 있습니다. 대상에서 사용할 수 있는 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에서 사용 가능한 SCSIids(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
NetApp target 아니요
  username 아니요
  password 아니요
  chapuser 아니요 아니요
  chappassword 아니요 아니요
  aggregate 아니요 (참고 1 참조)
  FlexVols 아니요 아니요
  allocation 아니요 아니요
  asis 아니요 아니요
nfs server 아니요
  serverpath
lvm device 아니요
ext device 아니요
EqualLogic target 아니요
  username 아니요
  password 아니요
  chapuser 아니요 아니요
  chappassword 아니요 아니요
  storagepool 아니요 (참고 2 참조)

참고:

  • 집계 프로빙은 sr-create 실행 시에만 가능합니다.
  • 스토리지 풀 프로빙은 sr-create 실행 시에만 가능합니다.

SR 제거

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

분리: 스토리지 디바이스와 풀 또는 호스트 간의 연결을 끊습니다 (PBD 분리). 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-destroy 명령을 사용하여 SR을 제거합니다. 이 명령은 SR을 삭제하고 Citrix Hypervisor 서버 데이터베이스에서 SR 및 해당 PBD를 삭제하며 물리적 디스크에서 SR 내용을 삭제합니다.

    xe sr-destroy uuid=sr_uuid
    <!--NeedCopy-->
    
  3. sr-forget 명령을 사용하여 SR을 잊어 버립니다. 이 명령은 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 연결의 상태를 확인합니다. 성공하면 currently-attached 속성이 true입니다.

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

참고:

리소스 풀의 각 서버에 대해 3~5단계를 수행합니다. 이러한 단계는 Citrix Hypervisor 센터의 스토리지 저장소 복구 기능을 사용하여 수행할 수도 있습니다.

라이브 LUN 확장

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

스토리지 어레이에 용량을 추가한 후 다음을 입력합니다.

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

이 명령은 SR을 다시 검색하여 추가될 모든 용량을 사용 가능한 상태로 만듭니다.

이 작업은 Citrix Hypervisor 센터에서도 사용할 수 있습니다. 크기를 조정할 SR을 선택한 다음 다시 스캔을 클릭합니다.

경고:

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

라이브 VDI 마이그레이션

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

  • 저렴한 로컬 스토리지에서 빠르고 복구 능력이 있는 배열 기반 스토리지로 VM 이동
  • 개발 환경에서 프로덕션 환경으로 VM 이동
  • 스토리지 용량에 따라 VM이 제한된 경우 스토리지 계층 간에 이동
  • 스토리지 배열 업그레이드 수행

제한 사항 및 주의 사항

Live VDI Migration(라이브 VDI 마이그레이션) 시 다음과 같은 제한 사항 및 경고를 따라야 합니다.

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

Citrix Hypervisor 센터를 사용하여 가상 디스크를 이동하려면

  1. 리소스 창에서 가상 디스크가 저장된 SR을 선택한 다음 스토리지 탭을 클릭합니다.

  2. 가상 디스크 목록에서 이동할 가상 디스크를 선택한 다음 이동을 클릭합니다.

  3. Move Virtual Disk(가상 디스크 이동) 대화 상자에서 VDI를 이동하려는 대상 SR을 선택합니다.

    참고:

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

  4. Move(이동)를 클릭하여 가상 디스크를 이동합니다.

xe CLI 참조는 vdi-pool-migrate에서 확인하십시오.

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

유지 관리 요구 사항 또는 계층식 스토리지 구성을 충족시키기 위해 VM과 연관된 VDI를 한 SR에서 다른 SR로 복사할 수 있습니다. Citrix Hypervisor 센터를 사용하면 VM과 해당 VDI를 모두 동일하거나 다른 SR에 복사할 수 있습니다. Citrix Hypervisor 센터와 xe CLI를 함께 사용하여 개별 VDI를 복사할 수 있습니다.

xe CLI 참조는 vm-migrate에서 확인하십시오.

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

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

  1. VM을 종료합니다.
  2. Citrix Hypervisor 센터에서 VM을 선택한 다음 VM을 선택합니다. > VM 복사 옵션.
  3. 원하는 대상 SR을 선택합니다.

개별 VDI를 다른 SR에 복사

Xe CLI와 Citrix Hypervisor 센터의 조합을 사용하여 SR간에 개별 VDI를 복사할 수 있습니다.

  1. VM을 종료합니다.

  2. xe CLI를 사용하여 이동할 VDI의 UUID를 식별합니다. VM에 DVD 드라이브가 있는 경우 vdi-uuidnot in database로 나열되며 무시할 수 있습니다.

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

    참고:

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

  3. Citrix Hypervisor 센터에서 VM 스토리지 탭을 선택합니다. 이동할 각 VDI에 대해 VDI를 선택하고 분리 버튼을 클릭합니다. 이 단계는 vbd-destroy 명령을 사용하여 수행할 수도 있습니다.

    참고:

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

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

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

  6. 원래 VDI를 삭제하려면 Citrix Hypervisor 센터에서 원래 SR의 스토리지 탭을 선택합니다. 원래 VDI는 VM 필드에 빈 값으로 나열됩니다. 삭제 버튼을 사용하여 VDI를 삭제합니다.

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

xe CLI 및 Citrix Hypervisor 센터 복구 스토리지 저장소 기능을 사용하여 로컬 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이 호스트 수준에서 Citrix Hypervisor 센터의 풀 수준으로 이동되어 현재 공유되었음을 나타냅니다. SR은 현재 풀의 모든 호스트에 연결되어 있지 않음을 나타내는 빨간색 느낌표로 표시됩니다.

  5. SR을 선택한 다음 스토리지를 선택합니다. > 스토리지 저장소 복구 옵션

  6. 복구 를 클릭하여 풀의 각 호스트에 대해 PBD를 생성하고 연결합니다.

discard를 사용하여 백업 어레이에서 블록 기반 스토리지를 위한 공간 재확보

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

참고:

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

Citrix Hypervisor 센터를 사용하여 공간을 회수하려면:

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

  2. 스토리지 탭을 클릭합니다.

  3. 목록에서 SR을 선택하고 Reclaim freed space(확보된 공간 회수)를 클릭합니다.

  4. (Yes) 를 클릭하여 작업을 확인합니다.

  5. 알림 을 클릭한 다음 이벤트 를 클릭하여 작업 상태를 확인합니다.

자세한 내용을 보려면 Citrix Hypervisor 센터에서 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 유형에 대해서는 Citrix Hypervisor 센터에서 사용 가능한 공간 회수 단추를 사용할 수 없습니다.
  • 파일 기반 SR 또는 씩 프로비저닝된 LVM 기반 SR에 대해 공간 회수 xe 명령을 실행하면 명령이 오류를 반환합니다.
  • 공간 재확보는 집중적인 작업이며 스토리지 성능 저하로 이어질 수 있습니다. 따라서 스토리지에서 공간 재확보가 필요한 경우에만 이 작업을 시작하십시오. 이 작업은 최대 스토리지 수요 시간 외에 예약하는 것이 좋습니다.

스냅샷 삭제 시 자동으로 공간 재확보

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

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

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

참고:

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

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

Citrix Hypervisor 센터를 사용하여 숨겨진 오브젝트를 활성화합니다. 보기를 클릭합니다. > 숨겨진 개체. Resource(리소스) 창에서 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을 다시 시작합니다.

참고:

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

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

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

디스크 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-->
    

    <option> 값은 noop, cfq 또는 deadline 중 하나일 수 있습니다.

  2. 스케줄러 매개 변수를 적용하려면 해당 PBD의 플러그를 뽑았다가 다시 연결하십시오.

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

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

가상 디스크 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_param에서 sched 키를 사용하며 값에 따라 class 키가 필요합니다.

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

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

    • sched=idle - 이 값은 스케줄링 매개 변수를 유휴 우선 순위로 설정하며, class 매개 변수를 설정하지 않아도 값을 설정할 수 있습니다.

    • sched=anything - 이 값은 스케줄링 매개 변수를 최우선 순위로 설정하며 값을 설정하려면 class 매개 변수가 필요합니다.

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

    • 다음 키워드 중 하나: highest, high, normal, low, lowest.

    • 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-->