EC2、VPC、RDSと基礎的なAWSサービスの学習が完了しました。
ここでは学んで来たことの復習も兼ねてブログシステムである、WordPressの構築テストを行います。以下要件を確認し、最後に完成したサイトのURLを提出して下さい。

テスト要件
まずは完成予定の構成図を確認してください。

利用するAWSサービスおよび条件としては以下3つです。
- VPC(サブネットを4つ準備し、パブリックサブネット、プライベートサブネットとして分割)
- EC2(今回はAmazon Linux2を利用してください)
- RDS(Wordpressが利用するデータ保存先としてMySQL系統のRDSエンジンを利用。マルチAZ構成にしてください)
VPC、EC2、RDSの作成手順などは今回提示しません。過去教材を確認し各自で作成してください。
EC2側の作業手順
WordPressの設置方法が判らないと思いますので以下参考手順を記載します。
(Amazon Linux2での作業となりますので、各種Linuxコマンドの入力知識が必須になります。)
EC2側の作業手順::データベースの前準備作業
RDSを作成後、Wordpressで用いる為に各種設定をEC2側から行います。EC2インスタンスにログイン後以下作業を行って下さい。
まずはmysql設定するためにmysqlのインストール
sudo yum -y install mysql
次に作成したRDSに接続します。
mysql -u [ユーザー名] -p -h [RDSの接続エンドポイント]

接続ができたらSQL文の発行が可能です。まずはデータベースを作成し、作成後に一覧を確認しましょう!
CREATE DATABASE [データベース名];
SHOW DATABASES;
次に上記作成したデータベースを利用する利用する為にユーザーを作成し、権限も付与しましょう!
CREATE USER '[ユーザー名]' IDENTIFIED BY '[パスワード]';
ユーザーについて
こちらで作成するユーザーはRDSで指定したマスターユーザーではありません。
RDSで作成したデータベースサーバー内にWordpress用のデータベースを作成し、そのWordpress用のデータベースのみを操作できるユーザーの作成になります。
ちなみにユーザー名がwordpressでパスワードがwordpress_passだと以下のようになります。
CREATE USER 'wordpress' IDENTIFIED BY 'wordpress_pass';
次に作成したユーザーへ作成したデータベースに関する権限許可を与えます。
GRANT ALL PRIVILEGES ON [データベース名].* TO [作成したユーザー名];
ユーザー名がwordpressで、データベース名がwordpressだとすると以下のようになります。
GRANT ALL PRIVILEGES ON wordpress.* TO wordpress;
最後に権限情報を更新して、管理者でのMySQLへの接続を終了します。
FLUSH PRIVILEGES;
Exit
念の為に作成したユーザーでRDSで準備したMySQLに接続できるか確認します。
mysql -u [ユーザー名] -p -h [RDSの接続エンドポイント]
先程作成したユーザー名がwordpressであれば以下のようになります。
mysql -u wordpress -p -h [RDSの接続エンドポイント]

パスワード入力し無事に接続できればSQL文の発行が可能です。念の為に作成したユーザーでデータベース一覧を確認しましょう。
SHOW DATABASES;

上記の様にデータベース一覧にて限定されて表示されれば事前準備は完了です!
Exit;
EC2側の作業手順::Wordprssで使うソフト類のインストール作業
次にEC2にWordpressのインストールを行います。それに伴い必要なソフト類をまずはインストールしていきましょう!
sudo amazon-linux-extras install php7.4 -y
sudo yum -y install httpd php-mbstring php-xml gd php-gd

次にWordpressを動作させるためのWebサーバソフトであるApacheを起動させていきましょう。
sudo systemctl enable httpd
sudo systemctl start httpd
起動後はステータス確認しApacheが起動しているか確認します。
sudo systemctl status httpd

念の為にブラウザで当該EC2のパブリックIPアドレスにアクセスし確認します。

Apacheのインストール直後の標準画面が表示されればOKです!
EC2側の作業手順::Wordprssのインストール作業
前準備が終わりましたのでWordPress公式サイトより最新版をwgetを用いて取得します。
wget http://ja.wordpress.org/latest-ja.tar.gz ~/
ダウンロード出来ているか確認をします。
ls -la

ダウロードできたパッケージを解凍します。
tar zxvf ~/latest-ja.tar.gz
解凍したパッケージをApacheのドキュメントルートへ複製します。
sudo cp -r ~/wordpress/* /var/www/html/
複製したWordpressの権限を変更します。
sudo chown apache:apache -R /var/www/html

これでWebサーバーのApacheでWordpressが確認できます。ブラウザで再度EC2にアクセスしてみます。

EC2側の作業手順::Wordprssの設定作業
ブラウザでアクセスすると初期設定画面が表示されます。以後はすべてブラウザで操作していきます。
さぁ、始めましょう!のボタンを押します。

EC2に設置したWordpressからRDSへの接続を行います。よって作成したデータベース名、作成したユーザー名、パスワードを入力していきます。
なおデータベースのホスト名には、書き込みができるエンドポイントを指定します。

必要情報を入力後、送信ボタンを押します。

接続情報が正しいと以下の図のようになります。インストール実行ボタンを押します。

次はWordpressのサイト名やブラウザからWordpressにログインして利用するためのユーザー情報を新規登録します。適宜入力しWordPressをインストールボタンを押して下さい。

インストールが成功すると以下図のようになります。ログインボタンを押します。

WordPressを利用するユーザー情報を入力しログインボタンを押します。

無事ログインできるとWordpressの管理画面が表示されます。

EC2のパブリックIPアドレスのみで、ブラウザにアクセスするとサンプル記事が投稿されたサイトが表示されます。

以上で設置作業は完了です。
テスト提出
以上を踏まえて、完成したサイトのURLを提出して下さい。(確認チェックが終わるまでは、EC2インスタンスやRDSなどAWSリソースは削除しないようお願いします)