EC2 Image Builder とは何ですか - EC2 Image Builder

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

EC2 Image Builder とは何ですか

EC2 Image Builder はフルマネージド AWS のサービス 型で、カスタマイズされ、安全で、 up-to-date サーバーイメージの作成、管理、デプロイを自動化するのに役立ちます。 AWS Management Console、、または APIs を使用して AWS Command Line Interface、 でカスタムイメージを作成できます AWS アカウント。

Image Builder がアカウントで作成したカスタマイズされたイメージを所有しているのはお客様です。パイプラインを設定して、所有しているイメージの更新とシステムパッチを自動化できます。スタンドアロンコマンドを実行して、定義した設定リソースを使用してイメージを作成することもできます。

Image Builder パイプラインウィザードの指示に従って、カスタムイメージを作成します。手順は次のとおりです。

  1. カスタマイズ用のベースイメージを選択します。

  2. ベースイメージにソフトウェアを追加したり、ベースイメージからソフトウェアを削除したりします。

  3. ビルドコンポーネントを使用して設定とスクリプトをカスタマイズします。

  4. 選択したテストを実行するか、カスタムテストコンポーネントを作成します。

  5. AMIs AWS リージョン と に配布します AWS アカウント。

  6. Image Builder パイプラインがディストリビューション用のカスタム Amazon マシンイメージ (AMI) を作成する場合、他の AWS アカウント、組織、および OUs にアカウントからの起動を許可できます。所有者アカウントには、AMI に関連する料金が請求されます。

EC2 Image Builder の機能

EC2 Image Builder は以下の機能を提供する:

生産性を向上させ、準拠した と up-to-date イメージを構築するためのオペレーションを減らす

Image Builder は、ビルドパイプラインを自動化することで、大規模なイメージの作成と管理にかかる作業量を削減します。ビルド実行スケジュールの設定を指定することで、ビルドを自動化できます。自動化により、最新のオペレーティングシステムパッチを適用してソフトウェアを保守する運用コストを削減できます。

サービスのアップタイムを増やす

Image Builder では、デプロイ前にイメージをテストするために使用できるテストコンポーネントにアクセスできます。 AWS Task Orchestrator and Executor (AWSTOE) を使用してカスタムテストコンポーネントを作成し、それらを使用することもできます。Image Builder は、設定されたテストがすべて成功した場合にのみイメージを配布します。

デプロイメントのセキュリティバーを上げる

Image Builder では、コンポーネントのセキュリティ上の脆弱性にさらされる不要なリスクを排除するイメージを作成できます。 AWS セキュリティ設定を適用して、業界および内部のセキュリティ基準を満たす安全なout-of-the-box イメージを作成できます。Image Builder には、規制対象の業界に属する企業向けの設定コレクションも用意されています。これらの設定を使用して、STIG 標準に準拠したイメージを迅速かつ簡単に構築できます。Image Builder で使用可能な STIG コンポーネントの完全なリストについては、「EC2 Image Builder 用の Amazon managed STIG 強化コンポーネント」を参照してください。

一元管理と系統追跡

Image Builder では AWS Organizations、 との組み込み統合を使用して、承認された AMIs からのみインスタンスを実行するようにアカウントを制限するポリシーを適用できます。

AWS アカウントリソース共有の簡素化

EC2 Image Builder は AWS Resource Access Manager (AWS RAM) と統合されており、特定のリソースを AWS アカウント または を通じて共有できます AWS Organizations。共有できる EC2 Image Builder リソースは下記のとおりです。

  • コンポーネント

  • イメージ

  • イメージのレシピ

  • コンテナレシピ

詳細については、「EC2 Image Builder リソースを共有」を参照してください。

サポートされるオペレーティングシステム

Image Builder は、以下のオペレーティングシステムのバージョンをサポートしています。

オペレーティングシステム/ディストリビューション サポートバージョン

Amazon Linux

2 と 2023 年

CentOS

7 と 8

CentOS Stream

8

Red Hat Enterprise Linux (RHEL)

7 と 8

SUSE Linux Enterprise Server (SUSE)

12 と 15

Ubuntu

18.04 LTS、20.04 LTS、22.04 LTS

Windows Server

2012 R2、2016、2019、2022 年

対応イメージフォーマット

カスタム AMI イメージでは、開始点として既存の AMI を選択できます。Docker コンテナイメージの場合、 でホストされているパブリックイメージ DockerHub、Amazon ECR 内の既存のコンテナイメージ、または Amazon が管理するコンテナイメージから選択できます。

概念

以下の用語と概念は、EC2 Image Builder を理解し、使用する上で中心となるものです。

AMI

Amazon マシンイメージ (AMI) は Amazon EC2 のデプロイの基本単位であり、Image Builder で作成できるイメージの種類の 1 つです。AMI は、EC2 インスタンスをデプロイするためのオペレーティングシステム (OS) とプリインストールされたソフトウェアを含む事前設定された仮想マシンイメージです。詳細については、Amazon マシンイメージ (AMI)を参照。

イメージパイプライン

イメージパイプラインは、安全な AMI とコンテナイメージを構築するための自動化フレームワークを提供する AWS。Image Builder イメージパイプラインは、イメージビルドライフサイクルのビルド、検証、およびテストフェーズを定義するイメージレシピまたはコンテナレシピに関連付けられています。

イメージパイプラインは、イメージの構築場所を定義するインフラストラクチャ構成に関連付けることができます。インスタンスタイプ、サブネット、セキュリティグループ、ログ記録、その他のインフラストラクチャ関連の構成などの属性を定義できます。また、イメージパイプラインをディストリビューション構成に関連付けて、イメージのデプロイ方法を定義することもできます。

マネージドイメージ

マネージドイメージは、AMI またはコンテナイメージに加えて、バージョンやプラットフォームなどのメタデータで構成される Image Builder のリソースです。管理対象イメージは、Image Builder パイプラインによってビルドに使用するベースイメージを決定するために使用されます。このガイドでは、管理対象イメージは「イメージ」と呼ばれることもありますが、イメージは AMI とは異なります。

イメージのレシピ

Image Builder イメージレシピは、ベースイメージとベースイメージに適用するコンポーネントを定義し、必要な構成の出力イメージを生成するためのドキュメントです。イメージ recipe を使用して、ビルドを複製できます。Image Builder イメージレシピは、コンソールウィザード、、または API を使用して共有、分岐 AWS CLI、編集できます。バージョン管理ソフトウェアでイメージ recipe を使用して、バージョン管理された共有可能なイメージ recipe を維持できます。

コンテナレシピ

Image Builder コンテナレシピは、ベースイメージと、出力コンテナイメージに必要な構成を生成するためにベースイメージに適用されるコンポーネントを定義する文書です。コンテナレシピを使ってビルドを複製することができます。コンソールウィザード、 AWS CLI、または API を使用して、Image Builder イメージレシピを共有、分岐、編集できます。コンテナレシピをバージョン管理ソフトウェアと一緒に使うことで、共有可能でバージョン管理されたコンテナレシピを維持することができます。

ベースイメージ

ベースイメージとは、イメージまたはコンテナレシピドキュメントで使用される、選択されたイメージとオペレーティングシステム、およびコンポーネントです。ベースイメージとコンポーネント定義を組み合わせることで、出力イメージに必要な設定が作成されます。

コンポーネント

コンポーネントは、イメージ作成前にインスタンスをカスタマイズする(ビルドコンポーネント)か、作成されたイメージから起動されたインスタンスをテストする(テストコンポーネント)ために必要な一連の手順を定義します。

コンポーネントは、パイプラインによって生成されたインスタンスをビルド、検証、またはテストするためのランタイム設定を記述した、宣言型のプレーンテキストの YAML または JSON ドキュメントから作成されます。コンポーネントは、コンポーネント管理アプリケーションを使用してインスタンス上で実行されます。コンポーネント管理アプリケーションはドキュメントを解析し、必要なステップを実行します。

作成後、イメージレシピまたはコンテナレシピを使用して 1 つ以上のコンポーネントをグループ化し、仮想マシンまたはコンテナイメージの構築とテストの計画を定義します。によって所有および管理されているパブリックコンポーネントを使用することも AWS、独自のコンポーネントを作成することもできます。コンポーネントの詳細については、「Image Builder が AWS Task Orchestrator and Executor アプリケーションを使用してコンポーネントを管理する方法」を参照してください。

コンポーネント・ドキュメント

イメージに適用できるカスタマイズの設定を記述した、宣言型のプレーンテキストの YAML または JSON ドキュメント。このドキュメントは、ビルドまたはテストコンポーネントの作成に使用されます。

ランタイムステージ

EC2 Image Builder には 2 つの runtime ステージがある buildtest です。各ランタイムステージには、コンポーネントドキュメントで定義されている設定を含む 1 つ以上のフェーズがあります。

設定フェーズ

以下のリストは、buildtest のステージで実行されるフェーズを示しています:

ビルドステージ
ビルドフェーズ

イメージパイプラインは、実行時にビルドステージのビルドフェーズから始まります。ベースイメージがダウンロードされ、コンポーネントのビルドフェーズに指定された構成がインスタンスのビルドと起動に適用されます。

検証フェーズ

Image Builder がインスタンスを起動し、ビルドフェーズのカスタマイズをすべて適用すると、検証フェーズが開始されます。このフェーズでは、Image Builder は、コンポーネントが検証フェーズで指定する構成に基づいて、すべてのカスタマイズが期待どおりに機能することを確認します。インスタンスの検証が成功すると、Image Builder はインスタンスを停止し、イメージを作成して、テスト段階に進みます。

テストステージ:
テストフェーズ

このフェーズでは、Image Builder は検証フェーズが正常に完了した後に作成したイメージからインスタンスを起動します。Image Builder は、このフェーズ中にテストコンポーネントを実行して、インスタンスが正常で期待どおりに機能していることを確認します。

コンテナホストテストフェーズ

Image Builder がコンテナレシピで選択したすべてのコンポーネントのテストフェーズを実行すると、Image Builder はコンテナワークフローに対してこのフェーズを実行します。コンテナホストのテストフェーズでは、コンテナ管理とカスタムランタイム設定を検証する追加のテストを実行できます。

ワークフロー

ワークフローは、Image Builder が新しいイメージを作成するときに実行する一連のステップを定義します。すべてのイメージには、ビルドおよびテストワークフローがあります。コンテナには配布用のワークフローが追加されています。

ワークフローの種類
BUILD

作成されたすべてのイメージのビルドステージ設定をカバーします。

TEST

作成されたすべてのイメージのテストステージ設定をカバーします。

DISTRIBUTION

コンテナイメージの配布ワークフローについて説明します。

料金

カスタムEC2 Image Builder を使用してカスタム AMI またはコンテナイメージを作成してもコストはかかりません。ただし、このプロセスで使用される他のサービスには標準価格が適用されます。次のリストには、設定に応じてカスタム AMI またはコンテナイメージを作成、構築、保存、および配布するときにコストが発生する AWS のサービス 可能性のある の使用が含まれています。

  • EC2 インスタンスの起動

  • Amazon S3 にログを保存する

  • Amazon Inspector によるイメージの検証

  • AMI 用の Amazon EBS スナップショットの保存

  • Amazon ECR へのコンテナイメージの保存

  • Amazon ECR へのコンテナイメージのプッシュと Amazon ECR からのコンテナイメージのプッシュとプル

  • Systems Manager アドバンスティアがオンになっていて、Amazon EC2 インスタンスがオンプレミスアクティベーションで実行されている場合、Systems Manager を通じてリソースの料金が請求されることがあります

EC2 Image Builder は、Image Builder AWS のサービス のレシピ設定に応じて、他の を使用してイメージを構築します。カスタムイメージの製品とサービスの統合の詳細については、「」を参照してくださいEC2 Image Builder に製品およびサービスの統合