EC2のAMIを定期的に作り直していると、「パッチ適用済みAMIの作成を自動化したい」「DR用のAMIも用意したい」という2つの目的が重なることがあります。
EC2 Image Builderは、OSやソフトウェアの構成をそろえた新しいイメージを作るためのサービスです。一方、稼働環境のある時点の状態を保管し、そこへ復元する目的ではバックアップを設計します。この役割を分けると、Image Builderを導入する場面が判断しやすくなります。
手作業で繰り返すAMI作成をパイプラインにする
たとえば、毎月「元のAMIからEC2を起動する→OSを更新する→共通ソフトを入れる→動作を確認する→AMI化する」という作業があるなら、その手順が自動化の対象です。
Image Builderでは、ベースイメージと適用するコンポーネントをレシピとして定義します。コンポーネントにはソフトウェアの導入や設定、テストなどの処理を組み込みます。同じ手順を繰り返し実行できるため、担当者ごとの設定差を減らしやすくなります。基本構成はImage Builderの公式概要で確認できます。
稼働中のEC2と、新しいAMIを作る環境を分ける
Image Builderは、イメージ作成や検証のためにEC2インスタンスを起動します。既存の本番EC2へそのままパッチを当てる操作とは異なり、別のビルド環境で次に利用するイメージを作ります。
そのため、本番サーバーの更新作業と、新しいイメージの準備を別のタイミングにできます。ただし、AMIが完成しただけで、本番のEC2が新しいイメージへ置き換わるわけではありません。起動テンプレートやデプロイの運用と組み合わせて、切り替え方を決める必要があります。
- ベースAMIとビルド手順を選ぶ。
- ビルド用インスタンスで更新・設定を実行する。
- 作成したイメージを検証する。
- 合格したAMIを利用先へ配布する。
- 運用側で新しいAMIを使った展開・切り替えを行う。
テストに合格した範囲と、アプリケーション全体の正常性は同じではありません。必要な確認項目をテストへ組み込み、実際の利用条件でも検証します。処理の流れとビルド用リソースはImage Builderの仕組みを参照してください。
導入効果が出やすいユースケース
| 運用上の課題 | Image Builderで準備するもの |
|---|---|
| 毎月同じ更新作業を繰り返している | OS更新や共通ソフト導入を含むAMI作成手順 |
| 部署・環境ごとに設定がばらつく | 共通レシピと確認用のテスト |
| 複数リージョンで同じ構成を起動したい | テストしたイメージと配布先の設定 |
| 新しいサーバーの初期構築に時間がかかる | 必要なソフトをあらかじめ入れたベースAMI |
たとえばWebサーバーを増設する際、毎回OS設定からやり直す代わりに、検証済みの共通AMIから起動する運用を検討できます。一方、サーバーごとにしか存在しないデータや設定を、イメージ作成だけで保護できると考えないことが大切です。
DRではAWS Backupと何が違う?
DRでは「何を復旧したいのか」を先に決めます。標準構成のサーバーを新しく用意したいのか、稼働していた環境の保存時点へ戻したいのかで、準備するものが変わります。
| 目的 | 検討する仕組み | 別途確認すること |
|---|---|---|
| 同じOS・ソフト構成を再展開する | Image Builderで作成・配布したAMI | 業務データ、接続先、起動後の設定 |
| 保存した時点の環境を復元する | AWS Backupなどのバックアップ | 復旧ポイント、コピー完了、復元手順 |
| 標準イメージと最新データを組み合わせて復旧する | イメージ管理とデータ保護の組み合わせ | 両者の整合性と復旧試験 |
AWS Backupでは、対応するリソースのバックアップを、手動またはバックアッププランで別リージョンへコピーできます。AMI等のバックアップをDRリージョンへ保管することが目的なら、Image Builderを追加する前に、この仕組みで要件を満たせるか確認します。対応条件はAWS Backupのリージョン間コピーで確認できます。
Image Builderの複数リージョン配布は、用意した標準イメージを複数の場所で利用するための機能です。それだけで稼働中サーバーの最新データを継続的に保護したり、DR時の復旧時間を保証したりするものではありません。
最初に決めておきたい運用
- 何を共通AMIへ含め、何を起動後に設定するか。
- ビルド環境が更新元や必要なAWSサービスへ接続できるか。
- テストに失敗した場合、誰がログを確認するか。
- 新AMIの採用判断と、本番への切り替えをいつ行うか。
- 旧AMIの保管期間と、戻す際の手順をどうするか。
Image Builderによるイメージ作成自体に追加料金はかかりませんが、処理で利用するEC2やAMIに関連するEBSスナップショットなどには費用が発生します。構築頻度と保存世代数を決めておくと、継続運用しやすくなります。料金の対象は上記の公式概要にも記載されています。
