top of page
dirougdomeachi

Baixar blackbox exporter



Como baixar e usar o Blackbox Exporter para monitoramento de sites




O monitoramento de sites é uma atividade essencial para qualquer empresa ou organização que depende de um site ou serviço da Web para marketing, coleta de dados ou receita. O monitoramento de sites pode ajudá-lo a verificar a disponibilidade, o desempenho e a função de seu site ou serviço da Web de diferentes locais e alertá-lo quando ocorrer um problema. Ele também pode ajudá-lo a rastrear o tempo de atividade, medir os principais parâmetros e personalizar os planos de monitoramento.




download blackbox exporter



Existem muitas ferramentas e serviços disponíveis para monitoramento de sites, mas um dos mais populares e poderosos é Exportador Blackbox. O Blackbox Exporter é uma ferramenta de código aberto que permite realizar a sondagem blackbox de endpoints em HTTP, HTTPS, DNS, TCP, ICMP e gRPC. Faz parte do ecossistema Prometheus, que é uma plataforma líder para monitoramento e alerta de sistemas.


Neste artigo, mostraremos como baixar e usar o Blackbox Exporter para monitoramento de sites. Abordaremos os seguintes tópicos:


  • O que é o Blackbox Exporter e quais são seus recursos e benefícios?



  • Como baixar o Blackbox Exporter do GitHub ou executá-lo a partir de binários ou Docker?



  • Como configurar o Blackbox Exporter com um arquivo de configuração, módulos, sondas e autenticação TLS/básica?



  • Como usar o Blackbox Exporter para realizar sondagens com parâmetros de URL e verificar resultados e métricas de sondagem?



  • Como integrar o Blackbox Exporter com Prometheus e Grafana para coleta e visualização de dados?



Ao final deste artigo, você terá uma compreensão clara de como baixar e usar o Blackbox Exporter para monitoramento de sites. Você também encontrará algumas perguntas frequentes no final do artigo para responder a algumas perguntas comuns sobre o Blackbox Exporter.


O que é Blackbox Exporter?




O Blackbox Exporter é uma ferramenta que permite realizar a sondagem de blackbox de terminais em vários protocolos.A sondagem de caixa preta significa que você testa o comportamento externo de um endpoint sem conhecer seus detalhes internos. Por exemplo, você pode testar se um site está acessível, se responde com o código de status esperado, se contém uma determinada palavra-chave, etc.


Recursos e benefícios do Blackbox Exporter




Alguns dos recursos e benefícios de usar o Blackbox Exporter são:


  • Ele oferece suporte a vários protocolos, como HTTP, HTTPS, DNS, TCP, ICMP e gRPC.



  • Ele permite que você defina módulos e sondas personalizados com diferentes configurações e parâmetros.



  • Ele se integra bem com o Prometheus, que pode coletar e armazenar as métricas geradas pelo Blackbox Exporter.



  • Ele fornece uma interface da Web na qual você pode executar análises manualmente ou visualizar informações de depuração.



  • Ele suporta TLS e autenticação básica para comunicação segura.



  • É fácil de instalar e executar como um binário estático ou uma imagem do Docker.



Como funciona o Blackbox Exporter




O fluxo de trabalho básico de como o Blackbox Exporter funciona é o seguinte:


  • Você cria um arquivo de configuração que define os módulos e análises que deseja usar.



  • Você executa o Blackbox Exporter como um serviço em seu servidor ou máquina.



  • Você envia solicitações HTTP para o Blackbox Exporter com parâmetros de URL que especificam o módulo e o destino que deseja investigar.



  • O Blackbox Exporter executa a sonda de acordo com as configurações do módulo e retorna os resultados da sonda como métricas em formato de texto.



  • O Prometheus extrai as métricas do Blackbox Exporter em intervalos regulares e as armazena em um banco de dados de séries temporais.



  • Você pode usar o Grafana ou outras ferramentas para consultar e visualizar as métricas coletadas pelo Prometheus.



O diagrama a seguir ilustra o fluxo de trabalho do Blackbox Exporter:


+----------+ +------------------+ +------------+ +---------+ ponto final Grafana +----------+ +------------------+ +------------+ +---------+


Nas próximas seções, mostraremos como baixar, configurar e usar o Blackbox Exporter para monitoramento de sites.


Como baixar Blackbox Exporter




Existem duas maneiras principais de baixar e executar o Blackbox Exporter: do GitHub ou de binários ou Docker.


Pré-requisitos e requisitos




Antes de baixar e executar o Blackbox Exporter, você precisa ter os seguintes pré-requisitos e requisitos:


  • Um servidor ou máquina que pode executar o Blackbox Exporter. Pode ser Linux, Windows ou Mac OS X.



  • Uma conexão de rede que pode acessar os terminais que você deseja investigar.



  • Um navegador da web que pode acessar a interface da web do Blackbox Exporter.



  • Prometheus instalado e configurado em seu servidor ou máquina. Você pode seguir este guia para instalar e configurar o Prometheus:



  • Grafana instalado e configurado em seu servidor ou máquina. Você pode seguir este guia para instalar e configurar o Grafana:



Baixando do GitHub




A maneira mais fácil de baixar o Blackbox Exporter é no GitHub. Você pode encontrar a versão mais recente do Blackbox Exporter aqui:


Você pode baixar o arquivo zip ou o arquivo tar.gz que corresponda ao seu sistema operacional e arquitetura. Por exemplo, se estiver usando Linux de 64 bits, você pode baixar o arquivo blackbox_exporter-0.19.0.linux-amd64.tar.gz.


Depois de baixar o arquivo, você precisa extraí-lo para uma pasta de sua escolha. Por exemplo, se você estiver usando o Linux, poderá executar o seguinte comando:


tar -xzf blackbox_exporter-0.19.0.linux-amd64.tar.gz


Isso criará uma pasta chamada blackbox_exporter-0.19.0.linux-amd64 que contém o arquivo executável blackbox_exporter e um exemplo de arquivo de configuração blackbox.yml.


Executando a partir de binários ou Docker




Outra maneira de baixar e executar o Blackbox Exporter é de binários ou Docker.Você pode encontrar os binários para diferentes sistemas operacionais e arquiteturas aqui:


Você pode baixar o arquivo binário que corresponde ao seu sistema operacional e arquitetura e colocá-lo em uma pasta de sua escolha. Por exemplo, se estiver usando Linux de 64 bits, você pode baixar o arquivo blackbox_exporter-0.19.0.linux-amd64 e colocá-lo em /usr/local/bin.


Você também pode executar o Blackbox Exporter como um contêiner do Docker. Você pode encontrar a imagem do Docker para Blackbox Exporter aqui:


Você pode extrair a imagem do Docker e executá-la com o seguinte comando:


docker pull prom/blackbox-exporter docker run -d -p 9115:9115 --name blackbox-exporter prom/blackbox-exporter


Isso executará o Blackbox Exporter como um daemon na porta 9115 com o arquivo de configuração padrão.


Como configurar o Blackbox Exporter




Depois de baixar e executar o Blackbox Exporter, você precisa configurá-lo com um arquivo de configuração, módulos, sondas e autenticação TLS/básica. Criando um arquivo de configuração




O arquivo de configuração do Blackbox Exporter é um arquivo YAML que define os módulos e testes que você deseja usar. O arquivo de configuração padrão é chamado blackbox.yml e contém alguns exemplos de módulos e testes. Você pode editar este arquivo ou criar um novo com suas próprias configurações.


O arquivo de configuração tem duas seções principais: módulos e scrape_configs. A seção de módulos define as configurações e parâmetros para cada módulo que você deseja usar. Um módulo é uma coleção de opções que especificam como realizar uma sondagem para um determinado protocolo. Por exemplo, você pode ter um módulo para sondagens HTTP, HTTPS, DNS, TCP, ICMP ou gRPC.


A seção scrape_configs define os destinos e rótulos para cada sondagem que você deseja executar. Um destino é o endpoint que você deseja investigar, como uma URL de site ou um nome de domínio. Um rótulo é um par chave-valor que você pode usar para identificar ou agrupar seus alvos.Por exemplo, você pode ter um rótulo para o protocolo, o local ou o nome do serviço de seu destino.


Aqui está um exemplo de um arquivo de configuração com dois módulos e dois scrape_configs:


módulos: http_2xx: prober: http timeout: 5s http: valid_status_codes: [200] method: GET icmp: prober: icmp timeout: 5s icmp: preferido_ip_protocol: ip4 scrape_configs: - job_name: 'http_2xx'metrics_path: /probe params: módulo: [http_2xx] static_configs: - targets: - - https:// example.org - labels: protocolo: https location: us-east-1 - job_name: 'icmp'metrics_path: /probe params: módulo: [icmp] static_configs: - targets: - 8.8.8.8 - 8.8.4.4 labels: protocol: icmp location: us-east-1


Neste exemplo, definimos dois módulos: http_2xx e icmp. O módulo http_2xx executa uma sondagem HTTP e verifica se o código de status é 200. O módulo icmp executa uma sondagem ICMP e usa IPv4 como protocolo preferencial. Também definimos dois scrape_configs: http_2xx e icmp. O http_2xx scrape_config investiga três alvos HTTPS e atribui a eles os rótulos protocol=https e location=us-east-1. O icmp scrape_config investiga dois alvos ICMP e atribui a eles os rótulos protocol=icmp e location=us-east-1.


Definindo módulos e sondas




Você pode definir quantos módulos e sondas precisar em seu arquivo de configuração. Cada módulo tem um nome, um prober, um tempo limite e algumas opções específicas do protocolo. Cada investigação tem um job_name, ummetric_path, alguns parâmetros, alguns static_configs e alguns rótulos.


O nome do módulo é uma string arbitrária que você pode usar para fazer referência a ele em seus testes. O prober é o tipo de probe que você deseja executar, como http, https, dns, tcp, icmp ou grpc.O tempo limite é o tempo máximo que o probe aguardará por uma resposta do destino. As opções específicas do protocolo são diferentes para cada sonda e permitem que você personalize como a sonda é realizada.


Algumas das opções comuns específicas do protocolo são:


  • valid_status_codes: uma lista de códigos de status que são considerados válidos para sondagens HTTP ou HTTPS.



  • method: O método HTTP a ser usado para sondagens HTTP ou HTTPS.



  • headers: Um mapa de cabeçalhos HTTP para enviar com sondagens HTTP ou HTTPS.



  • body: o corpo HTTP a ser enviado com sondagens HTTP ou HTTPS.



  • fail_if_body_matches_regexp: uma lista de expressões regulares que farão com que o teste falhe se corresponderem ao corpo da resposta para testes HTTP ou HTTPS.



  • fail_if_body_not_matches_regexp: uma lista de expressões regulares que farão com que o teste falhe se não corresponderem ao corpo da resposta para testes HTTP ou HTTPS.



  • query_name: o nome de domínio para consultar sondas de DNS.



  • query_type: o tipo de registro DNS para consultar sondas DNS.



  • valid_rcodes: uma lista de códigos de resposta que são considerados válidos para sondas de DNS.



  • source_ip_address: O endereço IP de origem a ser usado para sondagens TCP ou ICMP.



  • preferido_ip_protocol: o protocolo IP preferencial a ser usado para sondagens TCP, ICMP ou gRPC.

  • tls_config: um mapa de configurações de TLS a serem usadas para sondagens HTTPS ou gRPC.



  • grpc_config: um mapa de configurações gRPC para usar para sondas gRPC.



Você pode encontrar mais detalhes e exemplos das opções específicas do protocolo aqui:


O job_name do probe é uma string arbitrária que você pode usar para identificar ou agrupar seus probes. Ometrics_path é o caminho onde os resultados e as métricas do probe são expostos pelo Blackbox Exporter. Geralmente é /probe. Os params são os parâmetros de URL que você precisa passar para o Blackbox Exporter para realizar a sondagem. Os mais importantes são module e target, que especificam o módulo e o target que você deseja sondar.


Os static_configs são as listas de destinos e rótulos que você deseja investigar. Você pode ter vários static_configs para cada investigação, cada um com um conjunto diferente de destinos e rótulos. Os destinos são os terminais que você deseja investigar, como URLs de sites ou nomes de domínio. Os rótulos são os pares chave-valor que você pode usar para identificar ou agrupar seus alvos. Você pode usar qualquer rótulo que desejar, mas alguns comuns são protocolo, localização, serviço, etc.


Configurando TLS e autenticação básica




Se você quiser usar sondas HTTPS ou gRPC, pode ser necessário definir as configurações de TLS para garantir uma comunicação segura. Você pode fazer isso usando a opção tls_config em sua definição de módulo. A opção tls_config é um mapa de configurações de TLS que você pode usar para especificar coisas como autoridade de certificação, certificado de cliente, chave de cliente, nome do servidor, verificação de salto inseguro, etc.


Por exemplo, se quiser usar um certificado autoassinado para sua investigação HTTPS, você pode usar o seguinte tls_config:


tls_config: ca_file: /path/to/ca.crt cert_file: /path/to/client.crt key_file: /path/to/client.key server_name: example.com


Se quiser usar a autenticação básica para sua investigação HTTP ou HTTPS, você pode fazer isso usando a opção basic_auth em sua definição de módulo. A opção basic_auth é um mapa de nome de usuário e senha que você pode usar para autenticar com seu destino.


Por exemplo, se quiser usar autenticação básica para sua investigação HTTP, você pode usar o seguinte basic_auth:


basic_auth: nome de usuário: senha do administrador: segredo


Você pode encontrar mais detalhes e exemplos de TLS e opções básicas de autenticação aqui:


Como usar o Blackbox Exporter




Depois de configurar o Blackbox Exporter com um arquivo de configuração, módulos, sondas e autenticação TLS/básica, você pode começar a usá-lo para realizar sondagens e verificar resultados e métricas de sondagem.


Executando sondagens com parâmetros de URL




Para realizar uma sondagem com o Blackbox Exporter, você precisa enviar uma solicitação HTTP para o Blackbox Exporter com parâmetros de URL que especifiquem o módulo e o destino que deseja sondar. Por exemplo, se você deseja sondar com o módulo http_2xx, pode enviar a seguinte solicitação:



Isso instruirá o Blackbox Exporter a executar uma investigação HTTP com o módulo http_2xx no destino Você pode alterar a parte localhost:9115 para corresponder ao endereço e à porta em que o Blackbox Exporter está sendo executado. Você também pode alterar os parâmetros do módulo e do destino para corresponder ao módulo e ao destino que deseja sondar.


Você pode enviar a solicitação de seu navegador da Web ou de uma ferramenta de linha de comando, como curl ou wget. Por exemplo, se você estiver usando curl, poderá executar o seguinte comando:


curl Verificação dos resultados e métricas da sonda




Quando você envia uma solicitação ao Blackbox Exporter, ele executa a sondagem e retorna os resultados e métricas da sondagem em formato de texto. Os resultados e as métricas da sondagem são expostos pelo Blackbox Exporter no mesmo URL da solicitação. Por exemplo, se você enviar a solicitação:



Você pode ver os resultados e as métricas da sondagem visitando o mesmo URL em seu navegador da Web ou usando uma ferramenta de linha de comando como curl ou wget. Por exemplo, se você estiver usando curl, poderá executar o seguinte comando:


curl


Isso vai te mostrar algo assim:


# HELP probe_duration_seconds Retorna quanto tempo o teste levou para ser concluído em segundos # TYPE probe_duration_seconds gauge probe_duration_seconds 0.030597141 # HELP probe_failed_due_to_regex Indica se o teste falhou devido a regex # TYPE probe_failed_due_to_regex gauge probe_failed_due_to_regex 0 # HELP_http_content_length probe Length of http content response # TYPE probe_http_content_length gauge probe_http_content_length -1 # HELP probe_http_duration_seconds Duração da solicitação http por fase, somada sobre todos os redirecionamentos # TYPE probe_http_duration_seconds gauge probe_http_duration_secondsphase="connect" 0,001610785 probe_http_duration_secondsphase="processing" 0,028776356 probe_http_ duration_secondsphase="resolve" 0,000017676 probe_http_duration_secondsphase="tls" 0,000000000 probe_http_duration_secondsphase="transfer" 0,000192324 # HELP probe_http_redirects O número de redirecionamentos # TYPE probe_http_redirects gauge probe_http_redirects 0 # HELP probe_http_ssl Indica se SSL foi usado para o redirecionamento final # TYPE probe_http_ssl gauge probe_http_ssl 1 # HELP probe_http_status_code Response HTTP status code # TYPE probe_http_status_code gauge probe_http_status_code 200 # HELP probe_http_version Retorna a versão do HTTP da resposta do probe # TYPE probe_http_version gauge probe_http_version 1.1 # HELP probe_ip_pro tocol Especifica se o protocolo ip do probe é IP4 ou IP6 # TYPE probe_ip_protocol gauge probe_ip_protocol 4 # HELP probe_success Exibe se o probe foi bem-sucedido ou não # TYPE probe_success gauge probe_success 1


A saída mostra várias métricas que descrevem o resultado da investigação, como:


  • probe_duration_seconds: o tempo que a sonda levou para ser concluída em segundos.



  • probe_failed_due_to_regex: se a investigação falhou devido a uma correspondência de expressão regular ou não.



  • probe_http_content_length: o comprimento da resposta de conteúdo HTTP em bytes.



  • probe_http_duration_seconds: a duração da solicitação HTTP por fase, somada a todos os redirecionamentos.



  • probe_http_redirects: o número de redirecionamentos ocorridos durante a investigação.



  • probe_http_ssl: Se o SSL foi usado para o redirecionamento final ou não.



  • probe_http_status_code: o código de status HTTP da resposta.



  • probe_http_version: a versão do HTTP da resposta.



  • probe_ip_protocol: o protocolo IP usado para o probe, 4 ou 6.



  • probe_success: se a sonda foi bem-sucedida ou não.



Você pode usar essas métricas para monitorar e analisar a disponibilidade, o desempenho e a função do seu site ou serviço da web. Você também pode usá-los para configurar alertas e notificações quando ocorrer um problema.


Integração com Prometheus e Grafana




Para aproveitar ao máximo o Blackbox Exporter, você pode integrá-lo ao Prometheus e ao Grafana. O Prometheus é um sistema que pode coletar e armazenar as métricas geradas pelo Blackbox Exporter. O Grafana é um sistema que pode consultar e visualizar as métricas coletadas pelo Prometheus.


Para integrar o Blackbox Exporter com o Prometheus, você precisa adicionar um scrape_config ao seu arquivo de configuração do Prometheus que informa ao Prometheus onde encontrar e como extrair o Blackbox Exporter. Por exemplo, você pode adicionar algo assim:


- job_name: 'blackbox'metrics_path: /probe params: module: [http_2xx] static_configs: - targets: - - - relabel_configs: - source_labels: [__address__] target_label target_label: __param_target - source_labels: [__param_target] target_label: instance - target_ rótulo: __address__ substituição: localhost:9115


Isso instruirá o Prometheus a extrair o Blackbox Exporter no localhost:9115 com o módulo http_2xx e os destinos e também rotulará novamente as métricas com os rótulos apropriados para o destino e a instância.


Você pode encontrar mais detalhes e exemplos de como integrar o Blackbox Exporter com o Prometheus aqui:


Para integrar o Blackbox Exporter com o Grafana, você precisa adicionar o Prometheus como fonte de dados no Grafana e criar um painel que consulta e exibe as métricas do Prometheus. Você pode usar o editor de consultas integrado ou a linguagem de expressão Grafana para criar suas consultas. Você também pode usar vários painéis e widgets para personalizar seu painel.


Por exemplo, você pode criar um painel que mostre a taxa de sucesso da sondagem, a duração da sondagem, o código de status da sondagem e o status SSL da sondagem para cada destino. Você pode usar algo assim:


probe_successjob="blackbox" probe_duration_secondsjob="blackbox" probe_http_status_codejob="blackbox" probe_http_ssljob="blackbox"


Isso mostrará as métricas para a caixa preta do trabalho, que é o scrape_config que adicionamos ao Prometheus. Você pode filtrar por módulo, destino ou qualquer outro rótulo que desejar.


Você pode encontrar mais detalhes e exemplos de como integrar o Blackbox Exporter com o Grafana aqui:


Conclusão e perguntas frequentes




Neste artigo, mostramos como baixar e usar o Blackbox Exporter para monitoramento de sites. Cobrimos os seguintes tópicos:


  • O que é o Blackbox Exporter e quais são seus recursos e benefícios?



  • Como baixar o Blackbox Exporter do GitHub ou executá-lo a partir de binários ou Docker?



  • Como configurar o Blackbox Exporter com um arquivo de configuração, módulos, sondas e autenticação TLS/básica?



  • Como usar o Blackbox Exporter para realizar sondagens com parâmetros de URL e verificar resultados e métricas de sondagem?



  • Como integrar o Blackbox Exporter com Prometheus e Grafana para coleta e visualização de dados?



Esperamos que este artigo tenha ajudado você a entender como baixar e usar o Blackbox Exporter para monitoramento de sites. Você pode usar o Blackbox Exporter para monitorar a disponibilidade, desempenho e função do seu site ou serviço da web de diferentes locais e alertá-lo quando ocorrer um problema. Você também pode usá-lo para rastrear o tempo de atividade, medir os principais parâmetros e personalizar os planos de monitoramento.


Se você tiver alguma dúvida ou comentário sobre este artigo, sinta-se à vontade para entrar em contato conosco. Gostaríamos muito de ouvir de você. Aqui estão algumas perguntas frequentes que podem ajudá-lo:


perguntas frequentes




  • Quais são as vantagens de usar o Blackbox Exporter em relação a outras ferramentas ou serviços de monitoramento de sites?



Algumas das vantagens de usar o Blackbox Exporter são:


  • É de código aberto e de uso gratuito.



  • Ele oferece suporte a vários protocolos, como HTTP, HTTPS, DNS, TCP, ICMP e gRPC.



  • Ele permite que você defina módulos e sondas personalizados com diferentes configurações e parâmetros.



  • Ele se integra bem com Prometheus e Grafana, que são plataformas líderes para monitoramento e alerta de sistemas.



  • Ele fornece uma interface da Web na qual você pode executar análises manualmente ou visualizar informações de depuração.



  • Ele suporta TLS e autenticação básica para comunicação segura.



  • É fácil de instalar e executar como um binário estático ou uma imagem do Docker.



  • Como posso solucionar problemas ou depurar o Blackbox Exporter?



Se você encontrar algum problema ou erro com o Blackbox Exporter, tente as seguintes etapas:


  • Verifique os logs do Blackbox Exporter para quaisquer mensagens ou avisos.



  • Use a interface da web do Blackbox Exporter para realizar testes manualmente ou visualizar informações de depuração.



  • Use curl ou wget para enviar solicitações ao Blackbox Exporter e verifique os cabeçalhos e o corpo da resposta.



  • Use tcpdump ou wireshark para capturar e analisar o tráfego de rede entre o Blackbox Exporter e seu destino.



  • Verifique a página de problemas do GitHub do Blackbox Exporter para problemas ou soluções semelhantes:



  • Peça ajuda ou relate um bug na página do GitHub do Blackbox Exporter:



  • Como posso personalizar ou estender o Blackbox Exporter?



Se você deseja personalizar ou estender o Blackbox Exporter, pode fazer o seguinte:


  • Edite o arquivo de configuração para definir seus próprios módulos e sondas com diferentes configurações e parâmetros.



  • Use os parâmetros de URL para substituir ou incluir opções em seus módulos e análises.



  • Use a opção relabel_configs para modificar ou adicionar rótulos às suas métricas.



  • Faça um fork do repositório GitHub do Blackbox Exporter e modifique o código-fonte para adicionar novos recursos ou corrigir bugs:



  • Contribua para o desenvolvimento do Blackbox Exporter enviando pull requests ou problemas no GitHub:



  • Quais são algumas práticas recomendadas para usar o Blackbox Exporter?



Algumas das melhores práticas para usar o Blackbox Exporter são:


  • Use nomes descritivos e consistentes para seus módulos e análises.



  • Use rótulos apropriados e significativos para suas metas e métricas.



  • Use diferentes módulos e sondas para diferentes protocolos e cenários.



  • Use tempos limite e intervalos razoáveis para suas sondagens e arranhões.



  • Use TLS e autenticação básica quando necessário para uma comunicação segura.



  • Monitore e analise suas métricas regularmente e configure alertas e notificações quando ocorrer um problema.



  • Onde posso encontrar mais recursos e informações sobre o Blackbox Exporter?



Você pode encontrar mais recursos e informações sobre o Blackbox Exporter aqui:


  • A documentação oficial do Blackbox Exporter:



  • O guia de configuração oficial do Blackbox Exporter:



  • Os exemplos oficiais do Blackbox Exporter:



  • A postagem no blog oficial do Blackbox Exporter:



  • A página oficial da comunidade de Prometheus:



0517a86e26


1 view0 comments

Recent Posts

See All

コメント


bottom of page