AWS EC2の作成〜Apacheの起動

この記事ではEC2を起動し、その中にApacheインストールして、起動してみたいと思います。

VPCを作成する

まずはVPCを作ります。

VPCの中にサブネットがあり、その中にEC2を起動させるイメージです。

VPCダッシュボードから「VPCを作成」で作っていきます。

画像

「VPCなど」にチェックを入れて、あとはデフォルトで作成します。

画像

これで、VPCサブネットなどができました。

画像

インスタンスを作成する

では、作成したVPCパブリックサブネット内にインスタンスを作っていきましょう。

なお、パブリックサブネットはインターネットにつながっているサブネットです。(プライベートサブネットはつながっていません。)

下のように、「インスタンスを起動」

画像

任意の名前を入れて、今回はAmazon Linuxを選択します。

画像

インスタンスタイプ「t2.micro」を選択します。

「新しいキーペアの作成」を選択(すでにある場合はそれを選択)

画像

任意のキーペア名を入れて、「キーペアを作成」

画像

すると、上の場合、「my-test-0722.pem」というファイルがダウンロードされます。

これは大事なファイルなので、厳重に保管してください。

画像

私の場合は、こちらの「mytest」というフォルダに格納しました。

次に、SSH、HTTP、HTTPSからアクセスできるようにチェックを入れます。

なお、特にSSH接続については「任意の場所」では誰でも接続できてしまうので、本番時にはここは限定した方が良いところです。

画像

次に、ネットワークの設定を変えたいので、「Network settings」「編集」

画像

ここがポイントです。

「サブネット」はデフォルトで「private」のサブネットが選ばれていると思います。

これを下のように「public」のサブネットを選択します。

また、「パブリックIPの自動割り当て」「有効化」にします。

画像

これらを設定しないと、インターネットから接続ができないので、エラーとなります。

「private」サブネットに設定してしまうと、最終的にこのようにタイムアウトが発生してしまうことになります。

画像

あとは、この状態で「インスタンスを起動」すると、下のように成功しました。

画像

上の「すべてのインスタンスを表示」を見てみると下のように実行中であることがわかります。

なお、「ステータスチェック」にあるように起動してすぐは初期化中です。

少し待つと、「2/2 のチェックに合格しました」と出てくると思います。

画像

EC2インスタンスに接続する

では、インスタンスが起動できたので、接続してみましょう。

下の「接続」を選択

画像

「SSHクライアント」に実行すべきコマンドが書かれています。

画像

では、やってみましょう。

「ターミナル」(コマンドライン)を立ち上げて、第2章pemファイルを保存したフォルダに移動します。

そこで、上に書かれているコマンドを実行します。

画像

ざっくりとですが、「chmod」pemファイル他の人が読み書き実行をできなくしています。(自分も読みのみ)

そして、「ssh」pemファイルを使ってEC2インスタンスアクセスしています。

うまく立ち上がったようですね。

Apacheをインストール・起動する

では、EC2の中に入れたので、Apacheをインストールしてみましょう。

システムのアップデート

まずは、下のコマンドで、システムのを行います。

sudo yum update -y

copy

「-y」があることで質問に対し、全て「y(yes)」で答えています。

画像

Apacheのインストール

では、インストールを行いましょう。

sudo yum install httpd -y

copy

うまく行っていそうですね。

画像

Apacheを起動する

では、下のコマンドで起動させます。

sudo systemctl start httpd

copy

でも、なんの反応もなくって、ちょっと心配ですね。

下のコマンドで状況を見てみましょう。

sudo systemctl status httpd

copy

下のように、Active(running)となっていたら、適切に動いています。

画像

実際に動いているかを確認する

では、実際に動いているかを見てみましょう。

EC2のインスタンスからこちらの「パブリックIPv4 DNS」を選択してみましょう。

画像

あれ?エラーになってしまいますね。

実はこちら、「https」となっていますが、「https」の設定は現時点で行なっていないためです。

画像

気を取り直して、下のように、「http」にしてみましょう。

画像

すると、「保護されていない通信」ではありますが、テストページが表示されたことがわかります。

画像

最後にテストが完了し、停止させたい場合は、下のようにします。

sudo systemctl stop httpd

copy

「inactive(dead)」となっていますね。

注意
EC2自体が止まるわけではありません。EC2
を止めるには「停止」または「終了」(もう使わない場合)が必要です。

画像

最後に

終わった後は、不要なものは必ずクリーンアップを行なってください。

料金が継続的にかかってしまうため、忘れないよう、十分ご注意ください