7장. CephOrchestrator를 사용한 모니터링 스택 관리
스토리지 관리자는 백엔드에서 Cephadm과 함께 Ceph Orchestrator를 사용하여 모니터링 및 경고 스택을 배포할 수 있습니다. 모니터링 스택은 Prometheus, Prometheus exporters, Prometheus Alertmanager 및 Grafana로 구성됩니다. 사용자는 Cephadm을 사용하여 YAML 구성 파일에 이러한 서비스를 정의하거나 명령줄 인터페이스를 사용하여 배포할 수 있습니다. 동일한 유형의 여러 서비스가 배포되면 고가용성 설정이 배포됩니다. 노드 내보내기는 이 규칙에 대한 예외입니다.
Red Hat Ceph Storage 5.0은 Prometheus, Grafana, Alertmanager 및 node-exporter와 같은 모니터링 서비스를 배포하기 위한 사용자 지정 이미지를 지원하지 않습니다.
Cephadm을 사용하여 다음 모니터링 서비스를 배포할 수 있습니다.
Prometheus는 모니터링 및 경고 툴킷입니다. 사전 정의된 임계값에 도달한 경우 Prometheus 내보내기에서 제공한 데이터를 수집하고 사전 구성된 경고를 실행합니다. Prometheus manager 모듈은
ceph-mgr의 컬렉션 지점에서 Ceph 성능 카운터를 전달할 수 있는 Prometheus 내보내기를 제공합니다.데몬을 제공하는 지표와 같은 스크랩 대상을 포함한 Prometheus 구성은 Cephadm에 의해 자동으로 설정됩니다. 또한 Cephadm은 기본 경고 목록(예: 상태 오류, 10% OSD 다운 또는 pgs 비활성)을 배포합니다.
- Alertmanager는 Prometheus 서버에서 전송한 경고를 처리합니다. 이는 경고를 중복, 그룹 및 라우팅하여 올바른 수신자에게 라우팅합니다. 기본적으로 Ceph 대시보드는 자동으로 수신자로 구성됩니다. Alertmanager는 Prometheus 서버에서 보낸 경고를 처리합니다. Alertmanager를 사용하여 경고를 음소거할 수 있지만 Ceph 대시보드를 사용하여 음소거할 수도 있습니다.
Grafana는 시각화 및 경고 소프트웨어입니다. Grafana의 경고 기능은 이 모니터링 스택에서 사용되지 않습니다. 경고의 경우 Alertmanager가 사용됩니다.
기본적으로 Grafana에 대한 트래픽은 TLS로 암호화됩니다. 고유한 TLS 인증서를 제공하거나 자체 서명된 인증서를 사용할 수 있습니다. Grafana를 배포하기 전에 사용자 정의 인증서가 구성되지 않은 경우 Grafana에 대해 자체 서명된 인증서가 자동으로 생성되고 구성됩니다. Grafana의 사용자 지정 인증서는 다음 명령을 사용하여 구성할 수 있습니다.
구문
ceph config-key set mgr/cephadm/grafana_key -i PRESENT_WORKING_DIRECTORY/key.pem ceph config-key set mgr/cephadm/grafana_crt -i PRESENT_WORKING_DIRECTORY/certificate.pem
노드 내보내기는 설치된 노드에 대한 데이터를 제공하는 Prometheus의 내보내기제입니다. 모든 노드에 노드 내보내기를 설치하는 것이 좋습니다. 이 작업은 node-exporter 서비스 유형의 monitoring.yml 파일을 사용하여 수행할 수 있습니다.
7.1. CephOrchestrator를 사용하여 모니터링 스택 배포 링크 복사링크가 클립보드에 복사되었습니다!
모니터링 스택은 Prometheus, Prometheus 내보내기, Prometheus Alertmanager, Grafana 및 Ceph Exporter로 구성됩니다. Ceph 대시보드는 이러한 구성 요소를 사용하여 클러스터 사용량 및 성능에 대한 세부 지표를 저장하고 시각화합니다.
YAML 파일 형식의 서비스 사양을 사용하여 모니터링 스택을 배포할 수 있습니다. 모든 모니터링 서비스에는 yml 파일에 구성된 네트워크와 포트가 있을 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- 노드에 대한 루트 수준 액세스입니다.
절차
Ceph Manager 데몬에서 prometheus 모듈을 활성화합니다. 이렇게 하면 Prometheus에서 읽을 수 있도록 내부 Ceph 지표가 노출됩니다.
예제
[ceph: root@host01 /]# ceph mgr module enable prometheus중요Prometheus를 배포하기 전에 이 명령이 실행되는지 확인합니다. 배포 전에 명령이 실행되지 않은 경우 Prometheus를 재배포하여 구성을 업데이트해야 합니다.
ceph orch redeploy prometheus다음 디렉터리로 이동합니다.
구문
cd /var/lib/ceph/DAEMON_PATH/예제
[ceph: root@host01 mds/]# cd /var/lib/ceph/monitoring/참고디렉터리
모니터링이없으면 생성합니다.monitoring.yml파일을 생성합니다.예제
[ceph: root@host01 monitoring]# touch monitoring.yml다음 예와 유사한 콘텐츠를 사용하여 사양 파일을 편집합니다.
예제
service_type: prometheus service_name: prometheus placement: hosts: - host01 networks: - 192.169.142.0/24 --- service_type: node-exporter --- service_type: alertmanager service_name: alertmanager placement: hosts: - host01 networks: - 192.169.142.0/24 --- service_type: grafana service_name: grafana placement: hosts: - host01 networks: - 192.169.142.0/24 --- service_type: ceph-exporter참고모니터링 스택 구성 요소
alertmanager,prometheus,grafana가 동일한 호스트에 배포되었는지 확인합니다.node-exporter및ceph-exporter구성 요소를 모든 호스트에 배포해야 합니다.모니터링 서비스를 적용합니다.
예제
[ceph: root@host01 monitoring]# ceph orch apply -i monitoring.yml
검증
서비스를 나열합니다.
예제
[ceph: root@host01 /]# ceph orch ls호스트, 데몬 및 프로세스를 나열합니다.
구문
ceph orch ps --service_name=SERVICE_NAME예제
[ceph: root@host01 /]# ceph orch ps --service_name=prometheus
Prometheus, Grafana 및 Ceph 대시보드는 모두 서로 통신하도록 자동 구성되므로 Ceph 대시보드에서 완전히 작동하는 Grafana 통합이 생성됩니다.