Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memperbarui lingkungan komputasi
Setelah membuat lingkungan komputasi yang menggunakan EC2 sumber daya, Anda dapat memperbarui banyak pengaturan lingkungan komputasi secara langsung. Namun, mengubah beberapa pengaturan mengharuskan AWS Batch penggantian instance di lingkungan komputasi.
Memperbarui AWS Fargate lingkungan komputasi
Untuk lingkungan komputasi yang menggunakan sumber daya Fargate, Anda dapat memperbarui yang berikut ini.
-
securityGroupIds
-
subnets
-
desiredvCpus
-
maxvCpus
-
minvCpus
AWS Batch memiliki dua mekanisme pembaruan. Yang pertama adalah pembaruan penskalaan di mana instance ditambahkan atau dihapus dari lingkungan komputasi. Yang kedua adalah pembaruan infrastruktur di mana instance di lingkungan komputasi diganti. Pembaruan infrastruktur membutuhkan waktu lebih lama daripada pembaruan penskalaan.
Jika Anda memperbarui lingkungan komputasi dengan AWS Batch, mengubah hanya setelan ini akan menyebabkan pembaruan penskalaan: diinginkan vCPUs (desiredvCpus
), maksimum vCPUs (maxvCpus
), minimum vCPUs (minvCpus
), peran layanan (serviceRole
), dan status (state
).
catatan
Saat Anda memperbarui desiredvCpus
pengaturan, nilainya harus berada di antara maxvCpus
nilai minvCpus
dan.
Selain itu, desiredvCpus
nilai yang diperbarui harus lebih besar dari atau sama dengan desiredvCpus
nilai saat ini. Untuk informasi selengkapnya, lihat Pesan galat saat Anda memperbarui desiredvCpus pengaturan.
Jika salah satu pengaturan berikut diubah dalam UpdateComputeEnvironmentAPItindakan, AWS Batch memulai pembaruan infrastruktur. Pembaruan infrastruktur mengharuskan peran layanan disetel ke AWSServiceRoleForBatch(default) dan strategi alokasi adalahBEST_FIT_PROGRESSIVE
,SPOT_CAPACITY_OPTIMIZED
, atauSPOT_PRICE_CAPACITY_OPTIMIZED
. BEST_FIT
tidak didukung. Kecuali untuk peran layanan, semua pengaturan yang dapat diubah untuk pembaruan penskalaan juga dapat diubah untuk pembaruan infrastruktur.
catatan
Kami menyarankan Anda menggunakan SPOT_PRICE_CAPACITY_OPTIMIZED
bukan SPOT_CAPACITY_OPTIMIZED
n dalam banyak kasus.
Selama pembaruan infrastruktur, status lingkungan komputasi berubah menjadiUPDATING
. Instans baru diluncurkan menggunakan pengaturan yang diperbarui. Pekerjaan baru dijadwalkan pada contoh baru. Pekerjaan yang sedang berjalan dikirim sesuai dengan kebijakan pembaruan infrastruktur. Untuk informasi lebih lanjut, lihat UpdateComputeEnvironmentdan UpdatePolicydi AWS Batch APIReferensi.
Dalam tipe UpdatePolicy
data, pertimbangkan skenario berikut:
catatan
Dalam skenario ini, berikut ini benar. Ketika sebuah instance dihentikan, pekerjaan yang sedang berjalan dihentikan. Secara default, pekerjaan ini tidak dicoba lagi. Untuk mencoba kembali salah satu pekerjaan ini setelah instance dihentikan, konfigurasikan strategi coba ulang pekerjaan. Untuk informasi selengkapnya, lihat Percobaan kembali tugas secara otomatis di AWS Batch Panduan Pengguna.
-
Jika
terminateJobsOnUpdate
pengaturan disetel ketrue
, pekerjaan yang sedang berjalan dihentikan selama pembaruan infrastruktur.jobExecutionTimeoutMinutes
Pengaturan diabaikan. -
Jika
terminateJobsOnUpdate
pengaturan disetel kefalse
, pekerjaan dapat berjalan untuk waktu tambahan setelah pembaruan infrastruktur terjadi. Waktu tambahan ini dikonfigurasi dalamjobExecutionTimeoutMinutes
pengaturan. Secara default,jobExecutionTimeoutMinutes
pengaturannya adalah 30 menit.
Saat kapasitas tersedia di lingkungan komputasi, instans baru diluncurkan dengan pengaturan yang diperbarui dan pekerjaan dimulai pada instans baru. Karena semua pekerjaan selesai pada instance dengan pengaturan lama, instance lama dihentikan. Kapasitas apa yang tersedia berarti bahwa jumlah yang diinginkan vCPUs berada di bawah jumlah maksimum setidaknya vCPUs vCPUs sebanyak yang dipersyaratkan oleh jenis instans terkecil.
Pembaruan infrastruktur
Pembaruan infrastruktur diperlukan untuk mengubah beberapa pengaturan untuk lingkungan komputasi. Jika salah satu pengaturan berikut diubah, pembaruan infrastruktur dimulai:
penting
Lingkungan komputasi harus menggunakan peran AWSServiceRoleForBatchterkait layanan untuk membuat perubahan yang memerlukan pembaruan infrastruktur.
Jika lingkungan komputasi menggunakan peran terkait layanan, itu tidak dapat diubah untuk menggunakan peran reguler. IAM Demikian juga, jika lingkungan komputasi memiliki IAM peran reguler, itu tidak dapat diubah untuk menggunakan peran terkait layanan. Oleh karena itu, Anda hanya dapat melakukan pembaruan infrastruktur pada lingkungan komputasi yang dibuat menggunakan peran terkait layanan.
-
Strategi alokasi (
allocationStrategy
, harus salah satuBEST_FIT_PROGRESSIVE
,SPOT_CAPACITY_OPTIMIZED
, atauSPOT_PRICE_CAPACITY_OPTIMIZED
. Jika strategi alokasi asli adalahBEST_FIT
, pembaruan infrastruktur tidak didukung.)catatan
Kami menyarankan Anda menggunakan
SPOT_PRICE_CAPACITY_OPTIMIZED
bukanSPOT_CAPACITY_OPTIMIZED
n dalam banyak kasus. -
Persentase penawaran (
bidPercentage
) -
EC2konfigurasi (
ec2Configuration
) -
Pasangan kunci (
ec2KeyPair
) -
ID Gambar (
imageId
) -
Peran contoh (
instanceRole
) -
Jenis contoh (
instanceTypes
) -
Luncurkan template (
launchTemplate
) -
Grup penempatan (
placementGroup
) -
Grup keamanan (
securityGroupIds
) -
VPCsubnet ()
subnets
-
EC2tag (
tags
) -
Jenis lingkungan komputasi (
type
, bisa salah satu dariEC2
atauSPOT
) -
Apakah akan memperbarui ke AMI yang terbaru yang didukung oleh AWS Batch selama pembaruan infrastruktur
updateToLatestImageVersion
Memperbarui AMI ID
Selama pembaruan infrastruktur, AMI ID lingkungan komputasi mungkin berubah, tergantung pada AMIs apakah ditentukan dalam salah satu dari tiga pengaturan ini. AMIsditentukan dalam imageId
(incomputeResources
), imageIdOverride
(inec2Configuration
), atau template peluncuran yang ditentukan dalamlaunchTemplate
. Misalkan tidak AMI IDs ada yang ditentukan dalam pengaturan itu dan updateToLatestImageVersion
pengaturannyatrue
. Kemudian, Amazon terbaru yang ECS dioptimalkan AMI didukung oleh AWS Batch digunakan untuk pembaruan infrastruktur apa pun.
Jika AMI ID ditentukan dalam setidaknya satu pengaturan ini, pembaruan tergantung pada pengaturan mana yang diberikan AMI ID yang digunakan sebelum pembaruan. Saat Anda membuat lingkungan komputasi, prioritas untuk memilih AMI ID adalah pertama template peluncuran, lalu imageId
pengaturan, dan terakhir imageIdOverride
pengaturan. Namun, jika AMI ID yang digunakan berasal dari template peluncuran, memperbarui imageIdOverride
pengaturan imageId
atau tidak memperbarui AMI ID. Satu-satunya cara untuk memperbarui AMI ID yang dipilih dari template peluncuran adalah dengan memperbarui template peluncuran. Jika parameter versi template peluncuran adalah $Default
atau$Latest
, versi default atau terbaru dari template peluncuran yang ditentukan dievaluasi. Jika AMI ID yang berbeda dipilih secara default atau versi terbaru dari template peluncuran dipilih, AMI ID tersebut akan digunakan dalam pembaruan.
Jika template peluncuran tidak digunakan untuk memilih AMI ID, AMI ID yang ditentukan dalam imageIdOverride
parameter imageId
atau digunakan. Jika keduanya ditentukan, AMI ID yang ditentukan dalam imageIdOverride
parameter digunakan.
Misalkan lingkungan komputasi menggunakan AMI ID yang ditentukan olehimageId
,, atau launchTemplate
parameterimageIdOverride
, dan Anda ingin menggunakan Amazon terbaru yang ECS dioptimalkan AMI didukung oleh AWS Batch. Kemudian, pembaruan harus menghapus pengaturan yang disediakan AMIIDs. UntukimageId
, ini membutuhkan menentukan string kosong untuk parameter itu. UntukimageIdOverride
, ini membutuhkan menentukan string kosong untuk ec2Configuration
parameter.
Jika AMI ID berasal dari template peluncuran, Anda dapat mengubah ke Amazon terbaru AMI yang ECS dioptimalkan yang didukung AWS Batch oleh salah satu cara berikut:
-
Hapus template peluncuran dengan menentukan string kosong untuk
launchTemplateName
parameterlaunchTemplateId
or. Ini menghapus seluruh template peluncuran, bukan AMI ID saja. -
Jika versi terbaru dari template peluncuran tidak menentukan AMI ID,
updateToLatestImageVersion
parameter harus disetel ketrue
.