

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

# チュートリアル: Image Builder コンソールウィザードから AMI を出力するイメージパイプラインを作成する
<a name="start-build-image-pipeline"></a>

このチュートリアルでは、**[Create image pipeline]** コンソールウィザードを使用してカスタマイズされた EC2 Image Builder イメージを構築および管理するための自動パイプラインを作成する方法について説明します。ステップを効率的に進めるために、使用可能な場合はデフォルトの設定が使用され、オプションのセクションは省略されます。

**Topics**
+ [ステップ 1: パイプラインの詳細を指定する](#start-build-image-step1)
+ [ステップ 2: レシピを選択する](#start-build-image-step2)
+ [ステップ 3: インフラストラクチャー設定を定義する (オプション)](#start-build-image-step3)
+ [ステップ 4: ディストリビューション設定を定義する (オプション)](#start-build-image-step4)
+ [ステップ 5: 確認](#start-build-image-step5)
+ [ステップ 6: クリーンアップする](#start-build-image-cleanup)

## ステップ 1: パイプラインの詳細を指定する
<a name="start-build-image-step1"></a>

1. [https://console.aws.amazon.com/imagebuilder/](https://console.aws.amazon.com/imagebuilder/) で、EC2 Image Builder コンソールを開きます。

1. パイプラインの作成を開始するには、[**イメージパイプラインの作成**] を選択します。

1. ** 一**セクションに、**パイプライン名**（必須）を入力します。
**ヒント**  
拡張メタデータの収集は、デフォルトで有効になっています。コンポーネントとベースイメージ間の互換性を確保するため、有効にしておいてください。

1. **ビルドスケジュール**セクションでは、**スケジュールオプション**はデフォルトのままでかまいません。デフォルトのスケジュールに表示される **タイムゾーン** は協定世界時 (UTC) であることに注意してください。UTC 時間の詳細とタイムゾーンのオフセットについては、「[タイムゾーンの略語 — ワールドワイドリスト](https://www.timeanddate.com/time/zones/)」を参照してください。

   **依存関係の更新設定**については、**依存関係の更新がある場合はスケジュールされた時間にパイプラインを実行する**オプションを選択します。この設定により、パイプラインはビルドを開始する前に更新をチェックします。更新がない場合は、スケジュールされたパイプラインビルドはスキップされます。
**注記**  
パイプラインが依存関係の更新とビルドを想定どおりに認識できるようにするには、ベースイメージとコンポーネントにセマンティックバージョニング (x.x.x) を使用する必要があります。Image Builder リソースのセマンティックバージョニングの詳細については、[Image Builder でのセマンティックバージョニング](ibhow-semantic-versioning.md)を参照してください。

1. **次へ** を選択して次のステップに進みます。

## ステップ 2: レシピを選択する
<a name="start-build-image-step2"></a>

1. Image Builder は、デフォルトで**レシピ**セクションの**既存のレシピを使用**に設定されています。初めて使用する場合は、「**新規レシピを作成**」オプションを選択します。

1. **[イメージタイプ]**セクションで、**[Amazon マシンイメージ (AMI)]**オプションを選択し、AMI を作成および配布するイメージパイプラインを作成します。

1. **[全般]** セクションに、以下の情報を入力します。
   + **名前** — レシピ名
   + **バージョン** - レシピのバージョン（<major>.<minor>.<patch>のフォーマットで、メジャー、マイナー、パッチは整数値です）。通常、新しいレシピは `1.0.0` で始まります。

1. **ソースイメージ**セクションでは、**イメージを選択**、**イメージオペレーティングシステム (OS)**、および**イメージオリジン**をデフォルト値のままにします。これにより、Amazon によって管理される Linux AMIs のリストが表示されます。このチュートリアルでは、`Amazon Linux 2 x86`イメージを選択します。

   1. [**イメージ名**] ドロップダウンから、イメージを選択します。

   1. **自動バージョニング管理オプション[**はデフォルトのままにします (**利用可能な最新の OS バージョンを使用)**。
**注記**  
この設定により、パイプラインがベースイメージのセマンティックバージョニングを使用して、自動的にスケジュールされたジョブの依存関係の更新を検出するようになります。Image Builder リソースのセマンティックバージョニングの詳細については、[Image Builder でのセマンティックバージョニング](ibhow-semantic-versioning.md)を参照してください。

1. **[インスタンス設定セクション]** では、**[Systems Manager エージェント]** のデフォルト値をそのまま使用します。これにより、Image Builder はビルドとテストが完了した後も Systems Manager エージェントを保持し、新しいイメージに Systems Manager エージェントを含めることになります。

   このチュートリアルでは、**[ユーザーデータ]** は空白のままにしてください。構築インスタンスを起動するときにこのエリアを使用して、コマンドまたはコマンドスクリプトを提供で実行します。ただし、これは、Systems Manager が確実にインストールされるようにするために Image Builder が追加されたコマンドを置き換えます。これを使用する場合は、システムマネージャーエージェントをベースイメージにあらかじめインストールするか、ユーザーデータにインストールを含めるようにしてください。

1. **コンポーネント**セクションでは、コンポーネントを追加しないことを選択して続行できます。コンポーネントを追加する場合は、**ビルドコンポーネント**パネルで**ビルドコンポーネントを追加**を選択し、`Amazon managed`コンポーネント所有者フィルターリストから を選択します。これにより、コンソールインターフェイスの右側に選択パネルが開き、使用可能なコンポーネントを参照およびフィルタリングできます。

   このチュートリアルでは、Linux を最新のセキュリティアップデートで更新するコンポーネントを次のように選択します。

   1. パネルの上部にある検索バーに単語 `update` を入力して結果を絞り込みます。

   1. `update-linux` ビルドコンポーネントのチェックボックスをオンにします。

   1. **バージョニングオプションの**デフォルトのままにします (**最新バージョンを使用できます**)。
**注記**  
この設定により、パイプラインは選択したコンポーネントに対してセマンティックバージョニングを使用して、自動的にスケジュールされたジョブの依存関係の更新を検出します。Image Builder リソースのセマンティックバージョニングの詳細については、[Image Builder でのセマンティックバージョニング](ibhow-semantic-versioning.md)を参照してください。

   1. **Add to recipe** を選択して、コンポーネントをレシピに追加します。これにより、コンポーネント選択パネルが閉じます。

   1. **ビルドコンポーネント**パネルに戻ると、追加したコンポーネントが表示されます。

1. 

**コンポーネントの順序変更 (オプション)**

   イメージに含めるコンポーネントを複数選択した場合は、ドラッグアンドドロップ操作を使用して、ビルドプロセス中に実行すべき順序にコンポーネントを再配置できます。
**注記**  
CIS 強化コンポーネントは、Image Builder レシピの標準コンポーネント順序ルールに従っていません。CIS 強化コンポーネントは常に最後に実行され、ベンチマークテストが出力イメージに対して確実に実行されます。

   1. 前のステップを繰り返して、`update-linux-kernel-5`コンポーネントをレシピに追加します。

   1. 追加したコンポーネントには、カーネルバージョンの入力パラメータがあります。**バージョニング管理オプション** または **[入力パラメータ]** の設定を拡張するには、設定名の横にある矢印を選択します。選択したすべてのコンポーネントの設定をすべて展開するには、**[すべて展開]** スイッチのオンとオフを切り替えます。コンポーネントでの入力パラメータの使用とレシピでの設定の詳細については、「[チュートリアル: 入力パラメータを持つカスタムコンポーネントを作成する](tutorial-component-parameters.md)」を参照してください。

   1. コンポーネントの 1 つを選択し、それを上下にドラッグしてコンポーネントの実行順序を変更します。

   1. `update-linux-kernel-5` コンポーネントを削除するには、`X` コンポーネントボックスの右上隅からを選択します。

      このステップを繰り返して、追加した可能性のある他のコンポーネントをすべて削除し、選択した`update-linux`コンポーネントのみを残します。

1. **次へ** を選択して次のステップに進みます。

## ステップ 3: インフラストラクチャー設定を定義する (オプション)
<a name="start-build-image-step3"></a>

Image Builder はアカウントで EC2 インスタンスを起動して、イメージをカスタマイズし、検証テストを実行します。インフラストラクチャ設定では、ビルドプロセス AWS アカウント 中に で実行されるインスタンスのインフラストラクチャの詳細を指定します。

[**インフラストラクチャー設定**]セクションでは、[**設定**]オプションのデフォルトは `Create infrastructure configuration using service defaults` です。これにより、イメージを設定するために使用する EC2 ビルドとテストインスタンスの IAM ロールと関連するインスタンスプロファイルが作成されます。インフラストラクチャ構成設定の詳細については、EC2 Image Builder API Reference の [CreateInfrastructureConfiguration](https://docs.aws.amazon.com/imagebuilder/latest/APIReference/API_CreateInfrastructureConfiguration.html) を参照してください。

このチュートリアルでは、デフォルト設定を使用します。

**注記**  
プライベート VPC に使用するサブネットを指定するには、独自のカスタムインフラストラクチャ設定を作成するか、既に作成した設定を使用できます。
+ **次へ** を選択して次のステップに進みます。

## ステップ 4: ディストリビューション設定を定義する (オプション)
<a name="start-build-image-step4"></a>

ディストリビューション設定には、出力 AMI 名、暗号化の特定のリージョン設定、起動許可 AWS アカウント、出力 AMI を起動できる組織、組織単位 (OUs)、ライセンス設定が含まれます。

[**ディストリビューション設定**]セクションの**[設定オプション]**はデフォルトで `Create distribution settings using service defaults` です。このオプションは出力 AMI を現在のリージョンに配信します。ディストリビューション設定の構成の詳細については、「[Image Builder のディストリビューション設定の管理](manage-distribution-settings.md)」を参照してください。

このチュートリアルでは、デフォルト設定を使用します。
+ **次へ** を選択して次のステップに進みます。

## ステップ 5: 確認
<a name="start-build-image-step5"></a>

**レビュー**セクションには、設定したすべての設定が表示されます。特定のセクションの情報を編集するには、ステップセクションの右上隅にある「**編集**」ボタンを選択します。例えば、パイプライン名を変更する場合は、「**ステップ 1: パイプラインの詳細**」セクションの右上隅にある「**編集**」ボタンを選択します。

1. 設定を確認したら、[**パイプラインを作成**] を選択してパイプラインを作成します。

1. ディストリビューション設定、インフラストラクチャー設定、新しいレシピ、パイプライン用のリソースが作成されると、ページ上部に成功または失敗のメッセージが表示されます。リソース識別子を含むリソースの詳細を表示するには、[**詳細を表示**] を選択します。

1. リソースの詳細を確認したら、ナビゲーションペインからリソースタイプを選択すると、他のリソースの詳細を表示できます。例えば、新しいパイプラインの詳細を表示するには、ナビゲーションペインから [**Image pipelines**] を選択します。ビルドが成功すると、新しいパイプラインが **[イメージパイプライン]** リストに表示されます。

## ステップ 6: クリーンアップする
<a name="start-build-image-cleanup"></a>

Image Builder 環境は、ご自宅と同様、必要なものを見つけて散らかることなくタスクを完了できるように、定期的なメンテナンスが必要です。テスト用に作成した一時リソースは定期的にクリーンアップしてください。そうしないと、それらのリソースのことを忘れてしまい、後でそのリソースが何に使用されたかを思い出せなくなる可能性があります。その時までには、それらを安全に取り除くことができるかどうかがはっきりしないかもしれません。

**ヒント**  
リソースを削除するときの依存関係エラーを防ぐため、必ず次の順序でリソースを削除してください。  
イメージパイプライン
イメージのレシピ
残っているすべてのリソース

このチュートリアルのために作成したリソースをクリーンアップするには、以下の手順に従ってください：

**パイプラインを削除する**

1. アカウントで作成されたビルドパイプラインのリストを表示するには、ナビゲーションペインから [**Image pipelines**] を選択します。

1. **パイプライン名** の横にあるチェックボックスをオンにして、削除するパイプラインを選択します。

1. **イメージパイプラインパネルの上部にある**「**アクション**」メニューで、「**削除**」を選択します。

1. `Delete` と入力して削除を確認し、**削除** を選択します。

**レシピを削除する**

1. アカウントで作成されたレシピのリストを見るには、ナビゲーションペインから**イメージレシピ**を選択します。

1. **レシピ名の横にあるチェックボックスを選択して**、削除するレシピを選択します。

1. **イメージレシピパネルの上部にある**「**アクション**」メニューで、「**レシピを削除**」を選択します。

1. `Delete` と入力して削除を確認し、**削除** を選択します。

**インフラストラクチャ設定を削除する**

1. アカウントのインフラストラクチャー設定リソースのリストを表示するには、ナビゲーションペインから [**インフラストラクチャー設定**] を選択します。

1. **構成名の横にあるチェックボックスを選択して**、削除するインフラストラクチャー構成を選択します。

1. 「**インフラストラクチャー設定**」パネルの上部にある「**削除**」を選択します。

1. `Delete` と入力して削除を確認し、**削除** を選択します。

**ディストリビューション設定**

1. アカウントで作成された配布設定のリストを表示するには、ナビゲーションペインから [**配布設定**] を選択します。

1. **設定名**の横にあるチェックボックスをオンにして、このチュートリアル用に作成したディストリビューション設定を選択します。

1. **ディストリビューション設定パネルの上部で**、「**削除**」を選択します。

1. `Delete` と入力して削除を確認し、**削除** を選択します。

**イメージを削除する**  
以下の手順に従って、チュートリアルパイプラインから作成されたイメージをすべて削除したことを確認します。このチュートリアルでは、ビルドスケジュールに従って実行するパイプラインを作成して十分な時間が経過しない限り、イメージは作成されない可能性があります。

1. 自分のアカウントで作成されたイメージの一覧を表示するには、ナビゲーションペインから**イメージ**を選択します。

1. 削除するイメージの**バージョン**を選択します。これにより、「**イメージビルドバージョン**」ページが開きます。

1. 削除したいイメージの**バージョン**の横にあるチェックボックスを選択します。一度に複数のイメージバージョンを選択することもできます。

1. 「**イメージビルドバージョン**」パネルの上部にある「**バージョンを削除**」を選択します。

1. `Delete` と入力して削除を確認し、**削除** を選択します。