O Prometheus é um aplicativo de monitoramento e alerta de eventos baseado em métricas de código aberto desenvolvido originalmente na SoundCloud e mais amplamente adotado posteriormente por várias empresas e organizações. Prometheus tem seu próprio sistema de armazenamento que armazena e gerencia as métricas coletadas em tempo real. No Prometheus, o método de coleta de dados é conhecido como “sucateamento”, enquanto a ferramenta que utiliza para esse fim é chamada de “exportador.”
Este artigo irá demonstrar como instalar e configurar o Prometheus no Ubuntu 20.04 Sistemas LTS (Focal Fossa). O artigo também explicará como adicionar um exportador ao Prometheus para expandir sua utilidade.
Observação: o procedimento e os comandos neste artigo foram executados no Ubuntu 20.04 LTS (Fossa Focal).
Pré-requisitos
Antes de instalar o Prometheus, certifique-se de completar os seguintes requisitos.
1. Instale o Nginx
Siga as etapas abaixo para instalar o Nginx:
Use o seguinte comando no Terminal para atualizar o índice do repositório do sistema
$ sudo apt updateEm seguida, digite o seguinte comando para instalar o Nginx:
$ sudo apt install nginxDepois que o Nginx estiver instalado, use os seguintes comandos para confirmar se o serviço Nginx está em execução:
$ sudo systemctl start nginxSe o serviço Nginx não estiver em execução, você pode iniciá-lo digitando o seguinte comando:
$ sudo systemctl start nginx2. Criar usuários Prometheus
Digite o seguinte para criar contas de usuário do Prometheus para serem usadas como contas de usuário de serviço para fins de segurança e administração. Essas contas não serão usadas para fazer login no sistema. Use os seguintes comandos no Terminal para criar as contas de usuário de serviço.
$ sudo useradd --no-create-home --shell / bin / false prome$ sudo useradd --no-create-home --shell / bin / false node_exporter
3. Crie diretórios do Prometheus
Digite o seguinte para criar alguns diretórios que serão usados para armazenar arquivos e dados:
$ sudo mkdir / etc / prometheus$ sudo mkdir / var / lib / prometheus
Baixando e instalando o Prometheus
Assim que todos esses pré-requisitos forem atendidos, seu sistema estará pronto para instalar o Prometheus. Abaixo está o procedimento para baixar e instalar o Prometheus.
Baixe a última versão estável do Prometheus usando o comando wget.
$ wget https: // github.com / prometheus / prometheus / releases / download / v2.0.0 /prometheus-2.0.0.linux-amd64.alcatrão.gz
Extraia o arquivo do Prometheus usando o seguinte comando:
$ tar xvf prometheus-2.0.0.linux-amd64.alcatrão.gzDa pasta extraída, copie os arquivos binários para o diretório / usr / local / bin e altere a propriedade.
Use os seguintes comandos para copiar os arquivos binários “prometheus” e “promtool” para o / usr / local / bin.
$ sudo cp prometheus-2.0.0.linux-amd64 / prometheus / usr / local / bin /$ sudo cp prometheus-2.0.0.linux-amd64 / promtool / usr / local / bin /
Em seguida, altere a propriedade dos arquivos digitando os comandos abaixo.
$ sudo chown prome: prome / usr / local / bin / prometheus$ sudo chown prome: prome / usr / local / bin / promtool
Depois de copiar os arquivos binários, copie as bibliotecas necessárias para o diretório / etc / prometheus. Use os seguintes comandos no Terminal para fazer isso:
$ sudo cp -r prometheus-2.0.0.linux-amd64 / consoles / etc / prometheus$ sudo cp -r prometheus-2.0.0.linux-amd64 / console_libraries / etc / prometheus
Em seguida, use os seguintes comandos para alterar a propriedade dos arquivos.
$ sudo chown -R prome: prome / etc / prometheus / consoles$ sudo chown -R prome: prome / etc / prometheus / console_libraries
Configuração Prometheus
Nesta seção, criaremos o arquivo de configuração denominado Prometeu.yml no / etc / prometheus diretório criado nas etapas anteriores. Emita o seguinte comando no Terminal para editar o prometheus.arquivo yml:
$ sudo nano / etc / prometheus / prometheus.ymlEm seguida, copie e cole as seguintes linhas no terminal:
global:scrape_interval: 15s
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 5s
static_configs:
- destinos: ['localhost: 9090']
Pressione Ctrl + o para salvar e Ctrl + x para sair do arquivo.
Agora, vamos criar outro arquivo para o serviço systemd. Emita o seguinte comando no Terminal para fazer isso:
$ sudo nano / etc / systemd / system / prometheus.serviçoEm seguida, copie e cole as seguintes linhas no terminal:
[Unidade]Descrição = Prometheus
Quer = rede-online.alvo
Depois = rede-online.alvo
[Serviço]
User = prome
Grupo = prome
Tipo = simples
ExecStart = / usr / local / bin / prometheus \
--config.arquivo / etc / prometheus / prometheus.yml \
--armazenar.tsdb.caminho / var / lib / prometheus / \
--rede.console.templates = / etc / prometheus / consoles \
--rede.console.bibliotecas = / etc / prometheus / console_libraries
[Instalar]
WantedBy = multiusuário.alvo
Pressione Ctrl + o para salvar o arquivo e Ctrl + x para sair do arquivo.
Depois de concluir as configurações acima, recarregue o systemd usando o seguinte comando:
$ sudo systemctl daemon-reloadInicie o serviço Prometheus emitindo o seguinte comando:
$ sudo systemctl start prometheusPara habilitar o Prometeu serviço na inicialização do sistema, use o seguinte comando:
$ sudo systemctl enable prometheusDepois de iniciar o Serviço Prometheus, use o seguinte comando para ver o status do serviço:
$ sudo systemctl status prometheusA imagem a seguir mostra que o serviço Prometheus está ativo e em execução.
Acesse a interface da Web do Prometheus
Em seguida, tente acessar a interface da web do Prometheus. Abra um navegador da web e navegue até o seguinte endereço:
http: // endereço-ip: 9090
Substitua o termo “endereço de IP”Com o endereço IP real do seu sistema. Você pode acessar a interface da web do Prometheus de qualquer sistema em sua rede local. Você também pode usar localhost ou 127.0.0.1 para acessar o site Prometheus em seu sistema local. No entanto, neste caso, você não seria capaz de acessá-lo de qualquer outro sistema na rede.
Nesta fase, o Prometheus mostra apenas métricas sobre si mesmo, o que pode não ser muito útil. A próxima seção mostrará como expandir a utilidade do Prometheus adicionando exportadores.
Adicionar exportadores
Para tornar o Prometheus mais útil para você, tente adicionar exportadores. Alguns dos exportadores mais comumente usados incluem o seguinte:
- Node_exporter-
- Blackbox_exporter
- rabbitmq_exporter
- Mysqld_exporter
Aqui, vamos adicionar node_exporter para o sistema Prometheus. Node_exporter gera métricas sobre recursos como CPU, memória, uso de disco, etc.
Primeiro, baixe o node_exporter para o seu sistema com o seguinte comando:
$ wget https: // github.com / prometheus / node_exporter / releases / download /v0.15.1 / node_exporter-0.15.1.linux-amd64.alcatrão.gz
Extraia o arquivo usando o seguinte comando:
$ tar xvf node_exporter-0.15.1.linux-amd64.alcatrão.gzsudo nano / etc / prometheus / prometheus.yml
Da pasta extraída, copie os arquivos binários para o diretório / usr / local / bin e altere a propriedade. Emita o seguinte comando para copiar os arquivos binários node_exporter para o / usr / local / bin diretório.
$ sudo cp node_exporter-0.15.1.linux-amd64 / node_exporter / usr / local / binDefina a propriedade do diretório com o seguinte comando:
$ sudo chown node_exporter: node_exporter / usr / local / bin / node_exporterCrie um arquivo de serviço para o exportador usando oO seguinte comando:
$ sudo nano / etc / systemd / system / node_exporter.serviçoEm seguida, copie e cole as seguintes linhas no terminal:
[Unidade]Descrição = Prometheus
Quer = rede-online.alvo
Depois = rede-online.alvo
[Serviço]
User = node_exporter
Group = node_exporter
Tipo = simples
ExecStart = / usr / local / bin / prometheus \
--config.arquivo / etc / prometheus / prometheus.yml \
--armazenar.tsdb.caminho / var / lib / prometheus / \
--rede.console.templates = / etc / prometheus / consoles \
--rede.console.bibliotecas = / etc / prometheus / console_libraries
[Instalar]
WantedBy = multiusuário.alvo
Pressione Ctrl + o para salvar e Ctrl + x para sair do arquivo.
Recarregue o systemd usando o seguinte comando:
$ sudo systemctl daemon-reloadEmita o seguinte comando para iniciar o serviço node_exporter:
$ sudo systemctl start node_exporterPara habilitar o serviço node_exporter na inicialização, digite o seguinte comando:
$ sudo systemctl enable node_exporterConfigurando Prometheus para node_exporter
Nesta seção, vamos configurar o Prometheus para raspar node_exporter. Execute o seguinte comando no Terminal para editar o arquivo de configuração:
$ sudo nano etc / prometheus / prometheus.ymlCopie e cole as seguintes linhas no terminal:
- job_name: 'node_exporter'scrape_interval: 5s
static_configs:
- alvos: ['localhost: 9100']
Pressione Ctrl + o para salvar e Ctrl + x para sair do arquivo. Reinicie o serviço Prometheus usando o seguinte comando:
$ sudo systemctl restart PrometheusVocê pode verificar o status do serviço Prometheus para confirmar se ele está funcionando corretamente digitando o seguinte comando: $ sudo systemctl status prometheus Tente acessar o Prometheus abrindo qualquer navegador da web e navegando até o seguinte endereço:
http: // endereço-ip: 9090
Quando a interface da web for aberta, use a seta suspensa para selecionar qualquer métrica e clique no Executar botão para ver um gráfico.
Se você vai para Status> Alvo no menu na parte superior da página, você verá Prometheus e node_exporter listados lá, pois configuramos o Prometheus para raspar a si mesmo e ao node_exporter.
Conclusão
Isso é tudo que há para fazer! Neste artigo, você aprendeu como instalar o Prometheus no Ubuntu 20.04 LTS (Focal Fossa), bem como como usar o exportador de nó no Prometheus. Espero que depois de ler este artigo, você agora esteja confortável o suficiente para instalar o Prometheus e um exportador para gerar métricas sobre os recursos do seu servidor.