EC2上のWebサーバーにロードバランサー(ELB)を設定する

AWSで、EC2上のWebサーバーにロードバランサーを設定する方法をまとめました。

動作環境

ホストOSWindows 11 Home 22H2(22621.963) 64bit
ブラウザChrome 109.0.5414.75

作成手順

EC2上にWebサーバーを構築

ここを参考に進めてみてください。

WebサーバーへのHTTP接続設定

ここを参考に進めてみてください。

2台目のWebサーバーを構築

前述2つの手順を参考に進めてみてください。
当手順の2台目の設定は、1台目と比べて下記を変更して構築しています。
 ・サブネットのIPアドレス
   10.0.11.0/24
 ・EC2インスタンスのIPアドレス
   10.0.11.10
 ・セキュリティグループ
   1台目のパブリックサブネットにセットしたセキュリティグループに下記を追加
    ・ポート『8081』(2台目のEC2インスタンス用)
    ・ポート『80』(ロードバランサー用)
 ・Go言語プログラム
   ブラウザに表示される文字列『Hello Internet!! Second Server!!』
   ポート番号『8081』

ターゲットグループを作成

ロードバランサーにセットするインスタンスのグループを設定していきます。

[target type]は、VPCにあるEC2インスタンスを対象にしたいので『Instances』を選択します。
ロードバランサーはHTTP、ポート『80』で受け付けるようにします。

ロードバランサーがアクセスを振り分けた時、各EC2インスタンスがどのポートで受け付けるか設定します。1台目に『8080』、2台目に『8081』を設定します。

ロードバランサーを作成

ロードバランサーの設定をしていきます。ここではロードバランサーのALBを選択しました。

ロードバランサーを対応付けるサブネットを選択していきます。

作成後、[DNS name]をブラウザのアドレスバーにコピペしてアクセスすると、対応付けたサブネット(EC2インスタンス)のどちらかにアクセスできるようになり、負荷分散できていることが確認できるはずです。

Chromeでアクセス

Microsoft Edgeでアクセス