Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bagaimana Image Builder menggunakan AWS Task Orchestrator and Executor aplikasi untuk mengelola komponen
EC2 Image Builder menggunakan aplikasi AWS Task Orchestrator and Executor (AWSTOE) untuk mengatur alur kerja yang kompleks, memodifikasi konfigurasi sistem, dan menguji gambar Anda tanpa memerlukan skrip atau kode devops tambahan. Aplikasi ini mengelola dan menjalankan komponen yang mengimplementasikan skema dokumen deklaratifnya.
AWSTOE adalah aplikasi mandiri yang diinstal Image Builder pada instance build dan uji saat Anda membuat gambar. Anda juga dapat menginstalnya secara manual pada instans EC2 untuk membuat komponen kustom Anda sendiri. Itu tidak memerlukan pengaturan tambahan, dan juga dapat berjalan di tempat.
Tip
Untuk informasi tentang pola komponen dan skrip yang memvalidasi dan menjalankan dokumen komponen secara lokal, lihat AWSTOE sampel
Daftar Isi
AWSTOE mengunduh
Untuk menginstal AWSTOE, pilih tautan unduhan untuk arsitektur dan platform Anda. Jika Anda melampirkan ke titik akhir VPC untuk layanan Anda (Pembuat Gambar, misalnya), layanan tersebut harus memiliki kebijakan titik akhir khusus yang menyertakan akses ke bucket S3 untuk AWSTOE unduhan. Jika tidak, instance build dan test Anda tidak akan dapat mengunduh script bootstrap (bootstrap.sh) dan menginstal AWSTOE aplikasi. Untuk mengetahui informasi selengkapnya, lihat Membuat kebijakan titik akhir VPC untuk Pembuat Gambar.
penting
AWS menghapus dukungan untuk TLS versi 1.0 dan 1.1. Untuk mengakses bucket S3 untuk AWSTOE unduhan, perangkat lunak klien Anda harus menggunakan TLS versi 1.2 atau yang lebih baru. Untuk informasi selengkapnya, lihat posting Blog AWS Keamanan ini
| Arsitektur | Platform | Tautan unduhan | Contoh |
|---|---|---|---|
| 386 |
AL 2 dan 2023 RHEL 7, 8, dan 9 Ubuntu 16.04, 18.04, 20.04, 22.04, dan 24.04 CentOS 7 dan 8 SUSE 12 dan 15 |
|
https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/linux/386/awstoe |
| AMD64 |
AL 2 dan 2023 RHEL 7, 8, dan 9 Ubuntu 16.04, 18.04, 20.04, 22.04, dan 24.04 CentOS 7 dan 8 Streaming CentOS 8 SUSE 12 dan 15 |
https://awstoe- |
https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/linux/amd64/awstoe |
| AMD64 |
macOS 10.14.x (Mojave), 10.15.x (Catalina), 11.x (Big Sur), 12.x (Monterey) |
https://awstoe- |
https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/darwin/amd64/awstoe |
|
AMD64 |
Windows Server 2012 R2, 2016, 2019, dan 2022 |
|
https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/windows/amd64/awstoe.exe |
| ARM64 |
AL 2 dan 2023 RHEL 7, 8, dan 9 Ubuntu 16.04, 18.04, 20.04, 22.04, dan 24.04 CentOS 7 dan 8 Streaming CentOS 8 SUSE 12 dan 15 |
https://awstoe- |
https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/linux/arm64/awstoe |
Wilayah yang Didukung
AWSTOE didukung sebagai aplikasi mandiri di Wilayah berikut.
| Wilayah AWS nama | Wilayah AWS |
|---|---|
|
AS Timur (Ohio) |
us-east-2 |
|
US East (N. Virginia) |
us-east-1 |
|
AWS GovCloud (US-East) |
us-gov-east-1 |
|
AWS GovCloud (US-West) |
us-gov-west-1 |
|
AS Barat (California Utara) |
us-west-1 |
|
US West (Oregon) |
as-barat-2 |
|
Afrika (Cape Town) |
af-selatan-1 |
|
Asia Pasifik (Hong Kong) |
ap-east-1 |
|
Asia Pacific (Osaka) |
ap-northeast-3 |
|
Asia Pacific (Seoul) |
ap-northeast-2 |
|
Asia Pasifik (Mumbai) |
ap-south-1 |
|
Asia Pasifik (Hyderabad) |
ap-south-2 |
|
Asia Pasifik (Singapura) |
ap-southeast-1 |
|
Asia Pacific (Sydney) |
ap-southeast-2 |
|
Asia Pasifik (Jakarta) |
ap-southeast-3 |
|
Asia Pasifik (Tokyo) |
ap-northeast-1 |
|
Canada (Central) |
ca-sentral-1 |
|
Europe (Frankfurt) |
eu-central-1 |
|
Europe (Zurich) |
eu-central-2 |
|
Eropa (Stockholm) |
eu-north-1 |
|
Europe (Milan) |
eu-south-1 |
|
Eropa (Spanyol) |
eu-south-2 |
|
Eropa (Irlandia) |
eu-west-1 |
|
Europe (London) |
eu-west-2 |
|
Europe (Paris) |
eu-west-3 |
|
Israel (Tel Aviv) |
il-central-1 |
|
Timur Tengah (UAE) |
me-central-1 |
|
Timur Tengah (Bahrain) |
me-selatan-1 |
|
Amerika Selatan (São Paulo) |
sa-east-1 |
|
Tiongkok (Beijing) |
cn-north-1 |
|
China (Ningxia) |
cn-northwest-1 |
AWSTOE referensi perintah
AWSTOE adalah aplikasi manajemen komponen baris perintah yang berjalan pada instans Amazon EC2. Saat Image Builder meluncurkan build EC2 atau instance pengujian, instans tersebut akan diinstal AWSTOE pada instans. Kemudian menjalankan AWSTOE perintah AWS CLI untuk menginstal atau memvalidasi komponen yang ditentukan dalam resep gambar atau wadah.
catatan
Beberapa modul AWSTOE tindakan memerlukan izin yang ditingkatkan untuk berjalan di server Linux. Untuk menggunakan izin yang ditingkatkan, awali sintaks perintah dengansudo, atau jalankan sudo su perintah satu kali saat Anda masuk sebelum menjalankan perintah yang ditautkan di bawah ini. Untuk informasi selengkapnya tentang modul AWSTOE tindakan, lihatModul aksi didukung oleh AWSTOE manajer komponen.
perintah awstoe run
Perintah ini menjalankan skrip dokumen komponen YAML dalam urutan di mana mereka disertakan dalam file konfigurasi yang ditentukan oleh --config parameter, atau daftar dokumen komponen yang ditentukan oleh --documents parameter.
catatan
Anda harus menentukan dengan tepat salah satu parameter berikut, tidak pernah keduanya:
--konfigurasi
--dokumen
Sintaksis
awstoe run [--config <file path>] [--cw-ignore-failures <?>] [--cw-log-group <?>] [--cw-log-regionus-west-2] [--cw-log-stream <?>] [--document-s3-bucket-owner <owner>] [--documents <file path,file path,...>] [--execution-id <?>] [--log-directory <file path>] [--log-s3-bucket-name <name>] [--log-s3-bucket-owner <owner>] [--log-s3-key-prefix <?>] [--parametersname1=value1,name2=value2...] [--phases <phase name>] [--blocked-action-modules <module,module,...>] [--state-directory <directory path>] [--version <?>] [--help] [--trace]
Parameter dan opsi
Parameter
- --konfigurasi
./config-example.json -
Bentuk pendek: -c
./config-example.jsonFile konfigurasi (kondisional). Parameter ini berisi lokasi file untuk file JSON yang berisi pengaturan konfigurasi untuk komponen yang sedang berjalan perintah ini. Jika Anda menentukan pengaturan run perintah dalam file konfigurasi, Anda tidak boleh menentukan
--documentsparameter. Untuk informasi selengkapnya tentang konfigurasi input, lihatKonfigurasikan masukan untuk AWSTOE jalankan perintah.Lokasi yang valid meliputi:
-
Jalur file lokal (
)./config-example.json -
Sebuah URI S3 (
s3://)bucket/key
-
- --cw-abaikan-kegagalan
-
Bentuk pendek: N/A
Abaikan kegagalan pencatatan dari CloudWatch Log.
- --cw-log-grup
-
Bentuk pendek: N/A
LogGroupNama untuk CloudWatch Log. - --cw-log-wilayah
-
Bentuk pendek: N/A
Wil AWS ayah yang berlaku untuk CloudWatch Log.
- --cw-log-aliran
-
Bentuk pendek: N/A
LogStreamNama untuk CloudWatch Log, yang mengarahkan ke AWSTOE mana untuk melakukan streamingconsole.logfile. - --dokumen-s3-pemilik ember
-
Bentuk pendek: N/A
ID akun pemilik bucket untuk URI-based dokumen S3.
- --dokumen
./doc-1.yaml,./doc-n.yaml -
Bentuk pendek: -d
,./doc-1.yaml./doc-nDokumen komponen (kondisional). Parameter ini berisi daftar lokasi file yang dipisahkan koma untuk dokumen komponen YAML untuk dijalankan. Jika Anda menentukan dokumen YAML untuk run perintah menggunakan
--documentsparameter, Anda tidak boleh menentukan--configparameter. Jangan sertakan spasi di antara item dalam daftar.Lokasi yang valid meliputi:
-
jalur file lokal (
./component-doc-example.yaml). -
URI S3 (
s3://).bucket/key -
Versi build komponen Pembuat Gambar ARN (arn:aws:imagebuilder:us-west-//2021.12.
2:123456789012my-example-component02/1).
-
- --id eksekusi
-
Bentuk pendek: -i
Ini adalah ID unik yang berlaku untuk eksekusi run perintah saat ini. ID ini disertakan dalam nama file output dan log, untuk mengidentifikasi file-file tersebut secara unik, dan menautkannya ke eksekusi perintah saat ini. Jika pengaturan ini ditinggalkan, AWSTOE menghasilkan GUID.
- --log-direktori
-
Bentuk pendek: -l
Direktori tujuan tempat AWSTOE menyimpan semua file log dari eksekusi perintah ini. Secara default, direktori ini terletak di dalam direktori induk berikut:
TOE_<DATETIME>_<EXECUTIONID>. Jika Anda tidak menentukan direktori log, gunakan AWSTOE direktori kerja saat ini (.). - --log-s3-nama-bucket
-
Bentuk pendek: -b
Jika log komponen disimpan di Amazon S3 (disarankan), mengun AWSTOE ggah log aplikasi komponen ke bucket S3 yang dinamai dalam parameter ini.
- --log-s3-pemilik ember
-
Bentuk pendek: N/A
Jika log komponen disimpan di Amazon S3 (disarankan), ini adalah ID akun pemilik untuk bucket tempat AWSTOE menulis file log.
- --log-s3-kunci-awalan
-
Bentuk pendek: -k
Jika log komponen disimpan di Amazon S3 (disarankan), ini adalah awalan kunci objek S3 untuk lokasi log di bucket.
- --parameter
name1=value1,name2=value2... -
Bentuk pendek: N/A
Parameter adalah variabel yang dapat diubah yang didefinisikan dalam dokumen komponen, dengan pengaturan yang dapat disediakan oleh aplikasi pemanggil saat runtime.
- --fase
-
Bentuk pendek: -p
Daftar yang dipisahkan koma yang menentukan fase mana yang akan dijalankan dari dokumen komponen YAML. Jika dokumen komponen menyertakan fase tambahan, itu tidak akan berjalan.
- --direktori status
-
Bentuk pendek: -s
Jalur file tempat file pelacakan status disimpan.
- --modul aksi yang diblokir
-
Bentuk pendek: N/A
Daftar modul tindakan yang dipisahkan koma yang tidak dapat berjalan di dokumen komponen. Jika dokumen berisi modul tindakan yang diblokir, validasi gagal sebelum eksekusi dimulai.
- --versi
-
Bentuk pendek: -v
Menentukan versi aplikasi komponen.
Opsi
- --help
-
Bentuk pendek: -h
Menampilkan manual bantuan untuk menggunakan opsi aplikasi manajemen komponen.
- --jejak
-
Bentuk pendek: -t
Mengaktifkan log bertele-tele ke konsol.
Output
Per run intah menghasilkan ringkasan eksekusi JSON. Contoh berikut menunjukkan output dari eksekusi yang berhasil.
{ "executionId": "12345678-abcd-efgh-1234-example12345", "status": "success", "failedStepCount": 0, "executedStepCount": 3, "ignoredFailedStepCount": 0, "skippedStepCount": 0, "failureMessage": "", "logUrl": "s3://my-bucket/my-prefix/12345678-abcd-efgh-1234-example12345" }
Bid status ang melaporkan hasil eksekusi keseluruhan:
-
success— Semua fase dan langkah selesai dengan sukses. -
failed— Satu atau lebih langkah gagal karenaonFailuretindakannyaAbort. -
timedOut— Satu atau lebih langkah melebihi niltimeoutSecondsainya.
perintah awstoe memvalidasi
Ketika Anda menjalankan perintah ini, ia memvalidasi sintaks dokumen YAML untuk setiap dokumen komponen yang ditentukan oleh parameter. --documents
Sintaksis
awstoe validate [--blocked-action-modules <module,module,...>] [--document-s3-bucket-owner <owner>] --documents <file path,file path,...> [--help] [--trace]
Parameter dan opsi
Parameter
- --modul aksi yang diblokir
-
Bentuk pendek: N/A
Daftar modul tindakan yang dipisahkan koma yang tidak dapat berjalan di dokumen komponen. Jika dokumen berisi modul tindakan yang diblokir, validasi gagal.
- --dokumen-s3-pemilik ember
-
Bentuk pendek: N/A
ID akun sumber dari URI-based dokumen S3 yang disediakan.
- --dokumen
./doc-1.yaml,./doc-n.yaml -
Bentuk pendek: -d
,./doc-1.yaml./doc-nDokumen komponen (wajib). Parameter ini berisi daftar lokasi file yang dipisahkan koma untuk dokumen komponen YAML untuk dijalankan, tanpa spasi di antara item. Lokasi yang valid meliputi:
-
jalur file lokal (
./component-doc-example.yaml) -
URI S3 ()
s3://bucket/key -
Versi build komponen Pembuat Gambar ARN (arn:aws:imagebuilder:us-west-//2021.12.
2:123456789012my-example-component02/1)
-
Opsi
- --help
-
Bentuk pendek: -h
Menampilkan manual bantuan untuk menggunakan opsi aplikasi manajemen komponen.
- --jejak
-
Bentuk pendek: -t
Mengaktifkan log bertele-tele ke konsol.
Output
Per validate intah menghasilkan hasil validasi JSON. Contoh berikut menunjukkan output dari validasi yang berhasil.
{ "validationStatus": "success", "message": "Validation successful." }
Contoh berikut menunjukkan output ketika validasi gagal.
{ "validationStatus": "failed", "message": "Document has 0 phases. Phases list must not be empty." }