皆さんはap-northeast-1aを使っていらっしゃいますか。
使ってますよね。
私のap-northeast-1aとあなたのap-northeast-1aは本当は違うAZかもしれない。
そんなこと聞いたことありませんか。
自分のAZがなんであるのかはRAMで確認できます。
自分のアカウント間でアベイラビリティーゾーンをマッピングする方法を教えてください。
東京リージョンの場合、一般的にはこんな感じに 「お客様のAZ ID」 が3つ見えます。
ところが、古い時期に作成されたAWSアカウントにはAZが4つあったりします。
そして、もしapne1-az3を実運用で使っていたら要注意です。
apne1-az3は、AWSの新しい機能が提供されない可能性が高いAZとなっております。
どの機能が使えないかの完全なリストは無いのですが、いくつかわかっている制限を以下に記載します。
Transit Gatewayが使えない
Transit Gatewayは、複数のVPC間を接続するサービスですが、これが使えません。
Transit Gatewayでは、Attachment を作成したサブネットと同一のアベイラビリティーゾーンに存在するサブネットとの間でのみ通信を行うことができます。
しかし、Transit Gateway Attachmentを作成する時に「Transit Gateway is not available in availability zone ap-northeast-1a」とエラーが出て、作成不能です。
なお、VPC PeeringやAWS VPNは使用できます。
NAT Gatewayが作れない
NAT ゲートウェイのトラブルシューティング - アベイラビリティーゾーンがサポートされていない
問題
パイプラインを作成しようとすると、NotAvailableInZone エラーが表示されます。
原因
制約のあるアベイラビリティーゾーン (当社による拡張に制限があるゾーン) で NAT ゲートウェイを作成しようとしている可能性があります。
ソリューション
これらのアベイラビリティーゾーンでは NAT ゲートウェイはサポートされていません。別のアベイラビリティーゾーンで NAT ゲートウェイを作成し、それを制約のあるゾーンのプライベート>サブネットで使用できます。リソースを制約のないアベイラビリティーゾーンに移動し、リソースと NAT ゲートウェイのアベイラビリティーゾーンを同じにすることができます。
io1が使えない
Amazon EBS ボリュームの種類 - プロビジョンド IOPS SSD (io1) ボリューム
2012 年以前に作成された一部の AWS アカウントでは、us-west-1 または ap-northeast-1 で プロビジョンド IOPS SSD (io1) ボリュームをサポートしていないアベイラビリティーゾーンにアクセスできる可能性があります。これらのリージョンの 1 つに io1 ボリュームを作成できない場合 (またはブロックデバイスマッピングに io1 ボリュームのあるインスタンスを起動できない場合) は、リージョンの別のアベイラビリティーゾーンを試します。アベイラビリティーゾーンが io1 ボリュームをサポートするかどうかは、4 GiB の io1 ボリュームをそのゾーンに作成することで確認できます。
VPCエンドポイントが作れない
インターフェイス VPC エンドポイント (AWS PrivateLink) - インターフェイスエンドポイントのアベイラビリティゾーンに関する考慮事項
インターフェイスエンドポイントを介したサービスへのアクセスは、一部のアベイラビリティーゾーンでサポートされない場合があります。
まとめ
apne1-az3に新しいリソースを追加するのはなるべく避けましょう。
apne1-az3にある既存リソースの移行も検討してもいいかもしれません。
渡辺 信秀(記事一覧)
2017年入社 / 地味な内容を丁寧に書きたい