タグは、Elastic Container Instance (ECI) を識別するために使用できるキーと値のペアです。タグを使用して、ECI をグループ単位で管理したり、検索やバッチ操作を実行したりできます。本ドキュメントでは、Pod にカスタムタグをバインドする方法について説明します。Pod にカスタムタグをバインドすると、そのタグに基づいて Pod を管理できます。たとえば、タグに基づいて Pod のコスト分析が可能です。
背景情報
タグはキーと値のペアであり、機能面ではラベルと類似しています。Alibaba Cloud のタグはクラウドリソースを識別し、カテゴリごとのクラウドリソース管理を可能にします。Container Service for Kubernetes (ACK) を使用して作成された Elastic Container Instance (ECI) には、デフォルトで以下のタグがバインドされています。
-
ManagedBy:クラスターの種類。
-
ClusterId:クラスター ID。
-
NameSpace:クラスターの名前空間。
-
OwnerReferenceKind:クラスター内で作成されたワークロードの種類(例:Deployment や Job)。
-
OwnerReferenceName:クラスター内で作成されたワークロードの名前(例:Deployment 名や Job 名)。
-
PodName:Pod 名。
構成
Pod に k8s.aliyun.com/eci-custom-tags アノテーションを追加することで、カスタムタグを Pod にバインドできます。1 つの Pod にバインドできるタグは最大 3 つです。タグキーとタグ値はコロン(:)で区切り、複数のタグはカンマ(,)で区切ります。
アノテーションは、Pod の設定ファイル内のメタデータに追加する必要があります。たとえば、Deployment を作成する場合は、spec.template.metadata セクション内にアノテーションを追加してください。
Elastic Container Instance (ECI) 関連のアノテーションは、Pod 作成時にのみ適用されます。既存の Pod に対してこれらのアノテーションを追加または変更しても、効果はありません。
構成例:
apiVersion: apps/v1
kind: Deployment
metadata:
name: test
labels:
app: test
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
name: nginx-test
labels:
app: nginx
alibabacloud.com/eci: "true"
annotations:
k8s.aliyun.com/eci-custom-tags: "env:test,name:alice" # タグを追加
spec:
containers:
- name: nginx
image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
ports:
- containerPort: 80
アノテーションを使用してタグをバインドした後は、kubectl describe コマンドを実行して Pod の詳細を確認できます。カスタムタグは、Annotations セクション内の k8s.aliyun.com/eci-custom-tags の値として表示されます。

Elastic Container Instance (ECI) コンソール の コンテナグループ ページからもタグを確認できます。
