Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menjalankan pekerjaan arsitektur campuran (X86_64 dan ARM64)
Lingkungan komputasi Instans Terkelola Amazon ECS tunggal dan antrian pekerjaan dapat menjalankan kedua pekerjaan X86_64 dan ARM64 (berbasis prosesor AWS Graviton). Setiap pekerjaan berjalan pada kapasitas yang sesuai dengan arsitektur CPU yang dinyatakan dalam definisi pekerjaannya. Atur arsitektur dengan runtimePlatform.cpuArchitecture dalam definisi pekerjaan. Anda tidak mengkonfigurasi arsitektur pada lingkungan komputasi.
Untuk menjalankan pekerjaan arsitektur campuran, berikan image kontainer yang mendukung kedua arsitektur (manifes gambar multi-arsitektur), dan daftarkan satu definisi pekerjaan per arsitektur yang ditetapkan ke atau. runtimePlatform.cpuArchitecture X86_64 ARM64 Anda dapat mengirimkan pekerjaan untuk salah satu definisi pekerjaan ke antrian pekerjaan yang sama.
"runtimePlatform": { "operatingSystemFamily": "LINUX", "cpuArchitecture": "ARM64" }
Kemudian atur lingkungan komputasi dengan salah satu cara berikut:
-
Hilangkan
instanceRequirementsuntuk membuat semua jenis instans memenuhi syarat. -
Tentukan
allowedInstanceTypesyang mencakup setiap arsitektur yang digunakan pekerjaan Anda.
- Jangan tentukan jenis instance
-
Menghilangkan
instanceRequirementsbidang darimanagedInstancesProvider.instanceLaunchTemplate(pengaturan yang membatasi jenis instance mana yang dapat digunakan lingkungan komputasi). Semua jenis instans memenuhi syarat, dan Amazon ECS memilih kapasitas yang sesuai dengan setiap pekerjaan.runtimePlatform.cpuArchitecturePekerjaanX86_64diluncurkan pada instance x86, danARM64pekerjaan diluncurkan pada instance AWS Graviton dari lingkungan komputasi yang sama. - Tentukan jenis instance yang mencakup arsitektur yang diperlukan
-
Jika Anda mengatur
instanceRequirements.allowedInstanceTypes, sertakan jenis instance untuk setiap arsitektur yang dinyatakan pekerjaan Anda. Amazon ECS menyimpulkan arsitektur dari jenis instans yang Anda izinkan. Jenis instans yang diizinkan harus memenuhi setiap pekerjaanruntimePlatform.cpuArchitecture. Misalnya, untuk menjalankan kedua arsitektur, termasuk:-
keluarga x86, seperti
m5danc5 -
AWS Keluarga Graviton, seperti dan
m7gc7g
-
Pekerjaan gagal jika tidak ada jenis instance yang cocok tersedia
Jika jenis instance yang diizinkan tidak menyertakan tipe apa pun yang cocok dengan arsitektur pekerjaan yang dideklarasikan, pekerjaan gagal karena alasan berikut:
ResourceInitializationError: No available instance types were able to satisfy the
task and placement constraints.
Misalnya, jika hanya allowedInstanceTypes mencantumkan keluarga x86 dan Anda mengirimkan ARM64 pekerjaan, pekerjaan gagal dengan kesalahan ini. Untuk mengatasi masalah ini, tambahkan keluarga instance AWS
Graviton keallowedInstanceTypes. Atau, hapus instanceRequirements untuk mengizinkan semua jenis instance.