업타임 쿠마: 내 서버의 24시간 감시병

안녕하세요, Mark입니다.

지금까지 서버에 Ghost 블로그와 워드프레스까지 올렸습니다. 그런데 문득 이런 생각이 들었어요.

“블로그가 잘 돌아가고 있는지 내가 어떻게 알지? 내가 자는 동안 서버가 다운돼도 모르는 거 아니야?”

블로그는 결국 남들이 찾아와서 읽어줘야 의미가 있는데, 내가 모르는 사이에 다운되어 있다면 방문자는 그냥 빈 화면만 보고 떠나버립니다. 특히 에드센스 심사 중에 그런 일이 생기면 정말 곤란하죠.

이 문제를 해결해주는 게 바로 오늘 설치할 업타임 쿠마(Uptime Kuma)입니다.


🐻 업타임 쿠마가 뭔가요?

업타임 쿠마는 한마디로 내 서버와 웹사이트를 24시간 감시해주는 무료 오픈소스 모니터링 도구입니다.

유료 모니터링 서비스들이 있지만, 자체 서버가 있는 우리한테는 이걸 직접 설치해서 공짜로 쓸 수 있습니다. GitHub에서 무려 6만 개 이상의 별(Star)을 받은 검증된 도구예요.

쉽게 비유하면 이렇습니다.

💡 비유하자면: 건물 경비원입니다. 24시간 건물(서버) 입구를 지키면서 문제가 생기면 즉시 주인(나)한테 연락을 합니다. 경비원이 없으면 도둑이 들어도, 불이 나도 주인은 아침에 출근해서야 알게 되는 거죠.


🔍 뭘 감시할 수 있나요?

업타임 쿠마가 감시할 수 있는 것들이 생각보다 많습니다.

모니터링 종류설명
HTTP(S)웹사이트가 정상적으로 열리는지 확인
TCP 포트특정 포트가 열려있는지 확인
Ping서버가 살아있는지 네트워크 응답 확인
DNS도메인 설정이 올바른지 확인
도커 컨테이너컨테이너가 실행 중인지 직접 확인
SSL 인증서인증서 만료일 추적 및 알림

저처럼 서버에 Ghost, 워드프레스, NPM, 포테이너 등 여러 프로그램을 올려놓은 경우, 이것들을 한꺼번에 등록해두면 하나라도 문제가 생기는 순간 바로 알 수 있습니다.

특히 SSL 인증서 만료 추적 기능이 유용합니다. Let’s Encrypt 인증서는 90일마다 갱신되는데, NPM이 자동 갱신을 해주긴 하지만 혹시라도 실패하면 사이트가 갑자기 보안 경고를 내뿜거든요. 업타임 쿠마가 미리 경고해줍니다.


📱 알림은 어떻게 받나요?

문제가 생겼을 때 알림을 받을 수 있는 방법이 무려 90가지 이상입니다.

대표적인 것들만 보면:

  • 텔레그램 ← 가장 많이 씁니다
  • 디스코드
  • 슬랙
  • 이메일 (SMTP)
  • 카카오톡 (써드파티 연동)
  • 푸시 알림 (스마트폰)

저는 텔레그램 봇을 연동해서 사용하고 있습니다. 서버에 뭔가 문제가 생기면 스마트폰으로 바로 알림이 오거든요. 새벽에 서버가 다운돼도 아침에 확인하는 게 아니라, 다운되는 순간 알림을 받고 바로 대응할 수 있습니다.


📦 포테이너 스택으로 설치하기

설치는 이제 익숙하시죠? ㅎㅎ 포테이너 스택으로 뚝딱입니다.

Stacks → Add Stack 으로 이동 후 아래 내용을 붙여넣습니다.

services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: always
    ports:
      - 3001:3001
    volumes:
      - /home/ubuntu/uptime-kuma:/app/data
      # ▲ 데이터를 홈 폴더에 저장해서 백업하기 쉽게 합니다
      - /var/run/docker.sock:/var/run/docker.sock
      # ▲ 도커 컨테이너 상태를 직접 감시하기 위해 필요합니다
services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: always
    ports:
      - 3001:3001
    volumes:
      - /home/ubuntu/uptime-kuma:/app/data
      # ▲ 데이터를 홈 폴더에 저장해서 백업하기 쉽게 합니다
      - /var/run/docker.sock:/var/run/docker.sock
      # ▲ 도커 컨테이너 상태를 직접 감시하기 위해 필요합니다

스택 설명

항목설명
louislam/uptime-kuma:1안정적인 버전 1 사용 (latest보다 안정적)
3001:3001접속 포트
/app/data설정과 데이터 저장 경로
docker.sock도커 컨테이너 상태를 직접 감시하기 위한 연결

💡 docker.sock이 뭔가요? 도커 컨테이너들의 상태를 업타임 쿠마가 직접 들여다볼 수 있게 해주는 통로입니다. 이게 있어야 “Ghost 컨테이너가 죽었다”, “워드프레스 컨테이너가 살아있다” 같은 걸 감시할 수 있어요.

Deploy the Stack 클릭 후 설치 완료!


🌐 접속 및 초기 설정

브라우저에서 접속합니다.

http://[서버 IP]:3001
http://[서버 IP]:3001

⚠️ 업타임 쿠마는 도메인 연결을 권장하지 않습니다. 포테이너, NPM과 마찬가지로 외부에 노출하면 보안상 좋지 않아요. IP와 포트로만 접속하세요.

처음 접속하면 관리자 계정을 만드는 화면이 나옵니다. 아이디와 비밀번호를 설정하면 대시보드가 열립니다.


➕ 모니터링 추가하기

설치가 끝났으면 이제 감시할 항목들을 등록해야 합니다.

+ 모니터 추가 버튼을 클릭하면 등록 화면이 나옵니다.

웹사이트 모니터링 추가

항목입력값
모니터 유형HTTP(s)
이름Ghost 블로그 (원하는 이름)
URLhttps://occultodyssey.com
하트비트 간격60 (60초마다 체크)

저장하면 바로 모니터링이 시작됩니다. 초록색 불이 들어오면 정상, 빨간색이면 다운된 겁니다.

도커 컨테이너 모니터링 추가

항목입력값
모니터 유형Docker Container
이름Ghost Container
컨테이너 이름/IDghost

이렇게 등록하면 컨테이너가 갑자기 죽어도 바로 알 수 있습니다.


📊 상태 페이지 기능

업타임 쿠마에는 공개 상태 페이지를 만드는 기능도 있습니다.

대형 서비스들 보면 status.서비스명.com 같은 페이지에서 현재 서버 상태를 공개하는 걸 볼 수 있잖아요. 업타임 쿠마로 그걸 만들 수 있습니다.

독자들한테 “현재 블로그 운영 상태”를 투명하게 보여주는 용도로 쓸 수 있어요. 블로그 신뢰도가 올라가는 효과도 있고요. 뭔가 있어보이기도 하고 ㅎㅎ


✅ 핵심 요약

항목내용
무엇을웹사이트, 도커 컨테이너, SSL 인증서 등 감시
어떻게주기적으로 접속해보고 응답 없으면 알림 발송
알림 방법텔레그램, 디스코드, 이메일 등 90가지 이상
감시 주기기본 60초, 조정 가능
특이사항도메인 연결 없이 IP로만 접근 권장

마치며

블로그를 설치하는 것도 중요하지만, 설치한 것들이 잘 돌아가는지 감시하는 것도 서버 운영의 중요한 부분입니다. 업타임 쿠마 하나로 서버에 올라간 모든 프로그램을 한눈에 관리할 수 있어요.

다음 편에서는 이렇게 만든 블로그가 구글, 네이버, 빙 같은 검색엔진에 노출되도록 서치 콘솔에 도메인을 등록하는 방법을 알아보겠습니다. 아무리 좋은 블로그도 검색에 안 잡히면 진짜 일기장이 되는 거니까요. ㅎㅎ


Mark의 한마디: “서버 운영하면서 가장 불안한 게 ‘지금 잘 돌아가고 있나?’ 하는 거였는데, 업타임 쿠마 설치하고 나서 그 불안이 사라졌습니다. 스마트폰에 텔레그램 알림 설정해두면 어디서든 서버 상태를 바로 알 수 있거든요. 설치 안 하면 손해입니다 ㅎㅎ”

댓글 남기기