에이전트가 지표를 전달할 수 있는 권한 구성
Network Flow Monitor용 에이전트를 설치한 후에는 에이전트가 Network Flow Monitor 수집 API로 네트워크 지표를 전송할 수 있도록 해야 합니다. Network Flow Monitor의 에이전트는 각 인스턴스에 대해 수집한 네트워크 흐름 지표를 제공할 수 있도록 Network Flow Monitor 수집 API에 액세스할 수 있는 권한이 있어야 합니다. 서비스 계정(IRSA)에 대한 IAM 역할을 구현하여 이 액세스 권한을 부여합니다.
에이전트가 Network Flow Monitor에 네트워크 지표를 전달할 수 있도록 하려면 이 섹션의 단계를 따릅니다.
서비스 계정에 대한 IAM 역할 구현
서비스 계정에 대한 IAM 역할은 Amazon EC2 인스턴스 프로파일이 Amazon EC2 인스턴스에 자격 증명을 제공하는 것과 비슷한 방식으로 애플리케이션에 대한 자격 증명을 관리하는 기능을 제공합니다. IRSA를 구현하는 것은 Network Flow Monitor 에이전트가 Network Flow Monitor 수집 API에 성공적으로 액세스하는 데 필요한 모든 권한을 제공하려는 경우 권장하는 방법입니다. 자세한 내용은 Amazon EKS 사용 설명서의 서비스 계정에 대한 IAM 역할 섹션을 참조하세요.
Network Flow Monitor 에이전트용 IRSA를 설정할 경우 다음과 같은 정보를 사용합니다.
ServiceAccount: IAM 역할 신뢰 정책을 정의할 경우
ServiceAccount에 대해aws-network-flow-monitor-agent-service-account를 지정합니다.네임스페이스:
namespace에 대해amazon-network-flow-monitor를 지정합니다.임시 자격 증명 배포: Network Flow Monitor 에이전트 포드를 배포한 후 IAM 역할로
ServiceAccount를 업데이트하여 권한을 구성한 경우, Kubernetes는 IAM 역할 자격 증명을 배포하지 않습니다. 지정된 IAM 역할 자격 증명을 Network Flow Monitor 에이전트가 획득하려면DaemonSet의 재시작을 롤아웃해야 합니다. 예를 들어 다음과 같은 명령을 사용합니다.kubectl rollout restart daemonset -n amazon-network-flow-monitor aws-network-flow-monitor-agent
Network Flow Monitor 에이전트가 Network Flow Monitor 수집 API에 액세스하고 있는지 확인
Network Flow Monitor 에이전트 포드에 대한 HTTP 200 로그를 사용하여 에이전트의 구성이 올바르게 작동하는지 확인할 수 있습니다. 먼저 Network Flow Monitor 에이전트 포드를 검색한 다음, 로그 파일을 검색하여 성공적인 HTTP 200 요청을 찾습니다. 예를 들면, 다음을 수행할 수 있습니다.
Network Flow Monitor 에이전트 포드 이름을 찾습니다. 예를 들어 다음 명령을 사용할 수 있습니다.
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)찾은 포드 이름에 대한 모든 HTTP 로그를 가져옵니다. NAMESPACE를 변경한 경우 새 NAMESPACE를 사용해야 합니다.
NAMESPACE=amazon-network-flow-monitor kubectl logs $RANDOM_AGENT_POD_NAME-\-namespace ${NAMESPACE} | grep HTTP
액세스 권한이 부여되면 다음과 비슷한 로그 항목이 표시됩니다.
... {"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}Network Flow Monitor 에이전트는 Network Flow Monitor 수집 API를 직접적으로 호출하여 30초마다 네트워크 흐름 보고서를 게시합니다.