Blogical

AWS/Salesforceを中心に様々な情報を配信していきます(/・ω・)/

起動テンプレートを使用してEC2インスタンスを起動する方法

こんにちは、ロジカル・アーツの福島です。

構成が同じ複数のEC2インスタンスを起動するときに、手動で起動するのはヒューマンエラーが起こる可能性があります。そこで、起動テンプレートを使用すると全く同じEC2インスタンスを簡単に起動することができるので紹介します。

起動テンプレートとは

起動テンプレートの説明はユーザーガイドラインから引用します。

インスタンスを起動するための設定情報を含む起動テンプレートを作成できます。起動テンプレートにより起動パラメータを格納でき、インスタンスを起動するたびに指定する必要がなくなります。たとえば、AMI ID やインスタンスタイプ、通常インスタンスの起動に使用しているネットワーク設定を起動テンプレートに含めることができます。Amazon EC2 コンソール、AWS SDK、またはコマンドラインツールを使用してインスタンスを起動する場合、使用する起動テンプレートを指定できます。

EC2インスタンスを起動するときに設定するパラメータ(AMI、インスタンスタイプ、キ-ペア、セキュリティグループなど)を設定し、テンプレートを定義することができます。

メリット

EC2インスタンスを起動するときに毎回、構成を一から手動で行うとヒューマンエラーが起こる可能性があります。そこで、起動テンプレートを使用することで、同じ構成が保証されているEC2インスタンスをすぐに立ち上げられます。 例えば、急遽EC2インスタンスの数を増やすことになってもすぐに対応でき、ヒューマンエラーの心配もありません。

起動テンプレートの作成

まず、「AWSマネジメントコンソール」を開き画面上部の検索バーから「EC2」と検索し、以下の画面に移動します。

次に、「起動テンプレートを作成」から起動テンプレート作成画面に移動します。

 

ここでは「起動テンプレート名」とその説明を決めます。

「Auto Scalingのガイダンス」にチェックを入れると、EC2 Auto Scaling用の起動テンプレートを作成するための説明がコンソールに追加されます。
Auto Scaling用の起動テンプレートを作成する方はチェックを入れてください。ここではチェックを入れずに進みます。

「ソーステンプレート」から既存のテンプレートを選択することで、既存のテンプレートの設定から新しい起動テンプレートを作成することもできます。

次に、「AMI」、「インスタンスタイプ」、「キーペア」を設定します。今回は無料枠を使用します。

  • AMI : Amazon Linux 2 AMI (HVM) - Kernel 5.10, SSD Volume Type
  • インスタンスタイプ : t2.micro
  • キーペア : 既にキーペアがある場合はそれを選択(「キーペア」を作成していない場合は、「新しいキーペアの作成」から作成してください。)

次に「ネットワーク設定」をしていきます。
「サブネット」を指定すると「高度なネットワーク設定」の「サブネット」項目が自動で更新されます。 「セキュリティグループ」は既存のものを指定するか、新規で作成するかを選択できます。
「ネットワークインターフェイス」では、ネットワークの各種設定を起動テンプレートに含めるか否か、含める場合はどの値にするかを指定することができます。今回は「パブリックIPの自動割り当て」を有効化しておきます。

次に、高度な詳細です。
今回はデフォルトのまま進みますが、高度な詳細では様々な項目を設定することができます。 たとえば、スポットインスタンスのリクエストにチェックを入れることでスポットインスタンスを使用できるようになります。
スポットインスタンスは、EC2インスタンスを最大90%オフで利用することが出来ます。
ただし、以下の条件に達するとインスタンスが終了されるので注意が必要です。

  • 料金が設定した上限価格より上回った場合

  • スポットインスタンスプールの空き容量がなくなった場合

詳しくは、ユーザーガイドラインをご覧ください。

また、ユーザーデータではスクリプトを記述するとEC2インスタンス生成時に自動的に記述したスクリプトが実行されます。
最後に、内容を確認して、「起動テンプレートを作成」を押します。
以下のように表示されたら、起動テンプレートの作成は成功です。

起動テンプレートの使用

先ほど作成した起動テンプレートを使用して、実際にEC2インスタンスを起動します。
作成が成功した画面下部の「起動テンプレートを表示」を押下して起動テンプレートの一覧画面に戻ります。

起動したいテンプレートにチェックを入れてから、右上のアクションから「テンプレートからインスタンスを起動」を押します。

ここで「ソーステンプレート」や「ソーステンプレートのバージョン」、「インスタンス数」を選択します。
また、起動テンプレートを作成時に設定したパラメータを変更することもできます。
今回はテンプレートのままの設定を使うので「テンプレートからインスタンスを起動」を押下します。

以下のように表示されたら、EC2インスタンスの起動は成功です。

このようにして起動テンプレートを使用してEC2インスタンスを起動することができます。

起動テンプレートの削除

削除したい起動テンプレートにチェックを入れてアクションから「テンプレートの削除」を押します。

「削除」と入力して削除ボタンを押すとテンプレートが削除されます。

また、テンプレートの不要になったバージョンだけを削除することもできます。

終わりに

今回は、起動テンプレートの作成と、起動テンプレートを使用したEC2インスタンスの起動方法について紹介しました。起動テンプレートは、複数立ち上げる可能性がある複雑な設定のEC2インスタンスでも起動が簡単になるので、インスタンスを生成するときは試してみてはいかがでしょうか。

参考

docs.aws.amazon.com

docs.aws.amazon.com

dev.classmethod.jp