Configurar complemento para ferramentas de monitoramento de terceiros - Amazon CloudWatch

Configurar complemento para ferramentas de monitoramento de terceiros

Você pode configurar o complemento Network Flow Monitor para expor um servidor OpenMetrics durante a instalação. Isso permite a integração com ferramentas de monitoramento de terceiros, como o Prometheus, o que permite coletar e analisar as métricas de fluxo de rede junto com a infraestrutura de monitoramento existente. Saiba mais sobre o OpenMetrics. Esse atributo está disponível no complemento versão v1.1.0.

Para habilitar o servidor OpenMetrics, adicione OPEN_METRICS, OPEN_METRICS_ADDRESS e OPEN_METRICS_PORT aos valores de configuração do complemento Network Flow Monitor do EKS. Este guia explicará como fazer isso usando a CLI e o console. Consulte Configuração avançada dos complementos do Amazon EKS para obter detalhes adicionais sobre a adição de valores de configuração.

Configuração na CLI

Ao usar a AWS Command Line Interface, você pode fornecer os valores de configuração como um parâmetro:

aws eks create-addon \ --cluster-name my-cluster-name \ --addon-name aws-network-flow-monitoring-agent \ --addon-version v1.1.0-eksbuild.1 \ --configuration-values '{"env":{"OPEN_METRICS":"on","OPEN_METRICS_ADDRESS":"0.0.0.0","OPEN_METRICS_PORT":9109}}'

Configuração no console

Ao usar o console do Amazon EKS, esses valores podem ser adicionados em Configurações opcionais, como parte dos valores de configuração.

Exemplo de JSON:

{ "env": { "OPEN_METRICS": "on", "OPEN_METRICS_ADDRESS": "0.0.0.0", "OPEN_METRICS_PORT": 9109 } }

Exemplo de YAML:

env: OPEN_METRICS: "on" OPEN_METRICS_ADDRESS: "0.0.0.0" OPEN_METRICS_PORT: 9109

Parâmetros do OpenMetric no complemento Network Flow Monitor do EKS

  • OPEN_METRICS:

    • Habilite ou desabilite métricas abertas. Desabilitado se não for fornecido

    • Tipo: string

    • Valores: ["ativado", "desativado"]

  • OPEN_METRICS_ADDRESS:

    • Endereço IP de escuta para endpoint de métricas abertas. O padrão é 127.0.0.1 se não for fornecido

    • Tipo: string

  • OPEN_METRICS_PORT:

    • Porta de escuta para endpoint de métricas abertas. O padrão é 80 se não for fornecido

    • Tipo: inteiro

    • Intervalo: [0..65535]

Importante: ao definir OPEN_METRICS_ADDRESS como 0.0.0.0, o endpoint de métricas poderá ser acessado de qualquer interface de rede. Considere usar 127.0.0.1 para acesso somente ao host local ou implemente os controles de segurança de rede apropriados para restringir o acesso apenas aos sistemas de monitoramento autorizados.

Solução de problemas

Se você tiver problemas com a configuração do servidor OpenMetrics, use as informações a seguir para diagnosticar e resolver os problemas comuns.

As métricas não são exibidas

Problema: o servidor OpenMetrics está configurado, mas as métricas não estão aparecendo na sua ferramenta de monitoramento.

Etapas da solução de problemas:

  1. Verifique se o servidor OpenMetrics está habilitado na configuração do complemento:

    • Verifique se OPEN_METRICS está definido como “ativado” nos valores de configuração. Consulte describe-addon.

    • Confirme se a versão do complemento é a v1.1.0 ou posterior em Configurar os complementos selecionados.

  2. Teste diretamente o endpoint de métricas:

    • Acesse as métricas em http://pod-ip:port/metrics (substitua pod-ip pelo endereço IP real do pod e a porta pela porta configurada).

    • Se não conseguir acessar o endpoint, verifique a configuração da rede e as configurações do grupo de segurança.

  3. Valide a configuração da ferramenta de monitoramento. Consulte o guia do usuário das ferramentas de monitoramento para obter detalhes sobre como fazer o seguinte:

    • Certifique-se de que sua ferramenta de monitoramento (como o Prometheus) esteja configurada para coletar o endpoint correto.

    • Verifique se as configurações de intervalo de extração e tempo limite são apropriadas.

    • Verifique se a ferramenta de monitoramento tem acesso de rede ao endereço IP do pod.

Métricas faltando em pods específicos

Problema: as métricas estão disponíveis em alguns pods do cluster, mas não em outros.

Etapas da solução de problemas:

O complemento Network Flow Monitor não é compatível com pods que usam hostNetwork: true. Se a especificação do pod incluir essa configuração, as métricas desses pods não estarão disponíveis.

Solução alternativa: remova a configuração hostNetwork: true da especificação do pod, se possível. Se a aplicação exigir rede host, considere usar abordagens alternativas de monitoramento para esses pods específicos.

Erros de conexão recusada

Problema: você recebe erros de “conexão recusada” ao tentar acessar o endpoint de métricas.

Etapas da solução de problemas:

  1. Verifique a configuração do OPEN_METRICS_ADDRESS:

    • Se definido como 127.0.0.1, o endpoint será acessível somente de dentro do pod.

    • Se definido como 0.0.0.0, o endpoint deverá ser acessível a partir de outros pods no cluster.

    • Certifique-se de que sua ferramenta de monitoramento possa alcançar o endereço configurado.

  2. Verifique a configuração do OPEN_METRICS_PORT:

    • Verifique se o número da porta não está sendo usado por outro serviço.

    • Verifique se a porta está dentro do intervalo válido (1 a 65535).

    • Confirme se todos os grupos de segurança ou políticas de rede permitem tráfego nessa porta.

Etapas de verificação

Para confirmar que a configuração do OpenMetrics está funcionando corretamente:

  1. Verifique o status do complemento:

    aws eks describe-addon --cluster-name your-cluster-name --addon-name aws-network-flow-monitoring-agent
  2. Verifique o status do pod:

    kubectl get pods app.kubernetes.io/name=aws-network-flow-monitoring-agent
  3. Teste o endpoint de métricas de dentro do cluster:

    kubectl exec add-on-pod-name -- curl localhost:9109/metrics

    Substitua 9109 pelo número da porta configurada e o nome do pod por um nome de pod AddOn.