Como instalo a versão mais recente do Prometheus no 16.04?

2

Estou tendo problemas para instalar a versão mais recente do Prometheus em uma nova instalação do Ubuntu 16.04. Todos os guias que eu posso encontrar são para 14.04 e a mudança de systemV para systemd torna esses guias incompatíveis (ou pelo menos incompletos) quando configurados em 16.04.

Eu posso instalar o Prometheus do apt, mas ele instala a versão 0.16.2 e a versão atual é 1.0.2.

Eu tenho usado o guia de instalação do prometheus.io oficial e este guia sobre Oceano Digital .

Alguém pode me ajudar com a configuração do systemd? Eu sou relativamente experiente com o Ubuntu, mas a mudança do systemd está me jogando uma bola curva.

    
por mwinfie 30.08.2016 / 06:34

3 respostas

6

O seguinte arquivo de unidade funcionou para mim ao instalar o prometheus server (em oposição a um exportador).

# /etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target

[Service]
User=prometheus
Restart=on-failure
ExecStart=/usr/local/bin/prometheus-1.1.2.linux-amd64/prometheus \
                                -config.file=/etc/prometheus/prometheus.yml \
                                -storage.local.path=/var/lib/prometheus/data

[Install]
WantedBy=multi-user.target

Isso pressupõe, obviamente, que você criou um usuário prometheus e concedeu as permissões necessárias.

Em seguida, use os comandos mencionados pelo WInfly.

$ sudo systemctl daemon-reload
$ sudo systemctl enable prometheus
$ sudo systemctl start prometheus
$ sudo systemctl status prometheus

Eu achei o seguinte útil:

Prometheus: link

Páginas de manual para diretivas de arquivo de unidade: link

    
por lander2k2 16.09.2016 / 21:44
2

Encontrei minha resposta em este artigo . A parte específica que eu estava faltando na tentativa de configurar isso para rodar com o systemd estava criando o arquivo da unidade. Abaixo está a criação do arquivo de unidade para node_exporter e, em seguida, a executa como um serviço. Espero que isso ajude alguém!

Crie o arquivo da unidade:

$ sudo vim /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter

[Service]
User=vxx
ExecStart=/home/vxx/Prometheus/node_exporter/node_exporter

[Install]
WantedBy=default.target

Em seguida, inicie o serviço depois de recarregar o daemon ou reinicialize o servidor:

$ sudo systemctl daemon-reload
$ sudo systemctl enable node_exporter.service
$ sudo systemctl start node_exporter.service
$ sudo systemctl status node_exporter.service
    
por mwinfie 31.08.2016 / 05:47
0

O nome do argumento de armazenamento do servidor foi alterado, sintaxe de trabalho:

[Unit]
Description=Prometheus Server
After=network-online.target

[Service]
User=root
Restart=on-failure
ExecStart=/usr/local/bin/prometheus-2.2.1.linux-amd64/prometheus \
                                --config.file=/etc/prometheus/prometheus.yml \
                                --storage.tsdb.path=/var/lib/prometheus/data

[Install]
WantedBy=multi-user.target
    
por aaber 03.05.2018 / 16:07