2018年7月から始まる長いリソースIDのオプトイン機能が提供されました
2018年7月からEC2/EBS/VPC全般の新規リソースIDが8桁から17桁に増えることが数ヶ月前に告知されました。
2年前に4リソースのみ17桁IDに移行したのに続き、残りのEC2系リソースもまとめて17桁IDに移行するというものです。
VPC ID を例にとると、これまでは “vpc-1234abc0” のようにID部分が8桁だったのが2018年7月からは “vpc-1234567890abcdef0” というように17桁になります。
この度
- ボタン一つで全リージョンでオプトイン
- リージョン x リソース x {オプトイン操作を行うユーザー・ロール単位, 全ユーザー・ロール}
の粒度で選択(オプトイン)出来るようになったため、早速試してみました。
オプトインを有効にする方法
オプトインは管理コンソール EC2 サービスのトップページの「リソース ID の長さの管理(Resource ID length management)」リンクから遷移します。
すべてのリージョン・リソースで有効化
「長い ID への切り替え(Switch to longer IDs)」ボタンをクリックすると、全てのリージョンのすべてのリソースで長いID(17文字)に切り替わります。
特定のリージョン・リソースで有効化
リージョン x リソース x {オプトイン操作を行うユーザー・ロール単位, 全ユーザー・ロール} の粒度でコントロールすることも出来ます。
「 詳細リソース ID 管理( Advanced Resource ID Management)」のテキストをクリックすると、詳細テーブルが展開されるため、有効にした項目にチェックを入れると有効になります。
操作はチェックするだけです。うっかり「長い ID への切り替え(Switch to longer IDs)」ボタンを押すと、全リージョン・全リソースで有効になります。お気をつけ下さい。
API で長いリソースIDの切り替え状況を確認する
長いリソース ID への切り替え状況は管理コンソールだけでなく、API からも確認可能です。
長いIDを有効にしていないダブリンリージョン(eu-west-1)で実行した結果が以下です。
UseLongIds
属性から、有効になっている場合は true
、無効の場合は false
となっています。
$ aws ec2 describe-id-format --region eu-west-1 { "Statuses": [ { "Resource": "reservation", "Deadline": "2016-12-16T00:00:00.000Z", "UseLongIds": true }, … { "UseLongIds": false, "Resource": "network-interface-attachment" }, ... }
API の詳細は次の URL をご確認下さい
- https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-id-format.html
- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/resource-ids.html
オプトインを試したほうが良いケース
以下のようなケースでは、オプトインを活用し、事前に影響範囲を検証することをお勧めします
- ツール・システムがリソース ID のバリデーションをチェックしている(2016年のID桁増加時は一部のSDKがこの影響を受けました)
- データベースにリソース ID を保存している
また、影響範囲が不明瞭で、リスクを最小にしながら長いIDをためしたいケースでは、特定のIAMユーザー(ロール)かつ特定のリソースから始めるのがおすすめです。
最後に
一度作成されたリソース ID は変わりません。 オプトイン前に作成済みのリソース ID もそうですし、オプトインにより作成された長いリソース ID も同じです。
リスクを最小にしながら、2018年7月の新フォーマット変更に備えましょう。
参照
- https://aws.amazon.com/ec2/faqs/#longer-ids
- Longer Format Resource IDs are Now Available in Amazon EC2
- Longer Resource IDs in 2018 for Amazon EC2, Amazon EBS, and Amazon VPC | AWS Compute Blog
- They’re Here – Longer EC2 Resource IDs Now Available | AWS News Blog
- AWS Documentation » Amazon EC2 » User Guide for Linux Instances » Resources and Tags » Resource IDs