4장. 환경에 대한 정보 수집

4.1. 모니터링 및 관찰 기능

이 장에서는 Red Hat Virtualization 시스템에서 지표와 로그를 모니터링하고 가져올 수 있는 여러 가지 방법을 제공합니다. 이러한 방법에는 다음이 포함됩니다.

  • 데이터 웨어하우스 및 Grafana를 사용하여 RHV 모니터링
  • Elasticsearch의 원격 인스턴스에 메트릭 전송
  • Red Hat Virtualization Manager에 Insights 배포

4.1.1. 데이터 웨어하우스 및 Grafana를 사용하여 RHV 모니터링

4.1.1.1. Grafana 개요

Grafana는 ovirt_engine_history 의 oVirt 데이터 웨어하우스 PostgreSQL 데이터베이스에서 수집한 데이터를 기반으로 보고서를 표시하는 데 사용되는 웹 기반 UI 도구입니다. 사용 가능한 보고서 대시보드에 대한 자세한 내용은 Grafana 대시보드 및 Grafana 웹 사이트 - 대시보드 를 참조하십시오.

Manager의 데이터는 1분마다 수집되며 시간별 및 일별 집계로 집계됩니다. 데이터는 engine-setup (Basic 또는 Full scale) 중 데이터 웨어하우스 구성에 정의된 스케일링 설정에 따라 유지됩니다.

  • 기본 (기본값) - 24시간 동안 저장된 샘플 데이터, 1개월 동안 저장되는 시간별 데이터, 일별 데이터 - 매일 저장되지 않은 집계.
  • full (권장)- 24시간 동안 저장된 샘플 데이터, 2개월 동안 저장되는 시간별 데이터, 매일 5년간 저장되는 집계.

전체 샘플 확장을 위해서는 데이터 웨어하우스를 별도의 가상 시스템으로 마이그레이션해야 할 수 있습니다.

참고

Red Hat은 이러한 구성 요소를 서로 별도의 시스템에 설치할 수 있더라도 데이터 웨어하우스 데이터베이스, 데이터 웨어하우스 서비스 및 Grafana 모두에만 설치할 수 있도록 지원합니다.

4.1.1.2. 설치

Grafana 통합은 독립 실행형 관리자 설치 및 셀프 호스트 엔진 설치에서 Red Hat Virtualization Manager 엔진 설정을 실행할 때 기본적으로 활성화되어 설치됩니다.

참고

Grafana는 기본적으로 설치되지 않으며 이전 버전의 RHV에서 업그레이드를 수행하거나 백업을 복원하거나 데이터 웨어하우스가 별도의 시스템으로 마이그레이션되는 경우와 같은 일부 시나리오에서 수동으로 설치해야 할 수 있습니다.

Grafana 통합을 수동으로 활성화하려면 다음을 수행합니다.

  1. 환경을 전역 유지 관리 모드로 설정합니다.

    # hosted-engine --set-maintenance --mode=global
  2. Grafana를 설치할 시스템에 로그인합니다. 데이터 웨어하우스가 구성된 시스템과 동일한 시스템(일반적으로 Manager 시스템)이어야 합니다.
  3. 다음과 같이 engine-setup 명령을 실행합니다.

    # engine-setup --reconfigure-optional-components
  4. 답변 : 이 시스템에 Grafana를 설치합니다.

    Configure Grafana on this host (Yes, No) [Yes]:
  5. 글로벌 유지 관리 모드를 비활성화합니다.

    # hosted-engine --set-maintenance --mode=none

Grafana 대시보드에 액세스하려면 다음을 수행합니다.

  • https://<engine FQDN 또는 IP address>/ovirt-engine-grafana로 이동합니다.

또는

  • 관리 포털의 웹 관리 시작 페이지에서 Monitoring Portal (포털 모니터링)을 클릭합니다.
4.1.1.2.1. Single Sign-on에 대한 Grafana 구성

Manager engine-setup은 Manager의 기존 사용자가 관리 포털에서 SSO로 로그인할 수 있도록 자동으로 Grafana를 구성하지만 사용자를 자동으로 생성하지는 않습니다. 새 사용자(Grafana UI에서Invite )를 만들고 새 사용자를 확인한 다음 로그인할 수 있습니다.

  1. Manager에서 아직 정의되지 않은 경우 사용자의 이메일 주소를 설정합니다.
  2. 기존 admin 사용자로 Grafana에 로그인합니다(처음에 구성된 admin).
  3. Configuration(구성) Users(사용자) 로 이동하여 Invite (인벤토리)를 선택합니다.
  4. 이메일 주소와 이름을 입력하고 Role(역할)을 선택합니다.
  5. 다음 옵션 중 하나를 사용하여 초대를 보냅니다.

    • Send invite mail을 선택하고 Submit(제출)을 클릭합니다. 이 옵션에는 Grafana 시스템에 구성된 운영 로컬 메일 서버가 필요합니다.

      또는

    • 보류 중인 초대를 선택합니다

      • 원하는 항목을 찾습니다
      • 복사 초대선택
      • 이 링크를 복사하여 브라우저 주소 표시줄에 직접 붙여넣거나 다른 사용자에게 전송하여 계정을 만듭니다.

보류 중인 초대 옵션을 사용하면 이메일이 전송되지 않으며 이메일 주소가 실제로 존재할 필요는 없습니다. Manager 사용자의 이메일 주소로 구성된 한 유효한 주소를 찾을 수 있습니다.

이 계정으로 로그인하려면 다음을 수행합니다.

  1. 이 이메일 주소가 있는 계정을 사용하여 Red Hat Virtualization 웹 관리 시작 페이지에 로그인합니다.
  2. Monitoring Portal (모니터링 포털)을 선택하여 Grafana 대시보드를 엽니다.
  3. Sign in with oVirt Engine Auth 를 선택합니다.

4.1.1.3. 기본 제공 Grafana 대시보드

다음 대시보드는 초기 Grafana 설정에서 데이터 센터, 클러스터, 호스트 및 가상 머신 데이터를 보고할 수 있습니다.

표 4.1. 기본 제공 Grafana 대시보드

대시보드 유형콘텐츠

주요 대시보드

  • 시스템 대시보드 - 최신 구성에 따라 시스템의 호스트 및 스토리지 도메인에 대한 리소스 사용량 및 가동 시간.
  • 데이터 센터 대시보드 - 최신 구성에 따라 선택한 데이터 센터의 클러스터, 호스트 및 스토리지 도메인에 대한 리소스 사용량, 피크 및 가동 시간.
  • 클러스터 대시보드 - 최신 구성에 따라 선택한 클러스터의 호스트 및 가상 시스템에 대한 리소스 사용량, 피크, 과다 할당, 가동 시간.
  • 호스트 대시보드 - 선택한 기간 동안 선택한 호스트의 최신 및 기록 구성 세부 정보 및 리소스 사용 지표입니다.
  • 가상 시스템 대시보드 - 선택한 기간 동안 선택한 가상 시스템의 최신 구성 세부 정보 및 리소스 사용 지표입니다.
  • 핵심 대시보드 - 선택한 기간 동안 선택한 클러스터에서 호스트 및 가상 시스템의 사용자 리소스 사용량 및 운영 체제 수.

인벤토리 대시보드

  • 최신 구성에 따라 인벤토리 대시보드 - 선택한 데이터 센터에 대한 호스트, 가상 시스템, 실행 중인 가상 시스템, 리소스 사용 및 과다 할당 비율입니다.
  • Host Inventory dashboard - FQDN, VDSM 버전, 운영 체제, CPU 모델, CPU 코어, 메모리 크기, 날짜 생성, 삭제 날짜, 선택한 호스트에 대한 하드웨어 세부 정보 최신 구성에 따라.
  • Storage Domains Inventory dashboard - 도메인 유형, 스토리지 유형, 사용 가능한 디스크 크기, 사용된 디스크 크기, 총 디스크 크기, 생성 날짜, 선택한 스토리지 도메인의 날짜.
  • 가상 시스템 인벤토리 대시보드 - 최신 구성에 따라 템플릿 이름, 운영 체제, CPU 코어, 메모리 크기, 선택한 가상 시스템의 날짜 및 삭제 날짜.

서비스 수준 대시보드

  • 가동 시간 대시보드 - 선택한 기간에 호스트, 고가용성 가상 시스템 및 모든 가상 시스템의 계획된 가동 중지 시간, 계획되지 않은 다운타임 및 총 시간.
  • 호스트 가동 시간 대시보드 - 선택한 기간 내에 선택한 호스트에 대한 가동 시간, 계획되지 않은 가동 중지 시간 및 계획되지 않은 가동 중지 시간.
  • Virtual Machines Uptime 대시보드 - 선택한 기간 내에 선택한 가상 머신의 가동 시간, 계획된 가동 중지 시간 및 계획되지 않은 가동 중지 시간.
  • 클러스터 서비스 품질

    • 호스트 대시보드 - 선택한 호스트는 선택한 기간 중 CPU 및 메모리 임계값 이상 및 그 아래로 수행되었습니다.
    • 가상 시스템 대시보드 - 선택한 가상 시스템이 선택한 기간 중 CPU 및 메모리 임계값 이상 및 아래에 수행된 시간입니다.

추세 대시보드

  • 추세 대시보드 - 선택한 기간 동안 선택한 클러스터의 메모리 및 CPU별로 가장 적게 사용되는 가상 시스템 및 호스트의 사용량 비율입니다.
  • Host Trend dashboard(호스트 추세 대시보드) - 선택한 기간 동안 선택한 호스트의 리소스 사용량(가상 시스템, CPU, 메모리 및 네트워크 Tx/Rx 수)입니다.
  • 가상 시스템 추세 대시보드 - 선택한 기간 동안 선택한 가상 시스템의 CPU, 메모리, 네트워크 Tx/Rx, 디스크 I/O(CPU, 메모리, 네트워크 Tx/Rx, 디스크 I/O) 사용.
  • Host Resource Usage dashboard - 선택한 기간에 선택한 호스트에 대한 일일 및 매시간 리소스 사용량(가상 시스템, CPU, 메모리, 네트워크 Tx/Rx 수)입니다.
  • 가상 시스템 리소스 사용 대시보드 - 선택한 기간에 선택한 가상 시스템의 일일 및 매시간 리소스 사용량(CPU, 메모리, 네트워크 Tx/Rx, 디스크 I/O)입니다.
참고

Grafana 대시보드에는 Red Hat Virtualization 관리 포털에 대한 직접 링크가 포함되어 있으므로 클러스터, 호스트 및 가상 시스템에 대한 추가 세부 정보를 빠르게 볼 수 있습니다.

4.1.1.4. 사용자 정의된 Grafana 대시보드

사용자 지정 대시보드를 만들거나 보고 요구 사항에 따라 기존 대시보드를 복사 및 수정할 수 있습니다.

참고

대시보드는 사용자 정의할 수 없습니다.

4.1.2. Elasticsearch의 원격 인스턴스에 지표 및 로그 전송

참고

Red Hat은 Elasticsearch를 소유하거나 유지 관리하지 않습니다. 이 옵션을 배포하려면 Elasticsearch 설정 및 유지 관리를 잘 알고 있어야 합니다.

메트릭 데이터와 로그를 기존 Elasticsearch 인스턴스에 보내도록 Red Hat Virtualization Manager 및 호스트를 구성할 수 있습니다.

이렇게 하려면 Manager 및 모든 호스트에서 collectdrsyslog 를 구성하여 engine.log,vdsm.log collectd 지표를 수집하고 Elasticsearch 인스턴스로 전송하는 Ansible 역할을 실행합니다.

사용 가능한 지표 스키마에 대한 설명이 포함된 전체 목록을 포함하여 자세한 내용은 원격 Elasticsearch 인스턴스에 RHV 모니터링 데이터 전송을 참조하십시오.

4.1.2.1. collectd 및 rsyslog 설치

호스트에 collectdrsyslog 를 배포하여 로그 및 지표를 수집합니다.

참고

새 호스트에 대해 이 절차를 반복할 필요가 없습니다. 추가되는 모든 새 호스트는 host-deploy 중에 Elasticsearch에 데이터를 전송하도록 관리자가 자동으로 구성합니다.

절차

  1. SSH를 사용하여 Manager 시스템에 로그인합니다.
  2. /etc/ovirt-engine-metrics/config.yml.example 을 복사하여 /etc/ovirt-engine-metrics/config.yml.d/config.yml 을 만듭니다.

    # cp /etc/ovirt-engine-metrics/config.yml.example /etc/ovirt-engine-metrics/config.yml.d/config.yml
  3. config.yml 에서 ovirt_env _name 및 elasticsearch_host 매개 변수를 편집하고 파일을 저장합니다. 다음 추가 매개 변수를 파일에 추가할 수 있습니다.

    use_omelasticsearch_cert: false
    rsyslog_elasticsearch_usehttps_metrics: !!str off
    rsyslog_elasticsearch_usehttps_logs: !!str off
    • 인증서를 사용하는 경우 use_omelasticsearch_certtrue로 설정합니다.
    • 로그 또는 지표를 비활성화하려면 rsyslog_elasticsearch_usehttps_metrics 및/또는 rsyslog_elasticsearch_usehttps_logs 매개변수를 사용합니다.
  4. 호스트에 collectdrsyslog 를 배포합니다.

    # /usr/share/ovirt-engine-metrics/setup/ansible/configure_ovirt_machines_for_metrics.sh

    configure_ovirt_machines_for_metrics.sh 스크립트는 linux-system-roles (RHEL의 시스템 역할을 사용하여 관리 및 구성 작업 참조)를 포함하는 Ansible 역할을실행하고 호스트에 rsyslog 를 배포하고 구성하는 데 사용합니다. rsyslogcollectd 에서 지표를 수집하여 Elasticsearch로 보냅니다.

4.1.2.2. 로깅 스키마 및 로그 분석

Discover(검색 ) 페이지를 사용하여 RHV에서 수집한 데이터를 대화형으로 살펴봅니다. 수집된 각 결과 세트를 문서 라고 합니다. 문서는 다음 로그 파일에서 수집됩니다.

  • engine.log - 모든 oVirt Engine UI 충돌, Active Directory 조회, 데이터베이스 문제 및 기타 이벤트를 포함합니다.
  • VDSM.log - 가상화 호스트의 관리자 에이전트인 VDSM의 로그 파일이며 호스트 관련 이벤트를 포함합니다.

다음 필드를 사용할 수 있습니다.

매개 변수description

_id

문서의 고유 ID

_index

문서가 속한 인덱스의 ID입니다. project.ovirt-logs 접두사가 있는 인덱스는 검색 페이지에 있는 유일한 관련 인덱스입니다.

호스트 이름

engine.log의 경우 Manager의 호스트 이름입니다. vdsm.log의 경우 호스트의 호스트 이름입니다.

level

로그 레코드 심각도: TRACE, DEBUG, INFO, WARN, ERROR, FATAL.

message

문서 메시지의 본문입니다.

ovirt.class

이 로그를 생성한 Java 클래스의 이름입니다.

ovirt.correlationid

engine.log에만 해당. 이 ID는 관리자가 수행하는 단일 작업의 여러 부분을 서로 연결하는 데 사용됩니다.

ovirt.thread

로그 레코드가 생성된 Java 스레드의 이름입니다.

tag

데이터를 필터링하는 데 사용할 수 있는 사전 정의된 메타데이터 세트입니다.

@timestamp

레코드가 발행된 [time](Troubleshooting# information-is-missing-from-kibana).

_score

해당 없음

_type

해당 없음

ipaddr4

시스템의 IP 주소입니다.

ovirt.cluster_name

vdsm.log의 경우. 호스트가 속한 클러스터의 이름입니다.

ovirt.engine_fqdn

관리자의 FQDN.

ovirt.module_lineno

ovirt.class 에 정의된 명령을 실행한 파일 내의 파일 및 행 번호입니다.

4.1.3. Insights 배포

Red Hat Virtualization Manager가 설치된 기존 RHEL(Red Hat Enterprise Linux) 시스템에 Red Hat Insights를 배포하려면 다음 작업을 완료합니다.

  • 시스템을 Red Hat Insights 애플리케이션에 등록합니다.
  • Red Hat Virtualization 환경에서 데이터 수집을 활성화합니다.

4.1.3.1. 시스템을 Red Hat Insights에 등록

시스템을 등록하여 Red Hat Insights 서비스와 통신하고 Red Hat Insights 콘솔에 표시된 결과를 확인합니다.

[root@server ~]# insights-client --register

4.1.3.2. Red Hat Virtualization 환경에서 데이터 수집 활성화

다음 행을 포함하도록 /etc/ovirt-engine/rhv-log-collector-analyzer/rhv-log-collector-analyzer.conf 파일을 수정합니다.

upload-json=True

4.1.3.3. Insights 콘솔에서 Insights 결과 보기

시스템 및 인프라 결과는 Insights 콘솔에서 볼 수 있습니다. Overview(개요 ) 탭은 인프라에 대한 현재 위험 요소에 대한 대시보드 보기를 제공합니다. 이 시작 지점에서 특정 규칙이 시스템에 미치는 영향을 조사하거나 시스템 기반 접근 방식을 사용하여 시스템이 위험을 초래하는 모든 규칙 일치를 볼 수 있습니다.

절차

  1. Rule hits by severity(심각도별 규칙 조회수)를 선택하여 인프라에 미치는 총 위험 (심각,중요,보통 또는 낮음)에 따라 규칙을 확인합니다.

    또는

  2. Rule hits by category(범주 규칙 조회수)를 선택하여 인프라에 야기되는 위험 유형을 확인합니다(가용성,안정성,성능 또는 보안).
  3. 이름별로 특정 규칙을 검색하거나 규칙 목록을 스크롤하여 해결을 자동화하는 Ansible 플레이북의 위험, 시스템 노출 및 가용성에 대한 높은 수준의 정보를 확인합니다.
  4. 규칙을 클릭하여 규칙 설명을 확인하고 관련 기술 자료 문서에 대해 자세히 알아보고 영향을 받는 시스템 목록을 확인합니다.
  5. 시스템을 클릭하여 탐지된 문제 및 문제 해결 단계에 대한 특정 정보를 확인합니다.