Uptime Kuma을 통한 서버 헬스 체크

서버 헬스체크 + 메일 알림을 설정하는 방법을 알려드릴게요.

1) 로그인

http://[ip or 도메인]:3001 접속 → 최초 접속이면 관리자 계정(아이디/비밀번호) 생성 화면이 뜹니다. 만들고 로그인

image

2) 이메일 알림(Notification) 먼저 설정

모니터 만들기 전에 알림 채널부터 만들어두는 게 편합니다.

image
  1. 우측 상단 Settings → Notifications 탭
  2. Setup Notification 클릭
  3. Notification Type: Email (SMTP) 선택
  4. 아래 정보 입력 (Gmail 예시):
    • Hostname: smtp.gmail.com
    • Port: 587
    • Secure: STARTTLS 선택
    • Username: 본인 Gmail 주소
    • Password: Gmail 앱 비밀번호 (일반 비밀번호 아님, 구글 계정 2단계 인증 켜고 앱 비밀번호 발급 필요)
    • From Email: 본인 Gmail 주소
    • To Email: 알림 받을 이메일 주소
  5. Test 버튼으로 테스트 메일 발송해보고 오면 확인
  6. Save

3) 모니터 추가 (서버 헬스체크)

case1) http(s) 모니터링
  • 좌측 상단 + Add New Monitor 클릭
  • 입력:
    • Monitor Type: HTTP(s) (B서버에 헬스체크 엔드포인트 있으면) 또는 TCP Port(그냥 포트 살아있나만 볼 때)
    • Friendly Name: B서버 헬스체크 같은 이름
    • URL: http://B서버IP:포트
    • Heartbeat Interval: 60 (초 단위, 60초마다 체크)
    • Retries: 3 (연속 3번 실패해야 DOWN 처리 → 오탐 방지)
    • Heartbeat Retry Interval: 20 (재시도 간격)
    • Notifications: 아까 만든 이메일 알림 체크 ✅
  • Save
case2) tcp port 모니터링
  1. 좌측 상단 + Add New Monitor 클릭
  2. 이렇게 입력:
    • Monitor Type: TCP Port
    • Friendly Name: B서버 SSH 생존체크 (구분되게 이름 짓기)
    • Hostname: B서버 IP (또는 도메인)
    • Port: 22
    • Heartbeat Interval: 60
    • Retries: 3
    • Notifications: 아까 만든 이메일 알림 체크 ✅
  3. Save

저장하면 바로 체크가 시작되고, 대시보드에서 초록불(Up)/빨간불(Down) 상태를 실시간으로 볼 수 있어요.

4) 확인 방법

  • 대시보드 메인 화면에서 등록한 모니터들의 상태, 응답시간 그래프, Uptime % 확인 가능
  • 서버 죽여보거나 포트 막아서 테스트 → 설정한 Retries 횟수만큼 실패하면 상태가 Down으로 바뀌고 메일 옴
  • 복구되면 “Up” 알림 메일도 자동으로 옴

5)실제 테스트

서버를 2개를 모니터링 해봤는데 그중 한개는 일부로 서버를 종료 시켰다. (아래 107번 서버).

image

얼마뒤 지정한 메일로 서버 DOWN 됐다는 메일 수신. 다시 서버 살리니 좀있다 UP 됐다는 메일 수신.

image

팁

  • Status Page 기능도 있어서, 좌측 메뉴에서 공개 상태 페이지 만들어 팀원들과 공유 가능
  • Slack, Telegram 등 다른 알림 채널도 필요하면 Notifications에서 추가 가능