Image BuilderでカスタムAMIを作成してEC2を起動してみた

Image BuilderでカスタムAMIを作成してEC2を起動してみた

Clock Icon2024.10.21

はじめに

かつまたです。今回はImage Builderを使用して、WebサーバをインストールするカスタムAMIを作成し、そのAMIを使用してEC2を起動してみたため、手順をご紹介します。

AWS Image Builderとは

Image Builder

AWS Image Builderは、EC2インスタンス用のカスタムAMIを自動的に作成、管理、デプロイするためのサービスです。AMIのバージョニングやAMI取得の自動化を行えます。

カスタムAMI

カスタムAMIは、特定の要件に合わせてカスタマイズされたAMIです。通常のAMIと同様に、EC2インスタンスの起動に使用されますが、アプリケーションやツールをあらかじめインストールできるプリインストールソフトウェアやセキリュティやネットワークの詳細な設定が行える機能を有しています。

コンポーネント作成

ソフトウェアのインストール、設定の適用、スクリプトの実行など、AMIのビルドプロセスにおける具体的なタスクを定義することができるコンポーネントの作成を行います。
1。「コンポーネント」→「コンポーネントを作成」を選択し、「コンポーネントタイプ」を「ビルド」、互換性のあるOSバージョンを「Amazon Linux」と選択します。
スクリーンショット 2024-10-21 11.09.02.png

2.「定義ドキュメント」にNginxをインストールするためのビルドコンポーネントとして以下のスクリプトを記述します。
コンポーネント記述.png

イメージレシピ作成

1.「イメージレシピ」→「イメージレシピを作成」を選択し、「ベースイメージ」の「イメージ名」を「Amazon Linux2 x86」とします。
イメージレシピ作成2.png

2.ビルドコンポーネントで「フィルターの所持者」を「ユーザー所有」とし、先ほど作成したコンポーネントを選択します。レシピを作成します。
イメージレシピ、コンポーネント選択.png

イメージパイプライン作成と実行

1.「イメージパイプラインの作成」から「ビルドパイプライン」を「手動」と選択します(検証のため)。
イメージパイプライン1.png

2.「レシピを選択」では「既存のレシピを使用する」から先ほど作成したレシピを選択します。
イメージパイプライン.png

3.その他設定はデフォルトで進み、イメージパイプラインを作成します。
イメージパイプライン2.png

イメージパイプライン4.png

4.パイプラインを実行し、AMIを作成します。作成したパイプラインを選択し、「アクション」→「パイプラインを実行」からAMIを作成します。
パイプライン実行.png

AMIからEC2起動確認

作成したAMIからEC2を起動します。

1.「EC2」→「インスタンスを起動」からインスタンスを起動していきます。「アプリケーションおよび OS イメージ (Amazon マシンイメージ)」を「自己所有のAMI」に変更し、作成したAMIを選択します。
インスタンス作成1.png

2.VPCとセキュリティグループを選択します。今回はNginxが正しくインストールされていることを確認するために、インバウンドルールにSSH(22)とHTTP(80)を許可するルールを設定します。EC2を起動します。
インタンス作成2.png

3.起動したEC2にSSH接続し、以下コマンドを実行します。出力の「active (running)」を確認することでNginxが正しくインストールされ、起動していることを確認します。

bash
sudo systemctl status nginx

スクリーンショット 2024-10-18 17.28.14.png

4.また、作成したEC2の詳細画面の「パブリック IPv4 アドレス」をブラウザで入力することでWebページが表示されることを確認できます。
スクリーンショット 2024-10-20 16.38.09.png

おわりに

Image BuilderはEC2から定期的にAMIを取得するサービスというイメージが強かったのですが、カスタマイズしたAMIを作成できる方法を学ぶことができ、知見が深まりました。ご覧いただきありがとうございました。

参考

コンポーネントを使用して Image Builder イメージをカスタマイズする - EC2 Image Builder

https://qiita.com/class2glass/items/67976a046a925aef866a

アノテーション株式会社について

アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.