성능 모니터링을 위한 Prometheus와 Grafana 배포
성능 모니터링 지원을 통해 관리자는 Prometheus 와 Grafana 통합을 통해 대규모 엔터프라이즈 배포의 시스템 상태를 추적할 수 있습니다. 관리자는 Prometheus 배포 및 Grafana 를 통해 OpenMetrics 형식으로 Mattermost 애플리케이션에서 다양한 데이터 포인트를 수집하고 저장할 수 있습니다.
성능 모니터링 지원을 통해 관리자는 Prometheus 와 Grafana 통합을 통해 대규모 엔터프라이즈 배포의 시스템 상태를 추적할 수 있습니다. 이러한 통합은 여러 Mattermost 서버에서 데이터 수집을 지원하며, Mattermost를 고가용성 모드 로 실행하는 경우 특히 유용합니다. 시스템 상태를 추적한 후에는 Grafana 대시보드에서 성능 알림 설정 을 할 수 있습니다.
관리자는 Prometheus 배포 및 Grafana 를 통해 OpenMetrics 형식으로 Mattermost 애플리케이션에서 다양한 데이터 포인트를 수집하고 저장할 수 있습니다.
Prometheus와 Grafana를 배포하고 싶지 않으신가요? Mattermost 메트릭 플러그인을 사용하여 성능 지표 수집 도 가능합니다.
Prometheus 설치#
Prometheus와 Grafana는 Mattermost와 같은 서버에 설치할 수 있지만, 별도의 서버에 이러한 통합을 설치하고 Prometheus가 Mattermost 및 연결된 다른 서버에서 모든 지표를 가져오도록 구성하는 것을 권장합니다.
- Prometheus 미리 컴파일된 바이너리 다운로드 를 통해 Darwin, Linux, Windows를 포함한 많은 인기 배포판에 대한 바이너리를 제공합니다. 설치 지침은 Prometheus 설치 가이드 를 참조하세요.
prometheus.yml이라는 Prometheus 구성 파일에서 다음 설정을 권장합니다:<hostname1>:<port>파라미터를 Mattermost 호스트 IP 주소와 포트로 교체하여 데이터를 수집하세요. HTTP를 사용하여/metrics에 연결합니다.- Mattermost 시스템 콘솔에서 환경 > 성능 모니터링 으로 이동하여 성능 모니터링 활성화 를 true 로 설정한 다음 수신 주소 (포트만, 예:
8067)를 지정하고 저장 을 선택하세요. 자세한 내용은 구성 설정 문서를 참조하세요. - 서버가 실행 중인지 테스트하려면
<ip>:<port>/metrics로 이동하세요. - 마지막으로
vi prometheus.yml을 실행하여 Prometheus 구성을 완료하세요. Prometheus 서비스를 시작하는 방법은 Prometheus가 제공하는 종합 가이드 를 참조하세요. - 서비스가 시작되면
<localhost>:<port>/graph에서 데이터에 접근할 수 있습니다. Prometheus 서비스를 사용하여 그래프를 만들 수 있지만, 여기서는 Grafana에서 지표 및 분석 대시보드를 만드는 데 중점을 둡니다.
# my global config
global:
scrape_interval: 5s # Set to 5 seconds for optimal performance monitoring.
evaluation_interval: 5s # Set to 5 seconds for optimal performance monitoring.
# scrape_timeout is set to the global default (10s).
# Attach these labels to any time series or alerts when communicating with
# external systems (federation, remote storage, Alertmanager).
external_labels:
monitor: 'mattermost-monitor'
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first.rules"
# - "second.rules"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus'
# The scrape_interval can be overridden per job if needed (5s matches the global default).
# scrape_interval: 5s
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["<hostname1>:<port>", "<hostname2>:<port>"]

HTTP를 사용하여 /metrics 에 연결하려면 Mattermost Enterprise 라이선스가 필요합니다.
문제 해결 조언은 Prometheus FAQ 페이지 를 확인하세요.
Grafana 설치#
Prometheus와 Grafana는 Mattermost와 같은 서버에 설치할 수 있지만, 별도의 서버에 이러한 통합을 설치하고 Prometheus가 Mattermost 및 연결된 다른 서버에서 모든 지표를 가져오도록 구성하는 것을 권장합니다.
- Ubuntu 또는 Debian에서 Grafana 미리 컴파일된 바이너리 다운로드 를 통해 설치하세요. Redhat, Windows, Mac을 포함한 다른 배포판에 대한 바이너리도 사용 가능합니다. 설치 지침은 Grafana 설치 가이드 를 참조하세요.
- Grafana 패키지는 서비스로 설치되므로 서버를 쉽게 시작할 수 있습니다. 자세한 내용은 설치 가이드 를 참조하세요.
- 기본 HTTP 포트는
3000이며 기본 사용자 이름과 비밀번호는admin입니다. - 아래 스크린샷에 정의된 다음 설정으로 Mattermost 데이터 소스를 추가하세요.

- 문제 해결 조언은 Grafana 문제 해결 페이지 를 확인하세요.
시작하기#
시작하는 데 도움이 되도록 Grafana에서 공유된 세 가지 샘플 대시보드를 다운로드할 수 있습니다:
UI 또는 HTTP API에서 Grafana 대시보드를 가져오는 방법은 이 Grafana 가이드 를 참조하세요.
- Mattermost Performance Monitoring v2: 애플리케이션, 클러스터, 작업 서버 및 시스템 지표를 포함한 성능 모니터링에 대한 자세한 차트를 포함합니다.
- Mattermost Notification Health Monitoring: Mattermost에서 전송된 다양한 유형의 알림을 추적하는 데 사용할 수 있습니다. Mattermost 알림 상태 모니터링에 접근하고 활성화하려면 기능 플래그
NotificationMonitoring이true로 설정되어 있어야 합니다. 시스템 관리자는 시스템 콘솔을 통해 알림 모니터링 데이터 수집을 비활성화 할 수 있습니다. - Mattermost Web App Performance Metrics: 웹 바이탈 및 Mattermost 특정 지표를 포함한 클라이언트 측 성능에 대한 자세한 지표를 포함합니다.
- Mattermost Desktop App Performance Metrics: CPU 및 메모리 사용량 지표를 포함한 클라이언트 측 데스크톱 성능에 대한 자세한 지표를 포함합니다.
- Mattermost Mobile App Performance Metrics: 웹 바이탈 및 Mattermost 특정 지표를 포함한 클라이언트 측 모바일 성능에 대한 자세한 지표를 포함합니다.
- Mattermost Threaded Discussion Metrics: 스레드 토론 기능과 관련된 쿼리에 대한 자세한 지표를 포함합니다.
- Mattermost Performance KPI Metrics: 성능 및 시스템 상태 모니터링을 위한 주요 지표를 포함합니다.
- Mattermost Performance Monitoring (Bonus Metrics): 일부 배포에서 모니터링하기 중요할 수 있는 이메일 발송 횟수나 파일 업로드 횟수와 같은 추가 지표를 포함합니다.
수집되는 항목#
Mattermost는 시스템 성능을 모니터링하는 데 사용할 수 있는 사용자 정의 지표 와 표준 Go 지표 를 제공합니다.
다음 단계#
성능 모니터링을 설정한 후 다음을 원할 수 있습니다:
* 지표가 임계값을 초과할 때 알림을 받기 위해 성능 알림 설정 을 구성하세요.
* 로그를 지표 스파이크와 검색하고 연관 짓기 위해 중앙 집중식 로깅을 위한 Grafana Loki 배포 를 진행하세요.
