Image Builder とは - EC2 Image Builder

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

Image Builder とは

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

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

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

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

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

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

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

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

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

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コンポーネントの完全なリストについては、「」を参照してくださいImage Builder 用の Amazon マネージドSTIG強化コンポーネント

一元管理と系統追跡

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

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

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

  • コンポーネント

  • イメージ

  • イメージのレシピ

  • コンテナレシピ

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

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

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

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

Amazon Linux

2 と 2023 年

CentOS

7 と 8

CentOS Stream

8

Red Hat Enterprise Linux (RHEL)

7、8、および 9

SUSE Linux Enterprise Server (SUSE)

12 と 15

Ubuntu

18.04LTS、20.04LTS、22.04LTS、24.04 LTS

Windows Server

2012 R2、2016、2019、2022 年

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

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

概念

以下の用語と概念は、EC2Image Builder を理解し、使用する上で重要です。

AMI

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

イメージパイプライン

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

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

マネージドイメージ

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

イメージのレシピ

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

コンテナレシピ

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

ベースイメージ

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

コンポーネント

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

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

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

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

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

ランタイムステージ

EC2 Image Builder には、ビルドテストの 2 つのランタイムステージがあります。各ランタイムステージには、コンポーネントドキュメントで定義されている設定を含む 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 によるイメージの検証

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

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

  • Amazon との間でコンテナイメージをプッシュおよびプルする ECR

  • Systems Manager アドバンスト階層がオンになっており、Amazon EC2インスタンスがオンプレミスアクティベーションで実行されている場合、Systems Manager を介してリソースに対して料金が発生する場合があります。

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