ELBとEC2で負荷分散してみる

ELBとEC2で負荷分散してみる

今回は、AWSのELB+EC2のハンズオンをしていきます。

ELBとは

ELBとは、Elastic Load Balancingの略で、Webサイトやアプリへの負荷を分散させます。AWSでロードバランサーの機能を実装したいときは、ELBを使用しましょう。今回の記事では、ELBを作成してWebサイトへの負荷を分散する方法を解説します。

手順

VPCの作成

AWSマネージメントコンソールからVPCを検索

VPCを作成

VPCの設定

名前タグ:network-test-vpc
Ipv4-CIDRブロック:192.16.1.0/24
後の設定はデフォルト

確認

サブネットの作成

サブネットを選択

サブネットを作成

サブネットの設定

Public subnet APublic subnet B
AZus-east-1aus-east-1c
VPC IDnetwork-test-vpcnetwork-test-vpc
サブネット名network-test-public-anetwork-test-public-c
IPv4192.16.1.0/25192.16.1.128/25

サブネットの作成確認

EC2インスタンスをデプロイ

EC2を検索する

インスタンスを起動を選択

インスタンスの設定

サブネット名Public subnet APublic subnet B
インスタンス名ec2-test-public-server-aec2-test-public-server-b
サブネット名network-test-public-anetwork-test-public-b
パブリックIPアドレス有効化有効化有効化

確認

インターネットゲートウェイのデプロイ

インターネットゲートウェイの設定

名前タグ:network-test-igw

インターネットゲートウェイをVPCにアタッチ

1.アクションからVPCにアタッチを選択

パブリックサブネットのルートテーブルを作成

パブリックとして作成したサブネットを選択

ルートテーブルを選択

ルートテーブルのルートタブから「ルートを編集」を選択する

ルートを追加

送信先:0.0.0.0/0(デフォルトゲートウェイ)
ターゲット:igwを選択し、作成したインターネットゲートウェイを選択する

サーバーにログインする

Teratermなどで踏み台用サーバーのパブリックアドレスとアクセスキーでログインする。

サーバ内にApacheをインストールする

※ここでyumコマンドが実行できない場合はNAT Gatewayの設定がうまくいっていない可能性があります。

sudo yum update
sudo yum -y install httpd
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
sudo vi /var/www/html/server.html
適当に「Hello world form Server A」と記載する(B側は「Hello world form Server B」などと記載する)

確認

http://EC2インスタンスのパブリックIPアドレス/server.htmlで確認できます。

セキュリティグループの作成

セキュリティグループ名:test-network-sg-ELB

説明:test-network-sg-ELB

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

targetの登録

ELBをパブリックにデプロイ

ELBを作成

確認

確認

http://test-network-igw-~8.us-east-1.elb.amazonaws.com/server.htmlにブラウザーから確認する

更新ボタンを押してServer Bに変更されたら完了です。