오라클클라우드에서 웹사이트 모니터링하기.(Uptime Kuma)

오라클클라우드에서 웹사이트 모니터링하기.(Uptime Kuma)

안녕하세요. 달소입니다.

사이트를 여러개 운영하다보면 내 사이트가 잘 되고있는지. 인증서는 얼마나 남았는지 등 꼼꼼하게 챙겨봐야 할게 참 많습니다.
그래서 소개시켜 드린 툴이 Uptime Kuma인데요.

Uptime Kuma를 통해 서버의 헬스체크(ping) 및 웹사이트 도메인을 입력해서 주기적으로 사이트의 헬스체크가 가능합니다.

헬스체크 결과에 따른 알림도 여러방식으로 가능하구요.

이 Uptime Kuma를 오라클클라우드(외부)에 설치하는 이유는 내부에서 인터넷이 장애가 나면.. 어차피 통신이 끊겨서 알람도 못 보내고 못 받는 상황이 오기 때문입니다.

내부 모니터링은 자원 모니터링도 가능한 Zabbix와 같은 툴을 추천 드리고 외부에서는 간단하게 활용가능 한 Uptime Kuma를 사용해 보시는건 어떠신지 추천 드려봅니다 ㅎㅎ

구축환경

Oracle Cloud ARM 인스턴스
OS : Ubuntu 20.04
Docker : 20.10.11
Docker-compose : 1.29.2

Uptime Kuma 컨테이너 생성하기.

컨테이너를 생성하기전에 데이터를 저장할 디렉터리먼저 생성해주겠습니다.

mkdir -p /data/uptime-kuma/data

사용할 이미지는 https://hub.docker.com/r/louislam/uptime-kuma 이며 여기서는 docker-compose를 제공해주지 않아서 직접(?) 대충 커스텀해서 만들었습니다.

docker-compose 를 사용하는경우 추후 마이그레이션시 설정값을 까먹을일이 없어서 더 선호하는 편입니다.

vi /data/uptime-kuma/docker-compose.yml

version: "3"

services:
  app:
    container_name: uptime-kuma
    image: louislam/uptime-kuma:latest
    restart: always
    volumes:
      - /data/uptime-kuma/data:/app/data
    ports:
      - "3001:3001"

작성후에는 해당 디렉터리로 이동해주신뒤 docker-compose를 실행시켜주세요.

cd /data/uptime-kuma
docker-compose up -d

이렇게 실행시키신뒤 ip:3001 포트로 접근해주시면 아래처럼 사이트가 열립니다.
혹시 열리시지 않는다면 OS방화벽 및 사용하고 계신 클라우드의 방화벽 정책을 확인하시면 되겠습니다.

사용방법은 더 간단합니다.

각 모니터링 종류마다 다르지만

웹의경우 HTTP(s)를 누른뒤 이름 URL정도만 넣어도 작동이 되며 알람부분은 추후에 설정해줄 경우 통신 실패시 슬랙이나 메일같이 알람을 받을수 있게 설정 하는것입니다.

이렇게 쉽게 구축이 가능합니다!

다음글에서는 이 Uptime Kuma에서 사이트의 이상을 확인했을때 알람을 보내줄 수 있도록 구현해보도록 하겠습니다.