はじめに
昨日の記事の続きです。VPC、パブリックサブネット、プライベートサブネット、ルートテーブル、EC2インスタンスを構築しました。本日はインスタンスにWEBサーバの機能を持たせようと思います。
具体的にはApache HTTP Serverをインストールします。Apacheはオープンソースで提供されています。
世界で一番利用されているWebサーバーソフトウェアです。
過去の記事は以下から参照ください。
構成図
手順
1. インスタンスにログインします。ログイン方法は昨日の記事をご参照ください。
2. 以下のコマンドでLinuxシステムにインストールされているすべてパッケージのバージョンを最新のものに更新します。
トランザクションの要約で確認の応答にyと入力します。完了しました!と出たら成功です。
% sudo yum update
トランザクションの要約
================================================================================
インストール 7 パッケージ
更新 28 パッケージ
総ダウンロード容量: 56 M
Is this ok [y/d/N]: y
・
・
・
完了しました!
3. Apacheをインストールします。
[-y]オプションはユーザーの確認なしにすぐにインストールするオプションです。
% sudo yum -y install httpd
4. Apacheを起動します。
% sudo systemctl start httpd.service
5. Apacheが起動したか確認します。実行中のプロセスに確認コマンドの中にhttpdが出てきたらOKです。
% ps -ax | grep httpd
7609 ? Ss 0:00 /usr/sbin/httpd -DFOREGROUND
7610 ? Sl 0:00 /usr/sbin/httpd -DFOREGROUND
7611 ? Sl 0:00 /usr/sbin/httpd -DFOREGROUND
7612 ? Sl 0:00 /usr/sbin/httpd -DFOREGROUND
7613 ? Sl 0:00 /usr/sbin/httpd -DFOREGROUND
7614 ? Sl 0:00 /usr/sbin/httpd -DFOREGROUND
7713 pts/0 S+ 0:00 grep --color=auto httpd
6. Apacheを自動起動する設定に変更します。
% sudo systemctl enable httpd.service
7. Apacheが自動起動する設定になったか確認します。enableと出ればOKです。
% sudo systemctl list-unit-files -t service | grep httpd.service
httpd.service enabled
これでApacheのインストールは完了です。では早速ブラウザからアクセスしてみましょう。
8. ブラウザにパブリックIPを入力します。パブリックIPはAWSマネジメントコンソールのEC2の画面で確認ができます。
残念ながらアクセスはできません。これはセキュリティグループでSSHの22番ポートしか許可していないためです。
httpは80番ポートのため、許可の設定が必要です。
9. EC2の左側メニューペインからセキュリティグループを選択し、前回作成したWEB-SGを選択します。※1
インバウンドルールを選択し、[Edit inbound rules]をクリックします。
(※1前回のVPC構築記事を見られていない方は、ご確認過去記事からご確認ください。)
10. [ルールを追加]をクリックし、[カスタムTCP]を選択、ポート範囲は[80]でソースに[0.0.0.0/0]を選択し、[ルールを保存]をクリックします。
11. ブラウザにパブリックIPを入力します。テストページが表示されればwebサーバの構築完了です!
最後に
いかがでしたでしょうか。無事にwebサーバを構築できましたでしょうか。
通常はこの後ドメインを取得するのですが、AWSでは有料となりますのでここまでにします。
ちなみに私は今サイトを一つ運営しています。ただしS3による静的なページのみです。
その際の[.com]ドメインの取得料金は年間13.25$でした。
また月々の利用料0.55$も発生します。興味のある方は以下の記事もご参考にしてください。
ご参考になれば幸いです。