翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
でカスタムコンポーネントを開発するための手動セットアップ AWSTOE
AWS Task Orchestrator and Executor (AWSTOE) アプリケーションは、コンポーネント定義フレームワーク内でコマンドを作成、検証、実行するスタンドアロンアプリケーションです。 AWS サービスは、 AWSTOE を使用してワークフローのオーケストレーション、ソフトウェアのインストール、システム設定の変更、イメージビルドのテストを行うことができます。
AWSTOE アプリケーションを手動でインストールし、カスタムコンポーネントを開発するためのスタンドアロンアプリケーションとして使用するには、次の手順に従います。Image Builder コンソールまたは AWS CLI コマンドを使用してカスタムコンポーネントを作成する場合、Image Builder がこれらのステップを自動的に処理します。詳細については、「Image Builder を使用したカスタムコンポーネントの作成」を参照してください。
使用を開始する手順
ステップ 1: をインストールする AWSTOE
コンポーネントをローカルで開発するには、 AWSTOE アプリケーションをダウンロードしてインストールします。
-
AWSTOE アプリケーションをダウンロードする
インストールするには AWSTOE、アーキテクチャとプラットフォームに適したダウンロードリンクを選択します。アプリケーションのダウンロードリンクの詳細なリストについては、「AWSTOE ダウンロード」を参照してください。
重要
AWS は TLS バージョン 1.0 および 1.1 のサポートを段階的に廃止しています。 AWSTOE ダウンロード用に S3 バケットにアクセスするには、クライアントソフトウェアで TLS バージョン 1.2 以降を使用する必要があります。詳細については、AWS セキュリティのブログ記事
を参照してください。 -
署名を検証する
ダウンロードを確認する手順は、インストール後に AWSTOE アプリケーションを実行するサーバープラットフォームによって異なります。Linux サーバーでダウンロードを確認する方法については、「Linux または macOS での署名の検証」を参照してください。Windows サーバーでダウンロードを確認する方法については、「Windows で署名を検証する」を参照してください。
注記
AWSTOE は、ダウンロード場所から直接呼び出されます。別途インストールを行う必要はありません。つまり、 はローカル環境を変更 AWSTOE することもできます。
コンポーネント開発中に変更を確実に分離するには、EC2 インスタンスを使用して AWSTOE コンポーネントを開発およびテストすることをお勧めします。
ステップ 2: AWS 認証情報を設定する
AWSTOE では AWS のサービス、タスクを実行するときに、Amazon S3 や Amazon CloudWatch などの他の に接続するための AWS 認証情報が必要です。
-
ユーザー提供の Amazon S3 パスから AWSTOE ドキュメントをダウンロードする。
-
S3Download
またはS3Upload
アクションモジュールを実行する。 -
CloudWatch にログをストリーミングします (有効になっている場合)。
EC2 インスタンス AWSTOE で を実行している場合、 の実行は EC2 インスタンスにアタッチされた IAM ロールと同じアクセス許可 AWSTOE を使用します。
EC2 の IAM ロールの詳細については、「Amazon EC2 向けの IAM ロール」を参照してください。
次の例は、 AWS_ACCESS_KEY_ID
および AWS_SECRET_ACCESS_KEY
環境変数を使用して AWS 認証情報を設定する方法を示しています。
これらの変数を Linux、macOS、または Unix で設定するには、export
を使用します。
export AWS_ACCESS_KEY_ID=your_access_key_id
export AWS_SECRET_ACCESS_KEY=your_secret_access_key
Windows で PowerShell を使ってこれらの変数を設定するには、$env
を使う。
$env:AWS_ACCESS_KEY_ID=your_access_key_id
$env:AWS_SECRET_ACCESS_KEY=your_secret_access_key
Windows でコマンドプロンプトを使ってこれらの変数を設定するには、set
を使う。
set AWS_ACCESS_KEY_ID=your_access_key_id
set AWS_SECRET_ACCESS_KEY=your_secret_access_key
ステップ 3: コンポーネントドキュメントをローカルで開発する
コンポーネントは、プレーンテキストの YAML ドキュメントを使用して作成されます。ドキュメントの構文についてはカスタム AWSTOE コンポーネントにコンポーネントドキュメントフレームワークを使用するを参照。
以下は、開発の開始点として役立つ Hello World コンポーネントドキュメントの例です。
ステップ 4: AWSTOE コンポーネントを検証する
アプリケーションの AWSTOE コンポーネント構文を AWSTOE ローカルで検証できます。次の例は、コンポーネントを実行せずに構文を検証する AWSTOE アプリケーションvalidate
コマンドを示しています。
注記
AWSTOE アプリケーションは、現在のオペレーティングシステムのコンポーネント構文のみを検証できます。例えば、awstoe.exe
を Windows で実行している場合、ExecuteBash
アクションモジュールを使用する Linux ドキュメントの構文は検証できません。
Linux または macOS
awstoe validate --documents /home/user/hello-world.yml
Windows
awstoe.exe validate --documents C:\Users\user\Documents\hello-world.yml
ステップ 5: AWSTOE コンポーネントを実行する
AWSTOE アプリケーションは、--phases
コマンドライン引数を使用して、指定されたドキュメントの 1 つ以上のフェーズを実行できます。--phases
でサポートされている値はbuild
、validate
、test
です。複数のフェーズ値をカンマで区切って入力できます。
フェーズのリストを指定すると、 AWSTOE アプリケーションは各ドキュメントの指定されたフェーズを順番に実行します。例えば、 は の build
および validate
フェーズ AWSTOE を実行しdocument1.yaml
、その後に の build
および validate
フェーズを実行しますdocument2.yaml
。
ログを安全に保存し、トラブルシューティングのために保持するには、Amazon S3 にログストレージを設定することをお勧めします。Image Builder では、ログを発行するための Amazon S3 の場所はインフラストラクチャ設定で指定されます。インフラ構成の詳細については、Image Builder インフラストラクチャ設定の管理を参照。
フェーズのリストが指定されていない場合、 AWSTOE アプリケーションは YAML ドキュメントに記載されている順序ですべてのフェーズを実行します。
1 つまたは複数のドキュメントで特定のフェーズを実行するには、以下のコマンドを使用します。
単一フェーズ
awstoe run --documents hello-world.yml --phases build
複数フェーズ
awstoe run --documents
hello-world.yml
--phases build,test
ドキュメント実行
1 つのドキュメントですべてのフェーズを実行
awstoe run --documents
documentName.yaml
複数のドキュメントで全フェーズを実行
awstoe run --documents
documentName1.yaml
,documentName2.yaml
Amazon S3 情報を入力して、ユーザー定義のローカルパスから AWSTOE ログをアップロードする (推奨)
awstoe run --documents
documentName.yaml
--log-s3-bucket-nameamzn-s3-demo-destination-bucket
--log-s3-key-prefixS3KeyPrefix
--log-s3-bucket-ownerS3BucketOwner
--log-directorylocal_path
1 つのドキュメントですべてのフェーズを実行し、すべてのログをコンソールに表示する
awstoe run --documents
documentName.yaml
--trace
コマンドの例
awstoe run --documents
s3://bucket/key/doc.yaml
--phasesbuild,validate
一意の ID でドキュメントを実行
awstoe run --documents
documentName.yaml
--execution-iduser-provided-id
--phasesbuild,test
のヘルプを取得する AWSTOE
awstoe --help