XenServer

배포 모니터링 및 관리

XenServer는 성능 메트릭에 대한 자세한 모니터링을 제공합니다. 이러한 지표에는 CPU, 메모리, 디스크, 네트워크, C 상태/P 상태 정보 및 스토리지가 포함됩니다. 적절한 경우 이 메트릭을 호스트별 및 VM별로 사용할 수 있습니다. 이러한 메트릭은 직접 사용할 수 있으며 XenCenter 또는 기타 타사 응용 프로그램에서 그래픽으로 액세스하고 볼 수 있습니다.

XenServer는 또한 시스템 및 성능 경고를 제공합니다. 경고는 선택한 시스템 이벤트에 대한 응답으로 발생하는 알림입니다. 이러한 알림은 관리되는 호스트, VM 또는 스토리지 저장소에서 CPU 사용량, 네트워크 사용량, 메모리 사용량, 제어 도메인 메모리 사용량, 스토리지 처리량 또는 VM 디스크 사용량과 같은 지정된 임계값을 초과하는 경우에도 발생합니다. xe CLI를 사용하거나 XenCenter를 사용하여 경고를 구성할 수 있습니다. 사용 가능한 호스트 또는 VM 성능 메트릭을 기반으로 알림을 생성하려면 성능 경고를 참조하십시오.

XenServer 성능 모니터링

고객은 RRD(라운드 로빈 데이터베이스)를 통해 표시되는 메트릭을 사용하여 XenServer 호스트 및 VM(가상 컴퓨터)의 성능을 모니터링할 수 있습니다. 이러한 메트릭은 HTTP 또는 RRD2CSV 도구를 통해 쿼리할 수 있습니다. 또한 XenCenter는 이 데이터를 사용하여 시스템 성능 그래프를 생성합니다. 자세한 내용은 지표 분석 및 시각화를 참조하십시오.

다음 표에는 사용 가능한 모든 호스트 및 VM 지표가 나열되어 있습니다.

참고:

  • 일정 기간 동안의 지연 시간은 해당 기간 동안의 평균 작업 지연 시간으로 정의됩니다.
  • 특정 메트릭의 가용성 및 유용성은 SR 및 CPU에 따라 다릅니다.

사용 가능한 호스트 메트릭

메트릭 이름 설명 조건 XenCenter Name(DNS 이름)
avgqu_sz_<sr-uuid-short> 평균 I/O 대기열 크기(요청). 호스트의 <sr-uuid-short> SR에 하나 이상의 연결된 VBD sr-uuid-short 대기열 크기
cpu<cpu>-C<cstate> CPU cpu가 C 상태 cstate에서 소비한 시간(밀리초)입니다. CPU에 C 상태가 존재함 CPU cpu C 상태 cstate
cpu<cpu>-P<pstate> CPU cpu가 P 상태 pstate에서 소비한 시간(밀리초)입니다. CPU에 P 상태가 존재함 CPU cpu P 상태 pstate
cpu<cpu> 물리적 CPU 사용률 cpu (분수) 기본적으로 사용하도록 설정됩니다. CPU cpu가 존재합니다 중앙처리장치 cpu
cpu_avg 물리적 CPU의 평균 사용률(분수) 기본적으로 사용하도록 설정됩니다. 없음 평균 CPU
hostload 물리적 CPU당 호스트 로드. 여기서 로드는 실행 중이거나 실행 가능한 상태의 vCPU 수를 의미합니다. 없음 호스트 CPU 로드
inflight_<sr-uuid-short> 현재 진행 중인 I/O 요청 수. 기본적으로 사용하도록 설정됩니다. 호스트의 sr SR에 하나 이상의 연결된 VBD sr 기내 요청
io_throughput_read_<sr-uuidshort> SR에서 읽은 데이터(MiB/s). 호스트의 sr SR에 하나 이상의 연결된 VBD sr 읽기 처리량
io_throughput_write_<sr-uuidshort> SR에 쓴 데이터(MiB/s). 호스트의 sr SR에 하나 이상의 연결된 VBD sr 쓰기 처리량
io_throughput_total_<sr-uuidshort> 모든 SR I/O(MiB/s). 호스트의 sr SR에 하나 이상의 연결된 VBD sr 총 처리량
iops_read_<sr-uuid-short> 초당 읽기 요청 수. 호스트의 sr SR에 하나 이상의 연결된 VBD sr IOPS 읽기
iops_write_<sr-uuid-short> 초당 쓰기 요청 수. 호스트의 sr SR에 하나 이상의 연결된 VBD sr IOPS 쓰기
iops_total_<sr-uuid-short> 초당 I/O 요청 수. 호스트의 sr SR에 하나 이상의 연결된 VBD sr 총 IOPS
iowait_<sr-uuid-short> I/O를 기다리는 시간의 백분율입니다. 호스트의 sr SR에 하나 이상의 연결된 VBD sr 입출력 대기
latency_<sr-uuid-short> 평균 I/O 대기 시간(밀리초). 호스트의 sr SR에 하나 이상의 연결된 VBD sr 지연 시간
loadavg 도메인0 로드 평균입니다. 기본적으로 사용하도록 설정됨 없음 도메인 로드 제어
memory_free_kib 총 사용 가능한 메모리 양 (KiB) 기본적으로 사용하도록 설정됩니다. 없음 XenCenter에는 없습니다. 중고 메모리로 교체되었습니다.
툴스택에서 보고하지 않았습니다. XenCenter에서 계산합니다. 사용된 메모리의 총량(KiB) 기본적으로 사용하도록 설정됩니다. 없음 사용된 메모리
memory_reclaimed 스퀴즈 (B) 에 의해 회수되는 호스트 메모리 없음 재생 메모리
memory_reclaimed_max 스퀴즈 (B) 로 재확보할 수 있는 호스트 메모리. 없음 잠재적 재생 메모리
memory_total_kib 호스트의 총 메모리 양 (KiB) 입니다. 기본적으로 사용하도록 설정됩니다. 없음 총 메모리
network/latency 로컬 호스트에서 모든 온라인 호스트로 전송된 마지막 두 하트비트 사이의 간격(초) 입니다. 기본적으로 사용하지 않도록 설정되어 있습니다. HA 사용 네트워크 대기 시간
statefile/<vdi_uuid>/latency 로컬 호스트에서 최신 상태 파일 액세스의 처리 시간 (초) 입니다. 기본적으로 사용하지 않도록 설정되어 있습니다. HA 사용 HA 상태 파일 지연
pif_<pif>_rx 물리적 인터페이스 pif에서 수신된 초당 바이트입니다. 기본적으로 사용하도록 설정됩니다. PIF가 있는 경우 XenCenter-pifname 수신 (참고 참조)
pif_<pif>_tx 물리적 인터페이스 pif에서 전송된 초당 바이트 수입니다. 기본적으로 사용하도록 설정됩니다. PIF가 있는 경우 XenCenter-pifname 보내기 (참고 참조)
pif_<pif>_rx_errors 물리적 인터페이스 pif에서 초당 오류를 수신합니다. 기본적으로 사용하지 않도록 설정되어 있습니다. PIF가 있는 경우 XenCenter-pifname 수신 오류 (참고 참조)
pif_<pif>_tx_errors 물리적 인터페이스 pif에서 초당 오류를 전송합니다. 기본적으로 사용하지 않도록 설정되어 있습니다. PIF가 있는 경우 XenCenter-pifname 전송 오류 (참고 참조)
pif_aggr_rx 모든 물리적 인터페이스에서 수신된 초당 바이트 수입니다. 기본적으로 사용하도록 설정됩니다. 없음 총 NIC 수신
pif_aggr_tx 모든 물리적 인터페이스에서 전송된 초당 바이트 수입니다. 기본적으로 사용하도록 설정됩니다. 없음 총 NIC 전송
pvsaccelerator_evicted 캐시에서 제거된 초당 바이트 수 PVS액셀러레이터 사용 PVS-Accelerator 제거 속도
pvsaccelerator_read_hits 캐시에서 처리된 초당 읽기 수 PVS액셀러레이터 사용 PVS-Accelerator 적중률
pvsaccelerator_read_misses 캐시에서 처리할 수 없는 초당 읽기 PVS액셀러레이터 사용 PVS-Accelerator 누락 비율
pvsaccelerator_traffic_client_sent 캐시된 PVS 클라이언트에서 보낸 초당 바이트 수 PVS액셀러레이터 사용 PVS-Accelerator에서 확인된 클라이언트의 네트워크 트래픽
pvsaccelerator_traffic_server_sent 캐시된 PVS 서버에서 보낸 초당 바이트 수 PVS액셀러레이터 사용 PVS Accelerator가 서버로부터의 네트워크 트래픽을 관찰했습니다.
pvsaccelerator_read_total 캐시에서 확인된 초당 읽기 수 PVS액셀러레이터 사용 PVS Accelerator 관측 판독률
pvsaccelerator_traffic_proxy_saved PVS 서버 대신 PVS Accelerator에서 보낸 초당 바이트 수 PVS액셀러레이터 사용 PVS Accelerator로 네트워크 트래픽 절감
pvsaccelerator_space_utilization 이 호스트에서 PVSAccelerator가 사용하는 공간의 백분율로, 캐시 스토리지의 총 크기와 비교한 값입니다. PVS액셀러레이터 사용 PVS-Accelerator 공간 사용률
running_vcpus 실행 중인 vCPU의 총 수 없음 실행 중인 vCPU 수
running_domains dom0(호스트의 제어 도메인)을 포함하여 실행 중인 총 도메인 수 없음 실행 중인 도메인 수
sr_<sr>_cache_size IntelliCache SR의 크기(바이트)입니다. 기본적으로 사용하도록 설정됩니다. IntelliCache 사용 여부 IntelliCache 캐시 크기
sr_<sr>_cache_hits 초당 캐시 적중률입니다. 기본적으로 사용하도록 설정됩니다. IntelliCache 사용 여부 IntelliCache 캐시 적중
sr_<sr>_cache_misses 초당 캐시 실패 기본적으로 사용하도록 설정됩니다. IntelliCache 사용 여부 IntelliCache 캐시 누락
xapi_allocation_kib 메모리 (KiB) 할당은 XAPI 데몬에 의해 수행됩니다. 기본적으로 사용하도록 설정됩니다. 없음 에이전트 메모리 할당
xapi_free_memory_kib XAPI 데몬에 사용할 수 있는 사용 가능한 메모리 (KiB) 입니다. 기본적으로 사용하도록 설정됩니다. 없음 에이전트 메모리 없음
xapi_healthcheck/latency 로컬 호스트에서 최신 XAPI 상태 모니터링 호출의 처리 시간 (초) 기본적으로 사용하지 않도록 설정되어 있습니다. 고가용성 사용 XenServer 고가용성 지연 시간
xapi_live_memory_kib XAPI 데몬에서 사용하는 라이브 메모리 (KiB) 입니다. 기본적으로 사용하도록 설정됩니다. 없음 에이전트 메모리 라이브
xapi_memory_usage_kib XAPI 데몬에 할당된 총 메모리 (KiB) 입니다. 기본적으로 사용하도록 설정됩니다. 없음 에이전트 메모리 사용량

사용 가능한 VM 메트릭

메트릭 이름 설명 조건 XenCenter Name(DNS 이름)
cpu<cpu> vCPU 사용률 cpu (분수). 기본적으로 사용하도록 설정됨 vCPU cpu가 존재함 CPU
cpu_usage 도메인 CPU 사용량 없음 cpu_usage
memory 현재 VM에 할당된 메모리 (바이트) .기본적으로 활성화됨 없음 총 메모리
memory_target VM 벌룬 드라이버의 대상 (바이트) 입니다. 기본적으로 사용하도록 설정됨 없음 메모리 타겟
memory_internal_free 게스트 에이전트 (KiB) 에서 보고한 대로 사용된 메모리입니다. 기본적으로 사용하도록 설정됨 없음 사용 가능한 메모리
runstate_fullrun 모든 vCPU가 실행되는 시간의 비율입니다. 없음 vCPU 전체 실행
runstate_full_contention 모든 vCPU가 실행 가능한 시간 (즉, CPU를 기다리는 시간) 없음 vCPU 전체 경합
runstate_concurrency_hazard 일부 vCPU가 실행 중이고 일부는 실행 가능한 시간의 비율 없음 vCPU 동시성 위험
runstate_blocked 모든 vCPU가 차단되거나 오프라인 상태인 시간의 비율 없음 vCPU 유휴 상태
runstate_partial_run 일부 vCPU가 실행 중이고 일부는 차단된 시간의 비율 없음 vCPU 부분 실행
runstate_partial_contention 일부 vCPU가 실행 가능하고 일부는 차단되는 시간의 비율 없음 vCPU 부분 경합
vbd_<vbd>_write vbd 디바이스에 쓰기 (초당 바이트 수) 입니다. 기본적으로 사용하도록 설정됨 vbd VBD가 존재합니다. 디스크 vbd 쓰기
vbd_<vbd>_read vbd 디바이스에서 초당 바이트 단위로 읽습니다. 기본적으로 사용하도록 설정됩니다. vbd VBD가 존재합니다. 디스크 vbd 읽기
vbd_<vbd>_write_latency vbd 디바이스에 쓰기 작업을 마이크로초 단위로 합니다. vbd VBD가 존재합니다. 디스크 vbd 쓰기 지연
vbd_<vbd>_read_latency vbd 디바이스에서 마이크로초 단위로 읽습니다. vbd VBD가 존재합니다. 디스크 vbd 읽기 지연 시간
vbd <vbd>_iops_read 초당 읽기 요청 수. 호스트의 비 ISO VDI에 대해 하나 이상의 연결된 VBD 디스크 vbd 읽기 IOPS
vbd <vbd>_iops_write 초당 쓰기 요청 수. 호스트의 비 ISO VDI에 대해 하나 이상의 연결된 VBD 디스크 vbd 쓰기 IOPS
vbd <vbd>_iops_total 초당 I/O 요청 수. 호스트의 비 ISO VDI에 대해 하나 이상의 연결된 VBD 디스크 vbd 총 IOPS
vbd <vbd>_iowait I/O 대기 시간(백분율). 호스트의 비 ISO VDI에 대해 하나 이상의 연결된 VBD 디스크 vbd IO 대기
vbd <vbd>_inflight 현재 진행 중인 I/O 요청 수. 호스트의 비 ISO VDI에 대해 하나 이상의 연결된 VBD 디스크 vbd 기내 요청
vbd <vbd>_avgqu_sz 평균 I/O 대기열 크기 호스트의 비 ISO VDI에 대해 하나 이상의 연결된 VBD 디스크 vbd 대기열 크기
vif_<vif>_rx 가상 인터페이스 번호 vif로 수신된 초당 바이트입니다. 기본적으로 사용하도록 설정됩니다. vif VIF가 존재합니다. vif 수신
vif_<vif>_tx 가상 인터페이스 vif에서 전송된 초당 바이트 수 기본적으로 사용하도록 설정됩니다. vif VIF가 존재합니다. vif 보내기
vif_<vif>_rx_errors 가상 인터페이스 vif에서 초당 오류를 수신합니다. 기본적으로 사용하도록 설정됩니다. vif VIF가 존재합니다. vif 수신 오류
vif_<vif>_tx_errors 가상 인터페이스 vif에서 초당 오류 전송 기본적으로 활성화됩니다. vif VIF가 존재합니다. vif 전송 오류

참고:

<XenCenter-pif-name>의 값은 다음 중 하나일 수 있습니다.

  • NIC <pif> - if <pif> contains pif_eth#, where ## is 0–9
  • <pif> - if <pif> contains pif_eth#.## or pif_xenbr## or pif_bond##
  • <Internal> Network <pif> - if <pif> contains pif_xapi##, (note that <Internal> appears as is)
  • TAP <tap> - if <pif> contains pif_tap##
  • xapi Loopback - if <pif> contains pif_lo

지표 분석 및 시각화

XenCenter의 성능 탭에서는 가상 및 물리적 시스템 성능의 그래픽 추세뿐만 아니라 리소스 풀 전체의 성능 통계를 실시간으로 모니터링할 수 있습니다. CPU, 메모리, 네트워크 및 디스크 I/O를 보여주는 그래프는 기본적으로 성능 탭에 포함되어 있습니다. 지표를 더 추가하거나 기존 그래프의 모양을 변경하거나 추가 그래프를 만들 수 있습니다. 자세한 내용은 다음 섹션의 지표 구성을 참조하십시오.

  • 최대 12개월의 성능 데이터를 볼 수 있으며 확대를 하여 활동 급증을 자세히 볼 수 있습니다.

  • XenCenter는 CPU, 메모리, 네트워크 I/O, 스토리지 I/O 또는 디스크 I/O 사용량이 호스트, VM 또는 SR에서 지정된 임계값을 초과할 경우 성능 경고를 생성할 수 있습니다. 자세한 내용은 다음 섹션의 경고를 참조하십시오.

참고:

XenServer VM Tools를 설치하면 전체 VM 성능 데이터를 볼 수 있습니다.

성능 그래프 구성

그래프를 추가하려면:

  1. 성능 탭에서 작업을 클릭한 다음 새 그래프를 클릭합니다. 새 그래프 대화 상자가 표시됩니다.

  2. 이름 필드에 그래프의 이름을 입력합니다.

  3. 데이터 소스 목록에서 그래프에 포함할 데이터 원본의 확인란을 선택합니다.

  4. 저장을 클릭합니다.

기존 그래프를 편집하려면:

  1. 성능 탭으로 이동하여 수정할 그래프를 선택합니다.

  2. 그래프를 마우스 오른쪽 단추로 클릭하고 작업을선택하거나 작업 단추를 클릭합니다. 그런 다음 Edit Graph(그래프 편집)를 선택합니다.

  3. 그래프 세부 정보 창에서 필요한 사항을 변경하고 확인 ( OK) 을 클릭합니다.

그래프 유형 구성

성능 그래프의 데이터는 선 또는 영역으로 표시할 수 있습니다. 그래프 유형을 변경하려면

  1. 도구 메뉴에서 옵션을 클릭하고 그래프를선택합니다.

  2. 성능 데이터를 선 그래프로 보려면 선 그래프 옵션을 클릭합니다.

  3. 성능 데이터를 영역 그래프로 보려면 영역 그래프 옵션을 클릭합니다.

  4. OK(확인)를 클릭하여 변경 내용을 저장합니다.

XenCenter 성능 그래프의 구성 및 보기에 대한 자세한 내용은 XenCenter 설명서의 시스템 성능 모니터링섹션에서 확인할 수 있습니다.

지표 구성

참고:

C-상태 및 P-상태는 일부 프로세서의 전원 관리 기능입니다. 사용 가능한 상태 범위는 호스트의 물리적 기능과 전원 관리 구성에 따라 다릅니다.

host 명령과 VM 명령 모두 다음을 반환합니다.

  • 데이터 원본의 자세한 설명

  • 메트릭에 적용된 단위

  • 사용될 수 있는 가능한 값의 범위

예:

    name_label: cpu0-C1
    name_description: Proportion of time CPU 0 spent in C-state 1
    enabled: true
    standard: true
    min: 0.000
    max: 1.000
    units: Percent
<!--NeedCopy-->

특정 지표 활성화

대부분의 지표는 기본적으로 활성화되고 수집됩니다. 그렇지 않은 지표를 활성화하려면 다음을 입력합니다.

xe host-data-source-record data-source=metric name host=hostname
<!--NeedCopy-->

특정 지표 사용 안 함

특정 지표를 정기적으로 수집하고 싶지 않을 수도 있습니다. 이전에 사용 가능하던 메트릭을 사용하지 않으려면 다음을 입력합니다.

xe host-data-source-forget data-source=metric name host=hostname
<!--NeedCopy-->

현재 활성화된 호스트 측정 단위 목록 표시

현재 수집되고 있는 호스트 메트릭을 나열하려면 다음을 입력합니다.

xe host-data-source-list host=hostname
<!--NeedCopy-->

현재 활성화된 VM 메트릭 목록 표시

현재 수집되고 있는 VM 메트릭을 나열하려면 다음을 입력합니다.

xe vm-data-source-list vm=vm_name
<!--NeedCopy-->

RRD 사용

XenServer는 RRD를 사용하여 성능 메트릭을 저장합니다. 이러한 RRD는 고정 크기 데이터베이스의 여러 RRAS (라운드 로빈 아카이브) 로 구성됩니다.

데이터베이스의 각 아카이브는 지정된 세분성에 따라 특정 측정 단위를 샘플링합니다.

  • 5초마다 10분 동안
  • 지난 2시간 동안 1분마다
  • 지난 주: 1시간
  • 지난 한 해 동안 매일

5초마다 수행되는 샘플링은 실제 데이터 요소를 기록하지만 다음 RRA는 통합 함수를 대신 사용합니다. XenServer에서 지원하는 통합 함수는 다음과 같습니다.

  • 평균
  • 최소
  • 최대

RRD는 개별 VM(dom0 포함) 및 XenServer 호스트에 대해 존재합니다. VM RRD는 해당 RRD가 실행되는 호스트에 저장되거나 실행되지 않을 때는 풀 코디네이터에 저장됩니다. 따라서 연결된 성능 데이터를 검색하려면 VM의 위치를 알고 있어야 합니다.

XenServer RRD를 사용하는 방법에 대한 자세한 내용은 XenServer 소프트웨어 개발 키트 안내서를 참조하십시오.

HTTP를 사용하여 RRD 분석

/host_rrd 또는 /vm_rrd에 등록된 HTTP 처리기를 사용하여 지정된 XenServer 호스트에서 HTTP를 통해 RRD를 다운로드할 수 있습니다. 두 주소 모두 HTTP 인증 또는 쿼리 인수로 유효한 관리 API 세션 참조를 제공하여 인증이 필요합니다. 예:

호스트 RRD를 다운로드합니다.

wget http://server/host_rrd?session_id=OpaqueRef:SESSION HANDLE>
<!--NeedCopy-->

VM RRD를 다운로드합니다.

wget http://server/vm_rrd?session_id=OpaqueRef:SESSION HANDLE>&uuid=VM UUID>
<!--NeedCopy-->

이러한 호출은 모두 분석을 위해 rrdtool로 가져오거나 직접 구문 분석할 수 있는 형식으로 XML을 다운로드합니다.

rrd2csv를 사용하여 RRD 분석

rrd2csv 도구는 XenCenter에서 성능 메트릭을 보는 것 외에도 RRRD를 CSV (쉼표로 구분된 값) 형식으로 기록합니다. 설명서 및 도움말 페이지가 제공됩니다. rrd2csv 도구 man 또는 도움말 페이지를 표시하려면 다음 명령을 실행합니다.

man rrd2csv
<!--NeedCopy-->

또는

rrd2csv --help
<!--NeedCopy-->

참고:

여러 옵션이 사용되는 경우 개별적으로 제공합니다. 예를 들어, VM 또는 호스트와 연결된 이름 레이블 및 UUID를 모두 반환하려면 아래와 같이 rrd2csv를 호출합니다.

rrd2csv -u -n

반환된 UUID는 고유하며 기본 키로 적합하지만 엔티티의 이름-레이블은 고유하지 않을 수 있습니다.

매뉴얼 페이지 (rrd2csv --help) 는 도구의 최종 도움말 텍스트입니다.

경고

사용 가능한 모든 호스트 또는 VM 메트릭에 기반하여 경고를 생성하도록 XenServer를 구성할 수 있습니다. 또한 XenServer는 호스트가 특정 조건 및 상태를 겪을 때 트리거되는 사전 구성된 경고를 제공합니다. XenCenter 또는 xe CLI를 사용하여 이러한 경고를 볼 수 있습니다.

XenCenter를 사용하여 경고 보기

알림을 클릭한 다음 경고를 클릭하여 XenCenter에서 다양한 유형의 경고를 볼 수 있습니다. 경고 보기에는 성능 경고, 시스템 경고 및 소프트웨어 업데이트 경고를 비롯한 다양한 유형의 경고가 표시됩니다.

퍼포먼스 알림

성능 경고는 CPU 사용량, 네트워크 사용량, 메모리 사용량, 제어 도메인 메모리 사용량, 스토리지 처리량 또는 VM 디스크 사용량 중 하나가 관리되는 호스트, VM 또는 스토리지 저장소 (SR) 에서 지정된 임계값을 초과할 때 생성될 수 있습니다.

기본적으로 경고 반복 간격은 60분으로 설정되며 필요한 경우 수정할 수 있습니다. 경고는 XenCenter의 알림 영역에 있는 경고 페이지에 표시됩니다. 또한 지정된 성능 경고에 대한 전자 메일을 다른 심각한 시스템 경고와 함께 보내도록 XenCenter를 구성할 수 있습니다.

xe CLI를 사용하여 구성된 모든 사용자 지정 경고는 XenCenter의 경고 페이지에도 표시됩니다.

각 경고마다 해당하는 우선 순위/심각도 수준이 있습니다. 이러한 수준을 수정하고 필요에 따라 경고가 트리거될 때 전자 메일을 수신하도록 선택할 수 있습니다. 기본 경고 우선 순위/심각도는 3로 설정됩니다.

우선순위 이름 설명 기본 전자 메일 경고
1 중요 지금 행동하지 않으면 데이터가 영구적으로 손실되거나 손상될 수 있습니다.
2 지금 행동하지 않으면 일부 서비스가 실패할 수 있습니다.
3 경고 지금 행동하지 않으면 서비스가 어려움을 겪을 수 있습니다.
4 Minor(사소한 문제) 무언가가 지금 향상되었음을 알립니다. 아니요
5 정보 일상적인 정보 (VM 시작, 중지, 재개 등) 아니요
? Unknown(알 수 없음) Unknown error(알 수 없는 오류) 아니요

성능 알림 구성

  1. 리소스 창에서 관련 호스트, VM 또는 SR을 선택한 다음 일반 탭을 클릭한 다음 속성을클릭합니다.

  2. 알림 탭을 선택합니다. 다음 표에는 호스트, VM 또는 SR에 사용할 수 있는 경고가 요약되어 있습니다.

    알림 이름 호스트 VM SR 설명
    CPU 사용량 알림 생성 X X   경고를 트리거하는 CPU 사용량 및 시간 임계값을 설정합니다.
    제어 도메인 CPU 사용 경고 생성 X     알림을 트리거하는 제어 도메인 CPU 사용량 및 시간 임계값을 설정합니다.
    메모리 사용량 경고 생성 X     경고를 트리거하는 메모리 사용량 및 시간 임계값을 설정합니다.
    제어 도메인 메모리 사용 경고 생성 X     알림을 트리거하는 제어 도메인 메모리 사용량 및 시간 임계값을 설정합니다.
    제어 도메인 프리 메모리 경고 생성 X     알림을 트리거하는 제어 도메인 여유 메모리 및 시간 임계값을 설정합니다.
    디스크 사용 알림 생성   X   디스크 사용량 및 시간 임계값을 설정하여 경고를 트리거합니다.
    스토리지 처리량 경고 생성     X 경고를 트리거하는 스토리지 처리량 및 시간 임계값을 설정합니다. 참고: PBD(물리적 블록 장치)는 특정 XenServer 호스트와 연결된 SR 간의 인터페이스를 나타냅니다. PBD의 총 읽기/쓰기 SR 처리량 작업이 지정한 임계값을 초과하면 PBD에 연결된 호스트에 경고가 생성됩니다. 다른 XenServer 호스트 경고와 달리 이 경고는 SR에서 구성해야 합니다.
    네트워크 사용 알림 생성 X X   경고를 트리거하는 네트워크 사용량 및 시간 임계값을 설정합니다.

    경고 반복 간격을 변경하려면 경고 반복 간격 상자에 시간 (분) 을 입력합니다. 경고 임계값에 도달하여 경고가 생성되면 경고 반복 간격이 경과할 때까지 다른 경고가 생성되지 않습니다.

  3. OK(확인)를 클릭하여 변경 내용을 저장합니다.

성능 경고의 심각도를 확인, 필터링 및 구성하는 방법에 대한 자세한 내용은 XenCenter 설명서에서 성능 경고 구성을 참조하십시오.

시스템 알림

다음 표에서는 XenCenter의 경고 페이지에 경고를 표시하도록 트리거하는 시스템 이벤트/조건을 보여 줍니다.

이름 우선 순위/심각도 설명
license_expires_soon 2 XenServer 라이센스 계약이 곧 만료됨
ha-statefile_lost 2 고가용성 스토리지 저장소와의 접촉이 끊어집니다. 바로 조치를 취하세요.
ha-heartbeat_approaching_timeout 5 고가용성 시간 초과가 가까워짐. 조치를 취하지 않으면 호스트가 재부팅될 수 있음
ha_statefile_approaching_timeout 5 고가용성 시간 초과가 가까워짐. 조치를 취하지 않으면 호스트가 재부팅될 수 있음
haxapi_healthcheck_approaching_timeout 5 고가용성 시간 초과가 가까워짐. 조치를 취하지 않으면 호스트가 재부팅될 수 있음
ha_network_bonding_error 3 잠재적 서비스 손실. 고가용성 하트비트를 전송하는 네트워크 손실
ha_pool_overcommited 3 잠재적 서비스 손실. 고가용성은 구성된 VM에 대한 보호를 보장할 수 없습니다.
ha_poor_drop_in_plan_exists_for 3 고가용성 범위가 떨어졌고, 실패할 가능성이 높으며, 손실은 아직 없습니다.
ha_protected_vm_restart_failed 2 서비스 손실. 고가용성으로 인해 보호된 VM을 다시 시작할 수 없습니다.
ha_host_failed 3 고가용성이 호스트에 장애가 발생했음을 감지했습니다.
ha_host_was_fenced 4 VM 손상을 방지하기 위해 고가용성으로 인해 호스트가 재부팅되었습니다.
redo_log_healthy 4 XAPI 리두 로그가 이전 오류에서 복구되었습니다.
redo_log_broken 3 XAPI 리두 로그에 오류가 발생했습니다.
ip_configured_pif_can_unplug 3 고가용성을 사용하는 경우 XAPI에서 IP 구성 NIC를 분리하여 고가용성 오류가 발생할 수 있습니다.
host_sync_data_failed 3 XenServer 성능 통계를 동기화하지 못했습니다.
host_clock_skew_detected 3 호스트 클럭이 풀의 다른 호스트와 동기화되지 않음
host_clock_went_backwards 1 호스트 클럭이 손상되었습니다.
pool_master_transition 4 새 호스트가 풀 코디네이터로 지정되었습니다.
pbd_plug_failed_on_server_start 3 호스트가 부팅 시 스토리지에 연결하지 못함
auth_external_init_failed 2 호스트가 외부 AD 인증을 사용하도록 설정하지 못했습니다.
auth_external_pool_non-homogeneous 2 풀에 있는 호스트의 AD 인증 구성이 다름
multipath_period_alert 3 SR에 대한 경로가 실패했거나 복구되었습니다.
bond-status-changed 3 본드의 링크가 연결이 끊어졌거나 다시 연결되었습니다.

소프트웨어 업데이트 경고

  • XenCenter 이전 버전: XenServer는 최신 버전을 예상하지만 현재 버전에 계속 연결할 수 있습니다.
  • XenCenter가 오래된 경우: XenCenter가 너무 오래되어 XenServer에 연결할 수 없습니다.
  • XenServer가 오래된 경우: XenServer가 현재 XenCenter에서 연결할 수 없는 이전 버전입니다.
  • 라이센스 만료 알림: XenServer 라이센스가 만료되었습니다.
  • 누락된 IQN 경고: XenServer가 iSCSI 스토리지를 사용하지만 호스트 IQN이 비어 있음
  • 중복된 IQN 경고: XenServer가 iSCSI 스토리지를 사용하며 중복된 호스트 IQN이 있습니다.

xe CLI를 사용하여 성능 경고 구성

참고:

경고 트리거는 최소 5분 간격으로 확인됩니다. 이 간격은 시스템에 과도한 부하를 가하여 이러한 조건을 확인하고 오탐지를 보고하는 것을 방지합니다. 경고 반복 간격을 5분 미만으로 설정하면 최소 5분 간격으로 경고가 계속 생성됩니다.

성능 모니터링 perfmon 도구는 5분마다 한 번씩 실행되며 XenServer에서 평균 1분 이상의 업데이트를 요청합니다. 이러한 기본값은 /etc/sysconfig/perfmon에서 변경할 수 있습니다.

perfmon 도구는 동일한 호스트에서 실행 중인 성능 변수의 업데이트를 5분마다 읽습니다. 이러한 변수는 호스트 자체에 관련된 한 그룹과 해당 호스트에서 실행 중인 각 VM에 대한 그룹으로 구분됩니다. 각 VM 및 호스트에 대해 perfmonother-config:perfmon 매개 변수를 읽고 이 문자열을 사용하여 모니터링할 변수와 메시지를 생성할 상황을 결정합니다.

예를 들어, 다음은 other-config:perfmon 매개 변수에 XML 문자열을 작성하여 VM “CPU 사용량” 경고를 구성하는 예를 보여 줍니다.

xe vm-param-set uuid=vm_uuid other-config:perfmon=\

'<config>
    <variable>
        <name value="cpu_usage"/>
        <alarm_trigger_level value="0.5"/>
    </variable>
</config>'
<!--NeedCopy-->

참고:

여러 변수 노드를 사용할 수 있습니다.

새 구성을 설정한 후 다음 명령을 사용하여 각 호스트에 대해 perfmon를 새로 고칩니다.

xe host-call-plugin host=host_uuid plugin=perfmon fn=refresh
<!--NeedCopy-->

이 새로 고침이 수행되지 않으면 기본적으로 perfmon가 30분마다 새 구성을 확인하므로 새 구성이 적용되기 전에 지연이 발생합니다. 이 기본값은 /etc/sysconfig/perfmon에서 변경할 수 있습니다.

유효한 VM 요소

  • name: 변수 이름입니다(기본값 없음). 이름 값이 cpu_usage, network_usage, 또는 disk_usage인 경우 이러한 값의 기본값이 사용되므로 rrd_regexalarm_trigger_sense 매개 변수가 필요하지 않습니다.

  • alarm_priority: 생성된 경고의 우선 순위입니다(기본값 3).

  • alarm_trigger_level: 경고를 트리거하는 값 수준입니다(기본값 없음).

  • alarm_trigger_sense: alarm_trigger_level이 최대값인 경우 값은 high, alarm_trigger_level이 최소값인 경우 low(기본값: high)

  • alarm_trigger_period: 경고가 전송되기 전에 경고 임계값보다 높거나 낮은 값이 수신될 수 있는 초 단위의 시간(기본값: 60)

  • alarm_auto_inhibit_period: 알림이 전송된 후 이 알림이 비활성화되는 시간(초)((기본값: 3600).

  • consolidation_fn: rrd_updates 의 변수를 하나의 값으로 결합합니다. cpu-usage의 경우 기본값은 average이고 fs_usage의 경우 get_percent_fs_usage, 다른 모든 값의 경우 sum.

  • rrd_regex: xe vm-data-sources-list uuid=vm_uuid의 변수 이름을 일치시켜 성능 값을 계산합니다. 이 매개 변수에는 다음과 같은 명명된 변수에 대한 기본값이 있습니다.

    • cpu_usage
    • memory_internal_free
    • network_usage
    • disk_usage

이 플래그를 지정하면 이름이 지정된 정규식과 일치하는 xe vm-data-source-list에서 반환되는 모든 항목의 값이 consolidation_fn로 지정된 메서드를 사용하여 통합됩니다.

유효한 호스트 요소

  • name: 변수 이름입니다(기본값 없음).
  • alarm_priority: 생성된 경고의 우선 순위입니다(기본값 3).
  • alarm_trigger_level: 경고를 트리거하는 값 수준입니다(기본값 없음).
  • alarm_trigger_sense: alarm_trigger_level이 최대값인 경우 값은 high, alarm_trigger_level이 최소값인 경우 low(기본값: high)
  • alarm_trigger_period: 알림이 전송되기 전에 경고 임계값보다 높거나 낮은 값이 수신될 수 있는 초 단위의 시간(기본값: 60)
  • alarm_auto_inhibit_period: 경고가 전송된 후 경고가 비활성화되는 시간(초)입니다(기본값 3600).
  • consolidation_fn: rrd_updates의 변수를 하나의 값으로 결합합니다(기본값 sum - 또는 average).
  • rrd_regex: 통계 값을 계산하는 데 사용할 xe vm-data-source-list uuid=vm_uuid 명령에서 반환된 변수의 이름과 일치하는 정규식입니다. 이 매개 변수에는 다음과 같은 명명된 변수에 대한 기본값이 있습니다.
    • cpu_usage
    • network_usage
    • memory_free_kib
    • sr_io_throughput_total_xxxxxxxx(여기서 xxxxxxxx은 SR-UUID의 처음 8자)

SR 처리량: 스토리지 처리량 경고는 호스트가 아닌 SR에서 구성해야 합니다. 예:

xe sr-param-set uuid=sr_uuid other-config:perfmon=\
'<config>
    <variable>
        <name value="sr_io_throughput_total_per_host"/>
        <alarm_trigger_level value="0.01"/>
    </variable>
</config>'
<!--NeedCopy-->

일반 예제 구성

다음 예에서는 일반 구성을 보여 줍니다.

<config>
    <variable>
    <name value="NAME_CHOSEN_BY_USER"/>
    <alarm_trigger_level value="THRESHOLD_LEVEL_FOR_ALERT"/>
    <alarm_trigger_period value="RAISE_ALERT_AFTER_THIS_MANY_SECONDS_OF_BAD_VALUES"/>
    <alarm_priority value="PRIORITY_LEVEL"/>
    <alarm_trigger_sense value="HIGH_OR_LOW"/>
    <alarm_auto_inhibit_period value="MINIMUM_TIME_BETWEEN_ALERT_FROM_THIS_MONITOR"/>
    <consolidation_fn value="FUNCTION_FOR_COMBINING_VALUES"/>
    <rrd_regex value="REGULAR_EXPRESSION_TO_CHOOSE_DATASOURCE_METRIC"/>
    </variable>

    <variable>
    ...
    </variable>

    ...
</config>
<!--NeedCopy-->

전자 메일 알림 구성

XenServer 호스트가 경고를 생성할 때 전자 메일 알림을 보내도록 XenServer를 구성할 수 있습니다. XenServer의 메일 경보 유틸리티는 sSMTP를 사용하여 이러한 전자 메일 알림을 보냅니다. XenCenter 또는 xe 명령줄 인터페이스(CLI)를 사용하여 기본 이메일 알림을 활성화할 수 있습니다. 전자 메일 알림을 추가로 구성하려면 mail-alarm.conf 구성 파일을 수정하면 됩니다.

인증이 필요 없는 SMTP 서버를 사용하십시오. 인증이 필요한 SMTP 서버를 통해 보낸 전자 메일은 배달할 수 없습니다.

XenCenter를 사용하여 전자 메일 알림 사용

  1. Resources 창에서 풀을 마우스 오른쪽 버튼으로 클릭하고 Properties를 선택합니다.

  2. Properties 창에서 Email Options를 선택합니다.

  3. Send email alert notifications 확인란을 선택합니다. 알림 전자 메일과 SMTP 서버 세부 정보에 사용할 기본 대상 주소를 입력합니다.

  4. Mail language 목록에서 원하는 언어를 선택합니다. 성능 알림 전자 메일의 기본 언어는 영어입니다.

xe CLI를 사용하여 e-메일 알림 활성화

전자 메일 알림을 구성하려면 알림 전자 메일과 SMTP 서버에 사용할 기본 대상 주소를 지정하십시오.

xe pool-param-set uuid=pool_uuid other-config:mail-destination=joe.bloggs@example.com
xe pool-param-set uuid=pool_uuid other-config:ssmtp-mailhub=smtp.example.com:<port>
<!--NeedCopy-->

XenServer는 보낸 사람 주소를 noreply@<hostname>으로 자동으로 구성합니다. 하지만 발신자 주소를 명시적으로 설정할 수 있습니다.

xe pool-param-set uuid=pool_uuid other-config:mail-sender=serveralerts@example.com
<!--NeedCopy-->

전자 메일 알림을 켜면 우선 순위가 3 이상인 알림이 생성될 때 전자 메일 알림을 받게 됩니다. 따라서 기본 최소 우선 순위 수준은 3입니다. 다음 명령을 사용하여 이 기본값을 변경할 수 있습니다.

xe pool-param-set uuid=pool_uuid other-config:mail-min-priority=level
<!--NeedCopy-->

참고:

일부 SMTP 서버는 FQDN을 사용하는 주소의 메일만 전달할 수 있습니다. 전자 메일이 전달되지 않는 것을 발견하면 이러한 이유 때문일 수 있습니다. 이 경우 메일 서버에 연결할 때 이 주소가 사용되도록 서버 호스트 이름을 FQDN으로 설정할 수 있습니다.

성능 알림 전자 메일의 언어를 구성하려면 다음을 사용하십시오.

xe pool-param-set uuid=pool_uuid other-config:mail-language=ja-JP
<!--NeedCopy-->

성능 알림 전자 메일의 기본 언어는 영어입니다.

추가 구성

XenServer에서 메일 경보 유틸리티를 추가로 구성하려면 다음을 포함하는 /etc/mail-alarm.conf 파일을 만드십시오.

root=postmaster
authUser=<username>
authPass=<password>
mailhub=@MAILHUB@
<!--NeedCopy-->

/etc/mail-alarm.conf는 SSMTP의 구성 파일 ssmtp.conf를 위한 사용자 제공 템플릿이며 XenServer 호스트에서 생성되는 모든 경고에 사용됩니다. 키로 구성되며 여기서 key=@KEY@@KEY@pool.other_config에서 ssmtp-key에 해당하는 값으로 대체됩니다. 그리고 나면 이러한 값이 ssmtp로 전달되므로 pool.other_config의 값을 사용하여 sSMTP 구성의 여러 측면을 제어할 수 있습니다. @KEY@(대문자)가 ssmtp-key(소문자, 접두사 ssmtp-)와 어떻게 대응하는지 확인하십시오.

예를 들어, SMTP 서버를 설정하는 경우:

xe pool-param-set uuid=pool_uuid other-config:ssmtp-mailhub=smtp.example.com
<!--NeedCopy-->

그런 다음 /etc/mail-alarm.conf 파일에 다음을 추가합니다.

mailhub=@MAILHUB@
<!--NeedCopy-->

mailhub=@MAILHUB@mailhub=smtp.example.com이 됩니다.

각 SMTP 서버는 설정이 약간씩 다를 수 있으며 추가 구성이 필요할 수 있습니다. SsMTP를 추가로 구성하려면 해당 구성 파일 ssmtp.conf를 수정하십시오. mail-alarm.conf 파일에 관련 키를 저장하면 pool.other_config의 값을 사용하여 sSMTP를 구성할 수 있습니다. ssmtp.conf 맨 페이지에서 추출한 다음 내용은 올바른 구문과 사용 가능한 옵션을 보여 줍니다.

NAME
    ssmtp.conf – ssmtp configuration file

DESCRIPTION
    ssmtp reads configuration data from /etc/ssmtp/ssmtp.conf The file con-
    tains keyword-argument pairs, one per line. Lines starting with '#'
    and empty lines are interpreted as comments.

The possible keywords and their meanings are as follows (both are case-
insensitive):

    Root
    The user that gets all mail for userids less than 1000. If blank,
    address rewriting is disabled.

    Mailhub
        The host to send mail to, in the form host | IP_addr port :
        <port>. The default port is 25.

    RewriteDomain
    The domain from which mail seems to come. For user authentication.

    Hostname
        The full qualified name of the host. If not specified, the host
        is queried for its hostname.

    FromLineOverride
        Specifies whether the From header of an email, if any, may over-
        ride the default domain. The default is "no".

    UseTLS
    Specifies whether ssmtp uses TLS to talk to the SMTP server.
    The default is "no".

    UseSTARTTLS
        Specifies whether ssmtp does a EHLO/STARTTLS before starting TLS
        negotiation. See RFC 2487.

    TLSCert
        The file name of an RSA certificate to use for TLS, if required.

    AuthUser
        The user name to use for SMTP AUTH. The default is blank, in
        which case SMTP AUTH is not used.

    AuthPass
        The password to use for SMTP AUTH.

    AuthMethod
        The authorization method to use. If unset, plain text is used.
        May also be set to "cram-md5".
<!--NeedCopy-->

사용자 지정 필드 및 태그

XenCenter는 태그 및 사용자 지정 필드 생성을 지원하므로 VM, 스토리지 등을 정리하고 신속하게 검색할 수 있습니다. 자세한 내용은 시스템 성능 모니터링을 참조하십시오.

맞춤 검색

XenCenter는 사용자화된 검색 작성을 지원합니다. 검색을 내보내고 가져올 수 있으며 검색 결과를 탐색 창에 표시할 수 있습니다. 자세한 내용은 시스템 성능 모니터링을 참조하십시오.

물리적 버스 어댑터의 처리량 결정

FC, SAS 및 iSCSI HBA에 대해 다음 절차를 사용하여 PBD의 네트워크 처리량을 확인할 수 있습니다.

  1. 호스트의 PBD를 나열합니다.
  2. 어떤 LUN이 어떤 PBD를 통해 라우팅되는지 확인합니다.
  3. 각 PBD 및 SR에 대해 SR의 VDI를 참조하는 VBD를 나열합니다.
  4. 호스트의 VM에 연결된 모든 활성 VBD에 대해 결합된 처리량을 계산합니다.

iSCSI 및 NFS 스토리지에 대해 네트워크 통계를 확인하여 배열에 처리량 병목 상태가 있는지 여부 또는 PBD가 포화 상태인지 여부를 확인합니다.

NRPE를 사용하여 호스트 및 dom0 리소스 모니터링

참고:

NRPE 기능은 XenServer 프리미엄 또는 평가판 고객이 사용할 수 있습니다. XenServer 라이센싱에 대한 자세한 내용은 라이센싱을 참조하십시오. 업그레이드를 수행하거나 XenServer 라이센스를 구입하려면 XenServer 웹 사이트를 방문하십시오.

풀 관리자 역할을 가진 사용자는 Nagios 원격 플러그인 실행기 (NRPE) 를 지원하는 타사 모니터링 도구를 사용하여 XenServer 호스트와 dom0(호스트의 제어 도메인) 에서 사용하는 리소스를 모니터링할 수 있습니다.

다음 검사 플러그인을 사용하여 호스트 및 dom0 리소스를 모니터링할 수 있습니다.

메트릭 NRPE 검사 이름 설명 기본 경고 임계값 기본 임계 임계값 성능 데이터 반환됨
호스트 CPU 로드 check_host_load 호스트의 물리적 CPU당 현재 로드를 가져오고 확인합니다. 여기서 로드는 실행 중이거나 실행 가능한 상태의 vCPU 수를 의미합니다. 3 4 호스트 CPU의 현재 시스템 부하 (호스트의 물리적 CPU의 평균 부하를 취하여 계산).
호스트 CPU 사용량 (%) check_host_cpu 호스트의 현재 평균 전체 CPU 사용량을 가져오고 확인합니다. 80% 90% 현재 사용 가능한 호스트 CPU의 백분율과 사용 중인 CPU의 백분율입니다.
호스트 메모리 사용량 (%) check_host_memory 호스트의 현재 메모리 사용량을 가져오고 확인합니다. 80% 90% 현재 사용 가능한 호스트 메모리의 백분율 및 사용 중인 비율입니다.
호스트 vGPU 사용량 (%) check_vgpu 호스트의 현재 실행 중인 모든 Nvidia vGPU 사용량을 가져오고 확인합니다. 80% 90% 현재 사용 가능한 vGPU를 실행하는 비율과 사용 중인 vGPU의 비율.
호스트 vGPU 메모리 사용량 (%) check_vgpu_memory 호스트의 현재 실행 중인 모든 Nvidia vGPU 메모리 사용량 (공유 메모리 및 그래픽 메모리 포함) 을 가져오고 확인합니다. 80% 90% 실행 중인 vGPU 메모리 (공유 메모리 및 그래픽 메모리 포함) 중 현재 사용 가능한 비율과 사용 중인 비율입니다.
Dom0 CPU 로드 check_load dom0의 CPU당 현재 시스템 부하 평균을 가져오고 확인합니다. 여기서 로드는 실행 중이거나 실행 가능한 상태의 프로세스 수를 나타냅니다. 2.7,2.6,2.5 3.2,3.1,3 최근 1, 5, 15분의 평균을 취하여 계산된 호스트 CPU 부하 데이터입니다.
Dom0 CPU 사용량 (%) check_cpu dom0의 현재 평균 전체 CPU 사용량을 가져오고 확인합니다. 80% 90% dom0의 평균 전체 CPU 사용량을 백분율로 나타낸 값입니다.
Dom0 메모리 사용량 (%) check_memory dom0의 현재 메모리 사용량을 가져오고 확인합니다. 80% 90% 현재 사용 가능한 dom0 메모리의 백분율과 사용 중인 메모리의 백분율입니다.
Dom0 프리 스왑 (%) check_swap dom0의 현재 스왑 사용을 가져오고 확인합니다. 20% 10% dom0에서 현재 사용 가능한 MB의 백분율입니다.
Dom0 루트 파티션 여유 공간 (%) check_disk_root dom0의 현재 루트 파티션 사용을 가져오고 확인합니다. 20% 10% dom0 루트 파티션에서 현재 사용 가능한 MB의 백분율입니다.
Dom0 로그 파티션 여유 공간 (%) check_disk_log dom0의 현재 로그 파티션 사용을 가져오고 확인합니다. 20% 10% dom0 로그 파티션에서 현재 사용 가능한 MB의 백분율입니다.
툴스택 상태 check_xapi XenServer 관리 도구 스택 (XAPI라고도 함) 의 상태를 가져오고 확인합니다.     XAPI 업타임 경과 시간 (초)
멀티패스 상태 check_multipath 스토리지 경로의 상태를 가져오고 확인합니다.     스토리지 경로의 상태입니다. OK은(는) 모든 경로가 활성 상태임을 나타내고, WARNING은(는) 일부 경로에 장애가 발생했지만 둘 이상의 경로가 활성 상태임을 나타내며, CRITICAL은(는) 경로가 하나뿐이거나 모든 경로에 장애가 발생했음을 나타냅니다. 또한 UNKNOWN은(는) 호스트 다중 경로 지정이 해제되고 경로의 상태를 가져올 수 없음을 나타냅니다.

NRPE는 dom0에서 실행되고 모니터링 도구의 검사 실행 요청을 위해 TCP 포트 (기본값) 5666에서 수신 대기하는 온프레미스 서비스입니다. 요청이 도착하면 NRPE는 요청을 구문 분석하고 구성 파일에서 매개 변수의 세부 정보가 포함된 해당 check 명령을 찾은 다음 실행합니다. 점검 결과는 모니터링 툴로 전송되며, 모니터링 툴은 과거 검사 결과를 저장하고 과거 성능 데이터를 보여주는 그래프를 제공합니다.

사전 요구 사항

NRPE를 사용하여 호스트 및 dom0 리소스를 모니터링하려면 사용 중인 모니터링 도구가 다음 사전 요구 사항을 충족해야 합니다.

  • 모니터링 도구는 NRPE 버전 4.1.0과 호환되어야 합니다.
  • NRPE와 모니터링 도구 간의 통신을 허용하려면 모니터링 도구가 암호ECDHE-RSA-AES256-GCM-SHA384와 함께 TLS 1.2를 지원해야 하며 ECDHE-RSA-AES128-GCM-SHA256EC 곡선은 secp384r1입니다 .

제약 조건

  • 전체 풀 또는 풀에 속하지 않은 독립 실행형 호스트에 대해 NRPE 설정을 구성할 수 있습니다. 현재는 풀의 개별 호스트에 대해 NRPE 설정을 구성할 수 없습니다.
  • 이미 NRPE를 사용하도록 설정하고 구성한 풀에 호스트를 추가하는 경우 XenCenter는 풀의 NRPE 설정을 새 호스트에 자동으로 적용하지 않습니다. 새 호스트를 추가한 후 풀에서 NRPE 설정을 재구성하거나 풀에 추가하기 전에 동일한 NRPE 설정으로 새 호스트를 구성해야 합니다.

    참고:

    새 호스트를 추가한 후 풀에서 NRPE 설정을 재구성할 때는 호스트가 작동 및 실행 중인지 확인하십시오.

  • NRPE를 사용하도록 설정하고 구성한 풀에서 호스트를 제거하면 XenCenter는 호스트 또는 풀의 NPRE 설정을 변경하지 않습니다.

xe CLI를 사용하여 NRPE를 구성합니다

xe CLI 또는 XenCenter를 사용하여 NRPE를 구성할 수 있습니다. XenCenter를 사용하여 NRPE를 구성하는 방법에 대한 자세한 내용은 NRPE를 사용하여 호스트 및 dom0 리소스 모니터링을참조하십시오.

NRPE의 구성을 변경한 후 다음을 사용하여 NRPE 서비스를 다시 시작합니다.

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=restart
<!--NeedCopy-->

NRPE를 활성화합니다

NRPE는 XenServer에서 기본적으로 사용하지 않도록 설정되어 있습니다. 호스트의 제어 도메인 (dom0) 에서 NRPE를 활성화하려면 xe CLI에서 다음 명령을 실행합니다.

  1. 모니터링하려는 호스트의 호스트 UUID를 가져옵니다.

    xe host-list

  2. 호스트에서 NRPE를 활성화합니다.

    xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=enable

    작업이 성공적으로 실행되면 이 명령이 Success출력됩니다. XenServer가 다시 시작되면 NRPE가 자동으로 시작됩니다.

NRPE를 중지, 시작, 재시작 또는 비활성화하려면:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=<operation>
<!--NeedCopy-->

여기서 연산stop, start, restart또는 disable입니다.

모니터링 서버

NRPE 데몬과 통신할 수 있는 IP 주소 또는 호스트 이름을 쉼표로 구분한 목록입니다. 비트 마스크가 있는 네트워크 주소 (예: 192.168.1.0/24) 도 지원됩니다.

모니터링 서버의 현재 목록 보기:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config args:allowed_hosts
<!--NeedCopy-->

모니터링 도구가 검사를 실행하도록 허용:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:allowed_hosts=<IP address or hostname>
<!--NeedCopy-->

모든 NRPE 설정 쿼리:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config
<!--NeedCopy-->

여러 NRPE 설정 구성:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:allowed_hosts=<IP address or hostname> args:ssl_logging=<SSL log level> args:debug=<debug log level>
<!--NeedCopy-->

로그

디버그 로깅

기본적으로 디버그 로깅은 비활성화됩니다.

디버그 로깅이 활성화되었는지 확인하려면 다음 명령을 실행합니다.

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config args:debug
<!--NeedCopy-->

debug: 0 가 반환되면 디버그 로깅이 비활성화됩니다.

디버그 로깅을 활성화하려면:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:debug=1
<!--NeedCopy-->
SSL 로깅

기본적으로 SSL 로깅은 비활성화됩니다.

ssl_logging=0x00
<!--NeedCopy-->

SSL 로깅이 활성화되었는지 확인하려면 다음 명령을 실행합니다.

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config args:ssl_logging
<!--NeedCopy-->

SSL 로깅을 활성화하려면:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:ssl_logging=0x2f
<!--NeedCopy-->

경고 및 위기 임계값

이러한 검사 플러그인 중 일부의 경우 경고 및 위기 임계값을 설정하여 검사 플러그인에서 반환된 값이 임계값을 초과할 경우 경고가 생성되도록 할 수 있습니다. 경고 임계값은 잠재적인 문제를 나타내고, 위험 임계값은 즉각적인 주의가 필요한 더 심각한 문제를 나타냅니다. 경고 및 위기 임계값에는 기본값이 설정되어 있지만 임계값을 조정할 수 있습니다.

모든 검사의 기본 경고 및 위기 임계값을 쿼리하려면 다음 xe CLI 명령을 실행하여 모든 검사 목록과 관련 경고 및 위기 임계값을 반환합니다.

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-threshold
<!--NeedCopy-->

특정 검사의 임계값을 쿼리할 수도 있습니다. 예를 들어, check_memory check 플러그인에 대한 경고 및 위험 임계값을 가져오려면 다음 xe CLI 명령을 실행합니다.

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-threshold args:check_memory
<!--NeedCopy-->

임계값의 기본값을 변경할 수도 있습니다. 예를 들어, check_memory check 플러그인의 기본 임계값을 변경하려면 다음 xe CLI 명령을 실행합니다.

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-threshold args:check_memory args:w=75 args:c=85
<!--NeedCopy-->

SNMP를 사용하여 호스트 및 dom0 리소스 모니터링

참고:

SNMP 기능은 XenServer 프리미엄 또는 평가판 고객이 사용할 수 있습니다. XenServer 라이센싱에 대한 자세한 내용은 라이센싱을 참조하십시오. 업그레이드를 수행하거나 XenServer 라이센스를 구입하려면 XenServer 웹 사이트를 방문하십시오.

풀 관리자 역할을 사용하면 SNMP를 사용하여 XenServer 호스트와 호스트의 제어 도메인인 dom0에서 사용하는 리소스를 원격으로 모니터링할 수 있습니다. 네트워크 관리 시스템(NMS)이라고도 하는 SNMP 관리자는 XenServer 호스트에서 실행되는 SNMP 에이전트에 쿼리 요청을 보냅니다. SNMP 에이전트는 다양한 메트릭에서 수집된 데이터를 NMS로 다시 전송하여 이러한 쿼리 요청에 응답합니다. 수집할 수 있는 데이터는 관리 정보 베이스(MIB)라는 텍스트 파일의 OID(객체 식별자)로 정의됩니다. OID는 CPU 또는 메모리 사용량과 같은 네트워크 장치에 대한 측정 가능한 특정 정보를 나타냅니다.

또한 XenServer에서 특정 이벤트가 발생했음을 NMS에 경고하는 에이전트가 시작한 메시지인 트랩을 구성할 수도 있습니다. 쿼리 요청과 트랩 모두 XenServer 풀의 상태를 모니터링하는 데 사용할 수 있습니다. 이들은 메트릭 및 트랩 객체로 정의되며 XenServer 다운로드 페이지에서 다운로드할 수 있는 MIB 파일 XENSERVER-MIB.txt의 OID로 식별됩니다. 다음 표는 이러한 메트릭 및 트랩 객체에 대한 정보를 제공합니다.

메트릭 오브젝트

다음 표에 나열된 메트릭을 사용하여 XenServer 호스트에 대한 특정 정보를 요청할 수 있습니다. 이러한 메트릭은 SNMP 관리자가 SNMP 에이전트에 쿼리 요청을 보낼 때 사용하므로 NMS에서 이 데이터를 볼 수 있습니다.

NMS 또는 xe CLI에서 이러한 메트릭 객체의 반환된 데이터를 볼 수 있습니다. xe CLI에서 메트릭 객체를 쿼리하려면 host-data-source-query 또는 vm-data-source-query을(를) 실행하고 RRDD 데이터 소스를 data-source 매개 변수 값으로 제공하십시오. 예:

xe host-data-source-query data-source=cpu_avg host=<host UUID>
<!--NeedCopy-->

참고:

기본적으로 NMS는 포트 161을 사용하여 SNMP 에이전트에 OID 쿼리 요청을 보냅니다.

객체 식별자(OID) RRDD 데이터 소스 반환된 데이터 유형
.1.3.6.1.4.1.60953.1.1.1.1 memory Dom0 총 메모리(MB) 부호없는 32
.1.3.6.1.4.1.60953.1.1.1.2 memory_internal_free Dom0 사용 가능한 메모리(MB) 부호없는 32
.1.3.6.1.4.1.60953.1.1.1.3 cpu_usage Dom0 CPU 사용량(백분율) 플로트
.1.3.6.1.4.1.60953.1.1.1.4 memory_total_kib 호스트 총 메모리(MB) 부호없는 32
.1.3.6.1.4.1.60953.1.1.1.5 memory_free_kib 호스트 여유 메모리(MB) 부호없는 32
.1.3.6.1.4.1.60953.1.1.1.6 cpu_avg 호스트 CPU 사용량(백분율) 플로트
.1.3.6.1.4.1.60953.1.1.1.7 (참고 1 참조) PCPU 번호 부호없는 32
.1.3.6.1.4.1.60953.1.1.1.8 running_vcpus 실행 중인 vCPU 번호 부호없는 32
.1.3.6.1.4.1.60953.1.1.1.9 running_domains 실행 중인 VM 번호 부호없는 32

참고:

  1. PCPU의 이름은 cpu 뒤에 숫자가 오는 형식으로 되어 있습니다. xe CLI에서 PCPU 수를 쿼리하려면 다음 명령을 실행합니다.

    xe host-data-source-list host=<host UUID> | grep -E 'cpu[0-9]+$'

    This returns a list of the CPU metrics that match the regular expression cpu[0-9]+.

트랩

트랩은 특정 이벤트가 발생할 때 SNMP 관리자에게 알리기 위해 SNMP 에이전트가 보내는 경고로, 이를 통해 XenServer 호스트를 모니터링하고 문제를 조기에 식별할 수 있습니다. 제한에 도달할 때(예: 호스트 CPU 사용량이 너무 높은 경우) 트랩을 생성하도록 SNMP 설정을 구성할 수 있습니다. 트랩이 생성되면 NMS로 전송되고 다음 필드가 트랩 객체의 일부로 반환됩니다.

참고:

기본적으로 풀 코디네이터 호스트의 SNMP 에이전트는 UPD 포트 162를 사용하여 NMS에 트랩을 전송합니다.

객체 식별자(OID) 필드 이름 유형 설명
.1.3.6.1.4.1.60953.1.10.1.1 operation 문자열 다음 값 중 하나일 수 있습니다. add 또는 del. operation은(는) XenServer에서 트랩을 생성하여 NMS로 전송한 경우(XenCenter에서도 알림이 생성됨) add이고, 알림이 제거된 경우(예: 알림을 무시한 경우) del입니다.
.1.3.6.1.4.1.60953.1.10.1.2 ref 문자열 트랩 오브젝트에 대한 참조입니다.
.1.3.6.1.4.1.60953.1.10.1.3 uuid 문자열 트랩 오브젝트의 UUID입니다.
.1.3.6.1.4.1.60953.1.10.1.4 name 문자열 트랩 오브젝트의 이름.
.1.3.6.1.4.1.60953.1.10.1.5 priority 정수 트랩의 심각도. 다음 값 중 하나일 수 있습니다. 1: 위험, 2: 주요, 3: 경고, 4: 경미, 5: 정보, others: 알 수 없음.
.1.3.6.1.4.1.60953.1.10.1.6 class 문자열 생성된 트랩의 범주입니다. 다음 값 중 하나일 수 있습니다. VM, Host, SR, Pool, VMPP, VMSS, PVS_proxy, VDI 또는 Certificate.
.1.3.6.1.4.1.60953.1.10.1.7 obj-uuid 문자열 class 필드의 다양한 클래스의 xapi 객체 UUID입니다.
.1.3.6.1.4.1.60953.1.10.1.8 timestamp 문자열 트랩이 생성된 시간입니다.
.1.3.6.1.4.1.60953.1.10.1.9 body 문자열 name 필드에 대한 자세한 정보.

사전 요구 사항

  • 풀의 모든 호스트는 동일한 XenServer 버전을 실행해야 하며 이 버전에는 SNMP 플러그인이 포함되어야 합니다.

    참고:

    XenCenter에서 SNMP 탭이 보이지 않는 경우 이는 호스트 또는 풀 구성원이 SNMP를 지원하는 XenServer 버전을 실행하고 있지 않기 때문일 수 있습니다. 호스트 또는 풀을 최신 버전의 XenServer로 업데이트합니다.

  • 사용 중인 NMS는 SNMPv2c 또는 SNMPv3을 지원해야 합니다.

  • NMS와 XenServer는 네트워크로 연결되어 있어야 합니다.

제약 조건

  • 전체 풀 또는 풀에 속하지 않은 독립 실행형 호스트에 대한 SNMP 설정을 구성할 수 있습니다. 현재는 풀의 개별 호스트에 대한 SNMP 설정을 구성할 수 없습니다.
  • 이미 SNMP가 활성화되고 구성되어 있는 풀에 호스트를 추가하는 경우 XenCenter는 풀의 SNMP 설정을 새 호스트에 자동으로 적용하지 않습니다. 새 호스트를 추가한 후 풀에서 SNMP 설정을 재구성하거나 풀에 추가하기 전에 동일한 SNMP 설정으로 새 호스트를 구성해야 합니다.

    참고:

    새 호스트를 추가한 후 풀에서 SNMP 설정을 재구성할 때는 호스트가 작동 및 실행 중이고 유지 보수 모드가 아닌지 확인하십시오.

  • Citrix Hypervisor 8.2 CU1에서 XenServer 8로 롤링 풀 업그레이드를 수행하거나 XenServer 호스트 및 풀에 업데이트를 적용하기 전에 이전에 수동으로 수정하여 필요한 경우 다음 구성 파일을 백업하십시오.

    • /etc/snmp/snmpd.xs.conf
    • /etc/sysconfig/snmp
    • /var/lib/net-snmp/snmpd.conf
  • SNMP 에이전트가 오프라인 상태일 때는 트랩을 생성할 수 없습니다. 예를 들어 SNMP 에이전트가 다시 시작되거나 풀 코디네이터가 재부팅되거나 다시 지정된 경우입니다.

xe CLI를 사용하여 SNMP를 구성합니다

xe CLI 또는 XenCenter를 사용하여 SNMP를 구성할 수 있습니다. XenCenter를 사용하여 SNMP를 구성하는 방법에 대한 자세한 내용은 SNMP를 사용한 호스트 및 dom0 리소스 모니터링을 참조하십시오.

result 사물

SNMP를 구성할 때 모든 응답은 JSON 형식으로 반환됩니다. 명령이 성공적으로 실행되면 키 값 쌍 "code": 0을(를) 반환합니다. 일부 명령(예: get-config 명령)은 result(이)라는 중첩된 JSON 객체를 반환합니다. SNMP 구성을 업데이트하는 데 사용되는 set-config 명령에도 result JSON 객체가 필요합니다.

result JSON 객체는 common, agentnmss객체로 구성됩니다.

common

필드 허용된 값 기본값
enabled no(SNMP 서비스 비활성화) 또는 yes(SNMP 서비스 활성화) no
debug_log no(디버그 로깅 비활성화) 또는 yes(디버그 로깅 활성화) no
max_nmss N/A(이 필드는 읽기 전용이며 지원되는 NMS의 최대 수를 지정합니다.) 1

agent

필드 허용된 값 기본값
v2c no(SNMPv2c 비활성화) 또는 yes(SNMPv2c 활성화) yes
community COMMON_STRING_TYPE(메모 1 참조) public
v3 no (v3 비활성화) 또는 yes(v3 활성화) no
user_name COMMON_STRING_TYPE(메모 1 참조)  
authentication_password COMMON_STRING_TYPE, 길이 >= 8(메모 1 참조)  
authentication_protocol MD5 또는 SHA  
privacy_password COMMON_STRING_TYPE, 길이 >= 8(메모 1 참조)  
privacy_protocol DES 또는 AES  
engine_id N/A(이 필드는 읽기 전용이며 SNMP 에이전트가 처음 시작될 때 생성됨)  

nmss

필드 허용된 값 기본값
uuid NMS UUID(NMS 트랩 수신기를 구성할 때 설정하며 이 값은 풀의 모든 호스트에서 동일해야 함)  
address NMS IPv4 주소 또는 호스트 이름(FQDN)  
port 1~65535 162
v2c no(SNMPv2c 비활성화), yes(SNMPv2c 활성화) 또는 SNMPv2c 또는 v3을 지원합니다. yes
community COMMON_STRING_TYPE(메모 1 참조) public
v3 no(v3 비활성화), yes(v3 활성화) 또는 SNMPv2c 또는 SNMPv3을 지원합니다. no
user_name COMMON_STRING_TYPE(메모 1 참조)  
authentication_password COMMON_STRING_TYPE, 길이 >= 8(메모 1 참조)  
authentication_protocol MD5 또는 SHA  
privacy_password COMMON_STRING_TYPE, 길이 >= 8(메모 1 참조)  
privacy_protocol DES 또는 AES  

참고:

  1. COMMON_STRING_TYPE은 다음 요구 사항을 충족하는 문자열을 나타냅니다.
    • 문자, 숫자, 하이픈 (-), 마침표 (.), 파운드 (#), AT 기호 (@), 등호 (=), 콜론 (:) 또는 밑줄 문자 (_) 의 모든 조합
    • 길이는 6에서 32 사이입니다.
  2. 암호는 XenServer의 구성 파일에 일반 텍스트로 저장되지 않습니다. 현지화된 키로 변환되어 저장됩니다. get-config 명령은 암호를 별표 (*) 로 구성된 숨겨진 상수로 표시합니다.

SNMP 서비스 구성

SNMP 서비스의 상태를 확인합니다.

xe host-call-plugin host-uuid=<host-uuid> plugin=snmp fn=status
<!--NeedCopy-->

SNMP 서비스를 시작, 정지 또는 다시 시작합니다.

xe host-call-plugin host-uuid=<host-uuid> plugin=snmp fn=<operation>
<!--NeedCopy-->

여기서 작업start, stop 또는 restart입니다.

SNMP 구성 세부 정보를 가져옵니다.

xe host-call-plugin host-uuid=<host-uuid> plugin=snmp fn=get-config
<!--NeedCopy-->

성공하면 이 명령은 키 값 쌍 "code": 0과(와) SNMP 서비스의 구성 세부 정보가 포함된 result JSON 객체를 반환합니다. 예:

"code": 0,
  "result": {
    "common": {
      "enabled": "no",
      "debug_log": "no",
      "max_nmss": 1
    },
    "agent": {
      "v2c": "yes",
      "v3": "no",
      "community": "public",
      "user_name": "",
      "authentication_password": "",
      "authentication_protocol": "",
      "privacy_password": "",
      "privacy_protocol": "",
      "engine_id": "<engine_id>"
    },
    "nmss": []
  }
<!--NeedCopy-->

result JSON 객체를 원하는 텍스트 편집기에 복사하고 파일에서 모든 개행 문자 (\n)를 제거합니다. SNMP 구성 세부 정보로 필드를 업데이트합니다. NMS 설명서를 참조하고 nmss 객체에 필요한 필드 값을 지정하여 NMS를 구성합니다. 자세한 내용은 위에 나열된 객체를 참조하십시오.

SNMP 서비스를 구성하려면 set-config 명령을 실행하고 편집한 result JSON 객체를 매개 변수 값으로 args:config 매개 변수에 제공합니다.

SNMP 구성을 설정합니다.

xe host-call-plugin host-uuid=<host-uuid> plugin=snmp fn=set-config args:config='<result>'
<!--NeedCopy-->

여기서 result는 복사하고 편집한 get-config 명령에서 반환된 result JSON 객체입니다.

참고:

전체 풀에 대해 SNMP를 구성하려면 풀의 각 호스트에 대해 set-config 명령을 실행해야 합니다.

구성 변경이 성공하면 명령은 키 값 쌍 "code": 0을(를) 반환합니다. 구성 변경에 실패한 경우 set-config 명령은 오류가 발생했음을 나타내는 다음 키 값 쌍 중 하나를 반환합니다.

  • "code": 1: 일반 오류 문자열입니다. 알 수 없는 예외를 예로 들 수 있습니다.
  • "code": 2: 오류 문자열(매개 변수 누락).
  • "code": 3: 각 요소의 형식이 [field_path, key, value, error string]message 개체를 목록으로 반환합니다.

또한 테스트 SNMP 트랩을 NMS에 전송하여 지정된 트랩 수신기 정보가 올바른지 확인할 수 있습니다.

테스트 SNMP 트랩 전송:

xe host-call-plugin host-uuid=<host-uuid> plugin=snmp fn=send-test-trap args:config='{"nmss":[{"uuid":"<uuid>","address":"<address>","port":162,"v2c":"yes","v3":"no","community":"public","user_name":"<user_name>","authentication_password":"<authentication_password>","authentication_protocol":"<authentication_protocol>","privacy_password":"<privacy_password>","privacy_protocol":"<privacy_protocol>"}]}'
<!--NeedCopy-->

이 명령은 msg_name/TEST_TRAPmsg_body/This is a test trap from XenServer pool "<pool name>" to verify the NMS Trap Receiver configuration.을(를) 사용하여 NMS에 테스트 트랩을 보냅니다.

테스트 트랩을 받지 못한 경우 SNMP 구성을 다시 확인하십시오. 실패할 경우 send-test-trap 명령은 오류가 발생했음을 나타내는 다음 키 값 쌍 중 하나를 반환합니다.

  • "code": 1: 일반 오류 문자열입니다. 알 수 없는 예외를 예로 들 수 있습니다.
  • "code": 2: 오류 문자열(매개 변수 누락).
  • "code": 3: 각 요소의 형식이 [field_path, key, value, error string]message 개체를 목록으로 반환합니다.
  • "code": 4: 각 요소의 형식이 [nms address, nms port, error string]message 객체를 목록으로 반환합니다.
배포 모니터링 및 관리