翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
始めてみる AWSTOE
AWS Task Orchestrator and Executor (AWSTOE) アプリケーションは、コンポーネント定義フレームワーク内でコマンドを作成、検証、実行するスタンドアロンアプリケーションです。 AWS AWSTOE サービスを使用して、ワークフローの調整、ソフトウェアのインストール、システム構成の変更、イメージビルドのテストを行うことができます。
AWSTOE アプリケーションをインストールして初めて使用する場合は、次の手順に従います。
使用を開始する手順
ステップ 1: インストール AWSTOE
コンポーネントをローカルで開発するには、 AWSTOE アプリケーションをダウンロードしてインストールします。
-
AWSTOE アプリケーションをダウンロードします。
インストールするには AWSTOE、アーキテクチャとプラットフォームに適したダウンロードリンクを選択してください。アプリケーションのダウンロードリンクの詳細なリストについては、「AWSTOE ダウンロード」を参照してください。
重要
AWS TLS バージョン 1.0 と 1.1 のサポートを段階的に廃止します。S3 AWSTOE バケットにアクセスしてダウンロードするには、クライアントソフトウェアが TLS バージョン 1.2 以降を使用する必要があります。詳細については、AWS セキュリティのブログ記事
を参照してください。 -
署名を検証する
ダウンロードを確認する手順は、 AWSTOE インストール後にアプリケーションを実行するサーバープラットフォームによって異なります。Linux サーバでダウンロードを確認する方法については、「Linux で署名を検証する」を参照してください。Windows サーバでダウンロードを確認する方法については、「Windows で署名を検証する」を参照してください。
重要
AWSTOE はダウンロード場所から直接呼び出されます。別途インストールを行う必要はありません。つまり、 AWSTOE ローカル環境を変更できるということでもあります。
コンポーネント開発中の変更を確実に分離するために、EC2 AWSTOE インスタンスを使用してコンポーネントの開発とテストを行うことをお勧めします。
ステップ 2: 認証情報を設定する AWS
AWSTOE 次のようなタスクを実行する場合 AWS のサービス、Amazon S3 や Amazon AWS CloudWatch などに接続するための認証情報が必要です。
-
ユーザー指定の Amazon S3 AWSTOE パスからドキュメントをダウンロードします。
-
S3Download
またはS3Upload
アクションモジュールを実行する。 -
ログをにストリーミングする ( CloudWatch有効になっている場合)。
EC2 AWSTOE インスタンスで実行している場合、実行には EC2 インスタンスにアタッチされている IAM AWSTOE ロールと同じ権限が使用されます。
EC2 の IAM ロールの詳細については、「Amazon EC2 向けの IAM ロール」を参照してください。
以下の例は、 AWS AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
および環境変数を使用して認証情報を設定する方法を示しています。
これらの変数を 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
。
C:\>
$env:AWS_ACCESS_KEY_ID=your_access_key_id
C:\>
$env:AWS_SECRET_ACCESS_KEY=your_secret_access_key
Windowsでコマンドプロンプトを使ってこれらの変数を設定するには、set
を使う。
C:\>
set AWS_ACCESS_KEY_ID=your_access_key_id
C:\>
set AWS_SECRET_ACCESS_KEY=your_secret_access_key
ステップ 3: コンポーネントドキュメントをローカルで開発する
AWSTOE コンポーネントはプレーンテキストの YAML ドキュメントで作成されます。ドキュメントの構文についてはでコンポーネントドキュメントを使用する AWSTOEを参照。
以下は、ドキュメントをローカルで開発する際に使用できる Hello World コンポーネントドキュメントの例です。
hello-world-windows.yml
.
name: Hello World description: This is Hello World testing document for Windows. schemaVersion: 1.0 phases: - name: build steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host 'Hello World from the build phase.' - name: validate steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host 'Hello World from the validate phase.' - name: test steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host 'Hello World from the test phase.'
hello-world-linux.yml
.
name: Hello World description: This is hello world testing document for Linux. schemaVersion: 1.0 phases: - name: build steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo 'Hello World from the build phase.' - name: validate steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo 'Hello World from the validate phase.' - name: test steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo 'Hello World from the test phase.'
ステップ 4: コンポーネントを検証する AWSTOE
AWSTOE コンポーネントの構文は、 AWSTOE
アプリケーションを使用してローカルで検証できます。以下の例は、 AWSTOE validate
コンポーネントを実行せずに構文を検証するアプリケーションコマンドを示しています。
注記
AWSTOE アプリケーションは、現在のオペレーティングシステムのコンポーネント構文のみを検証できます。たとえば、awstoe.exe
を Windows で実行している場合、ExecuteBash
アクションモジュールを使用する Linux ドキュメントの構文は検証できません。
Windows
C:\>
awstoe.exe validate --documents C:\Users\user\Documents\hello-world.yml
Linux
$
awstoe validate --documents /home/user/hello-world.yml
ステップ 5: AWSTOE コンポーネントを実行する
AWSTOE アプリケーションは、--phases
コマンドライン引数を使用して、指定されたドキュメントの 1 つ以上のフェーズを実行できます。--phases
でサポートされている値はbuild
、validate
、test
です。複数のフェーズ値をカンマで区切って入力できます。
フェーズのリストを指定すると、 AWSTOE アプリケーションは各ドキュメントの指定されたフェーズを順番に実行します。たとえば、の AWSTOE AND build
validate
フェーズを実行しdocument1.yaml
、その後にの AND build
validate
フェーズを実行します。document2.yaml
ログを安全に保存し、トラブルシューティングのために保持するには、Amazon S3 にログストレージを設定することをお勧めします。Image Builder では、ログを発行するための Amazon S3 の場所はインフラストラクチャ設定で指定されます。インフラ構成の詳細については、EC2 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-name <S3Bucket> --log-s3-key-prefix <S3KeyPrefix> --log-s3-bucket-owner <S3BucketOwner> --log-directory <local_path>
1 つのドキュメントですべてのフェーズを実行し、すべてのログをコンソールに表示します。
awstoe run --documents
documentName
.yaml --trace
コマンドの例
awstoe run --documents s3://bucket/key/doc.yaml --phases build,validate
一意の ID でドキュメントを実行
awstoe run --documents <documentName>.yaml --execution-id <user provided id> --phases <comma separated list of phases>
以下の点についてサポートを受けてください。 AWSTOE
awstoe --help