DevOps/Docker

[Docker] Uptime Kuma 사용법

기록하는 백앤드개발자 2024. 10. 25. 04:11
반응형

ㅁ 들어가며

  회사 동료를 통에 알게된 Uptime Kuma는 오픈 소스로 제공되는 자체 호스팅형 모니터링 도구로, 서버와 웹사이트의 상태를 지속적으로 모니터링할 수 있는 강력한 툴이다. 이 글에서는 Uptime Kuma를 Docker로 설치하고 사용하는 방법을 정리하였다. 그래서 기본적으로 Docker가 필요하다. 자세한 활용 방법은 유튜브 영상에서 확인할 수 있다. 

ㅁ Uptime Kuma란?

  Uptime Kuma는 서버의 헬스체크(ping), 웹사이트 도메인 상태 확인, SSL 인증서 만료 여부 감지 등 다양한 기능을 제공하는 모니터링. 도구다. 무료 오픈 소스로 제공되며, 자체 호스팅이 가능하다. 또한, HTTP, HTTPS, TCP 포트 모니터링 및 다양한 알림 서비스를 연동할 수 있다. git 소스는 uptime-kumas에 있다.

 

ㅁ Docker 볼륨 설정

# 볼륨 생성
$ docker volume create uptime-kuma

# 볼륨확인
$ docker volume inspect uptime-kuma
[
    {
        "CreatedAt": "2024-10-24T18:24:31Z",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/uptime-kuma/_data",
        "Name": "uptime-kuma",
        "Options": null,
        "Scope": "local"
    }
]

ㅇ 데이터를 저장할 볼륨을 생성한다.

 

ㅁ Uptime Kuma 컨테이너 실행

# 도커 실행
docker run -d --restart=always \
  -p 3001:3001 \
  -v uptime-kuma:/app/data \
  --name uptime-kuma \
  louislam/uptime-kuma:latest

 

 

ㅁ 접속 테스트 및 관리자 계정 생성

ㅇ http://localhost:3001로 접속하여 관리자 계정을 만든다.

 

 

ㅁ 모니터링 추가

ㅇ 메인 페이지에서 '추가' 버튼을 클릭하여 새로운 모니터링을 설정한다.

ㅇ HTTP  웹사이트 URL을 입력하여 상태를 확인해 보았다.

 

ㅁ 모니터링 종류

종류 모니터링
일반 모니터링 Group
HTTP(s)
TCP Port
Ping
HTTP(s) - 키워드
HTTP(s) - Json Query
gRPC(s)- 키워드
DNS
도커 컨테이너
HTTP(s) - Browser Engine (Chrome/Chromium) (Beta)
수동 모니터링 Push
특정 모니터링 스팀 게임 서버
GameDig
MQTT
Kafka Producer
Microsoft SQL Server
PostgreSQL
MySQL/MariaDB
MongoDB
Radius
Redis

 

ㅁ 알림 설정

ㅇ 슬랙 연동

 - 슬랙에서 웹훅 URL을 생성하고 Uptime Kuma에 입력하여 알림을 받을 수 있다.

ㅇ 이메일 알림

 - SMTP 설정을 통해 이메일로 알림을 받을 수 있다.

ㅇ 기타 알림 서비스가 가능

 - 텔레그램, 디스코드 등 다양한 플랫폼과 연동 가능하다.

ㅇ 연동 방법은 Uptime Kuma로 서비스 상태 모니터링하기 | 클라우드타입 유튜브 영상에 잘 나와 있다.

  ㄴ 연동 방법 뿐 아니라 아래처럼 다양한 부분에서 활용할 수 있다. 

 

ㅁ 활용 예시

ㅇ 서버 상태 체크: 서버의 가동 여부를 지속적으로 확인하여 다운타임을 최소화할 수 있다.

ㅇ SSL 인증서 만료 체크: SSL 인증서의 만료일을 미리 감지하여 갱신 시기를 놓치지 않도록 한다.

ㅇ 다양한 프로토콜 지원: HTTP, HTTPS, TCP 등 다양한 프로토콜로 웹사이트와 서비스를 모니터링할 수 있다.

 

ㅁ 마무리 

 Uptime Kuma는 간단하면서도 강력한 기능을 제공하는 모니터링 도구다. 오픈 소스로 제공되어 누구나 무료로 사용할 수 있으며, 다양한 알림 옵션과 프로토콜 지원으로 유연한 모니터링 환경을 구축할 수 있다. Docker를 통해 손쉽게 설치하고 설정할 수 있어 개인 사용자부터 기업까지 폭넓게 활용 가능하다.

ㅁ 함께 보면 좋은 사이트

 git: uptime-kumas

[Docker] Uptime-kuma 구축하기

  ㄴ 로컬 디렉토리를 마운트하는 docker-compose 방법 정리해 놓음.

Uptime Kuma로 서비스 상태 모니터링하기 | 클라우드타입

반응형