서버 모니터링 및 알림 GRAFANA,PROMETHEUS,ZABBIX
서버 모니터링 및 알림 GRAFANA,PROMETHEUS,ZABBIX

서버 모니터링 및 알림 GRAFANA,PROMETHEUS,ZABBIX

gubun
Infra
Stack
grafana
prometheus
zabbix
진행기간
2024년 7월 ~ 진행 중
작성일
2024년 07월 06일 00시 00분
Author

🔖 요약


notion image
notion image
notion image
 
notion image
notion image
 

👏 프로젝트 소개


  • 프로젝트 개요
    • 프로젝트 이름: Grafana, Prometheus, Exporter, Zabbix 도입 및 운영
    • 프로젝트 기간: 2024년 7월 1일 ~ 현재
    • 역할: 시스템 엔지니어
      • 오픈 소스 솔루션 리서치
      • 서버 선정 및 구축
      • 유지 관리 및 운영

✍️ 프로젝트 배경


  • 도입 이전 상황
    • 서버 상태를 모니터링할 수 있는 시스템이 부재
    • 서버 성능 및 상태를 수동으로 개별 확인해야 하는 번거로움과 비효율성
    • 서버에서 발생하는 문제를 실시간으로 감지하고 대응하기 어려움
  • 도입 이유 및 목표
    • 도입 이유:
      • 서버 상태 및 성능 모니터링 자동화 필요
      • 효율적인 서버 관리 및 문제 대응 능력 강화
    • 목표:
      • Grafana, Prometheus, Exporter, Zabbix를 이용한 실시간 서버 모니터링 시스템 구축
      • 특정 임계치 초과 시 Rocket.Chat으로 웹훅 알림 기능 구현

🔦 기술 스택 및 주요 기능 구현


  • 기술 스택
    • 주요 기술:
      • Grafana (시각화 대시보드)
      • Prometheus (모니터링 및 경고 시스템)
      • Exporter (서버 메트릭 수집)
      • Zabbix (모니터링 및 경고 시스템)
      • Rocket.Chat (알림 전송)
  • 주요 기능 및 구현 내용
    • 서버 모니터링 및 알림 시스템:
      • Prometheus와 Exporter를 사용한 서버 메트릭 수집
        • CPU, 메모리 사용량, 네트워크 트래픽 등의 메트릭 수집
      • Grafana 대시보드를 통한 시각화
        • 실시간 데이터 시각화를 통해 서버 상태 및 성능을 한눈에 파악
      • Zabbix 에이전트를 통한 서버 메트릭 수집
        • Grafana&Prometheus 의 부족한 알림(패키지 변경 등) 및 이중화 모니터링
      • 임계치 초과 시 Rocket.Chat으로 알림 전송
        • 설정된 임계치 초과 시 웹훅을 통해 Rocket.Chat으로 자동 알림 전송

🔦 도입 과정


  1. 초기 요구사항 분석
    1. 기능
      설명
      실시간 모니터링
      서버 상태와 성능을 실시간으로 모니터링하는 기능.
      데이터 시각화
      수집된 데이터를 Grafana 대시보드를 통해 시각화하는 기능.
      알림 시스템
      특정 임계치 초과 시 Rocket.Chat으로 알림을 보내는 기능.
      자동화된 메트릭 수집
      Exporter를 통해 서버 메트릭을 자동으로 수집.
  1. 오픈 소스 모니터링 도구 리서치
    1. 💡
      Prometheus, Grafana, Exporter 조합을 사용하여 전체 시스템 모니터링 구현
      제품
      Prometheus
      Grafana
      Exporter
      개발사
      Prometheus Team
      Grafana Labs
      커뮤니티
      출시
      2012년
      2014년
      각기 다름
      데이터 수집
      O
      X
      O
      시각화
      X
      O
      X
      알림 기능
      O
      X
      X
      확장성
      O
      O
      O
      사용 편의성
  1. 서버 설치 및 모니터링 환경 구성
    1. 설치 정보
      1. 소프트웨어
        버전
        Prometheus
        2.31.2+ds1
        Grafana
        11.1
        Exporter
    2. 설치
      1. Prometheus 설치 및 설정
        1. notion image
        2. 모니터링 대상 서버 Exporter 설치 및 Prometheus와의 연동 설정
        3. Prometheus 서버 설치 및 메트릭 수집 설정
      2. Grafana 대시보드 구성
        1. notion image
        2. Grafana 설치 및 Prometheus 데이터 소스 연동
        3. 대시보드 구성 및 메트릭 시각화 설정
      3. 알림 시스템 설정
        1. notion image
        2. Rocket.Chat과의 웹훅 연동 설정
        3. 임계치 초과 시 자동 알림 전송 설정
      4. Zabbix 서버 설치
        1. notion image
        2. zabbix 저장소 설치 및 서버 패키지 설치
        3. apache2, mysql 설치 및 설정
        4. 웹 접속 및 환경 설정
      5. Zabbix 에이전트 설치
        1. 모니터링 대상 호스트 zabbix 저장소 설치 및 에이전트 패키지 설치
        2. config 서버 IP 설정
        3. 웹 GUI 에서 호스트 등록 및 설정

🔦 결과 및 성과


  • 성과 및 결과
    • 도입 후 성과
      • 실시간 서버 모니터링 시스템 구축
        • 수동 점검 없이 실시간으로 서버 상태를 모니터링하고 관리할 수 있게 되었습니다.
      • 효율적인 문제 대응
        • 임계치 초과 시 자동 알림 시스템을 통해 신속한 대응이 가능해졌습니다.
      • 서버 관리의 효율성 증대
        • 모든 서버의 상태와 성능을 하나의 대시보드에서 통합적으로 관리할 수 있어 관리 효율성이 향상되었습니다.
  • 향후 계획
    • 정기적인 시스템 업데이트 및 유지보수

댓글

guest