LoginSignup
0
0

More than 3 years have passed since last update.

初心に戻ってAWSでスケーラブルなウェブサイトを作成する

Last updated at Posted at 2020-11-13

次の通り王道の構成ですが、昔とUIも変わってるということもあり、初心に戻ってAWSでスケーラブルなウェブサイトを作成する基礎の内容です。

スクリーンショット 2020-11-09 19.15.10.png

1.VPCの作成

「VPCウィザードの起動」より設定を行います。

・ステップ 1: VPC 設定の選択
「1 個のパブリックサブネットを持つ VPC」を選択。
スクリーンショット 2020-11-09 19.25.30.png

・ステップ 2: ステップ 2: 1 個のパブリックサブネットを持つ VPC
VPC:10.0.0.16 と アベイラビリティーゾーン 1aに パブリックサブネット-1a 10.0.0.0/24 を作成する。
キャプチャ1.PNG

追加で以下のサブネットを作成する。
アベイラビリティーゾーン 1cに パブリックサブネット-1c 10.0.1.0/24
アベイラビリティーゾーン 1aに プライベートサブネット-1a 10.0.2.0/24
アベイラビリティーゾーン 1cに プライベートサブネット-1c 10.0.3.0/24
キャプチャ2.PNG

パブリックサブネット-1c のルートテーブルを パブリックサブネット-1a と同じルートテーブルに所属させる。
キャプチャ3.PNG

2.EC2インスタンスの作成(WordPress)

パブリックサブネット-1a に次のユーザーデータを追加し、EC2インスタンスを起動させる。

#!/bin/bash

yum -y update
amazon-linux-extras install php7.2 -y
yum -y install mysql httpd php-mbstring php-xml

wget http://ja.wordpress.org/latest-ja.tar.gz -P /tmp/
tar zxvf /tmp/latest-ja.tar.gz -C /tmp
cp -r /tmp/wordpress/* /var/www/html/
chown apache:apache -R /var/www/html

systemctl enable httpd.service
systemctl start httpd.service

次のセキュリティグループを開けておく。
・22
・80

wordpressが起動するか確認だけしておく。

3.RDSの作成(MySQL)

rds用のセキュリティグループを作成する。
・3306 EC2インスタンスからのアクセスのみを許可する。
スクリーンショット 2020-11-10 19.28.25.png

DBサブネットグループを作成する。
プライベートサブネット-1a 10.0.2.0/24プライベートサブネット-1c 10.0.3.0/24
スクリーンショット 2020-11-10 19.35.42.png

プライベートサブネット-1a にrdsインスタンス(MySQL)を作成する。
スクリーンショット 2020-11-10 19.45.28.png

4.ALBの作成

パブリックサブネット-1a 10.0.1.0/24パブリックサブネット-1c 10.0.1.0/24 に作成する。
alb1.PNG

albのセキュリティグループを新しく作成し開けておく。
・80

ターゲットグループのパスは、次のとおりとする。
/wp-includes/images/blank.gif
alb2.PNG

【2.EC2インスタンスの作成(WordPress)】で作成したEC2インスタンスをアタッチし、status が healthy になるまで待つ。
alb3.PNG

alb のDNS名にアクセスし、表示されるか確認する。

5.WordPressの作成

データベースの設定などWordPressの初期設定を行い、
ELB - EC2 - RDSの構成で作成したブログにアクセスできることを確認する。

データベースの接続する為にRDSで作成した、ユーザー名、パスワード、データーベースのホスト名(エンドポイント)を入力する。
スクリーンショット 2020-11-13 19.19.14.png

「インストール実行」をクリック。
スクリーンショット 2020-11-13 19.19.31.png

必要事項を入力し、「WordPressをインストール」をクリック。
スクリーンショット 2020-11-13 19.23.32.png

↑の必要事項で入力した情報で、wordpressにログインできるか表示されるか最後に確認する。

6.AMIの作成と起動

「2.EC2インスタンスの作成(WordPress)」で作成したEC2インスタンスのAMIを作成します。
*1点注意点ですが、「再起動しない」にチェックが入っていません。すなわちイメージの作成中に再起動が発生します。
スクリーンショット 2020-11-13 19.46.00.png

作成したAMIを使って、パブリックサブネット-1c 10.0.1.0/24にEC2インスタンスを作成する。

ALBのターゲットグループにAMIで作成したEC2インスタンスを追加。

ここまでで、EC2の冗長構成をし、負荷分散がされていることが確認できました。

7.RDSのマルチAZ配置

【3.RDSの作成(MySQL)】で作成したRDSをマルチAZにします。

次から可用性について確認していきます。

8.可用性

ここでは、EC2インスタンスの停止やRDSのフェイルオーバー行い、障害時の動作について確認していきます。

1.「パブリックサブネット-1a 10.0.0.0/24」で作成したEC2インスタンスを停止しても、albのDNS名にアクセスし、表示されるか確認する。

2.RDSを再起動し、albのDNS名にアクセスし、表示されるか確認する。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0