わずか5分!? AWSのEC2でクラウドなウェブサーバーを構築してみた

芹沢


わずか5分!? AWSのEC2でクラウドなウェブサーバーを構築してみた

はじめまして。五反田の「Clisk(クリスク)」という会社でシステムエンジニアなどをしている芹沢と申します。盟友であるLIGのゴウさんや紳さんと酒を酌み交わしているうちに、LIGブログに記事を書かせていただくことになりました。よろしくお願いいたします。

何回かに分けて、AWSについて書いていきたいと思います。

AWSとは?

amazon

AWS(Amazon Web Servicesの略)とは、Amazonが提供しているクラウドサービスの総称で、その中にはさまざまなサービスが含まれています。

EC2(仮想サーバー)、S3(ストレージ)、RDS(リレーショナルデータベース)、CloudWatch(監視)など、たくさんのサービスが提供されていて、それらのITインフラのリソースを、使いたいときに、使いたいものを、使いたいだけ、必要なスペックで、利用することができるのが特徴です。
多くのサービスは管理画面から操作でき、また稼働までの時間もごくわずかです。AWSを利用すると、最小限のコストでスピーディーにサービスを立ち上げることができます。

このAWS、一見敷居が高そうなのですが、一歩踏み出してしまえば意外と簡単です。まずは、こんなに簡単にサーバーが構築でちゃうの?という感動を体感してみましょう。今回のテーマは、「とにかく動かしてみる」です。

まずはアカウントを作成します

アカウント作成の手順は、Amazonの公式サイト にとてもわかりやすく丁寧に書かれているので、そちらを参考に作成してください。非常に簡単なステップでアカウントは作成できます。

  • 着信可能な電話(認証に使用します)
  • 有効なクレジットカード(の番号と名義と有効期限)

の2点が必ず必要なので、事前に用意しておきましょう。

AWSマネジメントコンソール(管理画面)にログインします

AWS マネジメントコンソール にアクセスし、アカウント作成時に登録したe-mailアドレスとパスワードでログインします。

awslogin

 

ログインに成功すると、AWSマネジメントコンソールのホーム画面に遷移します。ここからAWSの色々なサービスにアクセスできます。

AWSホーム

EC2のインスタンスを作ります

今回のメインとなる作業です。EC2で仮想サーバーのインスタンス(実体)を作成していきます。

ステップ1  インスタンス作成ウィザードを起動

ec2click

サービスの中からEC2をクリックします。

 

ec2dashboard

Launch Instanceをクリックします。

 

wizard1

ウィザードの形式を選択します。Classic Wizardを選択してContinueをクリック。

 

ステップ2 インスタンス詳細設定

ウィザードに従いインスタンス作成に必要な情報を設定していきます。(今回は「とにかく動かしてみる」ことが目的なので、ほとんどの設定をデフォルトのまま進めていきます。)

wizard2

構築する仮想サーバーのディストリビューション、OSを選択します。ここではAmazon Linux AMIを選択します。

 

wizard3

wizard4

wizard5

インスタンスの数やタイプ、その他詳細設定、ストレージデバイスなどの設定をします。デフォルト設定のままContinueをクリックしていきます。

 

wizard6

インスタンスにタグ付けできます。ここでは「Name」というキーに任意のわかりやすい値を設定します。(未設定でも大丈夫ですが、設定しておくと後で管理がしやすくなります。)

ステップ3 KEY PAIR作成

EC2で作成する仮想サーバーへは公開鍵認証で接続します。その際に必要となる秘密鍵をここで作成します。

wizard7

名前を入力しCreate & Download your Key Pairのリンクをクリックすると秘密鍵がダウンロードされます。ダウンロードした鍵を紛失しないようにしてください。

ステップ4 セキュリティグループ作成

セキュリティグループ(ファイアウォール)を設定します。

wizard8

ウェブサーバーを作成するので、上記の手順でHTTP(Port 80)を追加します。

 

wizard9

右のテーブルに「80(HTTP)」が追加されたのを確認しContinueをクリックします。

 

ステップ5 確認画面で設定値を確認し完了!

wizard10

ウィザードで設定した値を確認し、Launchをクリックします。

 

wizard11

これで作成完了です!Closeをクリックするとインスタンス管理画面に遷移します。

 

instances

作成したインスタンスのStateが「running」、Status Checksが「2/2 checks passed」になれば仮想サーバーの作成成功です。

仮想サーバーに接続

作成した仮想サーバーにログインしてみましょう。今回はmacからターミナルで接続します。

URLの確認

インスタンス管理画面で、インスタンスのURLを確認します。
※AWS Management Consoleホーム → EC2 → (左メニューの)Instancesからこの画面に遷移できます。

instances2

接続先のインスタンスを選択し、割り当てられているURLを確認します。

接続

先程ダウンロードした秘密鍵をわかりやすい場所(今回はカレントディレクトリ)に移動し、パーミッションを600に変更します。

$ mv ./Downloads/cliskkey.pem .
$ chmod 600 cliskkey.pem

EC2では、”ec2-user” というユーザーと秘密鍵でサーバーに接続します。接続先は先程確認したURLを指定します。

$ ssh -i cliskkey.pem ec2-user@ec2-54-249-116-159.ap-northeast-1.compute.amazonaws.com

初めて接続する際は

Are you sure you want to continue connecting (yes/no)? yes

と聞かれるので、yesをタイプ。

ec2console

ログインに成功すると、上記メッセージが表示されます(Amazon Linux AMIの場合)。

Apacheインストール

仮想サーバーにApacheをインストールしウェブサーバーを構築します。

Apacheインストール&起動

インストール

$ sudo yum -y install httpd

起動

$ sudo service httpd start

確認

ブラウザからURLにアクセスしてみます。

apache_installed

これでウェブサーバーが完成しました!

インスタンスの停止

起動した仮想サーバーを停止する方法です。

stop1

停止したいインスタンスを選択し、Actionsをクリックします。

 

stop2

Stopを選択します。

 

stopconfirm

確認画面でYes, Stopをクリックします。

【重要】StopとTerminateの違い
Stop : サーバーのシャットダウン。PCの電源を落とすイメージです。再度、同じインスタンスを起動できます。
Terminate : サーバーの破棄。PCを壊して捨てるイメージです。実行後は同じインスタンスを起動することはできません。データは全て消滅します。インスタンスを破棄したい場合はStopではなくTerminateを選択します。

無料利用枠

AWSには無料で利用できる枠があります。Amazonの公式サイトを参照してください。

ちなみに今回使用したEC2については、1年間はマイクロインスタンスの起動時間が毎月750時間までは、無料で使用できます。(複数台起動させる場合は、750時間/台数となるので注意)

※無料枠は各自の責任で確認してください。

終わりに

今回は「とにかく動かしてみる」ことをテーマに、本来気にかけるべき設定項目などもあえて触れずに、EC2でウェブサーバーを構築してみました。次回以降、各画面の細かい設定項目の意味とか、実用的なインフラ構築方法とか、どんどん掘り下げていければと思っております。


LIGでは、エンジニアを絶賛募集中!
http://liginc.co.jp/recruit/mid_career

芹沢
この記事を書いた人
芹沢

外部ライター 東京

この記事を読んだ人におすすめ

こちらもおすすめ

Amazon Web Services実践入門 (WEB+DB PRESS plus)

Amazon Web Services実践入門 (WEB+DB PRESS plus)

  • 著者舘岡 守,今井 智明,永淵 恭子,間瀬 哲也,三浦 悟,柳瀬 任章
  • 価格¥ 2,786(2015/11/10 16:28時点)
  • 出版日2015/11/10
  • 商品ランキング311位
  • 単行本(ソフトカバー)368ページ
  • ISBN-104774176737
  • ISBN-139784774176734
  • 出版社技術評論社