Amazon EKS アドオン - Amazon EKS

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

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

Amazon EKS アドオン

アドオンは、Kubernetes アプリケーションをサポートする操作機能を提供するソフトウェアですが、アプリケーションに固有のものではありません。これには、監視エージェントや Kubernetes ドライバなどのソフトウェアが含まれます。これらのソフトウェアにより、クラスターは、ネットワーク、コンピューティング、およびストレージ用の基盤となる AWS リソースと相互作用できるようになります。アドオンソフトウェアは、通常、Kubernetes コミュニティや AWS のようなクラウドプロバイダ、またはサードパーティーベンダーによって構築、保守されます。Amazon EKS は、Amazon VPC CNI plugin for Kubernetes、kube-proxy、および、CoreDNS などのセルフマネージド型アドオンを、すべてのクラスターで自動的にインストールします。VPC CNI アドオンは Amazon EKS Hybrid Nodes と互換性がなく、ハイブリッドノードにデプロイされないことに注意してください。必要に応じて、アドオンのデフォルト設定は変更と更新が可能です。

Amazon EKS アドオンはAmazon EKS クラスター用に厳選されたアドオンセットのインストールと管理を実行してください。Amazon EKS アドオンには最新のセキュリティパッチ、バグ修正が含まれており、また Amazon EKS と連携するために AWS により検証されています。Amazon EKS アドオンを使用すると、Amazon EKS クラスターの安全性と安定性を一貫して保証でき、アドオンのインストール、設定、および更新に必要となる作業量を削減できます。セルフマネージド型のアドオン (kube-proxy など) がすでにクラスターで実行されており、Amazon EKS アドオンとして利用可能な場合、kube-proxy Amazon EKS アドオンをインストールすれば、その機能からのメリットを活用できるようになります。

Amazon EKS API を使用することで、Amazon EKS アドオンのための、Amazon EKS 管理の特定の設定フィールドを更新できます。Amazon EKS で管理されていない設定フィールドは、アドオンの起動後に Kubernetes クラスター内で直接変更することもできます。これには、アドオン向けの特定の設定フィールドの定義が含まれます (該当する場合)。これらの変更は一度実行されると Amazon EKS によって上書きされることはありません。これは、Kubernetes によるサーバー側の適用機能を使用して実現しています。詳細については「Amazon EKS アドオンのためにカスタマイズできるフィールドを決定する」を参照してください。

Amazon EKS アドオンはどの Amazon EKS ノードタイプでも使用できます。詳細については「ノードを使用してコンピューティングリソースを管理する」を参照してください。

Amazon EKS アドオンはAmazon EKS API、AWS Management Console、AWS CLI、および eksctl を使用して、追加、更新、または削除ができます。Amazon EKS アドオンはAWS クラウドフォーメーション を使用しても作成できます。

考慮事項

Amazon EKS アドオンを使用する場合は次の点を考慮してください:

  • クラスターでアドオンの設定を行うにはアドオンを操作するための IAM 許可を、IAM プリンシパルが持っている必要があります。詳細については「Amazon Elastic Kubernetes Service で定義されるアクション」で、Addon の名前ごとにアクションを参照してください。

  • Amazon EKS アドオンはクラスター用にプロビジョニングまたは設定するノードで実行されます。ノードタイプには Amazon EC2 インスタンス、Fargate、ハイブリッドノードがあります。

  • Amazon EKS で管理されていないフィールドを変更して、Amazon EKS アドオンのインストールをカスタマイズできます。詳細については「Amazon EKS アドオンのためにカスタマイズできるフィールドを決定する」を参照してください。

  • AWS Management Console を使用してクラスターを作成すると、Amazon EKS kube-proxy、Amazon VPC CNI plugin for Kubernetes、および CoreDNS Amazon EKS アドオンが自動的にクラスターに追加されます。また、eksctl を使用して config ファイルでクラスターを作成する場合はeksctl は Amazon EKS アドオンを持つクラスターを作成できます。config ファイルなしで (あるいは他のツールを使用して) eksctl によりクラスターを作成する場合は、Amazon EKS アドオンではなく、セルフマネージドの kube-proxy や、Amazon VPC CNI plugin for Kubernetes、および CoreDNS アドオンがインストールされます。これらは自分で管理することが可能で、また、クラスターの作成後に Amazon EKS アドオンを手動で追加することもできます。クラスターの作成にどの方法を使用するかにかかわらず、VPC CNI アドオンはハイブリッドノードにインストールされません。

  • eks:addon-cluster-admin ClusterRoleBindingcluster-admin ClusterRoleeks:addon-manager Kubernetes の ID にバインドします。このロールには eks:addon-manager ID が Kubernetes 名前空間を作成し、アドオンを名前空間にインストールするために必要なアクセス許可があります。eks:addon-cluster-admin ClusterRoleBinding が削除されても、Amazon EKS クラスターは引き続き機能しますが、Amazon EKS はアドオンを管理できなくなります。次のプラットフォームバージョンから始まるすべてのクラスターは新しい ClusterRoleBinding バージョンを使用します。

  • AWS からの EKS アドオンのサブセットは Amazon EKS Hybrid Nodes との互換性が検証されています。詳細についてはAWS アドオン の互換性の表を参照してください。

必要なプラットフォームバージョン

表を確認して、クラスターでこの機能を使用するために必要な最低限のプラットフォームバージョンを確認してください。リストされているプラットフォームバージョン、またはより新しいプラットフォームバージョンを使用できます。例えば、テーブルに「eks.14」と表示されている場合はプラットフォームバージョン「eks.15」を使用できます。詳細については「各 Kubernetes バージョンの Amazon EKS プラットフォームバージョンを表示する」を参照してください。

Kubernetes バージョン EKS プラットフォームのバージョン

1.25以降

すべてのプラットフォームバージョン

1.20

eks.12

1.21

eks.14

1.22

eks.9

1.23

eks.5

1.24

eks.3

Amazon EKS Auto Mode の考慮事項

Amazon EKS 自動 モードには以下のような重要なクラスター機能を提供する機能が含まれています:

  • ポッドネットワーキング

  • サービスネットワーキング

  • クラスター DNS

  • 自動スケーリング

  • ブロックストレージ

  • ロードバランサーコントローラー

  • Pod Identity エージェント

  • ノードモニタリングエージェント

自動 mode コンピューティングでは以下に示すような、一般的に使用される多くの EKS アドオンが冗長になります:

  • Amazon VPC CNI

  • kube-proxy

  • CoreDNS

  • Amazon EBS CSI ドライバー

  • EKS Pod Identity エージェント

ただし、クラスターが 自動 mode をセルフマネージド EC2 インスタンス、マネージド型ノードグループ、AWS Fargate などの他のコンピューティングオプションと組み合わせる場合、これらのアドオンは引き続き必要です。AWS はアンチアフィニティルールを用いて EKS アドオンを強化し、アドオンポッドがサポートされているコンピュートタイプのみに自動的にスケジュールされるようにしています。さらに、ユーザーは EKS アドオン DescribeAddonVersions API を活用して、各アドオンとその特定のバージョンでサポートされている computeTypes を検証できるようになりました。加えて EKS 自動 モードでは上記のコントローラーは AWS の所有するインフラストラクチャで実行されます。そのため、EKS 自動 モードを他のタイプのコンピューティングと組み合わせて使用している場合をのぞいて、これらのコントローラーをアカウントで見ることすらないかもしれません。組み合わせて使用している場合はクラスターにインストールしたコントローラーが表示されます。

既存のクラスターで EKS 自動モードl を有効にする予定がある場合は特定のアドオンのバージョンアップグレードが必要になる場合があります。詳細については「EKS 自動モードl の 必要なアドオンバージョン」を参照してください。

サポート

AWS はサポートレベルが異なる複数のタイプのアドオンを発行します。

  • AWS アドオン: これらのアドオンは によって構築され、完全にサポートされていますAWS。

    • AWS アドオンを使用して、Amazon EFS などのAWS 他のサービスと連携します。

    • 詳細については「AWS アドオン」を参照してください。

  • AWS マーケットプレイス アドオン: これらのアドオンは独立したAWSパートナーによってスキャンAWSされ、サポートされます。

    • マーケットプレイス アドオンを使用して、Splunk によるモニタリングなど、クラスターに価値のある高度な機能を追加します。

    • 詳細については「AWS マーケットプレイス アドオン」を参照してください。

  • コミュニティアドオン: これらのアドオンは によってスキャンされますAWSが、オープンソースコミュニティによってサポートされます。

    • コミュニティアドオンを使用すると、Kubernetes メトリクスサーバーなどの一般的なオープンソースソフトウェアのインストールの複雑さを軽減できます。

    • コミュニティアドオンは AWS によって構築されます。AWS は、バージョンの互換性についてのみコミュニティアドオンを検証します。

    • 詳細については「コミュニティアドオン」を参照してください。

次の表は各アドオンタイプのサポート範囲の詳細を示しています:

カテゴリ 機能 AWSアドオン AWS マーケットプレイス アドオン コミュニティアドオン

開発

AWS によって構築されました

あり

なし

あり

開発

AWS によって検証済み

あり

いいえ

Yes*

開発

AWS パートナーによって検証済み

いいえ

あり

いいえ

メンテナンス

AWS によってスキャンされました

あり

あり

あり

メンテナンス

AWS によって修正されました

あり

なし

あり

メンテナンス

AWS パートナーによってパッチが適用されました

いいえ

あり

いいえ

ディストリビューション

AWS によって公開

あり

なし

あり

ディストリビューション

AWS パートナーによって公開

いいえ

あり

いいえ

サポート

AWSによる基本インストールサポート

あり

あり

あり

サポート

フルAWSサポート

あり

いいえ

いいえ

サポート

完全なAWSパートナーサポート

いいえ

あり

いいえ

*: コミュニティアドオンの検証には、Kubernetes バージョンの互換性のみが含まれます。例えば、クラスターにコミュニティアドオンをインストールすると、AWS はクラスターの Kubernetes バージョンと互換性があるかどうかを確認します。

AWS マーケットプレイス アドオンは の外部ソースから追加のソフトウェア依存関係をダウンロードできますAWS。これらの外部依存関係は によってスキャンまたは検証されませんAWS。外部の依存関係を取得する AWS マーケットプレイス アドオンをデプロイするときはセキュリティ要件を考慮してください。