Amazon EKS リソースのタグ付け - Amazon EKS

Amazon EKS リソースのタグ付け

Amazon EKS リソースを管理しやすくするために、タグを使用して各リソースに独自のメタデータを割り当てることができます。このトピックでは、タグ機能の概要とタグの作成方法について説明します。

タグの基本

タグとは、AWS リソースに付けるラベルです。タグはそれぞれ、1 つのキーとオプションの 1 つので構成されており、どちらもお客様側が定義します。

タグを使用すると、 AWS リソースを目的、所有者、環境などで分類できます。同じ型のリソースが多い場合に、割り当てたタグに基づいて特定のリソースをすばやく識別できます。例えば Amazon EKS クラスターに一連のタグを定義して、各クラスターの所有者とスタックレベルを追跡できます。リソースタイプごとに一貫した一連のタグキーを考案することをお勧めします。追加したタグに基づいてリソースを検索およびフィルタリングできます。

タグは自動的にはリソースに割り当てられません。タグを追加したら、いつでもタグキーと値は編集でき、タグはリソースからいつでも削除できます。リソースを削除すると、リソースのタグも削除されます。

タグには Amazon EKS に関する意味論的な意味はなく、完全に文字列として解釈されます。タグの値を空の文字列に設定することはできますが、タグの値を null に設定することはできません。特定のリソースについて既存のタグと同じキーを持つタグを追加した場合、古い値は新しい値によって上書きされます。

新規または既存のクラスターリソースにタグ付けするには、AWS Management Console、AWS CLI、または Amazon EKS API を使用します。新規のクラスターリソースにのみタグ付けを行うには、eksctl を使用します。

AWS Identity and Access Management (IAM) を使用すると、AWS アカウント内のどのユーザーがタグを管理するアクセス許可を持っているかを制御できます。

リソースのタグ付け

新規または既存の Amazon EKS クラスターおよびマネージド型ノードグループにタグ付けできます。

Amazon EKS コンソールを使用している場合、新規または既存のリソースにいつでもタグを適用できます。これを行うには、関連リソースページの [Tags (タグ)] タブを使用します。eksctl を使用している場合は、--tags オプションを使ってリソースを作成する際に、リソースにタグを適用できます。

Amazon EKS API、AWS CLI、または AWS SDK を使用している場合は、関連する API アクションの tags パラメータを使用して、新しいリソースにタグを適用できます。TagResource API アクションを使用して既存のリソースにタグを適用することもできます。詳細については、「TagResource」を参照してください。

リソース作成アクションによっては、リソースの作成時にリソースのタグを指定できます。リソースの作成中にタグを適用できない場合、リソースの作成は失敗します。これにより、作成時にタグ付けしたリソースが、指定したタグで作成されているか、まったく作成されていないかが確認できます。作成時にリソースにタグ付けを行う場合、リソースの作成後にカスタムタグ付けスクリプトを実行する必要はありません。

次の表では、タグ付け可能な Amazon EKS リソースと、作成時にタグ付け可能なリソースについて示しています。

Amazon EKS リソースのタグ付けのサポート
リソース タグをサポート タグの伝播をサポート 作成時のタグ付けのサポート (Amazon EKS API、AWS CLI、AWS SDK、eksctl)

Amazon EKS クラスター

はい

いいえ。クラスタータグは、クラスターに関連付けられた他のリソースには伝達されません。

はい

Amazon EKS マネージド型ノードグループ

はい

いいえ。マネージド型ノードグループタグは、ノードグループに関連付けられた他のリソースには伝達されません。

はい

Amazon EKS Fargate プロファイル

はい

いいえ。Fargate プロファイルタグは、Fargate プロファイルに関連付けられた他のリソース (このプロファイルでスケジュールされているポッドなど) には伝播されません。

はい

タグの制限

タグには以下のような基本制限があります。

  • リソースあたりのタグの最大数 – 50

  • タグキーは、リソースごとにそれぞれ一意である必要があります。また、各タグキーに設定できる値は 1 つのみです。

  • キーの最大長 - UTF-8 の 128 Unicode 文字

  • 値の最大長 - UTF-8 の 256 Unicode 文字

  • 複数の AWS サービス間およびリソース間でタグ付けスキーマを使用する場合、他のサービスでも許可される文字に制限が適用されることがあるのでご注意ください。一般的に使用が許可される文字は、UTF-8 で表現できる文字、数字、スペース、および +、-、=、.、_、:、/、@。

  • タグのキーと値は大文字と小文字が区別されます。

  • aws:AWS:、またはその大文字または小文字の組み合わせを、キーまたは値のプレフィックスとして使用しないでください。これらは AWS 使用のためにのみ予約されています。このプレフィックスが含まれるタグのキーや値を編集したり削除することはできません。このプレフィックスを持つタグは、リソースあたりのタグ数の制限時には計算されません。

コンソールでのタグの処理

Amazon EKS コンソールを使用して、新規または既存のクラスターおよびマネージド型ノードグループに関連付けられたタグを管理できます。

Amazon EKS コンソールでリソース固有のページを選択すると、リソースのリストが表示されます。例えば、ナビゲーションパネルで [Clusters (クラスター)] を選択すると、Amazon EKS クラスターのリストがコンソールに表示されます。そのリスト (特定のクラスターなど)からリソースを 1 つ選択すると、そのリソースでタグがサポートされている場合は、[Tags (タグ)] タブでタグを表示および管理できます。

作成時に個々のリソースにタグを追加する

Amazon EKS クラスターおよびマネージド型ノードグループ、および Fargate プロファイルの作成時に、タグを追加できます。詳細については、「Amazon EKS クラスターの作成 クラスターの作成」を参照してください。

個々のリソースでのタグの追加と削除

Amazon EKS では、クラスターに関連付けられたタグをリソースのページから直接追加または削除できます。

個々のリソースのタグを追加または削除するには

  1. https://console.aws.amazon.com/eks/home#/clusters で Amazon EKS コンソールを開きます。

  2. ナビゲーションバーから、使用するリージョンを選択します。

  3. ナビゲーションパネルで [Clusters (クラスター)] を選択します。

  4. 指定するクラスターを選択します。[Configuration (設定)] タブを選択します。[Tags (タグ)] タブで、[Manage tags (タグの管理)] を選択します。

  5. [Update tags (タグの更新)] ページで、必要に応じてタグを追加または削除します。

    • タグを追加するには — [Add tag (タグの追加)] を選択して、各タグのキーと値を指定します。

    • タグを削除するには — [Remove tag (タグの削除)] を選択します。

  6. 追加または削除するタグごとにこのプロセスを繰り返し、[Update (更新)] を選択して終了します。

CLI、API または eksctl でのタグの操作

リソースのタグの追加、更新、リスト表示、および削除には、次の AWS CLI コマンドまたは Amazon EKS API オペレーションを使用します。新しいリソースへのタグの追加に使用できるのは eksctl だけです。

Amazon EKS リソースのタグ付けのサポート
タスク AWS CLII AWS Tools for Windows PowerShell API アクション

1 つ以上のタグを追加、または上書きします。

tag-resource

Add-EKSResourceTag

TagResource

1 つ以上のタグを削除します。

untag-resource

Remove-EKSResourceTag

UntagResource

以下の例では、AWS CLI を使用して、リソースに対してタグ付けまたはタグ削除する方法を示しています。

例 1: 既存のクラスターへのタグ付け

次のコマンドは既存のクラスターにタグ付けします。

aws eks tag-resource --resource-arn <resource_ARN> --tags <team>=<devs>

例 2: 既存のクラスターでのタグ削除

次のコマンドは既存のクラスターからタグを削除します。

aws eks untag-resource --resource-arn <resource_ARN> --tag-keys <tag_key>

例 3: リソースのタグのリスト取得

次のコマンドは、既存のリソースに関連付けられているタグのリストを取得します。

aws eks list-tags-for-resource --resource-arn <resource_ARN>

一部のリソース作成アクションでは、リソースの作成時にタグを指定できます。次のアクションでは、リソース作成時のタグ付けがサポートされます。

タスク AWS CLI AWS Tools for Windows PowerShell API アクション eksctl

クラスターの作成

create-cluster

New-EKSCluster

CreateCluster

create cluster

マネージド型ノードグループの作成*

create-nodegroup

New-EKSNodegroup

CreateNodegroup

create nodegroup

Fargate プロファイルの作成

create-fargate-profile

New-EKSFargateProfile

CreateFargateProfile.html

create fargateprofile

*マネージド型ノードグループの作成時に Amazon EC2 インスタンスにもタグ付けを行う場合は、起動テンプレートを使用してマネージド型ノードグループを作成します。詳細については、「Amazon EC2 インスタンスへのタグ付け」を参照してください。インスタンスがすでに存在する場合は、インスタンスに手動でタグ付けを行うことができます。詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイドの「Tagging your resources (リソースにタグを付ける)」を参照してください。