Buat definisi pekerjaan menggunakan EcsProperties - AWS Batch

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

Buat definisi pekerjaan menggunakan EcsProperties

Dengan menggunakan definisi AWS Batch pekerjaan EcsProperties, Anda dapat memodelkan perangkat keras, sensor, lingkungan 3D, dan simulasi lainnya dalam wadah terpisah. Anda dapat menggunakan fitur ini untuk secara logis mengatur komponen beban kerja Anda, dan memisahkannya dari aplikasi utama. Fitur ini dapat digunakan AWS Batch di Amazon Elastic Container Service (AmazonECS), Amazon Elastic Kubernetes Service (EKSAmazon), dan. AWS Fargate

ContainerPropertiesversus definisi EcsProperties pekerjaan

Anda dapat memilih untuk menggunakan ContainerPropertiesatau definisi EcsPropertiespekerjaan sesuai dengan kasus penggunaan Anda. Pada tingkat tinggi, menjalankan AWS Batch pekerjaan dengan EcsProperties mirip dengan menjalankan pekerjaan dengan aContainerProperties.

Struktur definisi pekerjaan lama, menggunakanContainerProperties, tetap didukung. Jika saat ini Anda memiliki alur kerja menggunakan struktur ini, Anda dapat terus menjalankannya.

Perbedaan utama adalah bahwa ada objek baru yang ditambahkan ke definisi pekerjaan untuk mengakomodasi definisi EcsProperties berbasis.

Misalnya, definisi pekerjaan yang digunakan ContainerProperties di Amazon ECS dan Fargate memiliki struktur berikut:

{ "containerProperties": { ... "image": "my_ecr_image1", ... }, ... }

Definisi pekerjaan yang digunakan EcsProperties di Amazon ECS dan Fargate memiliki struktur berikut:

{ "ecsProperties": { "taskProperties": [{ "containers": [ { ... "image": "my_ecr_image1", ... }, { ... "image": "my_ecr_image2", ... },

Perubahan umum pada AWS Batch APIs

Berikut ini lebih lanjut menguraikan beberapa perbedaan utama saat menggunakan EcsProperties dan tipe EcsProperties API data:

Definisi pekerjaan multi-kontainer untuk Amazon ECS

Untuk mengakomodasi struktur multi-kontainer untuk AmazonECS, beberapa tipe API data berbeda. Misalnya,

  • ecsPropertiesadalah level yang sama seperti containerProperties dalam definisi kontainer tunggal. Untuk informasi lebih lanjut, lihat EcsPropertiesdi Panduan AWS Batch API Referensi.

  • taskPropertiesberisi properti yang ditentukan untuk ECS tugas Amazon. Untuk informasi lebih lanjut, lihat EcsPropertiesdi Panduan AWS Batch API Referensi.

  • containersmencakup informasi serupa dengan definisi kontainer tunggal. containerProperties Perbedaan utamanya adalah containers memungkinkan Anda menentukan hingga sepuluh kontainer. Untuk informasi lebih lanjut, lihat:container ECSTaskPropertiesdi Panduan Referensi.AWS Batch API

  • essentialparameter menunjukkan bagaimana wadah mempengaruhi pekerjaan. Semua cotainer essentail harus menyelesaikan dengan sukses (keluar sebagai 0) agar pekerjaan dapat berkembang. Jika wadah yang ditandai sebagai essentail gagal (keluar sebagai non-0), maka pekerjaan gagal.

    Nilai default adalah true dan setidaknya satu kontainer harus ditandai sebagaiessential. Untuk informasi lebih lanjut, lihat essentialdi Panduan AWS Batch API Referensi.

  • Dengan dependsOnparameter, Anda dapat menentukan daftar dependensi kontainer. Untuk informasi lebih lanjut, lihat dependsOndi Panduan AWS Batch API Referensi.

    catatan

    Kompleksitas dependsOn daftar dan runtime kontainer terkait dapat memengaruhi waktu mulai untuk pekerjaan Anda. Jika dependensi membutuhkan waktu lama untuk dijalankan, pekerjaan akan tetap dalam STARTING keadaan sampai selesai.

Untuk informasi selengkapnya tentang struktur ecsProperties dan, lihat sintaks RegisterJobDefinitionpermintaan untuk ecsProperties.

Definisi pekerjaan multi-kontainer untuk Amazon EKS

Untuk mengakomodasi struktur multi-kontainer untuk AmazonEKS, beberapa tipe API data berbeda. Misalnya,

  • nameadalah pengidentifikasi unik untuk wadah. Objek ini tidak diperlukan untuk satu kontainer, tetapi diperlukan saat mendefinisikan beberapa kontainer dalam sebuah pod. Ketika name tidak ditentukan untuk kontainer tunggal, nama defaultdefault,, diterapkan.

  • initContainersdidefinisikan dalam tipe eksPodPropertiesdata. Thery dijalankan sebelum wadah aplikasi, selalu berjalan hingga selesai, dan harus berhasil diselesaikan sebelum penampung berikutnya dimulai.

    Kontainer ini terdaftar di agen Amazon EKS Connector dan menyimpan informasi pendaftaran di toko data backend Amazon Elastic Kubernetes Service. initContainersObjek dapat menerima hingga sepuluh (10) elemen. Untuk informasi selengkapnya, lihat Init Containers di Kubernetes dokumentasi.

    catatan

    initContainersObjek dapat mempengaruhi waktu mulai untuk pekerjaan Anda. Jika initContainers butuh waktu lama untuk menjalankan, pekerjaan akan tetap dalam STARTING keadaan sampai mereka selesai.

  • shareProcessNamespacemenunjukkan apakah kontainer di pod dapat berbagi namespace proses yang sama. Nilai defaultnya adalahfalse. Menyetel ini true untuk mengaktifkan kontainer melihat dan memberi sinyal proses di wadah lain yang terletak di pod yang sama.

  • Setiap wadah memiliki kepentingan. Semua kontainer harus berhasil diselesaikan (keluar sebagai 0) agar pekerjaan berhasil. Jika satu kontainer gagal (keluar sebagai selain 0), maka pekerjaan gagal.

Untuk informasi selengkapnya tentang struktur eksProperties dan, lihat sintaks RegisterJobDefinitionpermintaan untuk eksProperties.