[GA] AWS Amplify Gen 2 が GA したのでカスタムドメインなど使ってみた

2024.05.07

いわさです。

以前からプレビュー中だった、AWS Amplify Gen 2 がついに GA となりました。
遂にというか個人的には思っていたより早かったです。

Amplify Gen 2 は従来の CLI ベースではなく CDK ベースとし、コードファーストでの開発に重きを置いています。
Amplify Gen 2 自体の記事は DevelopersIO 内にもいくつか存在しており改めて本記事では触れませんのでこちらのブログなどもご覧ください。

また、以下のページでは Gen 2 への移行ツールが開発中である点に言及されており、その上で Gen 1 と Gen 2 でサポートされる機能がまとめられていますので、すでに Amplify Gen 1 利用中のユーザーの方はこちらも参考にしてください。

以前は「近日公開予定」だった機能

実は 2024 年 2 月ごろに、私も少し Amplify Gen 2 を触ってまして、その際には次のようにまだ「近日公開予定」の機能が多い状態でした。

2024 年 2 月時点

以下はアプリケーションメニューです。

以下はブランチメニューです。

GA 後

GA 後は利用可能になりました。
カスタムドメイン、プレビュー、カスタムヘッダー、モニタリングはもっと前のタイミングかもしれませんが GA 時点では利用可能になってますね。

カスタムドメインについては、以下の記事によるとつい先日まではコンソール上からはまだ利用出来なかったようです。

ブランチの機能ではデータマネージャーが使えるようになっています。

どんな機能になるのだろうと個人的に気になっていたストレージや関数については、セットアップ手順が確認出来るところまでとなっていました。
CDK 上で構成しましょうという感じみたいですね。

カスタムドメインを設定し、モニタリング機能からログを確認してみた

せっかくなので利用可能になった機能を使って簡単な検証をしてみます。
コンソールからカスタムドメインを設定し、モニタリングログ機能からドメインフィルタリングしてみます。

カスタムドメインの構成

デフォルトの Next.js アプリをデプロイ済みで、そこにカスタムドメインを設定してみます。
同一 AWS アカウント上にいくつかの Route 53 ホストゾーンを所有しています。

カスタムドメインメニューを開きます。
デフォルトではamplifyapp.comのデフォルトドメインのみが表示されています。

右上の「ドメインを追加」ボタンを押します。
そうするとドメイン選択画面から所有済みの Route 53 ドメインが候補に表示されました。
説明文を見る限りでは外部でホスティングしているドメインも利用出来そうです。これは次回以降に試してみます。

今回は次のドメインを選択しました。
「Route 53 ドメインが選択されました」と判定されています。
後述しますが、レコード追加やマネージド証明書などワンクリックで全部行ってくれるので Route 53 統合はやはり便利です。

続いてサブドメインや名前解決先のブランチを指定します。
すでに既存環境で main 以外のブランチを統合しているため、ここでは hoge ブランチを選択します。
SSL 証明書は Amplify マネージド証明書かカスタム SSL 証明書を選択出来ます。カスタム SSL 証明書の場合は事前に ACM にインポートしておく必要がありますが、今回はマネージド証明書を使います。

マネージド証明書の期限は 13 ヶ月で、Amplify アプリがホスティングされている限りは自動更新されるとのこと。

選択してドメイン追加を確定すると、あとは自動セットアップ処理が進みます。

途中次のような表示となり、手動登録必要なのか?とも思ったのですが、Route 53 ホストゾーンを確認してみると自動でレコードが追加されていました。焦らずに見守りましょう。

その後も、ドメインのアクティブまで数分時間がかかります。

少し待つとカスタムドメインが無事設定され Web アプリケーションへもアクセスすることが出来ました。

モニタリングログの確認

ついでにモニタリング機能からアクセスログを確認してみます。
この機能ではドメインソースを選択するのですが、カスタムドメイン構成後はカスタムドメインをドメインソースとして選択出来るようになります。

この機能は CloudWatch Logs と統合されています。
ログ配信まで数十秒から数分のタイムラグがありますが、無事カスタムドメイン構成後もアクセスすることが出来ました。

さいごに

本日は AWS Amplify Gen 2 が GA したのでカスタムドメインやモニタリングなどを使ってみました。

Amplify Gen 2 がとうとう GA となりましたね。SNS など見ている限りはプレビュー時点から注目度が高かったので、今後の動向が気になります。
他にもいくつかプレビュー時点で確認出来ていなかった機能がありますので、検証していきたいと思います。