【新機能】VPC内のElastic IPにタグを付けられるようになりました

【新機能】VPC内のElastic IPにタグを付けられるようになりました

Clock Icon2017.12.22

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、虎塚です。

AWSの機能アップデートで、VPC内のElastic IPに対するタグ付けがサポートされました

目的、オーナー、環境などを表現するタグをつけることで、Elastic IP (以下、EIP) を管理しやすくなります。ぜひ活用しましょう。

注意点

  • 1個のEC2リソースに付けられるタグは、50個までです。(EIPに限りません)
  • EIPでは、請求レポート用のコスト配分タグはサポートされていません。
  • EC2-Classicでは、EIPへのタグ付けはサポートされません。

AWS Management Console

EC2ダッシュボードから、タグを編集できるようになりました。

また、VPCダッシュボードからも、タグを編集できるようになりました。

AWS CLI

$ aws --version

aws-cli/1.14.14 Python/2.7.10 Darwin/16.7.0 botocore/1.8.18

既存のec2 create-tagコマンドで、EIPを対象に取れるようになりました。

既存のEIPの確認

現状のEIPを確認します。環境にEIPが複数ある場合は、複数の結果が表示されます。

$ aws ec2 describe-addresses

{
    "Addresses": [
        {
            "PublicIp": "13.115.XXX.XXX",
            "Domain": "vpc",
            "AllocationId": "eipalloc-12345678"
        }
    ]
}

EIPにタグを追加する

EIPにタグを2個付与します。ここでは、タグ「Name」を「TagTest」、タグ「Env」を「Dev」と設定します。tagsオプションの中で、2個のタグは半角スペースで区切りましょう。

$ aws ec2 create-tags --resources eipalloc-12345678 --tags Key=Name,Value=TagTest Key=Env,Value=Dev

EIPのタグを確認する

付与したタグを確認します。

$ aws ec2 describe-tags | jq '.Tags[] | select(.ResourceId == "eipalloc-12345678")'

{
  "ResourceType": "elastic-ip",
  "ResourceId": "eipalloc-12345678",
  "Value": "Dev",
  "Key": "Env"
}
{
  "ResourceType": "elastic-ip",
  "ResourceId": "eipalloc-12345678",
  "Value": "TagTest",
  "Key": "Name"
}

EIPのタグを削除する

EIPに付けたタグを1個削除します。ここでは、タグ「Env」を削除します。tagsオプションを省略すると、resourcesオプションで指定したリソースに紐づくすべてのタグが削除されます

$ aws ec2 delete-tags --resources eipalloc-12345678 --tags Key=Env

IPのタグを確認する (再)

タグが削除されたことを確認します。タグ「Name」だけが残っています。

$ aws ec2 describe-tags | jq '.Tags[] | select(.ResourceId == "eipalloc-12345678")'

{
  "ResourceType": "elastic-ip",
  "ResourceId": "eipalloc-12345678",
  "Value": "TagTest",
  "Key": "Name"
}

おわりに

タグをたぐってリソースを管理できるのは便利ですね。今回のアップデートは、Security Groupのルールにタグ付けできるようになった時か、Route 53のレコードにタグ付けできるよになった時と同じくらい嬉しく思います。どんどん活用していきましょう。

それでは、また。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.