このページの改善にご協力ください
本ユーザーガイドの改善にご協力いただけませんか? すべてのページの右側のペインにある GitHub リンクで、このページの編集を選択してください。皆さまにご協力いただくことで、あらゆる人々に使いやすいユーザーガイドになります。
アマゾン EKS アドオンはアマゾン EKS クラスター用のアドオンソフトウェアです。すべての アマゾン EKS アドオン:
-
最新のセキュリティパッチやバグ修正が含まれています。
-
AWS によって アマゾン EKS で動作することが検証されています。
-
アドオンソフトウェアの管理に必要な作業量を削減します。
アマゾン EKS アドオンは eksctl
、AWS Management Console、AWS CLI を使用して作成できます。アドオンに IAM ロールが必要な場合、ロールの作成の詳細についてはAmazon EKS アドオンの特定のア ドオンの詳細を参照してください。
前提条件
アドオンを作成する前に、次を完了します:
-
クラスターのアドオンを作成する前に、そのクラスターが存在している必要があります。詳細については「アマゾン EKS クラスターを作成します。」を参照してください。
-
アドオンに IAM ロールが必要かどうかを確認します。詳細については「アマゾン EKS アドオンバージョンのクラスターとの互換性を検証する」を参照してください。
-
アマゾン EKS アドオンバージョンがクラスターと互換性があることを検証します。詳細については「アマゾン EKS アドオンバージョンのクラスターとの互換性を検証する」を参照してください。
-
使用しているコンピュータまたは AWS クラウドシェル に、
eksctl
コマンドラインツールのバージョン 0.190.0 以降がインストールされていることを確認します。詳細についてはeksctl
ウェブサイトの「インストール」を参照してください。
手順
アマゾン EKS アドオンは eksctl
、AWS Management Console、AWS CLI を使用して作成できます。アドオンに IAM ロールが必要な場合、ロールの作成の詳細については「使用可能な AWS の アマゾン EKS アドオン」の特定のアドオンの詳細を参照してください。
アドオンの作成 (eksctl)
-
クラスターバージョンで利用可能なアドオンの名前を表示します。
1.30
をお持ちのクラスターのバージョンに置き換えます。eksctl utils describe-addon-versions --kubernetes-version 1.30 | grep AddonName
出力例は次のとおりです。
"AddonName": "aws-ebs-csi-driver", "AddonName": "coredns", "AddonName": "kube-proxy", "AddonName": "vpc-cni", "AddonName": "adot", "AddonName": "dynatrace_dynatrace-operator", "AddonName": "upbound_universal-crossplane", "AddonName": "teleport_teleport", "AddonName": "factorhouse_kpow", [...]
-
作成するアドオンで使用できるバージョンを表示します。
1.30
をお持ちのクラスターのバージョンに置き換えます。name-of-addon
を表示するバージョンのアドオン名に置き換えます。名前は前のステップで返された名前のいずれかである必要があります。eksctl utils describe-addon-versions --kubernetes-version 1.30 --name name-of-addon | grep AddonVersion
次の出力は
vpc-cni
という名前のアドオンに対して返される内容の例です。このアドオンには複数のバージョンがあることがわかります。"AddonVersions": [ "AddonVersion": "v1.12.0-eksbuild.1", "AddonVersion": "v1.11.4-eksbuild.1", "AddonVersion": "v1.10.4-eksbuild.1", "AddonVersion": "v1.9.3-eksbuild.1",
-
作成するアドオンが アマゾン EKS か AWS マーケットプレイス アドオンか判断します。AWS マーケットプレイス にはサードパーティ製のアドオンがあり、アドオンを作成するために追加のステップを実行する必要があります。
eksctl utils describe-addon-versions --kubernetes-version 1.30 --name name-of-addon | grep ProductUrl
出力が返されない場合、アドオンは アマゾン EKS です。出力が返された場合、アドオンは AWS マーケットプレイス アドオンです。次の出力は
teleport_teleport
という名前のアドオンのものです。"ProductUrl": "https://aws.amazon.com/marketplace/pp?sku=3bda70bb-566f-4976-806c-f96faef18b26"
返される URL を含んだ AWS マーケットプレイス のアドオンの詳細について説明します。アドオンにサブスクリプションが必要な場合、AWS マーケットプレイス を通じてアドオンにサブスクライブできます。AWS マーケットプレイス からアドオンを作成する場合、アドオンの作成に使用する IAM プリンシパルにはAWSServiceRoleForAWSライセンスマネージャーRole のサービスにリンクされたロールを作成する許可が必要です。IAM エンティティへの許可の割り当てに関する詳細については「IAM ユーザーガイド」の「IAM アイデンティティ許可の追加と削除」を参照してください。
-
-
アマゾン EKS アドオンを作成します。コマンドをコピーし、次のように
user-data
を置き換えます:-
マイクラスター
の部分は自分のクラスター名に置き換えます。 -
アドオン名
を作成するアドオンの名前に置き換えます。 -
最新バージョンよりも前のバージョンのアドオンが必要な場合、
最終
を使用する前のステップの出力で返されたバージョン番号に置き換えます。 -
アドオンがサービスアカウントロールを使用している場合、
111122223333
をアカウント ID に置き換え、role-name
をロールの名前に置き換えます。サービスアカウントのロールを作成する手順については作成するアドオンのドキュメントを参照してください。アドオンのリストについては「AWS アドオン」を参照してください。サービスアカウントロールを指定するにはクラスター用に IAM OpenID Connect (OIDC) プロバイダーが必要です。クラスター用に持っているかどうかを確認、あるいは作成するには「クラスターの IAM OIDC プロバイダーを作成する」を参照してください。アドオンがサービスアカウントロールを使用していない場合、
--service-account-role-arnarn:aws:iam::111122223333:role/role-name
を削除してください。 -
このコマンド例はアドオンの既存のセルフマネージドバージョンがある場合、その設定を上書きします。既存のセルフマネージド型アドオンの設定を上書きしたくない場合、
--force
オプションを削除してください。オプションを削除し、アマゾン EKS アドオンが既存のセルフマネージド型アドオンの設定を上書きする必要がある場合、アマゾン EKS アドオンの作成が失敗します。その場合、競合を解決するためのエラーメッセージが表示されます。このオプションを指定する前に、自分が管理する必要がある設定を アマゾン EKS アドオンが管理していないことを確認してください。これらの設定はこのオプションの指定により上書きされます。eksctl create addon --cluster my-cluster --name name-of-addon --version latest \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name --force
コマンドにすべての利用可能なオプションのリストを確認できます。
eksctl create addon --help
利用可能なオプションの詳細については「
eksctl
ドキュメント」の「アドオン」を参照してください。
-
アドオンの作成 (AWS コンソール)
-
アマゾン EKS コンソール
を開きます。 -
左のナビゲーションペインで [クラスター] を選択してください。
-
アドオンを作成するクラスターの名前を選択してください。
-
[アドオン] タブを選択してください。
-
[その他のアドオンを入手] を選択してください。
-
[アドオンの選択] ページで、クラスターに追加するアドオンを選択してください。[アマゾン EKS アドオン] と [AWS マーケットプレイス アドオン] は必要な数だけ追加できます。
AWS マーケットプレイス アドオンの場合、アドオンを作成するために使用する IAM プリンシパルにはAWS ライセンスマネージャー からアドオンの資格を読み取る許可が必要です。AWSライセンスマネージャー はユーザーに代わってライセンスを管理する AWS リソースを許可する「AWSServiceRoleForAWSライセンスマネージャーRole」のサービスリンクロール (SLR が必要になります。SLR はアカウントごとに 1 回限りの要件であり、アドオンやクラスターごとに別々の SLR を作成する必要はありません。IAM プリンシパルへの許可の割り当ての詳細については「IAM ユーザーガイド」の「IAM ID のアクセス許可の追加および削除」を参照してください。
インストールする AWS マーケットプレイス アドオンがリストされていない場合はページ番号をクリックして追加のページ結果を表示するか、または検索ボックスで検索できます。[フィルタリング] オプションで、[カテゴリ]、[ベンダー]、または [料金モデル] によってフィルタリングして、検索結果からアドオンを選択することもできます。インストールするアドオンを選択したら、[次へ] を選択してください。
-
[選択したアドオンセッティングの設定] ページで、次の操作を行います:
-
[サブスクリプションオプションを表示] を選択し、[サブスクリプションのオプション] フォームを開きます。[料金の詳細] と [法務] のセクションを確認し、[登録] ボタンを選択して続行します。
-
[バージョン] で、インストールするバージョンを選択してください。作成する個々のアドオンが別のバージョンを推奨している場合を除き、[最新] と表示されたバージョンをお勧めします。アドオンに推奨バージョンがあるかどうかを確認するには作成しているアドオンのドキュメントを参照してください。アドオンのリストについては「AWS アドオン」を参照してください。
-
アドオンのロールを設定するにはEKS ポッドアイデンティティー IAM ロールとサービスアカウント用の IAM ロール (IRSA の 2 つのオプションがあります。希望するオプションについては以下の適切なステップに従います。選択したすべてのアドオンの [ステータス] で [サブスクリプションが必要] と表示されている場合、[次へ] を選択してください。クラスターが作成された後にサブスクライブするまで、それ以上これらのアドオンを設定することはできません。[ステータス] で [サブスクリプションが必要] と表示されていないアドオンの場合、次を実行してください:
-
[サービスアカウント用の Pod Identityー IAM ロール] で、既存の EKS ポッドアイデンティティー IAM ロールを使用するか、または [推奨ロールを作成] ボタンを使用して EKS Pod Identity IAM ロールを作成できます。このフィールドには適切な信頼ポリシーを持つオプションのみが表示されます。選択するロールがない場合は一致する信頼ポリシーを持つ既存のロールが存在しないことになります。選択したアドオンのサービスアカウント用の EKS Pod Identity IAM ロールを設定するには[推奨ロールを作成] を選択してください。ロール作成ウィザードが別のウィンドウで開きます。ウィザードは次のようにロールの情報を自動的に入力します。EKS Pod Identity IAM ロールを作成するアドオンごとに、IAM ウィザードのステップを次のように実行してください。
-
[信頼されたエンティティを選択] ステップでは[EKS] の AWS サービスオプションと [EKS - Pod Identity] のユースケースが事前に選択されており、アドオンのために適切な信頼ポリシーが自動的に入力されます。例えば、ロールは「EKS Pod Identity の利点」で詳述されているように、pods.eks.amazonaws.com の IAM プリンシパルを含む適切な信頼ポリシーを使用して作成されます。[ 次へ] を選択してください。
-
[許可を追加] ステップではロールポリシー用の適切なマネージドポリシーがアドオンのために事前に選択されています。例えば、アマゾン VPC CNI アドオンの場合、ロールは アマゾン VPC CNI Kubernetes用プラグイン で詳述されているように、マネージドポリシー「アマゾンEKS_CNI_Policy」を使用して作成されます。[ 次へ] を選択してください。
-
[名前、確認、作成] のステップにおいて、[ロール名] で、アドオンのためにデフォルトのロール名が自動的に入力されます。例えば、アマゾン VPC CNI アドオンの場合、ロールは アマゾンEKSPodIdentityアマゾンVPCCNIRole という名前で作成されます。[説明] ではアドオンのためにデフォルトの適切な説明が自動的に入力されます。例えば、アマゾン VPC CNI アドオンの場合、ロールは AWS リソースにアクセスすることを「アマゾン EKS クラスターで実行されているポッドに許可します」という説明で作成されます。[信頼ポリシー] で、アドオンのために事前入力された信頼ポリシーを表示します。[ロールの作成] を選択してください。
注: デフォルトのロール名を保持すると、EKS は新しいクラスターでアドオン用のロールを事前に選択したり、既存のクラスターにアドオンを追加したりできます。この名前は引き続き上書きでき、ロールはクラスター全体でアドオンのために使用できますが、ロールはドロップダウンから手動で選択する必要があります。
-
-
[ステータス] が [サブスクリプションが必要] でなく、IRSA を使用してロールを設定するアドオンについてはIAM ポリシーを作成してロールにアタッチするために作成するアドオンに関するドキュメントを参照してください。アドオンのリストについては「AWS アドオン」を参照してください。IAM ロールを選択するにはクラスター用に IAM OpenID Connect (OIDC) プロバイダーが必要です。クラスター用に持っているかどうかを確認、あるいは作成するには「クラスターの IAM OIDC プロバイダーを作成する」を参照してください。
-
[オプション設定のセッティング] を選択してください。
-
アドオンに設定が必要な場合、[設定値] ボックスに入力します。アドオンに設定情報が必要かどうかを判断するには作成するアドオンのドキュメントを参照してください。アドオンのリストについては「AWS アドオン」を参照してください。
-
[競合解決方法] で利用可能なオプションをいずれか選択してください。[コンフリクト解決方法] で [上書き] を選択すると、既存のアドオンでの 1 つ以上の設定が、アマゾン EKS アドオンの設定で上書きされます。このオプションが有効でない状態で既存の設定との競合が発生する場合はオペレーションが失敗します。表示されたエラーメッセージを使用して、競合をトラブルシューティングできます。このオプションを選択する前に、自分で管理する必要のある設定が、アマゾン EKS アドオンにより管理されていないことを確認します。
-
[ 次へ] を選択してください。
-
-
-
[確認と追加] ページで、[作成] を選択してください。アドオンのインストールが完了した後、インストールしたアドオンが表示されます。
-
インストールしたアドオンにサブスクリプションが必要な場合、次のステップを実行してください:
-
アドオンの右下隅にある [サブスクライブ] ボタンを選択してください。AWS マーケットプレイス のアドオンのページが表示されます。[製品概要] や [価格情報] など、アドオンに関する情報をお読みください。
-
アドオンページの右上にある [サブスクライブを続ける] ボタンを選択してください。
-
[利用規約] をよくお読みください。利用規約に同意する場合、[利用規約に同意] を選択してください。サブスクリプションの処理に数分かかることがあります。サブスクリプションの処理中、[アマゾン EKS コンソールに戻る] ボタンがグレー表示されます。
-
サブスクリプションの処理が完了すると、[アマゾン EKS コンソールに戻る] ボタンがグレー表示されなくなります。ボタンを選択し、クラスターの アマゾン EKS コンソールの [アドオン] タブに戻ります。
-
サブスクライブしているアドオンについては[削除して再インストール] を選択し、次に [アドオンの再インストール] を選択してください。アドオンのインストールに数分かかることがあります。インストールが完了すると、アドオンを設定できます。
-
アドオンの作成 (AWS CLI)
-
ご使用のデバイスまたは AWS クラウドシェル で、バージョン
2.12.3
以降、または AWS コマンドラインインターフェイス (AWS CLI のバージョン1.27.160
以降が必要です。現在のバージョンを確認するには「aws --version | cut -d / -f2 | cut -d ' ' -f1
」を参照してください。macOS のyum
、apt-get
、または Homebrew などのパッケージマネージャーはAWS CLI の最新バージョンより数バージョン遅れることがあります。最新バージョンをインストールするには「AWS コマンドラインインターフェイスユーザーガイド」の「インストール」および「aws configure を使用したクイック設定」を参照してください。AWS クラウドシェル にインストールされている AWS CLI バージョンも最新バージョンより数バージョン遅れることがあります。更新するには「AWS クラウドシェル ユーザーガイド」の「ホームディレクトリへの AWS CLI のインストール」を参照してください。 -
利用可能なアドオンを確認します。利用可能なすべてのアドオン、種類、発行元を確認できます。AWS マーケットプレイスを介して利用可能なアドオンの URL も確認できます。
1.30
をお持ちのクラスターのバージョンに置き換えます。aws eks describe-addon-versions --kubernetes-version 1.30 \ --query 'addons[].{MarketplaceProductUrl: marketplaceInformation.productUrl, Name: addonName, Owner: owner Publisher: publisher, Type: type}' --output table
出力例は次のとおりです。
--------------------------------------------------------------------------------------------------------------------------------------------------------- | DescribeAddonVersions | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+ | MarketplaceProductUrl | Name | Owner | Publisher | Type | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+ | None | aws-ebs-csi-driver | aws | eks | storage | | None | coredns | aws | eks | networking | | None | kube-proxy | aws | eks | networking | | None | vpc-cni | aws | eks | networking | | None | adot | aws | eks | observability | | https://aws.amazon.com/marketplace/pp/prodview-brb73nceicv7u | dynatrace_dynatrace-operator | aws-marketplace | dynatrace | monitoring | | https://aws.amazon.com/marketplace/pp/prodview-uhc2iwi5xysoc | upbound_universal-crossplane | aws-marketplace | upbound | infra-management | | https://aws.amazon.com/marketplace/pp/prodview-hd2ydsrgqy4li | teleport_teleport | aws-marketplace | teleport | policy-management | | https://aws.amazon.com/marketplace/pp/prodview-vgghgqdsplhvc | factorhouse_kpow | aws-marketplace | factorhouse | monitoring | | [...] | [...] | [...] | [...] | [...] | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+
出力が異なる場合があります。この出力例ではタイプ
networking
で利用可能なアドオンが 3 種類あり、タイプeks
の発行元でアドオンが 5 種類あります。Owner
列にaws-marketplace
があるアドオンはインストールする前にサブスクリプションが必要な場合があります。URL にアクセスしてアドオンの詳細を確認したり、アドオンをサブスクライブしたりできます。 -
アドオンごとに利用可能なバージョンを確認できます。
1.30
をクラスターのバージョンに置き換え、vpc-cni
を前のステップで返されたアドオンの名前に置き換えます。aws eks describe-addon-versions --kubernetes-version 1.30 --addon-name vpc-cni \ --query 'addons[].addonVersions[].{Version: addonVersion, Defaultversion: compatibilities[0].defaultVersion}' --output table
出力例は次のとおりです。
------------------------------------------ | DescribeAddonVersions | +-----------------+----------------------+ | Defaultversion | Version | +-----------------+----------------------+ | False | v1.12.0-eksbuild.1 | | True | v1.11.4-eksbuild.1 | | False | v1.10.4-eksbuild.1 | | False | v1.9.3-eksbuild.1 | +-----------------+----------------------+
Defaultversion
列にTrue
と表示されているバージョンはデフォルトでアドオンが作成されたバージョンです。 -
(オプション) 次のコマンドを実行して、選択したアドオンの設定オプションを調べます:
aws eks describe-addon-configuration --addon-name vpc-cni --addon-version v1.12.0-eksbuild.1
{ "addonName": "vpc-cni", "addonVersion": "v1.12.0-eksbuild.1", "configurationSchema": "{\"$ref\":\"#/definitions/VpcCni\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"definitions\":{\"Cri\":{\"additionalProperties\":false,\"properties\":{\"hostPath\":{\"$ref\":\"#/definitions/HostPath\"}},\"title\":\"Cri\",\"type\":\"object\"},\"Env\":{\"additionalProperties\":false,\"properties\":{\"ADDITIONAL_ENI_TAGS\":{\"type\":\"string\"},\"AWS_VPC_CNI_NODE_PORT_SUPPORT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_ENI_MTU\":{\"format\":\"integer\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CONFIGURE_RPFILTER\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CUSTOM_NETWORK_CFG\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_EXTERNALSNAT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOGLEVEL\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_RANDOMIZESNAT\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_VETHPREFIX\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_LEVEL\":{\"type\":\"string\"},\"DISABLE_INTROSPECTION\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_METRICS\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_NETWORK_RESOURCE_PROVISIONING\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_POD_ENI\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_PREFIX_DELEGATION\":{\"format\":\"boolean\",\"type\":\"string\"},\"WARM_ENI_TARGET\":{\"format\":\"integer\",\"type\":\"string\"},\"WARM_PREFIX_TARGET\":{\"format\":\"integer\",\"type\":\"string\"}},\"title\":\"Env\",\"type\":\"object\"},\"HostPath\":{\"additionalProperties\":false,\"properties\":{\"path\":{\"type\":\"string\"}},\"title\":\"HostPath\",\"type\":\"object\"},\"Limits\":{\"additionalProperties\":false,\"properties\":{\"cpu\":{\"type\":\"string\"},\"memory\":{\"type\":\"string\"}},\"title\":\"Limits\",\"type\":\"object\"},\"Resources\":{\"additionalProperties\":false,\"properties\":{\"limits\":{\"$ref\":\"#/definitions/Limits\"},\"requests\":{\"$ref\":\"#/definitions/Limits\"}},\"title\":\"Resources\",\"type\":\"object\"},\"VpcCni\":{\"additionalProperties\":false,\"properties\":{\"cri\":{\"$ref\":\"#/definitions/Cri\"},\"env\":{\"$ref\":\"#/definitions/Env\"},\"resources\":{\"$ref\":\"#/definitions/Resources\"}},\"title\":\"VpcCni\",\"type\":\"object\"}}}" }
出力は標準の JSON スキーマです。
上記のスキーマで使用できる有効な設定値の例 (JSON フォーマット) を次に示します。
{ "resources": { "limits": { "cpu": "100m" } } }
上記のスキーマで使用できる有効な設定値の例 (YAML フォーマット) を次に示します。
resources: limits: cpu: 100m
-
アドオンに IAM アクセス許可が必要かどうかを確認します。その場合は(1 EKS ポッドアイデンティティー またはサービスアカウントの IAM ロール (IRSA 使用するかどうかを決定し、(2 アドオンで使用する IAM ロールの ARN を決定し、(3) アドオンで使用される Kubernetes サービスアカウントの名前を決定する必要があります。詳細については「アマゾン EKS アドオンに関する IAM 情報を取得する」を参照してください。
-
アマゾン EKS ではアドオンが EKS ポッドアイデンティティー をサポートしている場合はEKS ポッドアイデンティティー の使用を推奨しています。そのためにはPod Identity エージェントがクラスター にインストールされている必要があります。アドオンで ポッドアイデンティティー を使用する場合の詳細については「Amazon EKS アドオンの IAM ロール」を参照してください。
-
アドオンまたはクラスターが EKS ポッドアイデンティティー 用にセットアップされていない場合はIRSA を使用します。クラスターで IRSA が設定されていることを確認します。
-
アマゾン EKS アドオンのドキュメントを参照して、アドオンに IAM アクセス許可と、関連する Kubernetes サービスアカウントの名前が必要かどうかを確認します。
-
アマゾン EKS アドオンを作成します。デバイスに沿ったコマンドをコピーします。必要に応じてコマンドに次の変更を加え、変更したコマンドを実行してください:
-
-
マイクラスター
の部分は自分のクラスター名に置き換えます。 -
vpc-cni
を前のステップの出力で返された作成するアドオン名に置き換えます。 -
vpc-cni
を使用する前のステップの出力で返されたバージョンに置き換えます。 -
アドオンに IAM アクセス許可が必要ない場合は
<service-account-configuration>
を削除してください。 -
次のいずれかを行います:
-
アドオンが (1) IAM 許可が必要で、(2) クラスターが EKS Pod Identity を使用している場合は
<service-account-configuration>
を次の Pod Identity の関連付けに置き換えます。<service-account-name>
をアドオンで使用されるサービスアカウント名に置き換えます。<role-arn>
を IAM ロールの ARN に置き換えます。ロールにはEKS ポッドアイデンティティー に必要な信頼ポリシーが必要です。--pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
-
アドオンが (1) IAM アクセス許可が必要で、(2) クラスターが IRSA を使用している場合は
<service-account-configuration>
を次の IRSA 設定に置き換えます。111122223333
を、アカウント ID に置き換えます。また、role-name
を、作成した既存の IAM ロールの名前に置き換えます。ロールの作成手順については作成するアドオンのドキュメントを参照してください。アドオンのリストについては「AWS アドオン」を参照してください。サービスアカウントロールを指定するにはクラスター用に IAM OpenID Connect (OIDC) プロバイダーが必要です。クラスター用に持っているかどうかを確認、あるいは作成するには「クラスターの IAM OIDC プロバイダーを作成する」を参照してください。--service-account-role-arn arn:aws::iam::111122223333:role/role-name
-
-
このコマンド例はアドオンの既存のセルフマネージドバージョンの
--configuration-values
オプションがある場合、それを上書きします。これを、文字列やファイル入力などの目的の設定値に置き換えます。設定値を指定したくない場合、--configuration-values
オプションを削除します。AWS CLI に既存のセルフマネージド型アドオンの設定を上書きされたくない場合、--resolve-conflicts OVERWRITE
オプションを削除してください。オプションを削除し、アマゾン EKS アドオンが既存のセルフマネージド型アドオンの設定を上書きする必要がある場合、アマゾン EKS アドオンの作成が失敗します。その場合、競合を解決するためのエラーメッセージが表示されます。このオプションを指定する前に、自分が管理する必要がある設定を アマゾン EKS アドオンが管理していないことを確認してください。これらの設定はこのオプションの指定により上書きされます。aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ <service-account-configuration> --configuration-values '{"resources":{"limits":{"cpu":"100m"}}}' --resolve-conflicts OVERWRITE
aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ <service-account-configuration> --configuration-values 'file://example.yaml' --resolve-conflicts OVERWRITE
使用可能なすべてのオプションのリストについては「アマゾン EKS コマンドラインリファレンス」の「
create-addon
」を参照してください。作成したアドオンが前のステップのOwner
列にaws-marketplace
が一覧表示されている場合、作成が失敗して次のエラーと同様なエラーメッセージが表示されることがあります。{ "addon": { "addonName": "addon-name", "clusterName": "my-cluster", "status": "CREATE_FAILED", "addonVersion": "version", "health": { "issues": [ { "code": "AddonSubscriptionNeeded", "message": "You are currently not subscribed to this add-on. To subscribe, visit the AWS Marketplace console, agree to the seller EULA, select the pricing type if required, then re-install the add-on" } ] } } }
前の出力のエラーと同様なものが表示された場合、前のステップに出力された URL にアクセスしてアドオンをサブスクライブしてください。サブスクライブしたら
create-addon
コマンドを再実行してください。
-