Configure permissões para que os agentes forneçam métricas
Depois de instalar agentes para o Network Flow Monitor, você deve permitir que eles enviem métricas de rede para as APIs de ingestão do Network Flow Monitor. Os agentes no Network Flow Monitor devem ter permissão para acessar as APIs de ingestão do Network Flow Monitor para que possam fornecer métricas de fluxo de rede que coletaram para cada instância. Você concede esse acesso implementando perfis do IAM de contas de serviço (IRSA).
Para permitir que os agentes forneçam métricas de rede ao Network Flow Monitor, siga as etapas nesta seção.
Implementar perfis do IAM de contas de serviço
Os perfis do IAM de contas de serviço fornecem a capacidade de gerenciar credenciais das aplicações, semelhante à maneira como os perfis de instância do Amazon EC2 fornecem credenciais para instâncias do Amazon EC2. A implementação do IRSA é a forma recomendada de fornecer todas as permissões exigidas pelos agentes do Network Flow Monitor para acessar com êxito as APIs de ingestão do Network Flow Monitor. Para obter mais informações, consulte Perfis do IAM para contas de serviço no Guia do usuário do Amazon EKS.
Ao configurar o IRSA para agentes do Network Flow Monitor, use as seguintes informações:
ServiceAccount: ao definir a política de confiança do perfil do IAM, em
ServiceAccount, especifiqueaws-network-flow-monitor-agent-service-account.Namespace: para o
namespace, especifiqueamazon-network-flow-monitor.Implantação temporária de credenciais: quando você configura as permissões depois de implantar os pods de agentes do Network Flow Monitor, atualizando a
ServiceAccountcom o perfil do IAM, o Kubernetes não implanta as credenciais do perfil do IAM. Para garantir que os agentes do Network Flow Monitor obtenham as credenciais do perfil do IAM que você especificou, você deve implantar uma reinicialização deDaemonSet. Por exemplo, use o comando como o seguinte:kubectl rollout restart daemonset -n amazon-network-flow-monitor aws-network-flow-monitor-agent
Confirme se o agente do Network Flow Monitor está acessando com êxito as APIs de ingestão do Network Flow Monitor
Você pode verificar se a configuração dos agentes está funcionando corretamente usando os logs HTTP 200 dos pods de agentes do Network Flow Monitor. Primeiro, pesquise um pod de agente do Network Flow Monitor e, em seguida, pesquise nos arquivos de logs para encontrar solicitações HTTP 200 com êxito. Por exemplo, você pode fazer o seguinte:
Localize o nome do pod do agente do Network Flow Monitor. Por exemplo, é possível usar o seguinte comando:
RANDOM_AGENT_POD_NAME=$(kubectl get pods -o wide -A | grep amazon-network-flow-monitor | grep Running | head -n 1 | tr -s ' ' | cut -d " " -f 2)Use o comando grep para todos os logs HTTP do nome do pod que você localizou. Se você tiver alterado o NAMESPACE, certifique-se de usar o novo.
NAMESPACE=amazon-network-flow-monitor kubectl logs $RANDOM_AGENT_POD_NAME-\-namespace ${NAMESPACE} | grep HTTP
Se o acesso for concedido com êxito, você deverá ver entradas de logs semelhantes às seguintes:
... {"level":"INFO","message":"HTTP request complete","status":200,"target":"amzn_nefmon::reports::publisher_endpoint","timestamp":1737027525679} {"level":"INFO","message":"HTTP request complete","status":200,"target":"amzn_nefmon::reports::publisher_endpoint","timestamp":1737027552827}Observe que o agente do Network Flow Monitor publica relatórios de fluxo de rede a cada 30 segundos, chamando as APIs de ingestão do Network Flow Monitor.