本記事は、以下の目的で作成しています。
- AWSやEC2の特徴やメリットが分かるようになる
- AWSの無料用枠内でEC2インスタンスを作成し使えるようになる
本記事ではAWSとEC2などのインフラのみの扱いですが、インフラ構築だけでなく『最速で実際のWEBアプリを開発して公開する方法まで知りたい』という方は、下記のリンクをぜひご覧ください!
AWS EC2とは
AWSはAmazon Web Serviceの略でAmazonによって提供されるクラウドコンピューティングを使用したサービスです。「初期費用ゼロ」、「従量課金であるためコスト低減可能」、「自在なサイジングが可能」といった特徴があります。
EC2(Elastic Compute Cloud)とはAWSのサービスの一つで、仮想サーバー構築サービスです。EC2を利用することで、OSを乗せた仮想環境をクラウド上にすばやく作ることができます。詳細については以下の記事が参考になるので、ぜひご覧ください。
AWS EC2を使うメリット
AWSのEC2を使用するメリットとしては、主に以下が上げられます。
- コストを抑えることができる
- あっという間にサーバーを作成できる
- スペックや台数変更が自在
具体的に、ひとつひとつ見ていきましょう。
コストを抑えることができる
EC2のコストは従量課金制となっています。スペックに応じて、使った分だけ費用を支払う形になるので、イニシャルの費用、ランニング費用を共に抑える事が可能です。また、EC2では1年間の無料利用枠が存在します。利用できるスペックは限定されていますが、初心者の方は無料でお金の心配をすることなく利用することも可能です。
あっという間にサーバーを作成できる
ハードウェアのサーバの場合、サーバーとなるマシンを手配して、設営して、その後に設定をして、といった工程が発生する為、サーバーを構築するまでにある程度の時間を要します。これに対して、EC2では、物理的なハードは必要とせず仮想サーバーであるため、数分で作成することが出来ます。
スペックや台数変更が自在
サーバーを構築する場合、予め利用量を想定してスペックを決めます。しかし、想定よりも利用が多くなったり、逆に想定よりも少なかった場合において、スペックを変更したいケースが発生します。EC2では、利用状況に合わせて、サーバのCPU、メモリ、容量などのスペックを後からでも自由に変更することが出来るので、これらの状況に対しても柔軟に対応することが出来ます。
EC2インスタンスを作成する
EC2インスタンスを作成し、仮想サーバーに入ってOSを使用する方法について説明します。
EC2インスタンスを作成するためには、AWSのユーザアカウントを作成する必要があります。ユーザーアカウントの作成については、下記の記事が参考になりますので是非ご覧ください。
インスタンスを作成する
まず、右上のメニューから、「アジアパシフィック(東京)」のリージョンを選択します。
次に、AWSのコンソール画面から「EC2」と検索して、EC2のダッシュボード画面に移動し、『インスタンスを起動』ボタンをクリックします。
EC2の設定ページに移動します。名前には任意の名前を入力し、任意のOSを選択します。ここでは、OSは「Ubuntu」で設定します
設定を進めていき、「キーペア(ログイン)」内の「新しいキーペアの作成」をクリックし、下記画面にて任意のキーペア名を入力後、「キーペアを作成」をクリックします。拡張子が「.pem」のファイルがダウンロードされるので、ローカルPCの任意のフォルダ内に格納してください。
「ネットワーク設定」内で「編集」をクリックし、VPCとサブネットはデフォルトのまま、パブリックIPの自動割当は「無効化」、セキュリティグループはグループ名を「app-ec2-security-group」と変更し、セキュリティグループルールのタイプ「ssh」に対してソースタイプを「自分のIP」と選択します。これで、あなたのIPアドレスのみ作成したインスタンスにSSH接続できる状態となります。
最後に無料利用枠内のスペックとなるように、インスタンス数は「1」、インスタンスタイプは「t2.micro」、ストレージは「1x8GiB」のデフォルト設定のままにして、「インスタンスを起動」をクリックします。これでEC2インスタンスが作成されます。。
パブリックIPを付与する
EC2インスタンスに接続して実際にOSを使用するために、本記事ではSSH接続を行います。SSH接続を行うためにはパブリックIPが必要です。本記事では、パブリックIPを「AWS Elastic IP アドレス(EIP)」によって取得していきます。EIPとは、固定のパブリックIPアドレス(IPv4)を EC2等のインスタンスに設定できるAWSのサービスです。
まず、EC2ダッシュボードのリソースからElastic IPをクリックします。その後、画面右上の「Elastic IPアドレスを割り当てる」をクリックします。移動したページにおいて、Elastic IP アドレスの設定はすべてそのままにし、画面右下の「割り当て」をクリック後に、Elastic IPアドレスが作成されると下記画像のようにリストアップされます。ここで、左端のチェックボックスがONにした後に、右上の「ToDo」メニューから「Elastic IP アドレスの関連付け」をクリックします。
インスタンスには作成したEC2インスタンス、プライベートIPアドレスにはEC2のプライベートIPアドレス(プライベートIPアドレスは、作成済みのインスタンス一覧から該当インスタンスをクリックして表示される詳細の中に表示されます。ここでは、「10.0.193.25」です)を入力して「関連付ける」をクリックします。これで、EC2にパブリックIPアドレスが付与されます。
インスタンスにSSH接続する
パブリックIPを付与したので、SSH接続してOSにログインしていきます。SSH接続については、下記の記事が参考になるので是非ご覧ください。
まず、ローカルPCのコンソール画面にて下記コマンドを入力して、キーペアのパーミッションを変更します。「.\key.pem」のところには、EC2を作成した時のキーペアのパスを指定します。
sudo chmod 400.\key.pem
続いて、下記のコマンドを入力します。「.\key.pem」のところには、EC2を作成した時のキーペアのパスを指定します。「192.168.0.1」のところには、Elastic IPで取得したパブリックIPを指定します。(パブリックIPアドレスは、作成済みのインスタンス一覧から該当インスタンスをクリックして表示される詳細の中に表示されます。)
$ sudo ssh -i .\key.pem ubuntu@192.168.0.1
うまくいくと、下記の文章が出力されるので、「yes」と入力します。
The authenticity of host '192.168.0.1 (192.168.0.1)' can't be established.
ECDSA key fingerprint is SHA256:Inw1gzRrShO0ZKysKhUaRg78gjSp3JNS8nNB2vNC0vA.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
「Welcome to Ubuntu 20.04.3 LTS…」で始まる文章が出力されれば接続成功です。
※上記はローカルPCのOSがmacかLinuxであることが前提です。windows PCの場合は下記のリンクを参照してください。
さいごに
これで、AWSの無料利用枠内でのEC2インスタンスを作成し接続する方法の紹介を終わります。
コメント