アプリケーションを安全にデプロイして、トラフィックを AWS Elastic Beanstalk URL にルーティングしたいと考えています。
簡単な説明
アプリケーションをデプロイして AWS Elastic Beanstalk 環境にトラフィックをルーティングするには、以下の手順を実行します。
- Elastic Beanstalk 環境を作成し、アプリケーションをデプロイします。
- 新しいドメインを購入または登録します。
- AWS Certificate Manager (ACM) 証明書を作成します。
- ロードバランサーレベルで HTTPS を終了します。
- Amazon Route 53 を使用して、トラフィックをElastic Beanstalk 環境にルーティングします。
- HTTPS リダイレクション。
解決策
Elastic Beanstalk 環境を作成してアプリケーションをデプロイする
- AWS アカウントを作成します。
- Elastic Beanstalk コンソールを開き、「リージョン」リストから AWS リージョンを選択します。
- Elastic Beanstalk アプリケーションを作成します。
- Elastic Beanstalk 環境を作成します。ロードバランサー環境を作成してください。
- アプリケーションをデプロイします。
**注:**環境の作成時にアプリケーションバージョンを選択しない場合、サンプルアプリケーションはデフォルトで環境にデプロイされます。
お使いの環境は、Elastic Beanstalk のサブドメインのユーザーが利用できます。環境のアプリケーションの URL は、Elastic Beanstalk コンソールの概要ページでも確認できます。ドメインを所有している場合は、Route 53 を使用してそのドメインを環境に合わせて解決してください。
環境の作成中に問題が発生した場合は、「トラブルシューティング」を参照してください。
新しいドメインを購入または登録する
Route 53 またはその他の DNS プロバイダーを使用して、新しいドメイン名を購入または登録できます。すでにドメインがある場合は、同じドメインを Elastic Beanstalk アプリケーションに使用できます。詳細については、「新しいドメインの登録」を参照してください。
ACM 証明書を作成する
アプリケーションを保護 (HTTPS) するには、SSL 証明書が必要です。ドメイン名を所有している場合は、AWS で証明書を作成し、ACM を使用して負荷分散された環境で使用できます。ACM に公的に信頼されている証明書をリクエストする方法の詳細については、「公開証明書のリクエスト」を参照してください。
ACM 証明書のリクエストと検証に問題がある場合は、「トラブルシューティング 」を参照してください。
ロードバランサーレベルで HTTPS を終了する
HTTPS を使用するように環境を更新するには、環境のロードバランサーに対して HTTPS リスナーを設定する必要があります。詳細については、「HTTPS を終了するように Elastic Beanstalk 環境のロードバランサーを設定する」を参照してください。
**注:**単一インスタンス環境にはロードバランサーがなく、ロードバランサーでの HTTPS ターミネーションはサポートされていません。
HTTPS リスナーを作成できない場合、または HTTPS リスナーを追加する際にエラーが表示される場合は、AWS サポートにお問い合わせください。
Route 53 を使用してトラフィックを Elastic Beanstalk 環境にルーティングする
Route 53 レコードには、トラフィックが環境にどのようにルーティングされるかを制御する設定が含まれています。環境 URL を指すエイリアスレコードを作成できます。詳細については、「AWS Elastic Beanstalk 環境へのトラフィックのルーティング」を参照してください。
注:通常、変更は60 秒以内にすべての Route 53 サーバーに反映されます。伝達が完了すると、作成したエイリアスレコードの名前を使用して Elastic Beanstalk 環境にトラフィックをルーティングできるようになります。
Route 53 エイリアスレコードの作成中に問題が発生した場合は、「Route 53 のトラブルシューティング」を参照してください。
HTTPS リダイレクション
DNS の伝達が完了すると、ドメインはトラフィックを環境にルーティングし始めます。ドメインは、HTTP (80) と HTTPS (443) の 2 種類のリクエストを受け付けます。HTTP から HTTPS にトラフィックをリダイレクトする場合は、リダイレクションを設定する必要があります。HTTPS リダイレクションを設定するには、アプリケーションソースバンドルでこの設定ファイルを使用してデプロイします。この設定ファイルは、Application Load Balancer にアタッチされているデフォルトのポート 80 リスナーを変更して、HTTP 上の着信接続を HTTPS に自動的にリダイレクトします。
注:この設定ファイルは、ロードバランサータイプがクラシックまたはネットワークを使用する環境では機能しません。
リダイレクトしようとして問題が発生した場合は、AWS サポートにお問い合わせください。