Como configurar uma ferramenta de monitoramento de tempo de atividade no Linux com Uptime Kuma

Como configurar uma ferramenta de monitoramento de tempo de atividade no Linux com Uptime Kuma

Uptime Kuma é uma ferramenta simples, mas poderosa de monitoramento de tempo de atividade. Ele permite que você acompanhe todos os serviços que está hospedando em uma rede local ou na Internet mais ampla.

Este artigo mostrará como instalar e implantar o Uptime Kuma em uma rede local usando Ubuntu e Docker. Também mostraremos como personalizar a instância Uptime Kuma para enviar notificações de status ao Telegram.

Por que usar o Uptime Kuma?

O Uptime Kuma pode rastrear e executar ping em servidores web, bem como verificar a integridade de seus contêineres Docker. Isso torna o Uptime Kuma o portal web completo ideal para todos os seus serviços de rede.

Uma das maiores vantagens do Uptime Kuma é que ele vem com um sistema de notificação robusto por padrão. Isso significa que você pode configurar seu monitor de tempo de atividade para enviar automaticamente uma mensagem por meio de vários canais sempre que encontrar uma anomalia.

Uma captura de tela mostrando uma instância do Uptime Kuma em funcionamento.

Instalando o Uptime Kuma

Obtendo Docker e Docker Compose

Primeiro, busque a chave de assinatura GPG para os repositórios Docker e Docker Compose:

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

Crie um novo arquivo de repositório para Docker em “/etc/apt/sources.list.d/”

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

Cole a seguinte linha de código dentro do seu novo arquivo de repositório:

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

Atualize e atualize o repositório de pacotes para o seu sistema Ubuntu:

sudo apt update && sudo apt upgrade

Instale o pacote Docker e Docker Compose junto com suas dependências:

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

Certifique-se de que o usuário atualmente em execução tenha os privilégios corretos para executar o Docker e o Docker Compose:

sudo usermod -aG docker ramces

Obtendo e construindo tempo de atividade Kuma

Crie um novo diretório para seu contêiner Uptime Kuma Docker. Isso conterá o arquivo de receita para sua instância:

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

Uma vez dentro, crie um novo “docker-compose.yml”usando seu editor de texto favorito:

nano. /docker-compose.yml

Cole o seguinte bloco de código em seu novo arquivo 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

Crie os contêineres Docker para sua nova instância do Uptime Kuma:

sudo docker compose up -d

Criando um proxy reverso para Uptime Kuma usando Nginx

Criaremos um proxy reverso no Nginx para que você possa acessar o Uptime Kuma em uma URL acessível publicamente.

Crie um novo arquivo de configuração do site Nginx usando seu editor de texto favorito:

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

Escreva o seguinte bloco de código dentro do novo arquivo de configuração do site:

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;
}}

Vincule o arquivo de configuração do seu site da pasta “sites disponíveis” do Nginx ao diretório “habilitado para sites”:

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

Reinicie o daemon do servidor Nginx para aplicar as novas configurações:

sudo systemctl restart nginx

Instalando o Certificado SSL

Para começar, você precisa ter certeza de que seu sistema tem o pacote snap principal instalado e funcionando:

sudo snap install core

Instale o snap para o certbot da Electronic Frontier Foundation. Esta é uma pequena ferramenta que pode solicitar e manter automaticamente o certificado SSL do seu proxy reverso:

sudo snap install certbot --classic

Teste se o certbot está funcionando corretamente inscrevendo sua nova instalação do certbot na EFF:

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

Solicite um novo certificado SSL para seu novo proxy reverso:

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

Configurando o Uptime Kuma e adicionando monitores

Verifique se a instalação do Uptime Kuma está funcionando corretamente em seu proxy reverso navegando até seu endereço em um navegador da web.

Uma captura de tela mostrando a página inicial padrão do Uptime Kuma.

Preencha o formulário com os detalhes que deseja para sua nova conta de administrador e clique em “Criar” para prosseguir para sua instância.

Uma captura de tela mostrando os detalhes do administrador da nova instância.

Clique no botão “Adicionar novo monitor” no canto superior esquerdo da página.

Uma captura de tela destacando o

Isso abrirá uma nova subjanela na página atual onde você pode especificar o tipo de serviço que deseja monitorar. Por exemplo, alterar o valor de “Tipo de monitor” de “HTTP(S)” para “Porta TCP” criará um monitor que verificará se uma porta específica na máquina está aberta no momento.

Uma captura de tela mostrando os diferentes tipos de monitor disponíveis.

Preencha os detalhes da máquina que você deseja monitorar.

Role até o final da página e clique em “Salvar” para iniciar seu novo monitor.

Uma captura de tela mostrando os detalhes completos de um monitor simples de verificação de porta.

Configurando notificações externas para tempo de atividade Kuma

Vá para a página principal da sua instância do Uptime Kuma e clique no ícone do usuário no canto superior direito da página.

Uma captura de tela destacando o emblema do ícone do usuário no canto superior direito da tela.

Clique na opção “Configurações” no menu suspenso da página.

Uma captura de tela destacando a opção Configurações no menu de contexto do selo do usuário.

Selecione a categoria “Notificações” na nova subjanela da página.

Uma captura de tela destacando a categoria Notificações.

Criando um serviço de notificações de telegrama

Clique no botão “Configurar notificação”. Por padrão, isso abrirá uma pequena janela onde você pode vincular e criar um bot de notificação usando sua conta do Telegram.

Forneça um nome para o seu novo alerta de notificação e clique no link BotFather na caixa de texto “Bot Token”.

Uma captura de tela destacando o link Telegram BotFather.

Clique no botão “Enviar mensagem” na página do Telegram do BotFather.

Uma captura de tela mostrando o prompt inicial do BotFather.

Isso abrirá uma nova janela de bate-papo onde você poderá usar o BotFather para criar seu bot de notificação. Escreva “/newbot” no prompt e pressione Enter.

Forneça um nome para o bot que você está vinculando à sua instância do Uptime Kuma.

Escreva um nome de usuário apropriado para seu novo bot de notificação. Observe que para isso o BotFather não aceitará nenhum caractere especial além do sublinhado (_).

Clique no texto destacado pelo BotFather para copiá-lo para a área de transferência.

Uma captura de tela destacando o token exclusivo do seu novo bot de notificação.

Teste se o seu novo bot está funcionando corretamente procurando seu nome de usuário e iniciando uma conversa com ele.

Uma captura de tela mostrando o histórico inicial de conversas com o novo bot.

Volte para sua instância do Uptime Kuma e cole o token do bot privado na caixa de texto “Bot Token”.

Clique no botão “Obter automaticamente” na caixa de texto “ID do bate-papo”.

Uma captura de tela destacando o botão Auto Get.

Role para baixo até a parte inferior da janela do Uptime Kuma e clique em “Testar” para verificar se o Uptime Kuma pode se comunicar com seu novo bot.

Uma captura de tela mostrando um bot Uptime Kuma Telegram em funcionamento.

Clique em “Salvar” para confirmar suas alterações no Uptime Kuma.

Hospedar um daemon de status de serviço simples no Docker é apenas a ponta do iceberg quando se trata de implantar serviços da web em contêineres. Aprenda como você pode hospedar seu próprio escritório na nuvem com ownCloud e também como executar seu próprio Pastebin com Stikked .

Crédito da imagem: Boitulmelo via Unsplash (fundo) Github (logotipo). Todas as alterações e capturas de tela de Ramces Red.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *