EC2
EC2はAWSにおける仮想サーバのことです。
EC2の特徴の1つとして必要な時に必要な台数を起動し、必要がなくなれば解放できることが挙げられます。
EC2インスタンスはVPCのサブネットないで起動するAZサービスです。
EC2インスタンスを起動するまでには次のステップが必要です。
初回起動の各ステップ
-
AMIの選択
AMIはEC2インスタンスの仮想マシンイメージです。
AMIにはルートボリューム(OSが格納されるボリューム)のテンプレートや、ルートボリューム以外のマッピング情報などが含まれています。
AMIにはAWSから提供されるWindows Serverや各種Linuxディストリビューションの他、AWS Marketplaceで購入できる各種ソフトウェアのインストール済みイメージを利用することができます。 -
インスタンスタイプの選択
インスタンスタイプはEC2インスタンスのマシンスペックを規定する仮想CPUコア数やメモリ容量などの組み合わせです。 -
インスタンスの詳細設定
EC2インスタンスを起動するVPCやサブネットを選択し、必要に応じてIAMロールを割り当てたり、ユーザデータを設定したりします。
ユーザデータはOSの起動スクリプトのようなものでEC2インスタンスの初回起動時に実行したい処理を設定することができます。
例えば各種インスタンスにApache Web Server等のソフトウェアをインストールするといったスクリプトを組めば、ユーザデータを設定した全てのインスタンスに対して初回起動時インストールが可能です。 -
ストレージの設定
EC2インスタンスに接続するブロックストレージを設定します。
デフォルトではEC2インスタンスに接続しているストレージデバイスにいはOSがインストールされます。
ストレージデバイスにはEBSとインスタンスストアの2種類があります。
EBSはAZ内に作成されるネットワーク接続型のブロックストレージで不揮発性(永続的なデータボリューム)という特徴があります。
一方、インスタンスストアはEC2インスタンスの物理ホストの内蔵ストレージで揮発性(一時的なデータボリューム)という特徴があり、EC2インスタンスを停止すると保存されていたデータは削除されます。
※デフォルトではインスタンスを再起動すると物理ホストが変わるため、インスタンスストアは揮発性となる -
タグ付け
タグは、キーと値のペアで構成され、例えば「Name」キーに「WebServer」値というタグをインスタンスに設定すると、コマンドで操作する際の絞り込み条件として利用することができます。 -
セキュリティグループの設定
EC2インスタンスには少なくとも一つのセキュリティグループを適用する必要があり、このステップで新しいセキュリティグループを作成することも既存のセキュリティグループを設定することもできます。 -
キーペアの選択
あらかじめ作成したキーペアを指定します。
公開鍵はAWS上に保管され、ローカルにダウンロードしてある秘密鍵を利用し、認証を行うことができます。
プレイスメントグループ
異なるAZ内インスタンス同士のアクセスには多少の遅延が発生します。
※各AZは自然障害などに対しても冗長性を担保するため、互いに物理的に離れた場所に存在するため
そこで、ある単一のAZにプレイスメントグループを作成し、その中にEC2インスタンスを作成すると、プレイスメントグループ内のEC2インスタンス間のネットワーク接続を高速化することができます。
※プレイスメントグループではネットワーク高速化のために、インスタンスを単一のAZに配置することとなるため、冗長性は損なわれる