[ 모니터링 ] 인스턴스 정지 감지를 위한 Prometheus 설정

2024. 8. 9. 14:23·🌥️Cloud Study🌥️/Etc

up에서 job이 Prometheus 혹은 노드(인스턴스)인 경우 모두 1

상황 : 위 이미지의 표현식에서, A변수에 값이 1보다 작을 경우 인스턴스가 죽은 것으로 판단 될 수 있지 않을까?라고 생각했다.

 

결과는 No data라고 출력된다.


살아있는지의 여부는 Prometheus에서 알려주는데,
다운된 Prometheus의 생존 여부를 다운된 쪽에서 알려줘야 Grafana에서 인지할 수 있는 구조이기 때문에 
이 방식으로는 Prometheus가 가동중인 것을 확인할 순 있지만, 다운되었을 경우 알람을 받는 것은 불가능하다.

 

생각한 방법 : Grafana 측에 Prometheus를 설치하고, ~ (이어서 작성하기)

 

인스턴스 정지 감지를 위한 추가 Prometheus 설치

 

 

GitHub - dev-library/log-tracking-app: 행동 추적 후 로그를 남겨주는 애플리케이션입니다.

행동 추적 후 로그를 남겨주는 애플리케이션입니다. Contribute to dev-library/log-tracking-app development by creating an account on GitHub.

github.com

    @GetMapping("/app-health")
    public String healthCheck() {
        return "app_health_status 1.0\n# EOF";
    }

어플리케이션 내부에 위와 같은 엔드포인트를 생성해주었고, 접속 시에는 `app_health_status 1.0 # EOF`로 보여지게 되는데, 이게 바로 Prometheus 매트릭 양식이다. (`(매트릭명) (수치) # EOF`)

 

위의 경우, app_health_status라는 매트릭에 1.0이라는 값이 들어갔다는 의미이다.

 

scrape_configs:
  - job_name: '식별가능한 job이름'
    scrape_interval: 1m(수집 주기, 15s는 15초)
    metrics_path: '/app-health'
    static_configs:
      - targets: ['타겟 어플리케이션ip:포트번호']
      
# 예시
scrape_configs:
  - job_name: "prometheus"

    static_configs:
      - targets: ["localhost:9090"]

  - job_name: "app-health-status"
    scrape_interval: 30s
    metrics_path: '/app-health'
    static_configs:
      - targets: ['192.168.2.53:8080']

이를 인식하게 만들기 위해 prometheus.yml 파일 내용을 위와 같이 수정해주고, Grafana에서 해당 Prometheus를 Data sources로 추가해주자.

 

대시보드를 새롭게 만들어준다.

 

인스턴스가 다운된것을 Grafana에서 확인 가능하다

 

'🌥️Cloud Study🌥️ > Etc' 카테고리의 다른 글

[ Logging ] 서버 내 로그 관리 정책 수립 및 구현  (0) 2024.08.09
[ Prometheus ] 프로메테우스 설치 및 서비스 설정  (0) 2024.08.09
[ 모니터링 ] 매트릭, 커스텀 매트릭 알아보기  (0) 2024.08.09
[ Grafana ] status fail 오류 해결  (0) 2024.08.09
[ Network ] Cisco OS 알아보기  (0) 2024.08.02
'🌥️Cloud Study🌥️/Etc' 카테고리의 다른 글
  • [ Logging ] 서버 내 로그 관리 정책 수립 및 구현
  • [ Prometheus ] 프로메테우스 설치 및 서비스 설정
  • [ 모니터링 ] 매트릭, 커스텀 매트릭 알아보기
  • [ Grafana ] status fail 오류 해결
L_Chae
L_Chae
🎮😻🤓🖥✨
  • L_Chae
    Cherish
    L_Chae
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 🌥️Cloud Study🌥️
        • AWS
        • NHN
        • KT
        • Microsoft (Azure 900)
        • TroubleShooting
        • IaC
        • Etc
      • STUDY
        • English
        • Japanese
        • 개인정보보호 관련
      • 초등학교 AI 교육 진행
        • 2024학년도 1학년-2학년
        • 2025학년도 4학년
      • 2024 KDT 📕
        • Lecture
        • Study 📗
        • Study-JAVA
        • Project
        • etc
      • INTERLUDE ✦
        • 2022 SYSTEM STUDY
        • 2022 Winter Study
        • 2023 AutoMobility STUDY
        • 2023 Summer Study (CPPG)
        • 2023 Reversing STUDY
        • etc
      • Private🔒
        • MacBook 💻
        • Screenshot 🩷
        • Photo 🖼️
        • FFXIV - Backup 🎮
        • Tistory
      • PBL 📗
        • 논문 스터디
        • Backup
      • Project 🖤
        • 2022-2) 개인정보보호 소학회
        • 2022-2) winter GURU2 - iOS
        • 2023-1) PBL 3
        • 2023-2) PBL 4
        • 2024-1) SW-AI교육 실습 일지
      • CTF 🚩
        • 2022
        • 2023
      • News scrap 📰
        • 2022
        • 2023
      • 2022 공부 로그 🐯
      • 2023 공부 로그🐰
  • 블로그 메뉴

    • 글쓰기
    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    JLPT N1
    ansible
    JLPT
    content collection
    N1
    jlpt n1 도전기
    ansible galaxy
    멱등성
    deprecation warning
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
L_Chae
[ 모니터링 ] 인스턴스 정지 감지를 위한 Prometheus 설정
상단으로

티스토리툴바