Uptime Kuma를 사용하여 Linux에서 가동시간 모니터링 도구를 설정하는 방법

Uptime Kuma를 사용하여 Linux에서 가동시간 모니터링 도구를 설정하는 방법

Uptime Kuma는 간단하면서도 강력한 가동시간 모니터링 도구입니다. 이를 통해 로컬 네트워크나 더 넓은 인터넷에서 호스팅하는 모든 서비스를 추적할 수 있습니다.

이 문서에서는 Ubuntu 및 Docker를 사용하여 로컬 네트워크에 Uptime Kuma를 설치하고 배포하는 방법을 보여줍니다. 또한 Uptime Kuma 인스턴스를 사용자 정의하여 Telegram에 상태 알림을 보내는 방법도 보여드리겠습니다.

Uptime Kuma를 사용하는 이유는 무엇입니까?

Uptime Kuma는 웹 서버를 추적하고 핑할 수 있을 뿐만 아니라 Docker 컨테이너의 상태도 확인할 수 있습니다. 이로 인해 Uptime Kuma는 모든 네트워크 서비스를 위한 이상적인 올인원 웹 포털이 되었습니다.

Uptime Kuma의 가장 큰 장점 중 하나는 기본적으로 강력한 알림 시스템이 제공된다는 것입니다. 즉, 이상이 발견될 때마다 다양한 채널을 통해 자동으로 메시지를 보내도록 가동시간 모니터를 설정할 수 있습니다.

작동 중인 Uptime Kuma 인스턴스를 보여주는 스크린샷.

업타임 쿠마 설치

Docker 및 Docker Compose 얻기

먼저 Docker 및 Docker Compose 저장소에 대한 GPG 서명 키를 가져옵니다.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

“/etc/apt/sources.list.d/” 아래에 Docker용 새 저장소 파일을 만듭니다.

sudo nano /etc/apt/sources.list.d/docker.list

새 저장소 파일 안에 다음 코드 줄을 붙여넣습니다.

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Ubuntu 시스템의 패키지 저장소를 업데이트하고 업그레이드합니다.

sudo apt update && sudo apt upgrade

Docker 및 Docker Compose 패키지를 해당 종속성과 함께 설치합니다.

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git

현재 실행 중인 사용자에게 Docker 및 Docker Compose를 실행할 수 있는 올바른 권한이 있는지 확인하세요.

sudo usermod -aG docker ramces

가동 시간 Kuma 확보 및 구축

Uptime Kuma Docker 컨테이너를 위한 새 디렉터리를 만듭니다. 여기에는 인스턴스의 레시피 파일이 포함됩니다.

mkdir uptime-kuma && cd. /uptime-kuma

안으로 들어가면 즐겨 사용하는 텍스트 편집기를 사용하여 새 “docker-compose.yml”을 만듭니다.

nano. /docker-compose.yml

새 Compose 파일 안에 다음 코드 블록을 붙여넣습니다.

---
version: "3.8"
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- uptime-kuma:/app/data
ports:
- 3001:3001
restart: always
volumes:
uptime-kuma: null

새로운 Uptime Kuma 인스턴스용 Docker 컨테이너를 빌드합니다.

sudo docker compose up -d

Nginx를 사용하여 Uptime Kuma를 위한 역방향 프록시 만들기

공개적으로 액세스할 수 있는 URL에서 Uptime Kuma에 액세스할 수 있도록 Nginx에 역방향 프록시를 생성할 것입니다 .

선호하는 텍스트 편집기를 사용하여 새 Nginx 사이트 구성 파일을 만듭니다.

sudo nano /etc/nginx/sites-available/uptimekuma

새 사이트 구성 파일 내에 다음 코드 블록을 작성합니다.

server {

server_name uptime.myvpsserver.top;


location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}}

Nginx의 “sites-available” 폴더에서 “sites-enabled” 디렉터리로 사이트 구성 파일을 연결합니다:

sudo ln -s /etc/nginx/sites-available/uptimekuma /etc/nginx/sites-enabled

새 설정을 적용하려면 Nginx 서버 데몬을 다시 시작하세요.

sudo systemctl restart nginx

SSL 인증서 설치

시작하려면 시스템에 코어 스냅 패키지가 실행되고 있는지 확인해야 합니다.

sudo snap install core

전자프론티어재단의 certbot용 스냅을 설치합니다. 이는 역방향 프록시의 SSL 인증서를 자동으로 요청하고 유지 관리할 수 있는 작은 도구입니다.

sudo snap install certbot --classic

새로운 certbot 설치를 EFF에 등록하여 certbot이 제대로 작동하는지 테스트하십시오.

sudo certbot register --agree-tos -m ramces@email.invalid

새 역방향 프록시에 대한 새 SSL 인증서를 요청합니다.

sudo certbot --nginx -d uptime.myvpsserver.top

Uptime Kuma 구성 및 모니터 추가

웹 브라우저에서 해당 주소로 이동하여 Uptime Kuma 설치가 역방향 프록시에서 제대로 실행되고 있는지 확인하세요.

Uptime Kuma의 기본 방문 페이지를 보여주는 스크린샷.

새 관리자 계정에 대해 원하는 세부 정보를 양식에 입력한 다음 “만들기”를 클릭하여 인스턴스를 계속 진행하세요.

새 인스턴스에 대한 관리자 세부 정보를 보여주는 스크린샷입니다.

페이지 왼쪽 상단에 있는 “새 모니터 추가” 버튼을 클릭하세요.

강조 표시된 스크린샷

그러면 현재 페이지에 모니터링하려는 서비스 유형을 지정할 수 있는 새 하위 창이 열립니다. 예를 들어, “모니터 유형” 값을 “HTTP(S)”에서 “TCP 포트”로 변경하면 컴퓨터의 특정 포트가 현재 열려 있는지 확인하는 모니터가 생성됩니다.

사용 가능한 다양한 유형의 모니터를 보여주는 스크린샷.

모니터링하려는 컴퓨터의 세부 정보를 입력합니다.

페이지 하단까지 아래로 스크롤한 다음 “저장”을 클릭하여 새 모니터를 시작하세요.

간단한 포트 확인 모니터의 전체 세부정보를 보여주는 스크린샷입니다.

가동 시간 Kuma에 대한 외부 알림 설정

Uptime Kuma 인스턴스의 기본 페이지로 이동하여 페이지 오른쪽 상단에 있는 사용자 아이콘을 클릭하세요.

화면 오른쪽 상단에 있는 사용자 아이콘 배지를 강조하는 스크린샷.

페이지의 드롭다운 메뉴에서 “설정” 옵션을 클릭하세요.

사용자 배지 상황에 맞는 메뉴의 설정 옵션을 강조하는 스크린샷.

페이지의 새 하위 창에서 “알림” 카테고리를 선택하세요.

알림 카테고리를 강조표시하는 스크린샷.

텔레그램 알림 서비스 생성

“설정 알림” 버튼을 클릭하세요. 기본적으로 텔레그램 계정을 사용하여 알림 봇을 연결하고 생성할 수 있는 작은 창이 나타납니다.

새 알림 경고의 이름을 입력한 다음 “Bot Token” 텍스트 상자 아래의 BotFather 링크를 클릭하세요.

Telegram BotFather 링크를 강조하는 스크린샷.

BotFather의 텔레그램 페이지에서 “메시지 보내기” 버튼을 클릭하세요.

BotFather의 초기 프롬프트를 보여주는 스크린샷.

그러면 BotFather를 사용하여 알림 봇을 생성할 수 있는 새 채팅 창이 열립니다. 프롬프트에 “/newbot”이라고 쓰고 를 누르세요 Enter.

Uptime Kuma 인스턴스에 연결하는 봇의 이름을 제공하십시오.

새 알림 봇에 적합한 사용자 이름을 작성하세요. 이를 위해 BotFather는 밑줄(_) 이외의 특수 문자를 허용하지 않습니다.

BotFather가 강조 표시한 텍스트를 클릭하여 클립보드에 복사합니다.

새 알림 봇의 고유 토큰을 강조하는 스크린샷.

사용자 이름을 조회하고 대화를 시작하여 새 봇이 제대로 작동하는지 테스트하세요.

새 봇과의 초기 대화 기록을 보여주는 스크린샷.

Uptime Kuma 인스턴스로 돌아가서 “Bot Token”텍스트 상자 안에 개인 봇 토큰을 붙여넣습니다.

“채팅 ID” 텍스트 상자 아래의 “자동 가져오기” 버튼을 클릭하세요.

자동 가져오기 버튼을 강조 표시하는 스크린샷.

Uptime Kuma 창 하단으로 스크롤한 다음 “테스트”를 클릭하여 Uptime Kuma가 새 봇과 통신할 수 있는지 확인하세요.

작동 중인 Uptime Kuma 텔레그램 봇을 보여주는 스크린샷.

Uptime Kuma에 변경 사항을 적용하려면 “저장”을 클릭하세요.

Docker를 통해 간단한 서비스 상태 데몬을 호스팅하는 것은 컨테이너화된 웹 서비스 배포에 있어 빙산의 일각에 불과합니다. ownCloud를 사용하여 자체 클라우드 오피스를 호스팅 하고 Stikked를 사용하여 자체 Pastebin을 실행하는 방법을 알아보세요 .

이미지 출처: Unsplash (배경) Github (로고)를 통한 Boitulmelo. 모든 변경 사항과 스크린샷은 Ramces Red가 작성했습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다