AWS上にWEBサービスを公開してみる【part2】
インスタンスが消えた!?
日を改めて作業を再開した時の事です。この前作成したはずのインスタンスがコンソールから消えてしまったのです。まさかインスタンスを「停止」ではなく「削除」してしまったのか・・・とそんな風に思っていたのですが、ふとこのブログ用に取っていたスクリーンショットを確認すると、停止後のインスタンスも表示されています。
ということは誤操作というわけではなさそうです。ではなぜ消えてしまったのか。もしかすると停止したままのインスタンスは一定期間をすぎると消されてしまうのでしょうか?Google先生に聞いてみました。
「消えた」のではなく「見えない」だけだった
「Amazon EC2 のインスタンスが消えた!」の顛末 : まだプログラマーですが何か?答えはこのサイトにありました。原因を端的に言ってしまえば、リージョンの違いによるものでした。つい先日、音声合成サービス「Polly」を利用するため、リージョンを「東京」から「オハイオ」に変更していたのです。その為、コンソールの表示内容もオハイオリージョンのものになっており、東京に作ったインスタンスは表示されていないというオチでした。
いやーでもこの記事がなかったらすごく悩んでいたと思うんです。ほんと感謝です。
WEBサーバを構築する
HTTPでの通信を許可する
では気を取り直して作業を始めていきたいと思います。
まずは、セキュリティグループの設定です。インスタンス作成直後は、EC2に対してSSHでしかアクセスを許可していないため、HTTP通信も許可するように設定します。
PuTTYを使ってアクセス
セキュリティグループの設定が終わりましたら、クライアントからEC2にアクセスしたいと思います。手元にPuTTYがあったので、これを利用します。ちなみに、前回の記事で秘密鍵をダウンロードしましたが、ここで使用します。
無事アクセスできると、Linuxをアップデートしてくださいとメッセージが表示されるので、下記コマンドを実行し最新版に更新します。
sudo yum -y update
ミドルウェアのインストール
Linuxが最新になりましたら、いよいよWEBサーバに必要となるミドルウェア類をインストールしていきます。下記コマンドを実行することで、「HTTPサーバ」「PHP」「データベース」がインストールされ、HTTPサーバが起動します。
sudo yum -y install httpd php mysql sudo service httpd start
また、EC2起動後すぐにHTTPサーバも立ち上げたいので、下記コマンドを実行します。
sudo chkconfig httpd on
次回予告
次回はいよいよWEBサービスをEC2上にのせていこうと思います!お楽しみに!