Amazon VPC CNI Amazon EKS アドオンの追加します。 - アマゾン EKS

このページの改善にご協力ください

このユーザーガイドに貢献するには、すべてのページの右側のペインにある「GitHub でこのページを編集する」リンクを選択してください。

Amazon VPC CNI Amazon EKS アドオンの追加します。

次のステップを使用して、Amazon VPC CNI Plugin for Kubernetes の Amazon EKS アドオンを作成します。

開始する前に、考慮事項を確認してください。詳細については、「考慮事項」を参照してください。

前提条件

以下は、Amazon VPC CNI Plugin for Kubernetes の Amazon EKS アドオンの前提条件です。

重要

Amazon VPC CNI Plugin for Kubernetes バージョンv1.16.0 から v1.16.1 では、CNI 仕様バージョン v1.0.0 が実装されています。バージョン v1.0.0 のCNI 仕様の詳細については、GitHub の「Container Network Interface (CNI) Specification」を参照してください。

手順

前提条件を満たしたら、次のステップを使用してアドオンを作成します。

  1. クラスターにインストールされているアドオンのバージョンを確認します。

    kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3

    出力例は次のとおりです。

    v1.16.4-eksbuild.2
  2. クラスターにインストールされているアドオンのタイプを確認します。クラスターを作成するために使用したツールによっては、現在クラスターに Amazon EKS アドオンタイプがインストールされていない場合があります。マイクラスター の部分は、自分のクラスター名に置き換えます。

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query addon.addonVersion --output text

    バージョン番号が返された場合、Amazon EKS タイプのアドオンがクラスターにインストールされているため、このステップの残りのステップを完了する必要はありません。エラーが返された場合、クラスターに Amazon EKS タイプのアドオンがインストールされていません。インストールするには、このステップの残りのステップを完了します。

  3. 現在インストールされているアドオンの設定を保存します。

    kubectl get daemonset aws-node -n kube-system -o yaml > aws-k8s-cni-old.yaml
  4. AWS CLI を使用してアドオンを作成します。AWS Management Console または eksctl を使用してアドオンを作成する場合は、「Amazon EKS アドオンを作成する」を参照して、アドオン名の vpc-cni を指定します。デバイスに沿ったコマンドをコピーします。必要に応じてコマンドに次の変更を加え、変更したコマンドを実行してください。

    • マイクラスター の部分は、自分のクラスター名に置き換えます。

    • v1.19.2-eksbuild.1 を、使用しているクラスターバージョンに対して最新バージョンの表に記載されている最新バージョンに置き換えます。最新バージョンの表については、「Amazon VPC CNI のバージョン」を参照してください。

    • 111122223333 を、アカウント ID に置き換えて、AmazonEKSVPCCNIRole を作成した既存の IAM 役割の名前に置き換えます。ロールを指定するには、クラスター用に IAM OpenID Connect (OIDC) プロバイダーが必要です。クラスター用に持っているかどうかを確認、あるいは作成するには「クラスターの IAM OIDC プロバイダーを作成するには」を参照してください。

      aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version v1.19.2-eksbuild.1 \ --service-account-role-arn arn:aws:iam::111122223333:role/AmazonEKSVPCCNIRole

      Amazon EKS アドオンのデフォルト設定と競合するカスタム設定を現在のアドオンに適用した場合、作成が失敗する可能性があります。作成に失敗した場合、問題解決に役立つエラーが表示されます。または、前のコマンドに --resolve-conflicts OVERWRITE を追加することもできます。これにより、アドオンは既存のカスタム設定を上書きできます。アドオンを作成したら、カスタム設定で更新できます。

  5. クラスターの Kubernetes バージョン用のアドオンの最新バージョンがクラスターに追加されたことを確認します。マイクラスター の部分は、自分のクラスター名に置き換えます。

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query addon.addonVersion --output text

    アドオンの作成が完了するまでに数秒かかる場合があります。

    出力例は次のとおりです。

    v1.19.2-eksbuild.1
  6. 元のアドオンに対してカスタム設定を行った場合は、Amazon EKS アドオンを作成する前に、前のステップで保存した設定を使用して、カスタム設定で EKS アドオンを更新します。「Amazon VPC CNI を更新する (Amazon EKS アドオン)」のステップを実行してください。

  7. (オプション)cni-metrics-helper をクラスターにインストールします。メトリクスヘルパーは、ネットワークインターフェイスと IP アドレス情報を収集し、クラスターレベルでメトリクスを集計し、メトリクスを Amazon CloudWatch に発行するために使用できるツールです。詳細についてはGitHub の CNI を参照してください。