Prometheus: Adicionar encriptação TLS ao Prometheus Node Exporter
Esta documentação faz parte do guia Recuperar métricas de Linux. Consulte o guia completo aqui: Como recuperar métricas de servidores Linux no Prometheus usando Node Exporter.
👋 Bem-vindo à documentação da Stackhero!
A Stackhero oferece uma solução Prometheus cloud pronta a usar que proporciona uma série de benefícios, incluindo:
Alert Managerincluído para enviar alertas paraSlack,Mattermost,PagerDuty, etc.- Servidor de email dedicado para enviar alertas de email ilimitados.
Blackboxpara sondarHTTP,ICMP,TCP, e mais.- Configuração fácil com editor de ficheiros de configuração online.
- Atualizações sem esforço com apenas um clique.
- Desempenho ótimo e segurança robusta alimentados por uma VM privada e dedicada.
Poupe tempo e simplifique a sua vida: leva apenas 5 minutos para experimentar a solução de hospedagem cloud Prometheus da Stackhero!
Por padrão, o Node Exporter não encripta as comunicações. Isto significa que as credenciais, incluindo a palavra-passe definida anteriormente, são transmitidas em texto simples. Para proteger as comunicações, pode ativar a encriptação TLS da seguinte forma.
Criar certificados TLS
Execute os seguintes comandos para criar um certificado e uma chave TLS:
# Criar certificado TLS
cd /tmp
sudo openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 \
-keyout /etc/prometheus_node_exporter/tlsCertificate.key \
-out /etc/prometheus_node_exporter/tlsCertificate.crt \
-subj "/CN=`hostname`" \
-addext "subjectAltName = DNS:`hostname`"
sudo chmod 600 /etc/prometheus_node_exporter/*
sudo chown -R node_exporter:node_exporter /etc/prometheus_node_exporter
Atualizar a configuração
Adicione as seguintes linhas ao ficheiro de configuração para adicionar as definições TLS e depois reinicie o Node Exporter:
sudo cat << 'EOF' >> /etc/prometheus_node_exporter/configuration.yml
tls_server_config:
cert_file: /etc/prometheus_node_exporter/tlsCertificate.crt
key_file: /etc/prometheus_node_exporter/tlsCertificate.key
EOF
# Reiniciar Prometheus Node Exporter
sudo systemctl restart node_exporter
Pode verificar que o TLS está ativo conectando-se via HTTPS com o seguinte comando:
curl -k -u prometheus:${password} https://localhost:9100/metrics
Note que este método não usa um certificado CA, por isso precisa passar a opção "-k" para o cURL para ignorar a verificação do certificado.