

# EKS AWS Network Flow Monitor Agent アドオンをインストールする
<a name="CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks"></a>

このセクションの手順に従って、Amazon Elastic Kubernetes Service (Amazon EKS) の AWS Network Flow Monitor Agent アドオンをインストールし、Kubernetes クラスターから Network Flow Monitor バックエンドに Network Flow Monitor メトリクスを送信します。ステップを完了すると、AWS Network Flow Monitor Agent ポッドがすべての Kubernetes クラスターノードで実行されます。

セルフマネージド Kubernetes クラスターを使用する場合、前のセクション「[セルフマネージド Kubernetes インスタンス用の エージェントをインストールする](CloudWatch-NetworkFlowMonitor-agents-kubernetes-non-eks.md)」のインストール手順に従ってください。

アドオンをインストールするには、コンソールを使用するか、AWS Command Line Interface で API コマンドを使用します。

**Topics**
+ [アドオンのインストールの前提条件](#CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-prereq)
+ [コンソールを使用して、アドオンをインストールする](#CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-console)
+ [CLI を使用してアドオンをインストールする](#CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-cli)
+ [サードパーティーツール用に設定する](CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-third-party.md)

## アドオンのインストールの前提条件
<a name="CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-prereq"></a>

コンソールまたは CLI を使用して AWS Network Flow Monitor Agent アドオンをインストールするかに関係なく、Kubernetes でアドオンをインストールするにはいくつかの要件があります。

**お使いの Kubernetes のバージョンが対応していることを確認します。**  
Network Flow Monitor エージェントのインストールには、Kubernetes バージョン 1.25 またはこれ以降のバージョンが必要です。

**Amazon EKS Pod Identity Agent アドオンのインストール**  
Amazon EKS Pod Identity Agent アドオンは、コンソールまたは CLI を使用してインストールできます。  
EKS Pod Identity の関連付けは、Amazon EC2 インスタンスプロファイルから Amazon EC2 インスタンスに認証情報を提供する場合と同じような方法で、アプリケーションの認証情報を管理する機能があります。Amazon EKS Pod Identity は、追加の Amazon EKS Auth API と各ノードで実行されるエージェントポッドを使用して、ワークロードに認証情報を提供します。  
詳細と Amazon EKS Pod Identity アドオンのインストール手順を確認するには、「Amazon EKS ユーザーガイド」の「[Amazon EKS Pod Identity エージェントのセットアップ](https://docs.aws.amazon.com/eks/latest/userguide/pod-id-agent-setup.html)」を参照してください。

## コンソールを使用して AWS Network Flow Monitor Agent アドオンをインストールする
<a name="CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-console"></a>

このセクションの手順に従って、Amazon EKS コンソールで AWS Network Flow Monitor Agent アドオンをインストールして設定します。

アドオンを既にインストールしていて、新しいバージョンへのアップグレードに問題がある場合は、「[EKS エージェントのインストールに関する問題のトラブルシューティング](CloudWatch-NetworkFlowMonitor-troubleshooting.md#CloudWatch-NetworkFlowMonitor-troubleshooting.ec2-agent-installation)」を参照してください。

開始する前に、Amazon EKS Pod Identity Agent アドオンがインストールされていることを確認してください。詳細については、[前のセクション](#NFMPodIdentity)を参照してください。

**コンソールを使用してアドオンをインストールするには**

1. AWS マネジメントコンソール では、Amazon EKS コンソールに移動します。

1. アドオンのインストールページのアドオンの一覧で、**AWS Network Flow Monitor Agent** を選択します。

1. アドオン設定を構成します。

   1. **[アドオンアクセス]** では、**[EKS Pod Identity]** を選択します。

   1. アドオンで使用する IAM ロールには、[CloudWatchNetworkFlowMonitorAgentPublishPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/CloudWatchNetworkFlowMonitorAgentPublishPolicy.html) という AWS 管理ポリシーがアタッチされたロールを使用します。このポリシーは、エージェントがテレメトリレポートを Network Flow Monitor エンドポイントに送信するアクセス許可を付与します。ポリシーがアタッチされたロールがまだない場合は、**[推奨ロールを作成]** を選択し、IAM コンソールのステップに従ってロールを作成します。

   1. [**次へ**] を選択します。

1. **[確認と追加]** ページで、アドオン設定が正しいことを確認し、**[作成]** を選択します。

## AWS Command Line Interface を使用して AWS Network Flow Monitor Agent アドオンをインストールする
<a name="CloudWatch-NetworkFlowMonitor-agents-kubernetes-eks-cli"></a>

このセクションの手順に従って、AWS Command Line Interface を使用して Amazon EKS 用の AWS Network Flow Monitor Agent アドオンをインストールします。

**1. EKS Pod Identity Agent アドオンをインストールする**  
開始する前に、Amazon EKS Pod Identity Agent アドオンがインストールされていることを確認してください。詳細については、[前のセクション](#NFMPodIdentity)を参照してください。

**2. 必須の IAM ロールを作成する**  
AWS Network Flow Monitor Agent アドオンには、Network Flow Monitor バックエンドにメトリクスを送信するアクセス許可が必要です。アドオンを作成するときは、必要なアクセス許可を持つロールをアタッチする必要があります。[CloudWatchNetworkFlowMonitorAgentPublishPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/CloudWatchNetworkFlowMonitorAgentPublishPolicy.html) という AWS 管理ポリシーがアタッチされたロールを作成します。アドオンをインストールするには、この IAM ロールの ARN が必要です。

**3. AWS Network Flow Monitor Agent アドオンをインストールする**  
クラスターに AWS Network Flow Monitor Agent アドオンをインストールするには、次のコマンドを実行します。  
`aws eks create-addon --cluster-name {{CLUSTER NAME}} --addon-name aws-network-flow-monitoring-agent --region {{AWS REGION}} --pod-identity-associations serviceAccount=aws-network-flow-monitor-agent-service-account,roleArn={{IAM ROLE ARN}}`  
結果は次のようになるはずです:  

```
{
    "addon": {
        "addonName": "aws-network-flow-monitoring-agent",
        "clusterName": "ExampleClusterName",
        "status": "CREATING",
        "addonVersion": "v1.0.0-eksbuild.1",
        "health": {
            "issues": []
        },
        "addonArn": "arn:aws:eks:us-west-2:000000000000:addon/ExampleClusterName/aws-network-flow-monitoring-agent/eec11111-bbbb-EXAMPLE",
        "createdAt": "2024-10-25T16:38:07.213000+00:00",
        "modifiedAt": "2024-10-25T16:38:07.240000+00:00",
        "tags": {},
         "podIdentityAssociations": [
            "arn:aws:eks:us-west-2:000000000000:podidentityassociation/ExampleClusterName/a-3EXAMPLE5555555"
         ]
    }
  }
```

**4. アドオンがアクティブであることを確認する**  
インストールされた AWS Network Flow Monitor Agent アドオンを確認して、クラスターに対してアクティブであることを確認します。ステータスが `ACTIVE` になったことを確認するために、次のコマンドを実行します。  
`aws eks describe-addon --cluster-name {{CLUSTER NAME}} --addon-name aws-network-flow-monitoring-agent --region {{AWS REGION}}`  
結果は次のようになるはずです:  

```
{
    "addon": {
        "addonName": "aws-network-flow-monitoring-agent",
        "clusterName": "ExampleClusterName",
        "status": "ACTIVE",
        "addonVersion": "v1.0.0-eksbuild.1",
        "health": {
            "issues": []
        },
        "addonArn": "arn:aws:eks:us-west-2:000000000000:addon/ExampleClusterName/aws-network-flow-monitoring-agent/eec11111-bbbb-EXAMPLE",
        "createdAt": "2024-10-25T16:38:07.213000+00:00",
        "modifiedAt": "2024-10-25T16:38:07.240000+00:00",
        "tags": {},
         "podIdentityAssociations": [
            "arn:aws:eks:us-west-2:000000000000:podidentityassociation/ExampleClusterName/a-3EXAMPLE5555555"
         ]
    }
  }
```