개발자라면 서버나 웹사이트의 가용성(Uptime) 을 확인하는 것은 아주 중요한 일입니다. 다운타임이 발생했는지도 모르고 며칠 지나버린 경험, 다들 한 번쯤은 있으시죠?
오늘 소개할 도구는 바로 Uptime Kuma, 오픈소스 기반의 서버/서비스 모니터링 도구입니다. 이름은 귀엽지만, 기능은 굉장히 강력하고 실용적이에요.
Uptime Kuma란?
Uptime Kuma는 서버, 웹사이트, 포트, 데이터베이스 등 다양한 종류의 서비스를 실시간으로 모니터링하고, 문제가 생기면 알림까지 보내주는 오픈소스 자가 호스팅 모니터링 툴입니다.
Node.js 기반으로 만들어졌으며, 웹 UI도 깔끔하고 직관적이어서 Zabbix, Prometheus, Grafana 같은 툴보다 진입 장벽이 낮습니다.
- 실시간 상태 체크 (HTTP, TCP, Ping, DNS 등)
- 푸시/이메일/슬랙/디스코드 등 다양한 알림 시스템
- 아름다운 통계 그래프
- 다크모드, 다국어 지원
- Docker로 쉽게 배포 가능

1. 주요 기능
1.1. 다양한 모니터링 방식 지원
- HTTP/HTTPS
- TCP 포트
- Ping (ICMP)
- DNS 레코드 확인
- Push 기반 모니터링
1.2. 유연한 알림 시스템
서비스 상태가 비정상일 때 슬랙, 텔레그램, 디스코드, 이메일, Gotify 등 다양한 채널로 즉시 알림을 보낼 수 있습니다. 커스텀 웹훅도 설정 가능해요.
1.3. 아름답고 직관적인 UI
모든 상태는 웹 대시보드에서 한눈에 확인할 수 있고, 시간별 가용률 통계와 로그도 보기 쉽게 정리돼 있습니다. 모바일에서도 최적화된 화면 제공!
1.4. Docker로 간편한 설치
docker run -d \
--restart=always \
-p 3001:3001 \
-v uptime-kuma:/app/data \
--name uptime-kuma \
louislam/uptime-kuma
설치하고 http://localhost:3001에 접속하면 바로 사용 가능!
2. 사용 예시
- 회사 내 웹사이트 상태 모니터링
- 프리랜서 개인 서버 관리
- 클라이언트에게 가용률 보고
- CI/CD 서버, API, DB 등 내부 자원 체크
3. 장점 vs 단점
설치 및 설정이 매우 간편 | 대규모 시스템 모니터링에는 한계 |
깔끔한 UI/UX | 복잡한 커스터마이징은 어려움 |
다양한 알림 채널 지원 | 일부 알림 서비스는 직접 설정 필요 |
오픈소스 (MIT 라이선스) | 고급 지표 수집은 제한적 |
"간편하고 예쁜 모니터링 도구를 찾고 있다면, Uptime Kuma는 최고의 선택!"
개인 서버나 중소 규모의 서비스 운영자라면, Uptime Kuma 하나로 대부분의 모니터링 요구를 충족할 수 있습니다. 무엇보다도 설치가 쉽고 UI가 예뻐서 쓰는 재미도 있어요.
GitHub 링크: https://github.com/louislam/uptime-kuma
4. uptime-kuma 설치 및 실행하기
4.1. uptime-kuma 설치
git clone https://github.com/louislam/uptime-kuma.git
cd uptime-kuma
npm install
4.2. 실행하기
node server/server.js

4.3. pm2 사용하여 실행하기
pm2 start server/server.js --name uptime-kuma
pm2 save

4.4. uptime-kuma 설정하기
- 새로운 모니터링 추가하기
- 모니터링 종류, 이름, URL 등을 입력하고 저장
- 텔레그램으로 알림 설정 등(봇 토큰, 채팅 ID 입력)

4.5. uptime-kuma 상태 모니터링
- localhost:3001/dashboard

'IT속으로' 카테고리의 다른 글
Node.js + MySQL + bcrypt로 회원가입 & 로그인 만들기 (0) | 2025.04.06 |
---|---|
Node.js + Express + MySQL로 로그인 시스템 만들기 (0) | 2025.04.06 |
Node.js + Express + SQLite로 로그인 기능 만들기 (0) | 2025.04.06 |
Node.js Express + JSON 파일을 활용한 로그인 기능 (0) | 2025.04.06 |
node.js Express + Session 으로 로그인 상태 유지하기 (0) | 2025.04.06 |
댓글