XenServer

메모리 사용량

XenServer® 호스트의 메모리 사용량에는 두 가지 구성 요소가 기여합니다. 첫째, Xen 하이퍼바이저 자체에서 소비하는 메모리입니다. 둘째, 호스트의 제어 도메인에서 소비하는 메모리입니다. ‘Domain0’ 또는 ‘dom0’으로도 알려진 제어 도메인은 XenServer 관리 툴스택(XAPI)을 실행하는 안전하고 권한 있는 Linux VM입니다. XenServer 관리 기능을 제공하는 것 외에도 제어 도메인은 사용자가 생성한 VM이 물리적 장치에 액세스할 수 있도록 하는 드라이버 스택도 실행합니다.

제어 도메인 메모리

제어 도메인에 할당되는 메모리 양은 자동으로 조정되며 물리적 호스트의 물리적 메모리 양을 기반으로 합니다. 기본적으로 XenServer는 제어 도메인에 총 물리적 메모리의 1GiB + 5%를 할당하며, 초기 최대 8GiB까지 할당합니다.

참고:

XenCenter®의 XenServer 섹션에 보고된 양에는 제어 도메인(dom0), Xen 하이퍼바이저 자체 및 크래시 커널에서 사용되는 메모리가 포함됩니다. 따라서 XenCenter에 보고된 메모리 양은 이러한 값을 초과할 수 있습니다. 하이퍼바이저가 사용하는 메모리 양은 더 많은 메모리를 사용하는 호스트의 경우 더 많습니다.

제어 도메인에 할당된 메모리 양 변경

XenCenter 또는 명령줄을 사용하여 dom0에 할당된 메모리 양을 변경할 수 있습니다. 제어 도메인에 할당된 메모리 양을 기본 할당량 이상으로 늘리면 VM에 사용할 수 있는 메모리가 줄어듭니다.

다음과 같은 경우 XenServer 호스트의 제어 도메인에 할당된 메모리 양을 늘려야 할 수 있습니다.

  • 호스트에서 많은 VM을 실행 중인 경우
  • PVS-Accelerator 기능을 사용하고 있습니다.
  • 읽기 캐싱을 사용 중인 경우

중요:

GFS2 SR을 사용 중이고 이러한 경우 중 하나라도 환경에 적용되는 경우, 제어 도메인 메모리 양을 늘려야 합니다. 제어 도메인 메모리가 부족하면 네트워크 불안정성이 발생하여 GFS2 SR이 있는 클러스터형 풀에 문제가 발생할 수 있습니다.

제어 도메인에 할당할 메모리 양은 환경 및 VM의 요구 사항에 따라 달라집니다.

제어 도메인 메모리 양이 환경에 적합한지, 그리고 변경 사항이 어떤 영향을 미치는지 판단하기 위해 다음 메트릭을 모니터링할 수 있습니다.

  • 스왑 활동: 제어 도메인이 스와핑 중인 경우, 제어 도메인 메모리를 늘리십시오.
  • 탭디스크 모드: XenCenter 호스트의 성능 탭 내에서 탭디스크가 저메모리 모드에 있는지 모니터링할 수 있습니다. 작업 > 새 그래프를 선택하고 저메모리 모드의 탭디스크 그래프를 선택하십시오. 탭디스크가 저메모리 모드인 경우, 제어 도메인 메모리를 늘리십시오.
  • 페이지 캐시 압력: top 명령을 사용하여 buff/cache 메트릭을 모니터링하십시오. 이 수치가 너무 낮아지면 제어 도메인 메모리를 늘리는 것이 좋습니다.

XenCenter를 사용하여 dom0 메모리 변경

XenCenter를 사용하여 dom0 메모리를 변경하는 방법에 대한 자세한 내용은 XenCenter 설명서의 제어 도메인 메모리 변경을 참조하십시오.

참고:

XenCenter를 사용하여 XenServer 설치 중에 초기 설정된 값보다 dom0 메모리를 줄일 수 없습니다. 이 변경을 수행하려면 명령줄을 사용해야 합니다.

명령줄을 사용하여 dom0 메모리 변경

참고:

메모리가 적은 호스트(16GiB 미만)에서는 제어 도메인에 할당된 메모리를 설치 기본값보다 낮게 줄이고 싶을 수 있습니다. 이 변경을 수행하려면 명령줄을 사용할 수 있습니다. 그러나 dom0 메모리를 1GiB 미만으로 줄이지 않는 것을 권장하며, 이 작업은 지원팀의 지침에 따라 수행해야 합니다.

  1. XenServer 호스트에서 로컬 셸을 열고 root로 로그인하십시오.

  2. 다음을 입력하십시오.

    xe host-list uuid=host_uuid params=control-domain-uuid
    xe vm-memory-set uuid=<control domain uuid> memory=<nn>M
    <!--NeedCopy-->
    

    여기서 <nn>은 dom0에 할당될 메모리 양(MiB 단위)을 나타냅니다.

  3. XenCenter 또는 XenServer 콘솔에서 reboot 명령을 사용하여 XenServer 호스트를 다시 시작하십시오.

    호스트가 재시작되면 XenServer 콘솔에서 free 명령을 실행하여 새 메모리 설정을 확인하십시오.

VM에 사용할 수 있는 메모리 양은 얼마입니까?

VM에 할당할 수 있는 호스트 메모리 양을 확인하려면, memory-free을(를) 실행하여 호스트의 여유 메모리 값을 찾으십시오. 그런 다음 vm-compute-maximum-memory 명령을 입력하여 VM에 할당할 수 있는 실제 여유 메모리 양을 확인하십시오. 예를 들어:

xe host-list uuid=host_uuid params=memory-free
xe vm-compute-maximum-memory vm=vm_name total=host_memory_free_value
<!--NeedCopy-->
메모리 사용량