Amazon OpenSearch Service ドメインのタグ付け - Amazon OpenSearch Service

Amazon OpenSearch Service ドメインのタグ付け

タグを使用すると、Amazon OpenSearch Service ドメインに任意の情報を割り当てて、その情報を分類してフィルタリングできます。タグとは、OpenSearch Service ドメインを定義して関連付けるキーと値のペアです。これらのタグを使用して、類似のタグ付けされたリソースの費用をグループ化することで、コストを追跡できます。AWS はタグに意味論的意味を適用しません。タグは単なる文字列として解釈されます。タグには、次の要素があります。

タグ要素 説明 必須
タグキー

タグキーは、タグ名です。キーは、アタッチされている OpenSearch Service ドメインに対して一意である必要があります。タグキーと値の基本的な制限のリストについては、「ユーザー定義タグの制限」を参照してください。

はい
タグ値

タグ値は、タグの文字列値です。タグ値は null を指定できます。また、タグセット内で一意である必要はありません。例えば、project/Trinity と cost-center/Trinity のタグセット内に 1 つのキーと値のペアを使用できます。タグキーと値の基本的な制限のリストについては、「ユーザー定義タグの制限」を参照してください。

いいえ

各 OpenSearch Service ドメインにはタグセットがあり、それぞれの OpenSearch Service ドメインに割り当てられているすべてのタグが含まれています。AWS は、OpenSearch Service ドメインにタグを自動的に割り当てません。タグセットには、0~50 個のタグを含めることができます。ドメインに追加したタグのキーが既存のタグのキーと同じ場合、既存の値は新しい値によって上書きされます。

タグ付けの例

キーを使用してカテゴリを定義し、タグ値をそのカテゴリの項目にすることができます。具体的には、「project」というタグキーと「Salix」というタグ値を定義して、OpenSearch Servic ドメインが Salix プロジェクトに割り当てられていることを示すことができます。また、タグキーとして environment=testenvironment=production などを使用して、OpenSearch Service ドメインがテスト用なのか本稼働用なのかを示すこともできます。OpenSearch Service ドメインに関連付けられているメタデータの追跡が簡単になるように、一貫した一連のタグキーを使用することを試してください。

タグを使用して AWS 請求書を整理し、自分のコスト構造を反映することもできます。そのためには、サインアップして、タグキー値が含まれた AWS アカウント の請求書を取得する必要があります。その後、同じタグキー値を持つリソースに従って請求情報を整理し、結合したリソースのコストを確認します。例えば、複数の OpenSearch Service ドメインにキーと値のペアをタグ付けし、請求情報を整理して複数のサービスにおける各ドメインの合計コストを確認できます。詳細については、https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html 請求情報とコスト管理の「AWSコスト配分タグの使用」を参照してください。

注記

タグは承認用にキャッシュに格納されます。そのため、OpenSearch Service ドメインに対するタグの追加や更新には数分かかることがあります。

タグの操作 (コンソール)

コンソールは、ドメインにタグを付ける最も簡単な方法です。

タグを作成するには (コンソール)

  1. https://aws.amazon.com にアクセスし、[コンソールにサインイン] を選択します。

  2. [分析] の下で、[Amazon OpenSearch Service] を選択します。

  3. タグを追加するドメインを選択し、[タグ] タブに移動します。

  4. [管理] を選択して、[新しいタグを追加] を選択します。

  5. タグキーとオプションの値を入力します。

  6. [Save] を選択します。

タグを削除するには、同じ手順に従って、[タグを管理] ページで [削除] を選択します。

タグを操作するコンソールを使用する方法の詳細については、AWS マネジメントコンソール入門ガイドの「タグエディター」を参照してください。

タグの操作 (AWS CLI)

AWS CLI で --add-tags コマンドを使用して、リソースタグを作成することができます。

[Syntax] (構文)

add-tags --arn=<domain_arn> --tag-list Key=<key>,Value=<value>

パラメータ 説明
--arn タグが添付される OpenSearch Service ドメインの Amazon リソースネーム。
--tag-list スペースで区切られたキーと値のペアの以下の形式のセット: Key=<key>,Value=<value>

次の例では、[ログ] ドメイン用に 2 つのタグを作成します。

aws opensearch add-tags --arn arn:aws:es:us-east-1:379931976431:domain/logs --tag-list Key=service,Value=OpenSearch Key=instances,Value=m3.2xlarge

remove-tags コマンドを使用して OpenSearch Service ドメインからタグを削除できます。

構文

remove-tags --arn=<domain_arn> --tag-keys Key=<key>,Value=<value>

パラメータ 説明
--arn タグが添付される OpenSearch Service ドメインの Amazon リソースネーム (ARN)。
--tag-keys OpenSearch Service ドメインから削除するスペース区切りのキーと値のペアのセット。

次の例は、[ログ] ドメインから前述の例で作成した 2 つのタグを削除します。

aws opensearch remove-tags --arn arn:aws:es:us-east-1:379931976431:domain/logs --tag-keys service instances

list-tags コマンドで OpenSearch Service ドメインの既存のタグを表示できます。

[Syntax] (構文)

list-tags --arn=<domain_arn>

パラメータ 説明
--arn タグが添付される OpenSearch Service ドメインの Amazon リソースネーム (ARN)。

次の例は、[ログ] ドメインのすべてのリソースタグをリスト表示します。

aws opensearch list-tags --arn arn:aws:es:us-east-1:379931976431:domain/logs

タグの操作 (AWS SDK)

AWS SDK (Android および iOS SDK を除く) は、OpenSearch Service 設定 API リファレンスに定義されているすべてのアクションをサポートします。これには、AddTagsListTags、および RemoveTags オペレーションも含まれます。AWS SDK のインストールと使用の詳細については、「AWS Software Development Kits」を参照してください。

Python

この例では、AWS SDK for Python (Boto) の OpenSearchService 低レベル Python クライアントを使用して、ドメインにタグを追加し、ドメインにアタッチされたタグをリスト化し、ドメインからタグを削除します。DOMAIN_ARNTAG_KEY および TAG_VALUE の値を指定する必要があります。

import boto3 from botocore.config import Config # import configuration DOMAIN_ARN = '' # ARN for the domain. i.e "arn:aws:es:us-east-1:123456789012:domain/my-domain TAG_KEY = '' # The name of the tag key. i.e 'Smileyface' TAG_VALUE = '' # The value assigned to the tag. i.e 'Practicetag' # defines the configurations parameters such as region my_config = Config(region_name='us-east-1') client = boto3.client('opensearch', config=my_config) # defines the client variable def addTags(): """Adds tags to the domain""" response = client.add_tags(ARN=DOMAIN_ARN, TagList=[{'Key': TAG_KEY, 'Value': TAG_VALUE}]) print(response) def listTags(): """List tags that have been added to the domain""" response = client.list_tags(ARN=DOMAIN_ARN) print(response) def removeTags(): """Remove tags that have been added to the domain""" response = client.remove_tags(ARN=DOMAIN_ARN, TagKeys=[TAG_KEY]) print('Tag removed') return response