Elastic Container Instance (ECI) で実行される Pod にアノテーションを追加することで、スポット価格の利用、固定 IP アドレスの割り当て、イメージキャッシュの活用、Elastic IP Address (EIP) の関連付けなど、特定の ECI 機能を有効化できます。本ページでは、機能別に分類されたすべてのサポート対象アノテーションを一覧表示し、Pod 作成時にユーザーが設定するアノテーションと、スケジューリング後にシステムが自動的に付与するアノテーションを明確に区別します。
注意事項
アノテーションは、仮想ノードにスケジュールされた Pod のみに適用されます。実ノードにスケジュールされた Pod には効果がありません。
ワークロードのマニフェスト内の
spec.template.metadata.annotationsにアノテーションを追加します。たとえば、デプロイメントを作成する場合は、spec.template.metadataセクションにアノテーションを記述します。アノテーションは、Pod が作成されるタイミングでのみ有効になります。既存の Pod に対してアノテーションを追加または変更しても、効果はありません。
例:ECI アノテーション付きデプロイメント
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
annotations: # アノテーションはデプロイメントレベルではなく、ここに記述します
k8s.aliyun.com/eci-use-specs: "2-4Gi" # Pod のサイズ:2 vCPU、4 GiB メモリ
k8s.aliyun.com/eci-spot-strategy: SpotAsPriceGo # スポット価格を利用
spec:
containers:
- name: nginx
image: nginx:latestPod 作成時に設定可能なアノテーション
スケジューリング後に追加されるアノテーション
システムがリソースをスケジュールして Pod を作成した後、これらのアノテーションが自動的に追加されます。kubectl describe pod <pod-name> を実行して確認できます。
| アノテーション | 例 | 説明 |
|---|---|---|
k8s.aliyun.com/eci-request-id | 45942504-4688-51BA-BBAB-4B692C4F39C0 | Pod 作成呼び出しのリクエスト ID。 |
k8s.aliyun.com/eci-instance-id | eci-2ze1y0la40qgva09**** | Pod の ECI インスタンス ID。 |
k8s.aliyun.com/eci-instance-spec | 2.0-4.0Gi | Pod の実際の仕様。値が vCPU-メモリペア(例:2.0-4.0Gi)の場合、課金は vCPU およびメモリに基づきます。値が ECS インスタンスタイプ(例:ecs.c6.large)の場合、課金はそのインスタンスタイプに基づきます。 |
k8s.aliyun.com/eci-instance-compute-category | economy | Pod に使用される ECS インスタンスタイプのコンピューティングカテゴリ。economy:エコノミー型の料金で課金。general:一般型の料金で課金。 |
k8s.aliyun.com/allocated-eipInstanceId | eip-bp1q5n8cq4p7f6dzu**** | インスタンスに関連付けられた EIP の ID。 |
k8s.aliyun.com/allocated-eipAddress | 47.99.. | 関連付けられた EIP のパブリック IP アドレス。 |
k8s.aliyun.com/allocated-ipv6Address | 2001:d**:1:1:1:1:1:1 | Pod に割り当てられた IPv6 アドレス。 |
k8s.aliyun.com/eci-created-by-template | true | Pod がテンプレートから作成されたかどうか。 |
k8s.aliyun.com/eni-instance-id | eni-2ze6d7oo5ukqj26o**** | Pod にバインドされた弾力的ネットワークインターフェース(ENI)の ID。 |
k8s.aliyun.com/eci-vpc | vpc-2zeghwzptn5zii0w7**** | Pod が属する VPC の ID。 |
k8s.aliyun.com/eci-matched-image-cache | imc-2zedy3v37800iimu**** | Pod 作成時にマッチしたイメージキャッシュの ID。 |
k8s.aliyun.com/eci-schedule-result | finished | スケジューリング結果。非推奨。 現在の Pod スケジューリングステータスについては、「ContainerInstanceCreated」をご参照ください。 |