Memulai dengan AWSTOE - EC2 Image Builder

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memulai dengan AWSTOE

Aplikasi AWS Task Orchestrator and Executor (AWSTOE) adalah aplikasi mandiri yang membuat, memvalidasi, dan menjalankan perintah dalam kerangka definisi komponen. AWSlayanan dapat digunakan AWSTOE untuk mengatur alur kerja, menginstal perangkat lunak, memodifikasi konfigurasi sistem, dan menguji build gambar.

Ikuti langkah-langkah ini untuk menginstal AWSTOE aplikasi dan menggunakannya untuk pertama kalinya.

Langkah 1: Instal AWSTOE

Untuk mengembangkan komponen secara lokal, unduh dan instal AWSTOE aplikasi.

  1. Unduh AWSTOE aplikasinya

    Untuk menginstalAWSTOE, pilih tautan unduhan yang sesuai untuk arsitektur dan platform Anda. Untuk daftar lengkap tautan unduhan aplikasi, lihat AWSTOE unduh

    penting

    AWSmenghapus dukungan untuk TLS versi 1.0 dan 1.1 secara bertahap. Untuk mengakses bucket S3 untuk AWSTOE unduhan, perangkat lunak klien Anda harus menggunakan TLS versi 1.2 atau yang lebih baru. Untuk informasi lebih lanjut, lihat posting Blog AWS Keamanan ini.

  2. Verifikasi tanda tangan

    Langkah-langkah untuk memverifikasi unduhan Anda bergantung pada platform server tempat Anda menjalankan AWSTOE aplikasi setelah Anda menginstalnya. Untuk memverifikasi unduhan Anda di server Linux, lihatVerifikasi tanda tangan di Linux. Untuk memverifikasi unduhan Anda di server Windows, lihatVerifikasi tanda tangan di Windows.

penting

AWSTOEdipanggil langsung dari lokasi unduhannya. Tidak perlu langkah instalasi terpisah. Ini juga berarti bahwa AWSTOE dapat membuat perubahan pada lingkungan lokal.

Untuk memastikan bahwa Anda mengisolasi perubahan selama pengembangan komponen, sebaiknya gunakan instans EC2 untuk mengembangkan dan menguji AWSTOE komponen.

Langkah 2: Tetapkan AWS kredensyal

AWSTOEmemerlukan AWS kredensyal untuk terhubung ke yang lainLayanan AWS, seperti Amazon S3 dan CloudWatch Amazon, saat menjalankan tugas, seperti:

  • Mengunduh AWSTOE dokumen dari jalur Amazon S3 yang disediakan pengguna.

  • Modul lari S3Download atau S3Upload tindakan.

  • Streaming log ke CloudWatch, saat diaktifkan.

Jika Anda menjalankan AWSTOE instans EC2, maka menjalankan AWSTOE menggunakan izin yang sama dengan peran IAM yang dilampirkan ke instans EC2.

Untuk informasi selengkapnya tentang peran IAM untuk EC2, lihat peran IAM untuk Amazon EC2.

Contoh berikut menunjukkan cara mengatur AWS kredensyal menggunakan variabel AWS_ACCESS_KEY_ID dan AWS_SECRET_ACCESS_KEY lingkungan.

Untuk mengatur variabel ini di Linux, macOS, atau Unix, gunakan. export

$ export AWS_ACCESS_KEY_ID=your_access_key_id
$ export AWS_SECRET_ACCESS_KEY=your_secret_access_key

Untuk mengatur variabel-variabel ini pada Windows menggunakan PowerShell, gunakan$env.

C:\> $env:AWS_ACCESS_KEY_ID=your_access_key_id
C:\> $env:AWS_SECRET_ACCESS_KEY=your_secret_access_key

Untuk mengatur variabel-variabel ini pada Windows menggunakan command prompt, gunakanset.

C:\> set AWS_ACCESS_KEY_ID=your_access_key_id
C:\> set AWS_SECRET_ACCESS_KEY=your_secret_access_key

Langkah 3: Kembangkan dokumen komponen secara lokal

AWSTOEkomponen ditulis dengan dokumen YAMAL plaintext. Untuk informasi selengkapnya tentang sintaks dokumen, lihatGunakan dokumen komponen di AWSTOE.

Berikut ini adalah contoh dokumen komponen Hello World yang dapat Anda gunakan untuk mengembangkan dokumen Anda secara lokal.

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.'

Langkah 4: Validasi komponen AWSTOE

Anda dapat memvalidasi sintaks AWSTOE komponen secara lokal dengan aplikasi. AWSTOE Contoh berikut menunjukkan validate perintah AWSTOE aplikasi untuk memvalidasi sintaks komponen tanpa menjalankannya.

catatan

AWSTOEAplikasi hanya dapat memvalidasi sintaks komponen untuk sistem operasi saat ini. Misalnya, saat berjalan awstoe.exe di Windows, Anda tidak dapat memvalidasi sintaks untuk dokumen Linux yang menggunakan modul ExecuteBash tindakan.

Windows

C:\> awstoe.exe validate --documents C:\Users\user\Documents\hello-world.yml

Linux:

$ awstoe validate --documents /home/user/hello-world.yml

Langkah 5: Jalankan AWSTOE komponen

AWSTOEAplikasi dapat menjalankan satu atau lebih fase dokumen tertentu menggunakan argumen baris --phases perintah. Nilai yang didukung untuk --phases arebuild,validate, dantest. Beberapa nilai fase dapat dimasukkan sebagai nilai yang dipisahkan koma.

Saat Anda memberikan daftar fase, AWSTOE aplikasi secara berurutan menjalankan fase yang ditentukan dari setiap dokumen. Misalnya, AWSTOE menjalankan build dan validate fasedocument1.yaml, diikuti oleh build dan validate fasedocument2.yaml.

Untuk memastikan bahwa log Anda disimpan dengan aman dan disimpan untuk pemecahan masalah, sebaiknya konfigurasi penyimpanan log di Amazon S3. Di Image Builder, lokasi Amazon S3 untuk menerbitkan log ditentukan dalam konfigurasi infrastruktur. Untuk informasi selengkapnya tentang konfigurasi infrastruktur, lihat Kelola konfigurasi infrastruktur EC2 Image Builder

Jika daftar fase tidak disediakan, AWSTOE aplikasi menjalankan semua fase dalam urutan yang tercantum dalam dokumen YAMAL.

Untuk menjalankan fase tertentu dalam satu atau beberapa dokumen, gunakan perintah berikut.

Fase tunggal

awstoe run --documents hello-world.yml --phases build

Beberapa fase

awstoe run --documents hello-world.yml --phases build,test
Jalankan dokumen

Jalankan semua fase dalam satu dokumen

awstoe run --documents documentName.yaml

Jalankan semua fase dalam beberapa dokumen

awstoe run --documents documentName1.yaml,documentName2.yaml

Masukkan informasi Amazon S3 untuk mengunggah AWSTOE log dari jalur lokal yang ditentukan pengguna (disarankan)

awstoe run --documents documentName.yaml --log-s3-bucket-name <S3Bucket> --log-s3-key-prefix <S3KeyPrefix> --log-s3-bucket-owner <S3BucketOwner> --log-directory <local_path>

Jalankan semua fase dalam satu dokumen, dan tampilkan semua log di konsol

awstoe run --documents documentName.yaml --trace

Perintah contoh

awstoe run --documents s3://bucket/key/doc.yaml --phases build,validate

Jalankan dokumen dengan ID unik

awstoe run --documents <documentName>.yaml --execution-id <user provided id> --phases <comma separated list of phases>

Dapatkan bantuan dengan AWSTOE

awstoe --help