本記事では、AWS EC2におけるインスタンス(仮想サーバ)の起動方法と、インスタンスにアクセスする方法それぞれについて解説します。
はじめに
Amazon EC2を使って、IaaS環境を構築する方法を紹介します。
IaaSについての概要は、以下記事をご参照ください。
Amazon EC2とは
Amazon EC2(Elastic Compute Cloud)は、Amazon Web Service(AWS)で利用できるIaaSです。
Amazon EC2(以下、EC2)についての詳細は以下の記事を参照ください。
以下、にEC2を利用するための手順を記載します。
【STEP1】インスタンスを起動するリージョンを決める
はじめに、インスタンスを動かしたいリージョンを決めます。
リージョンごとに起動可能なインスタンスの種類(仮想マシンのスペック)や価格が異なります。
価格やインスタンスの種類はAWSの公式ドキュメントを参照ください(東日本リージョン)。
リージョン決定の観点
どこで起動していいか分からないときは、以下の観点から決めるといいと思います。
使いたいインスタンスが存在するリージョンか
インスタンスの種類(仮想マシンのスペック)により、特定のリージョンで使えたり使えなかったりします。
特によくあるのが、新しすぎるインスタンス、古すぎるインスタンス、尖っている(利用用途が特殊やかなりニッチな部分を攻めている)ときは特定のインスタンスしか使えないことがあります。
インスタンスを利用したいユーザに近いリージョン
例えば、インスタンスをWEBサーバとして利用したい場合であれば、そのWEBサーバを使うユーザ(サービスや利用者など)に一番近い物理的な場所に設定すると、レスポンスが良くなり使いやすい傾向にあります。
日本のユーザを対象に展開したいサービスであれば、東日本リージョンか西日本リージョンでインスタンスを立ち上げたほうが(物理的にサーバが近くなるので)いいでしょう。
価格で決める
同じインスタンスであっても、リージョンによって価格が微妙に異なります。とにかく費用を安く抑えたい場合や実験環境など応答速度などがそこまで気にならないものであれば、最も安いリージョンを選択するとよいと思います。
【STEP2】リージョンを選択する
AWSにログイン後、画面右上の地名が書かれている箇所をクリックすると、リージョンを選択できます。インスタンスを起動したいリージョンを選択します。
【STEP3】インスタンスを作成する
画面左上から、「サービス」→「コンピューティング」から「EC2」をクリックします。
画面左側の「インスタンス」→「インスタンス」を選択します。
画面右上の「インスタンスを起動」をクリックします。
名前とタグの決定
「名前とタグ」を決定します。これは自身で管理しやすい名前を付けるといいです。
今回は「EC2_test」という名前にしました。
次に「アプリケーションおよびOSイメージ(Amazonマシンイメージ)」を決定します。いわゆるOSとバージョンを選ぶということです。今回はOSを「Ubuntu」「UbuntuServer22.04LTS」アーキテクチャを「64ビット(x86)」にします。
インスタンスタイプの設定
次に、インスタンスタイプを設定します。マシンスペックを選択するということです。
プルダウンから選択しますが、プルダウンに無いまたはグレーアウトになっているものは選択できません。これは、リージョンや選択したOS、アーキテクチャによりNGなものは自動的に選択できないように配慮されています。今回は「t2.micro」を選択します。
キーペア(ログイン)の設定
次にキーペア(ログイン)を設定します。
インスタンスにアクセスする手段として、(緊急時を除いて)インターネット経由しかありません。セキュリティを担保するために、証明書または秘密鍵方式を使ってアクセスします(選択するOSにより異なる)。
証明書や鍵方式については以下の記事で詳しく解説しているので、よくわからない方は参照してみてください。
既にあるキーペアを利用する場合は、リストから選択しますが、ない場合は新しく作ります。
「新しいキーペアの作成」をクリックします。
ポップアップ画面になり、キーペアを作成するフォームとなるので、必要事項を入力します。
キーペア名を入力します。今回は「EC2_TEST」にします。次にキーペアのタイプを選択します。今回は「RSA」にします。最後にプライベートキーファイル形式を選択します。今回は「.pem」方式にします。情報を入力したら、「キーペアを作成」をクリックします。
【注意】ファイルダウンロードを忘れずに
キーペアを作成すると、「キーペア名.プライベートキーファイル形式」のファイルをダウンロードします。このキーがないと、該当するペアのインスタンスにアクセスできなくなりますので、必ず保存し、また無くさないようにします。
作ったキーペアが選択されます。
ネットワーク設定
次にネットワーク設定を行います。ネットワーク設定の「編集」をクリックします。
以下のネットワーク設定があります。
VPC(Virtual Private Cloud)
EC2で立ち上げるインスタンスは、必ず特定のネットワークに所属する必要があります。
家や職場などのPCにおいては、ネットワークなどどこにもつないでないスタンドアローンなPCが存在することが可能ですが、EC2ではそもそもインターネットから直接そのPCに繋いだり、インターネットには繋がっていないが他のEC2インスタンス経由で接続する必要があることから、必ずどこかのネットワークに所属する必要があります。
VPCについての詳細は、公式サイトの説明を参照してください。
初めてインスタンスを作成する際は、デフォルトでVPCが作成され、変更できませんので、それに従います。既にVPCが1つでも存在する場合で、例えば他のEC2インスタンスとネットワークを作りたい場合は、そのVPCを指定することでネットワークを組むことができます。今回は初めてVPCを作るので、そのまま新しいものを作成します。
ファイアウォール(セキュリティグループ)
ここでいう「ファイアウォール」はLinuxやWindowsに標準で入っているファイアウォールとは別物です。
OSやサードパーティ製のファイアウォールとは別に、クラウドでは、セキュリティグループと呼ばれる、仮想ネットワークや仮想サーバのNIC(Network Interface Card)に対して、クラウド側で管理する個別のセキュリティ条件を適用することができるのが一般的です。本項目ではそれを設定します。
今回はセキュリティグループを作成するのが初めてなので、新規作成を選択します。他のEC2院スタンなどが、既に存在する場合で、一緒のネットワークに所属させる場合は、それらと同じものを適用することができます。
また、EC2にアクセスできる通信について、一部の代表的なものを設定することができます。本来は、信頼できるIPからのみ指定するのが一般的です。
本格的な設定は別途VPCの設定から行う必要があります。
また、WEBサイトのためのEC2であれば、HTTPSとHTTPのみ許可することも可能です。
今回は、SSH通信をすべてのIPアドレスから許可します。
ストレージの選択
次にストレージを選択します。ストレージの詳細な説明は、公式サイトの説明を参照してください。
容量とアクセス規模によって決定しますが、一般的な用途であれば、「gp3」で十分だと思います。また、「新しいボリュームを追加」ボタンをクリックすれば、更にディスクの数を増やすことも可能です。
今回は30GiBのgp3に設定します。
※GiBなので、30GiBにすると、インスタンス上でも30GBに見えるようになっています。
他に高度な設定がありますが、設定したい場合は設定します。
高度な詳細の設定一覧 (2023/7時点)
公開時点2023/7時点で設定できる項目は以下の通りです。
購入オプション (スポットインスタンスに関するもの) | プレイスメントグループ |
ドメイン結合ディレクトリ | EBS 最適化インスタンス |
IAM インスタンスプロフィール | キャパシティーの予約 |
ホスト名のタイプ | テナンシー |
DNS ホスト名 | RAM ディスク ID |
インスタンスの自動復旧 | カーネル ID |
シャットダウン動作 | Nitro Enclave |
停止 – 休止動作 | ライセンス設定 |
終了保護 | アクセス可能なメタデータ |
停止保護 | メタデータの転送 |
CloudWatch モニタリングの詳細 | メタデータのバージョン |
Elastic GPU | メタデータレスポンスのホップ制限 |
Elastic inference | メタデータのタグを許可 |
クレジット仕様 | ユーザーデータ |
インスタンスを起動
項目を入力したら、画面右側の「Summary」欄に概要がありますので、問題なければ、「インスタンスを起動」ボタンをクリックします。
インスタンスの作成が始まります。
しばらくすると、作成が終了します。
画面右下のすべての「インスタンスを表示」をクリックします。
先ほど作成されたインスタンスが表示されます。
作ったはずのインスタンスが表示されないときは、画面右側の現在表示しているリージョンを確認して、インスタンスを作成したリージョンに切り替えましょう。
【STEP4】作成したインスタンスに接続する
上記の作成時に設定したSSHで接続することを前提に手順を記載します。
EC2側で行うこと
「EC2」から、「インスタンス」を選択して、EC2インスタンス一覧画面を開き、「インスタンスID」を選択し、詳細を表示します。
画面右の「接続」ボタンをクリックします。
「SSHクライアント」をクリックして、画面一番下に書いてあるコマンドを控えます。
SSHクライアントから行うこと
次に、SSH接続ができるソフトを起動します。Windowsの場合は、OpenSSHかTeratermをインストールすることになると思います。Windows11の場合は、標準でSSHが入っています。
筆者のPCはWindows11なので、コマンドプロンプトからSSH接続を行います。
コマンドプロンプトを開き、指定したpemファイルがある場所まで移動します。
今回はDownloadsにあるので、そこに移動しました。
先ほどコピーしたコマンドを貼り付け、実行します。初めて接続した際は、SSH接続した相手を登録するか聞かれますので、問題なければyesを入力します。yesを入力すると、次回から聞かれなくなります。
正しく接続できていると、以下のようにログインすることができます。
インスタンスにアクセスできない場合
- サーバにアクセスできない旨が出る場合
サーバにアクセスできない場合はSSH接続をセキュリティグループ設定で許可しているか確認します。
- 秘密鍵認証で失敗する場合
接続に用いている秘密鍵がそのインスタンスに対して正しい鍵か確認します。
インスタンスの停止および削除の方法
インスタンスの停止と削除の方法については、別記事として、以下にまとめましたので、よろしければ参考にしてください。
まとめ
AWSのEC2インスタンス作成方法と、起動後の接続方法について解説しました。
本記事が少しでも参考になれば幸いです。
コメント