쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

자체 관리형 Kubernetes 인스턴스용 에이전트 설치

포커스 모드
자체 관리형 Kubernetes 인스턴스용 에이전트 설치 - Amazon CloudWatch

이 섹션의 단계에 따라 자체 관리형 Kubernetes 클러스터에 워크로드용 Network Flow Monitor 에이전트를 설치합니다. 단계를 완료하면 Network Flow Monitor 에이전트 포드가 모든 자체 관리형 Kubernetes 클러스터 노드에서 실행됩니다.

Amazon Elastic Kubernetes Service(Amazon EKS)를 사용할 경우, 수행해야 할 설치 단계가 EKS AWS Network Flow Monitoring 에이전트 추가 기능 설치 섹션에 나와 있습니다.

시작하기 전 준비 사항

설치 프로세스를 시작하기 전에, 이 섹션의 단계에 따라 환경이 올바른 Kubernetes 클러스터에 에이전트를 성공적으로 설치하도록 설정되어 있는지 확인합니다.

현재 보유하고 있는 Kubernetes 버전이 지원되는지 확인

Network Flow Monitor 에이전트를 설치하려면 Kubernetes 버전 1.25 또는 그 이상의 최신 버전이 필요합니다.

필수 도구가 설치되어 있는지 확인

이 설치 프로세스에 사용할 스크립트를 사용하려면 다음 도구를 설치해야 합니다. 도구를 아직 설치하지 않은 경우 제공된 링크에서 자세한 내용을 참조하세요.

  • AWS Command Line Interface(CLI). 자세한 내용은 AWS Command Line Interface 참조 가이드의 Installing or updating to the latest version of the AWS Command Line Interface 섹션을 참조하세요.

  • Helm 패키지 관리자. 자세한 내용은 Helm 웹 사이트의 Installing Helm을 참조하세요.

  • kubectl 명령줄 도구. 자세한 내용은 Kubernetes 웹 사이트에서 Install kubectl을 참조하세요.

  • make Linux 명령 종속성. 자세한 내용은 블로그 게시물 Intro to make Linux Command: Installation and Usage을 참조하세요. 예를 들어, 다음 중 하나를 수행합니다.

    • Ubuntu 같은 Debian 기반 배포판의 경우 sudo apt-get install make 명령을 사용합니다.

    • CentOS 같은 RPM 기반 배포판의 경우 sudo yum install make 명령을 사용합니다.

유효하고 올바르게 구성된 KubeConfig 환경 변수가 있는지 확인

Network Flow Monitor 에이전트 설치는 Helm 패키지 관리자 도구를 사용하며, 이 도구는 kubeconfig 변수인 $HELM_KUBECONTEXT를 사용해서 작업할 대상 Kubernetes 클러스터를 확인합니다. 또한 Helm이 설치 스크립트를 실행할 경우 기본적으로 표준 ~/.kube/config 파일을 참조합니다. 구성 환경 변수를 변경하여 다른 구성 파일을 사용하거나($KUBECONFIG 업데이트), 작업할 대상 클러스터를 정의할 수 있습니다($HELM_KUBECONTEXT 업데이트).

Network Flow Monitor Kubernetes 네임스페이스 생성

Network Flow Monitor 에이전트의 Kubernetes 애플리케이션은 리소스를 특정 네임스페이스에 설치합니다. 설치에 성공하려면 네임스페이스가 있어야 합니다. 필요한 네임스페이스가 있는지 확인하려면 다음 중 하나를 수행하면 됩니다.

  • 시작하기 전에 기본 네임스페이스인 amazon-network-flow-monitor를 생성합니다.

  • 다른 네임스페이스를 생성한 다음, 설치를 실행하여 대상을 생성할 때 $NAMESPACE 환경 변수에 해당 네임스페이스를 정의합니다.

헬름 차트 다운로드 및 에이전트 설치

아래의 명령을 사용하여 AWS 퍼블릭 리포지토리에서 Network Flow Monitor 에이전트 헬름 차트를 다운로드할 수 있습니다. 우선 GitHub 계정으로 인증해야 합니다.

git clone https://github.com/aws/network-flow-monitor-agent.git

./charts/amazon-network-flow-monitor-agent 디렉터리에서 에이전트 설치에 사용하는 대상을 만드는 설치가 포함된 Network Flow Monitor 에이전트인 헬름 차트와 Makefile을 찾을 수 있습니다. Makefile 대상인 helm/install/customer를 사용하여 Network Flow Monitor용 에이전트를 설치합니다.

예를 들어 원하는 경우 다음을 수행하여 설치를 사용자 지정할 수 있습니다.

# Overwrite the kubeconfig files to use KUBECONFIG=<MY_KUBECONFIG_ABS_PATH> make helm/install/customer # Overwrite the Kubernetes namespace to use NAMESPACE=<MY_K8S_NAMESPACE> make helm/install/customer

Network Flow Monitor 에이전트용 Kubernetes 애플리케이션 포드가 성공적으로 생성 및 배포되었는지 확인하려면 상태가 Running인지 확인합니다. kubectl get pods -o wide -A | grep amazon-network-flow-monitor 명령을 실행하여 에이전트의 상태를 확인할 수 있습니다.

에이전트가 지표를 전달할 수 있는 권한 구성

Network Flow Monitor용 에이전트를 설치한 후에는 에이전트가 Network Flow Monitor 수집 API로 네트워크 지표를 전송할 수 있도록 해야 합니다. Network Flow Monitor의 에이전트는 각 인스턴스에 대해 수집한 네트워크 흐름 지표를 제공할 수 있도록 Network Flow Monitor 수집 API에 액세스할 수 있는 권한이 있어야 합니다. 서비스 계정(IRSA)에 대한 IAM 역할을 구현하여 이 액세스 권한을 부여합니다.

에이전트가 Network Flow Monitor에 네트워크 지표를 전달할 수 있도록 하려면 이 섹션의 단계를 따릅니다.

  1. 서비스 계정에 대한 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

  2. Network Flow Monitor 에이전트가 Network Flow Monitor 수집 API에 액세스하고 있는지 확인

    Network Flow Monitor 에이전트 포드에 대한 HTTP 200 로그를 사용하여 에이전트의 구성이 올바르게 작동하는지 확인할 수 있습니다. 먼저 Network Flow Monitor 에이전트 포드를 검색한 다음, 로그 파일을 검색하여 성공적인 HTTP 200 요청을 찾습니다. 예를 들어, 다음을 수행할 수 있습니다.

    1. 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)
    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초마다 네트워크 흐름 보고서를 게시합니다.

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.