PowerShellでAWS EC2 Image Builderを活用したAMI自動化方法を解説

PowerShellを使用してAWS EC2 Image Builderを活用することで、最新のAMI(Amazon Machine Image)を定期的に自動作成し、運用コストと労力を大幅に削減できます。AMIは、EC2インスタンスの起動に必要な設定やアプリケーションが含まれるテンプレートとして機能しますが、手動で管理するのは非効率的です。本記事では、PowerShellを用いてAWS EC2 Image Builderを操作し、効率的かつ安全にAMIを最新化する自動化手順を詳しく解説します。これにより、インフラ運用の効率化と管理の簡素化が実現できます。

目次
  1. AWS EC2 Image Builderの概要
    1. 主な特徴
    2. 利用のメリット
  2. PowerShellでのAWS CLIのセットアップ手順
    1. 1. AWS CLIのインストール
    2. 2. AWS CLIの設定
    3. 3. AWS Tools for PowerShellのインストール(オプション)
    4. 4. 動作確認
  3. IAMロールと権限の設定方法
    1. 1. IAMロールの概要
    2. 2. IAMロールの作成
    3. 3. 必要なポリシーの割り当て
    4. 4. インスタンスプロファイルの作成
    5. 5. 設定の確認
  4. AMI自動化のワークフロー設計
    1. 1. ワークフローの全体像
    2. 2. レシピの設計
    3. 3. パイプラインの設計
    4. 4. スケジュール設定
    5. 5. ログ管理とモニタリング
    6. 6. ワークフローの全体設計図
  5. PowerShellスクリプトでImage Builderを操作
    1. 1. レシピの作成
    2. 2. パイプラインの作成
    3. 3. パイプラインの実行
    4. 4. 作成プロセスのステータス確認
    5. 5. 作成したAMIの確認
    6. 6. トリガーの自動化
  6. 実行スケジュールの設定方法
    1. 1. EventBridgeルールの作成
    2. 2. パイプラインをターゲットに設定
    3. 3. IAMロールの設定
    4. 4. スケジュールの確認
    5. 5. カスタムスケジュール(cron式の利用)
    6. 6. ログとモニタリングの有効化
    7. 7. トラブルシューティングのポイント
  7. トラブルシューティング
    1. 1. パイプラインが開始されない
    2. 2. ビルドプロセスが失敗する
    3. 3. AMIが生成されない
    4. 4. スケジュール実行の問題
    5. 5. コンポーネントのエラー
    6. 6. その他のトラブルシューティングのリソース
  8. 応用例:カスタムAMIの作成
    1. 1. カスタムコンポーネントの作成
    2. 2. レシピにカスタムコンポーネントを追加
    3. 3. パイプラインの設定と実行
    4. 4. 作成したカスタムAMIの確認
    5. 5. 応用例の活用
  9. まとめ

AWS EC2 Image Builderの概要


AWS EC2 Image Builderは、Amazon Web Servicesが提供するサービスで、セキュアでコンプライアンスに準拠したAmazon Machine Image(AMI)を簡単に作成、管理できるツールです。このサービスを利用することで、手動操作の負担を軽減し、標準化された最新のAMIを効率的に維持できます。

主な特徴

  • テンプレートベースの構成: AMIを構築するテンプレートを作成し、再利用可能にします。
  • 自動化: スケジュールを設定して定期的に最新のAMIを生成します。
  • セキュリティ: 最新のセキュリティアップデートやパッチを適用したAMIを容易に作成できます。
  • 統合性: CloudWatchやEventBridgeなどの他のAWSサービスと連携が可能です。

利用のメリット

  1. 効率化: 手動でAMIを更新する手間を削減します。
  2. 安定性: テスト済みの構成をテンプレート化することで、安定したAMIを供給します。
  3. コスト削減: 運用効率を向上させ、リソースの無駄を防ぎます。

AWS EC2 Image Builderは、インフラの自動化を促進し、セキュアで効率的なシステム管理をサポートする強力なツールです。次のセクションでは、このサービスを利用するためのPowerShellでの環境設定手順について説明します。

PowerShellでのAWS CLIのセットアップ手順


AWS EC2 Image BuilderをPowerShellで操作するには、AWS CLI(Command Line Interface)のセットアップが必要です。以下は、セットアップ手順を詳しく説明します。

1. AWS CLIのインストール


AWS CLIを使用することで、PowerShellからAWSサービスにアクセスできます。以下の手順でインストールしてください。

  1. 公式サイトからインストーラをダウンロード
    AWS CLI ダウンロードページから、最新バージョンを取得します。
  2. インストールの実行
    ダウンロードしたインストーラを実行し、画面の指示に従ってインストールします。
  3. インストールの確認
    PowerShellを開き、以下のコマンドを実行してインストールを確認します。
   aws --version

出力例: aws-cli/2.x.x Python/3.x.x Windows/10

2. AWS CLIの設定


インストール後、AWSアカウントの認証情報を設定します。以下のコマンドを実行して、設定を行います。

aws configure


コマンド実行後、以下の情報を順に入力します。

  • AWS Access Key ID: AWSマネジメントコンソールで作成したアクセスキーID
  • AWS Secret Access Key: アクセスキーIDに対応するシークレットキー
  • Default region name: 操作対象のリージョン(例: us-east-1
  • Default output format: 出力形式(例: json

3. AWS Tools for PowerShellのインストール(オプション)


PowerShellでAWSサービスを操作する専用モジュール「AWS Tools for PowerShell」をインストールします。以下のコマンドを使用してください。

Install-Module -Name AWSPowerShell -Scope CurrentUser


インストール後、モジュールをインポートします。

Import-Module AWSPowerShell

4. 動作確認


AWS CLIが正しく動作しているか確認するため、以下のコマンドを実行します。

aws s3 ls


S3バケットの一覧が表示されれば、セットアップは成功です。

これでPowerShellからAWS CLIを利用する準備が整いました。次のセクションでは、Image Builderに必要なIAMロールと権限の設定方法を説明します。

IAMロールと権限の設定方法


AWS EC2 Image Builderを使用するには、適切なIAMロールと権限の設定が不可欠です。このセクションでは、PowerShellを利用してIAMロールを作成し、必要なポリシーを割り当てる手順を説明します。

1. IAMロールの概要


IAMロールは、AWSサービスが他のAWSリソースにアクセスするための一時的な権限を付与する仕組みです。Image Builderには以下の権限が必要です。

  • EC2インスタンスの起動と管理
  • S3バケットへのアクセス(ログ保存や成果物のアップロード)
  • Systems Managerを使用したインスタンスの設定

2. IAMロールの作成


PowerShellを使用してIAMロールを作成します。以下の手順を実行してください。

  1. IAMロール用の信頼ポリシーを作成
    信頼ポリシーを記述したJSONファイルを作成します。以下の内容をtrust-policy.jsonとして保存します。
   {
       "Version": "2012-10-17",
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "ec2.amazonaws.com"
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
  1. IAMロールの作成コマンドを実行
    以下のコマンドでIAMロールを作成します。
   aws iam create-role --role-name ImageBuilderRole --assume-role-policy-document file://trust-policy.json

3. 必要なポリシーの割り当て


作成したロールに必要な権限を割り当てます。

  1. AWSマネージドポリシーのアタッチ
    Image Builderに必要な権限を付与するため、以下のポリシーをIAMロールにアタッチします。
   aws iam attach-role-policy --role-name ImageBuilderRole --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore
   aws iam attach-role-policy --role-name ImageBuilderRole --policy-arn arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly
   aws iam attach-role-policy --role-name ImageBuilderRole --policy-arn arn:aws:iam::aws:policy/EC2InstanceProfileForImageBuilder
  1. カスタムポリシーの作成(オプション)
    特定の要件に基づいてカスタムポリシーを作成する場合は、以下の手順でJSONファイルを作成し、ポリシーを適用します。
   aws iam create-policy --policy-name CustomImageBuilderPolicy --policy-document file://custom-policy.json
   aws iam attach-role-policy --role-name ImageBuilderRole --policy-arn arn:aws:iam::<YourAccountID>:policy/CustomImageBuilderPolicy

4. インスタンスプロファイルの作成


IAMロールをEC2インスタンスで使用するには、インスタンスプロファイルを作成します。

aws iam create-instance-profile --instance-profile-name ImageBuilderInstanceProfile
aws iam add-role-to-instance-profile --instance-profile-name ImageBuilderInstanceProfile --role-name ImageBuilderRole

5. 設定の確認


以下のコマンドで設定内容を確認します。

aws iam get-role --role-name ImageBuilderRole
aws iam list-instance-profiles

これでIAMロールの設定が完了しました。次のセクションでは、AMI自動化のワークフロー設計について解説します。

AMI自動化のワークフロー設計


AWS EC2 Image Builderを使用してAMIの自動化を実現するには、効率的なワークフロー設計が重要です。このセクションでは、AMI作成の全体的な流れと主要な構成要素について解説します。

1. ワークフローの全体像


AMI作成の自動化には、以下の主要なステップが含まれます。

  1. レシピの定義
    ソフトウェア、設定、アップデートを指定するテンプレート(レシピ)を作成します。
  2. パイプラインの作成
    作成したレシピに基づいてAMIを生成するパイプラインを構築します。
  3. スケジュールの設定
    定期的にAMIを更新するためのスケジュールを設定します。
  4. ログ管理とモニタリング
    作成プロセスのログを保存し、トラブルが発生した場合に迅速に対応できるようにします。

2. レシピの設計


AMIにインストールするソフトウェアや構成を定義するレシピは、Image Builderの中心的な要素です。レシピには以下の情報を含めます。

  • ベースイメージ: 最新のAmazon LinuxやUbuntuなどの基盤となるOSイメージ
  • コンポーネント: インストールするアプリケーションや設定(例: パッケージアップデート、セキュリティ設定)
  • 出力イメージ形式: AMIの出力形式

レシピを作成する際は、JSON形式で記述するか、AWS CLIまたはコンソールを利用して設定します。

3. パイプラインの設計


パイプラインは、レシピを実行しAMIを生成するプロセスを定義します。パイプラインには以下の要素を含めます。

  • リソース設定: 使用するIAMロール、インスタンスのサイズ、S3バケットなどを指定
  • ビルドプロセスの設定: 作成されたイメージのテスト、検証、出力までのフローを定義
  • 通知設定: ビルド完了やエラー発生時の通知を設定

4. スケジュール設定


定期的に最新のAMIを作成するために、スケジュールを設定します。AWS EventBridgeを使用してパイプラインをトリガーできます。以下はスケジュール設定例です。

aws events put-rule --schedule-expression "rate(7 days)" --name ImageBuilderSchedule
aws events put-targets --rule ImageBuilderSchedule --targets "Id"="1","Arn"="arn:aws:imagebuilder:us-east-1:<YourAccountID>:pipeline/<PipelineName>"

5. ログ管理とモニタリング


ビルドプロセスの成功や失敗を記録するため、CloudWatch Logsを有効にします。これにより、問題が発生した際の迅速なデバッグが可能になります。

aws logs create-log-group --log-group-name /aws/imagebuilder
aws logs put-log-events --log-group-name /aws/imagebuilder --log-stream-name ImageBuilderLogStream

6. ワークフローの全体設計図


以下に、全体のフローを簡潔にまとめます。

  1. レシピを作成
  2. パイプラインを構築
  3. スケジュール設定
  4. ログとモニタリングの構成

次のセクションでは、PowerShellを使用して具体的にImage Builderを操作する手順を解説します。

PowerShellスクリプトでImage Builderを操作


PowerShellを使用してAWS EC2 Image Builderを操作することで、レシピの作成やパイプラインの実行を自動化できます。このセクションでは、具体的なPowerShellスクリプト例を用いてImage Builderを操作する手順を解説します。

1. レシピの作成


レシピは、AMI作成に必要なソフトウェアや設定を定義するテンプレートです。以下は、PowerShellでレシピを作成する例です。

$recipeName = "MyImageRecipe"
$baseImageArn = "arn:aws:imagebuilder:us-east-1:aws:image/amazon-linux-2-x86-64-latest"
$components = @("arn:aws:imagebuilder:us-east-1:aws:component/update-linux-packages/1.0.0")
$version = "1.0.0"

aws imagebuilder create-recipe `
    --name $recipeName `
    --version $version `
    --components Arn=$components `
    --parent-image $baseImageArn `
    --target-ami-tag "Key=Purpose,Value=TestAMI"

このスクリプトは、Amazon Linux 2をベースに最新のパッケージをアップデートするレシピを作成します。

2. パイプラインの作成


パイプラインは、レシピに基づいてAMIを作成するプロセスを管理します。以下のスクリプトは、IAMロールを設定し、パイプラインを作成する例です。

$pipelineName = "MyImagePipeline"
$infrastructureConfigArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:infrastructure-configuration/MyInfraConfig"
$recipeArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:image-recipe/MyImageRecipe/1.0.0"
$distributionConfigArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:distribution-configuration/MyDistConfig"

aws imagebuilder create-pipeline `
    --name $pipelineName `
    --image-recipe-arn $recipeArn `
    --infrastructure-configuration-arn $infrastructureConfigArn `
    --distribution-configuration-arn $distributionConfigArn `
    --status "ENABLED"

3. パイプラインの実行


パイプラインをトリガーして、AMIを作成します。以下のコマンドを使用してください。

$pipelineArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:pipeline/MyImagePipeline"

aws imagebuilder start-image-pipeline-execution --image-pipeline-arn $pipelineArn

4. 作成プロセスのステータス確認


パイプラインの実行状況を確認するには、以下のコマンドを使用します。

$executionId = "<PipelineExecutionId>"

aws imagebuilder get-image-pipeline-execution `
    --image-pipeline-arn $pipelineArn `
    --pipeline-execution-id $executionId

5. 作成したAMIの確認


生成されたAMIを確認するには、以下のコマンドを実行します。

aws ec2 describe-images --owners self

6. トリガーの自動化


スケジュールによる自動化には、AWS EventBridgeを利用します。以下は、定期的にパイプラインを実行するスケジュールの設定例です。

aws events put-rule --schedule-expression "rate(7 days)" --name MyPipelineSchedule
aws events put-targets --rule MyPipelineSchedule --targets "Id"="1","Arn"=$pipelineArn

これでPowerShellを用いたAWS EC2 Image Builderの操作手順が完成しました。次のセクションでは、実行スケジュールの詳細な設定方法について説明します。

実行スケジュールの設定方法


定期的に最新のAMIを作成するには、AWS EventBridgeを使用してパイプラインを自動的に実行するスケジュールを設定します。このセクションでは、PowerShellを用いたスケジュール設定の手順を説明します。

1. EventBridgeルールの作成


EventBridgeのスケジュール式を使用して、定期的にパイプラインをトリガーするルールを作成します。以下の例では、毎週1回パイプラインを実行するスケジュールを設定します。

$ruleName = "ImageBuilderPipelineSchedule"
$scheduleExpression = "rate(7 days)"

aws events put-rule `
    --schedule-expression $scheduleExpression `
    --name $ruleName

このコマンドで、毎週1回(7日ごと)実行するスケジュールが設定されます。

2. パイプラインをターゲットに設定


作成したルールに、トリガーする対象のパイプラインを指定します。以下のスクリプトを使用してください。

$pipelineArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:pipeline/MyImagePipeline"

aws events put-targets `
    --rule $ruleName `
    --targets "Id"="1","Arn"=$pipelineArn

これにより、スケジュールされたルールがパイプラインを呼び出すようになります。

3. IAMロールの設定


EventBridgeがImage Builderパイプラインを実行するためには、適切なIAMロールが必要です。以下のコマンドでロールを作成し、ポリシーをアタッチします。

$roleName = "EventBridgeImageBuilderRole"

aws iam create-role `
    --role-name $roleName `
    --assume-role-policy-document file://trust-policy.json

aws iam attach-role-policy `
    --role-name $roleName `
    --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEventBridgeFullAccess

4. スケジュールの確認


スケジュール設定が正しく構成されているか確認するには、以下のコマンドを使用します。

aws events describe-rule --name $ruleName
aws events list-targets-by-rule --rule $ruleName

5. カスタムスケジュール(cron式の利用)


より細かいスケジュール設定が必要な場合は、cron式を使用できます。以下は、毎月1日に実行する例です。

$cronExpression = "cron(0 0 1 * ? *)"

aws events put-rule `
    --schedule-expression $cronExpression `
    --name $ruleName

6. ログとモニタリングの有効化


パイプラインの実行結果を監視するため、CloudWatch Logsを有効化します。以下のコマンドを実行してください。

$logGroupName = "/aws/events/ImageBuilderPipeline"

aws logs create-log-group --log-group-name $logGroupName

aws events put-rule `
    --name $ruleName `
    --event-bus-name default `
    --state ENABLED

7. トラブルシューティングのポイント

  • 権限の確認: IAMロールに適切なポリシーがアタッチされていることを確認してください。
  • ログの確認: CloudWatch Logsでエラーや警告が記録されていないか確認します。

これで、パイプラインの自動実行スケジュールが設定され、最新のAMIを定期的に生成できるようになります。次のセクションでは、トラブルシューティングについて詳しく解説します。

トラブルシューティング


AWS EC2 Image Builderを利用する際、さまざまなエラーや問題が発生する可能性があります。このセクションでは、よくある問題とその解決方法を解説します。

1. パイプラインが開始されない


原因

  • IAMロールに必要な権限が不足している場合があります。
  • EventBridgeスケジュールのターゲットが正しく設定されていない可能性があります。

解決方法

  • IAMロールに必要なポリシーが付与されているか確認します。以下のコマンドでIAMロールの詳細を確認します。
  aws iam get-role --role-name ImageBuilderRole
  • EventBridgeのターゲット設定を確認します。
  aws events list-targets-by-rule --rule ImageBuilderPipelineSchedule

2. ビルドプロセスが失敗する


原因

  • レシピの構成エラー(無効なコンポーネントやベースイメージ)
  • Infrastructure Configurationの設定ミス(インスタンスプロファイルの不足など)

解決方法

  • ビルドの詳細ログを確認します。以下のコマンドでログを取得します。
  aws logs get-log-events --log-group-name /aws/imagebuilder --log-stream-name ImageBuilderLogStream
  • レシピの構成を見直し、無効なコンポーネントや誤ったベースイメージ指定を修正します。
  aws imagebuilder get-recipe --recipe-arn <RecipeArn>

3. AMIが生成されない


原因

  • パイプラインのステータスが「DISABLED」になっている場合があります。
  • AMIの保存先リージョンや設定が正しくない可能性があります。

解決方法

  • パイプラインのステータスを確認し、必要に応じて有効化します。
  aws imagebuilder update-pipeline --image-pipeline-arn <PipelineArn> --status ENABLED
  • AMIの生成先や保存設定を再確認します。
  aws imagebuilder list-images

4. スケジュール実行の問題


原因

  • EventBridgeルールが適切に作成されていないか、ターゲットが正しく登録されていない可能性があります。

解決方法

  • EventBridgeルールの状態を確認します。
  aws events describe-rule --name ImageBuilderPipelineSchedule
  • 必要に応じてターゲットを再登録します。
  aws events put-targets --rule ImageBuilderPipelineSchedule --targets "Id"="1","Arn"="<PipelineArn>"

5. コンポーネントのエラー


原因

  • 無効なカスタムコンポーネントが含まれている可能性があります。

解決方法

  • コンポーネントの詳細を確認します。
  aws imagebuilder get-component --component-build-version-arn <ComponentArn>
  • 無効なスクリプトや設定を修正して再デプロイします。

6. その他のトラブルシューティングのリソース

  • AWSドキュメント: Image Builderの公式ドキュメントを参照してください。
  • AWSサポート: エラーが解消されない場合は、AWSサポートに問い合わせることを検討してください。

次のセクションでは、カスタムAMIを作成する具体例について解説します。

応用例:カスタムAMIの作成


カスタムAMIを作成することで、特定のアプリケーションや設定を含むインスタンスを容易に展開できます。このセクションでは、具体的なカスタムAMIの作成例を示しながら手順を解説します。

1. カスタムコンポーネントの作成


カスタムコンポーネントを作成し、必要なアプリケーションや設定を指定します。以下は、Nginxをインストールするカスタムコンポーネントの例です。

  1. カスタムコンポーネントの定義
    JSONファイルを作成します(例: nginx-component.json)。
   {
       "schemaVersion": "1.0",
       "name": "InstallNginx",
       "version": "1.0.0",
       "description": "Install Nginx Web Server",
       "components": [
           {
               "action": "ExecuteBash",
               "inputs": {
                   "commands": [
                       "sudo yum update -y",
                       "sudo yum install -y nginx",
                       "sudo systemctl enable nginx",
                       "sudo systemctl start nginx"
                   ]
               }
           }
       ]
   }
  1. コンポーネントの登録
    作成したコンポーネントをImage Builderに登録します。
   aws imagebuilder create-component `
       --name "InstallNginx" `
       --semantic-version "1.0.0" `
       --platform "Linux" `
       --data file://nginx-component.json

2. レシピにカスタムコンポーネントを追加


レシピにカスタムコンポーネントを組み込み、AMIに反映します。以下はPowerShellスクリプト例です。

$recipeName = "CustomNginxRecipe"
$baseImageArn = "arn:aws:imagebuilder:us-east-1:aws:image/amazon-linux-2-x86-64-latest"
$nginxComponentArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:component/InstallNginx/1.0.0"
$version = "1.0.0"

aws imagebuilder create-recipe `
    --name $recipeName `
    --version $version `
    --components Arn=$nginxComponentArn `
    --parent-image $baseImageArn `
    --target-ami-tag "Key=Application,Value=NginxServer"

3. パイプラインの設定と実行


カスタムレシピを使用してパイプラインを設定し、カスタムAMIを生成します。

$pipelineName = "CustomNginxPipeline"
$infrastructureConfigArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:infrastructure-configuration/MyInfraConfig"
$recipeArn = "arn:aws:imagebuilder:us-east-1:<YourAccountID>:image-recipe/CustomNginxRecipe/1.0.0"

aws imagebuilder create-pipeline `
    --name $pipelineName `
    --image-recipe-arn $recipeArn `
    --infrastructure-configuration-arn $infrastructureConfigArn `
    --status "ENABLED"

パイプラインを実行してAMIを作成します。

aws imagebuilder start-image-pipeline-execution --image-pipeline-arn arn:aws:imagebuilder:us-east-1:<YourAccountID>:pipeline/CustomNginxPipeline

4. 作成したカスタムAMIの確認


生成されたAMIを確認します。

aws ec2 describe-images --owners self

5. 応用例の活用

  • WebサーバーAMI: NginxやApacheをプリインストールしたAMIの作成
  • データサイエンスAMI: Jupyter Notebookやデータ解析ライブラリを含むAMIの生成
  • セキュリティ強化AMI: 特定のセキュリティポリシーを適用したAMIの構築

これで、カスタムAMIの作成例が完了です。次のセクションでは、本記事のまとめを行います。

まとめ


本記事では、PowerShellを使用してAWS EC2 Image Builderを活用し、定期的に最新のAMIを自動化する方法を解説しました。AWS CLIのセットアップから、IAMロールの作成、レシピやパイプラインの設計、スケジュールによる自動化、さらにトラブルシューティングや応用例まで、詳細な手順を示しました。

Image Builderは、セキュアで標準化されたAMIを効率的に生成できる強力なツールです。本記事を参考にすることで、手動管理の負担を軽減し、インフラ運用の効率化を実現できるでしょう。定期的なAMIの更新とモニタリングを継続し、安全で最適な環境を維持してください。

コメント

コメントする

目次
  1. AWS EC2 Image Builderの概要
    1. 主な特徴
    2. 利用のメリット
  2. PowerShellでのAWS CLIのセットアップ手順
    1. 1. AWS CLIのインストール
    2. 2. AWS CLIの設定
    3. 3. AWS Tools for PowerShellのインストール(オプション)
    4. 4. 動作確認
  3. IAMロールと権限の設定方法
    1. 1. IAMロールの概要
    2. 2. IAMロールの作成
    3. 3. 必要なポリシーの割り当て
    4. 4. インスタンスプロファイルの作成
    5. 5. 設定の確認
  4. AMI自動化のワークフロー設計
    1. 1. ワークフローの全体像
    2. 2. レシピの設計
    3. 3. パイプラインの設計
    4. 4. スケジュール設定
    5. 5. ログ管理とモニタリング
    6. 6. ワークフローの全体設計図
  5. PowerShellスクリプトでImage Builderを操作
    1. 1. レシピの作成
    2. 2. パイプラインの作成
    3. 3. パイプラインの実行
    4. 4. 作成プロセスのステータス確認
    5. 5. 作成したAMIの確認
    6. 6. トリガーの自動化
  6. 実行スケジュールの設定方法
    1. 1. EventBridgeルールの作成
    2. 2. パイプラインをターゲットに設定
    3. 3. IAMロールの設定
    4. 4. スケジュールの確認
    5. 5. カスタムスケジュール(cron式の利用)
    6. 6. ログとモニタリングの有効化
    7. 7. トラブルシューティングのポイント
  7. トラブルシューティング
    1. 1. パイプラインが開始されない
    2. 2. ビルドプロセスが失敗する
    3. 3. AMIが生成されない
    4. 4. スケジュール実行の問題
    5. 5. コンポーネントのエラー
    6. 6. その他のトラブルシューティングのリソース
  8. 応用例:カスタムAMIの作成
    1. 1. カスタムコンポーネントの作成
    2. 2. レシピにカスタムコンポーネントを追加
    3. 3. パイプラインの設定と実行
    4. 4. 作成したカスタムAMIの確認
    5. 5. 応用例の活用
  9. まとめ