その9 の続きです。ロードバランサーを設定します。
ロードバランサーとは
一言で言うと、負荷分散装置です。ググれば記事がたくさん出てくるので細かい解説はそっちにお任せします。これを前におくことで大量のリクエストを複数のサーバーに振り分けて処理できます。まあ今作っているしょーもないアプリにこんな機能はなくてもいいのですが、これをEC2インスタンスの前に設置することで、発行済みのSSL証明書を割り当てることができるようになります。別にこんなものなくてもいいじゃないか、と思われるかもしれませんが、AWSで発行したSSL証明書をEC2に直接組み込むことはできません。ですので、このロードバランサーを設置し、そこに証明書を組み込むという手順をとります。
ちなみに最終的な構成はこんな感じになってます。ロードバランサーとEC2間はHTTPですが、クライアントとロードバランサーはHTTPSになっています。
ロードバランサー設置とSSL証明書の割り当て
EC2 ダッシュボードから、Load balancers に入ります。
Create Load Balancer をクリックします。
一番左の Application Load Balancer を選びます。真ん中の Network Load Balancer の説明は毎秒100万リクエストを処理できるとか書いてありますが、明らかに不要ですね。
名前はわかりやすいように好きに付けて下さい。
Listeners には初期設定の HTTP に加え、HTTPS も追加して下さい。
Availability Zones から最低2つゾーンを選び、右下の Next: Configure Security Settings から次に進みます。
次のページで証明書の選択をします。Choose a certificate from ACM を選択します。証明書が発行済みであれば、Certificate name のところに自動で出てくるかと思います。Next: Configure Security Groups へ進みます。
作成済みのセキュリティグループを選択し、Next: Configure Routing へ進みます。
ここからロードバランサーがどこと接続するかを設定していきます。Target group は New target group, Instance HTTP を選びます。グループの名前は自由に付けて下さい。Next: Register Targets へ進みます。
下側の Instance から起動中のEC2インスタンスを選択し、Add to registered を押すと上側の Registered targets に登録されます。これで設定完了です。右下の Review を押して確認画面で Create すれば完了です。
その11 に続きます。次回で完成です。