[Amazon Lightsail] VPCピアリングしたいリージョンがコンソールに出ない場合にはCLIを使おう
こんにちは、菊池です。
今回は小ネタです。Amazon Lightsailでは、VPCピアリングがサポートされていますので、ピア接続したAWSのデフォルトVPCとリソースを連携することが可能です。
LightsailのVPCピアリング
ピアリングするためには、コンソールの[アカウント]から、
[詳細設定]に進み、
リージョン単位のピア接続を有効化します。と、思ったら、VPCピア対象のリージョンがバージニア(us-east-1)と東京(ap-northeast-1)しか表示されていないことに気がつきました。
2017年12月現在、Lightsailは以下のリージョンで提供されています。
- バージニア(us-east-1)
- オハイオ(us-east-2)
- オレゴン(us-west-1)
- アイルランド(eu-west-1)
- ロンドン(eu-west-1)
- フランクフルト(eu-central-1)
- シンガポール(ap-southeast-1)
- シドニー(ap-southeast-2)
- 東京(ap-northeast-1)
- ムンバイ(ap-south-1)
という訳で、コンソールから有効化できないリージョンに対してVPCピアリングするため、AWS CLIを使って試してみました。
VPCピアリングの有効化には、peer-vpc
コマンドを使用し、--region
で対象リージョンを指定します。
$ aws lightsail peer-vpc --region ap-southeast-2 { "operation": { "status": "Succeeded", "resourceType": "PeeredVpc", "isTerminal": true, "operationDetails": "vpc-xxxxxxxx", "statusChangedAt": 1514702214.695, "location": { "availabilityZone": "all", "regionName": "ap-southeast-2" }, "operationType": "PeeredVpc", "resourceName": "vpc-xxxxxxxx", "id": "3d194d1b-2132-40ba-b489-xxxxxxxxxxxx", "createdAt": 1514702214.695 } }
画面上にないリージョンも問題なく設定できました。
ピアリング状態に確認には、is-vpc-peered
を使います。
$ aws lightsail is-vpc-peered --region ap-southeast-2 { "isPeered": true }
また、ピアリングの無効化は、unpeer-vpc
を使いましょう。
$ aws lightsail unpeer-vpc --region ap-southeast-2 { "operation": { "status": "Succeeded", "resourceType": "PeeredVpc", "isTerminal": true, "operationDetails": "vpc-xxxxxxxx", "statusChangedAt": 1514702390.325, "location": { "availabilityZone": "all", "regionName": "ap-southeast-2" }, "operationType": "UnpeeredVpc", "resourceName": "vpc-xxxxxxxx", "id": "6b9e6217-4e82-481d-9e7d-xxxxxxxxxxxx", "createdAt": 1514702390.325 } }
結果、Lightsailが使用可能なリージョンでは、画面にないリージョンでも全てピアリングができました。ちなみに、AWS CLIで有効化した後にコンソールを確認すると、有効化したリージョンが全て表示されてましたw
最後に
シンプルなGUIで利用可能なAmazon Lightsailですが、一部、AWS CLIなどのコマンドでないと利用できない操作があったりします。
CLIのリファレンスなどを眺めると、思いもよらない機能を見つけられるかもしれませんw