Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pekerjaan terjebak dalam RUNNABLE
status
Misalkan lingkungan komputasi Anda berisi sumber daya komputasi, tetapi pekerjaan Anda tidak berkembang melampaui status. RUNNABLE
Kemudian, kemungkinan ada sesuatu yang mencegah pekerjaan ditempatkan pada sumber daya komputasi dan menyebabkan antrian pekerjaan Anda diblokir. Berikut cara mengetahui apakah pekerjaan Anda sedang menunggu giliran atau macet dan memblokir antrian.
Jika AWS Batch mendeteksi bahwa Anda memiliki RUNNABLE
pekerjaan di kepala dan memblokir antrian, Anda akan menerima Sumber daya: Acara yang diblokir antrian pekerjaan acara dari Amazon CloudWatch Events dengan alasannya. Alasan yang sama juga diperbarui ke statusReason
bidang sebagai bagian dari ListJobs
dan DescribeJobs
API panggilan.
Secara opsional, Anda dapat mengkonfigurasi jobStateTimeLimitActions
parameter melalui CreateJobQueue
dan UpdateJobQueue
APItindakan.
catatan
Saat ini, satu-satunya tindakan yang dapat Anda gunakan jobStateLimitActions.action
adalah membatalkan pekerjaan.
jobStateTimeLimitActions
Parameter ini digunakan untuk menentukan serangkaian tindakan yang AWS Batch dilakukan pada pekerjaan dalam keadaan tertentu. Anda dapat mengatur ambang waktu dalam hitungan detik melalui maxTimeSeconds
bidang.
Ketika pekerjaan telah dalam RUNNABLE
keadaan dengan yang ditentukanstatusReason
, AWS Batch melakukan tindakan yang ditentukan setelah maxTimeSeconds
telah berlalu.
Misalnya, Anda dapat mengatur jobStateTimeLimitActions
parameter untuk menunggu hingga 4 jam untuk pekerjaan apa pun di RUNNABLE
negara bagian yang menunggu kapasitas yang cukup tersedia. Anda dapat melakukan ini dengan mengatur statusReason
ke CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY
dan maxTimeSeconds
ke 144000 sebelum membatalkan pekerjaan dan memungkinkan pekerjaan berikutnya untuk maju ke kepala antrian pekerjaan.
Berikut ini adalah alasan yang AWS Batch memberikan ketika mendeteksi bahwa antrian pekerjaan diblokir. Daftar ini menyediakan pesan yang dikembalikan dari ListJobs
dan DescribeJobs
API tindakan. Ini juga merupakan nilai yang sama yang dapat Anda tentukan untuk jobStateLimitActions.statusReason
parameter.
-
Alasan: Semua lingkungan komputasi yang terhubung memiliki kesalahan kapasitas yang tidak mencukupi. Saat diminta, AWS Batch mendeteksi EC2 instans Amazon yang mengalami kesalahan kapasitas tidak mencukupi. Membatalkan pekerjaan secara manual akan memungkinkan pekerjaan berikutnya pindah ke kepala antrian tetapi tanpa menyelesaikan masalah peran layanan, kemungkinan pekerjaan berikutnya juga akan diblokir juga. Yang terbaik adalah menyelidiki dan menyelesaikan masalah ini secara manual.
-
statusReason
pesan saat pekerjaan macet:CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY - Service cannot fulfill the capacity requested for instance type [instanceTypeName]
-
reason
digunakan untukjobStateTimeLimitActions
:CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY
-
statusReason
pesan setelah pekerjaan dibatalkan:Canceled by JobStateTimeLimit action due to reason: CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY
Catatan:
-
Peran AWS Batch layanan memerlukan
autoscaling:DescribeScalingActivities
izin agar deteksi ini berfungsi. Jika Anda menggunakan peran Izin peran terkait layanan untuk AWS Batch terkait layanan (SLR) atau kebijakan AWS kebijakan terkelola: AWSBatchServiceRolekebijakan terkelola, Anda tidak perlu mengambil tindakan apa pun karena kebijakan izin mereka diperbarui. -
Jika Anda menggunakan SLR atau kebijakan terkelola, Anda harus menambahkan
ec2:DescribeSpotFleetRequestHistory
izinautoscaling:DescribeScalingActivities
dan agar Anda dapat menerima peristiwa antrian pekerjaan yang diblokir dan status pekerjaan yang diperbarui saat masuk.RUNNABLE
Selain itu, AWS Batch perlu izin ini untuk melakukancancellation
tindakan melaluijobStateTimeLimitActions
parameter bahkan jika mereka dikonfigurasi pada antrian pekerjaan. -
Dalam kasus pekerjaan paralel (MNP) multi-node, jika lingkungan EC2 komputasi Amazon prioritas tinggi yang dilampirkan mengalami
insufficient capacity
kesalahan, itu memblokir antrian meskipun lingkungan komputasi prioritas rendah mengalami kesalahan ini.
-
-
Alasan: Semua lingkungan komputasi memiliki
maxvCpus
parameter yang lebih kecil dari persyaratan pekerjaan. Membatalkan pekerjaan, baik secara manual atau dengan mengaturjobStateTimeLimitActions
parameterstatusReason
, memungkinkan pekerjaan berikutnya untuk pindah ke kepala antrian. Secara opsional, Anda dapat meningkatkanmaxvCpus
parameter lingkungan komputasi utama untuk memenuhi kebutuhan pekerjaan yang diblokir.-
statusReason
pesan saat pekerjaan macet:MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE - CE(s) associated with the job queue cannot meet the CPU requirement of the job.
-
reason
digunakan untukjobStateTimeLimitActions
:MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE
-
statusReason
pesan setelah pekerjaan dibatalkan:Canceled by JobStateTimeLimit action due to reason: MISCONFIGURATION:COMPUTE_ENVIRONMENT_MAX_RESOURCE
-
-
Alasan: Tidak ada lingkungan komputasi yang memiliki instance yang memenuhi persyaratan pekerjaan. Ketika pekerjaan meminta sumber daya, AWS Batch mendeteksi bahwa tidak ada lingkungan komputasi terlampir yang dapat mengakomodasi pekerjaan yang masuk. Membatalkan pekerjaan, baik secara manual atau dengan mengatur
jobStateTimeLimitActions
parameterstatusReason
, memungkinkan pekerjaan berikutnya untuk pindah ke kepala antrian. Secara opsional, Anda dapat mendefinisikan ulang jenis instans yang diizinkan lingkungan komputasi untuk menambahkan sumber daya pekerjaan yang diperlukan.-
statusReason
pesan saat pekerjaan macet:MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT - The job resource requirement (vCPU/memory/GPU) is higher than that can be met by the CE(s) attached to the job queue.
-
reason
digunakan untukjobStateTimeLimitActions
:MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT
-
statusReason
pesan setelah pekerjaan dibatalkan:Canceled by JobStateTimeLimit action due to reason: MISCONFIGURATION:JOB_RESOURCE_REQUIREMENT
-
-
Alasan: Semua lingkungan komputasi memiliki masalah peran layanan. Untuk mengatasinya, bandingkan izin peran layanan Anda dengan AWS kebijakan terkelola untuk AWS Batch dan atasi celah apa pun. Catatan:Anda tidak dapat mengonfigurasi tindakan yang dapat diprogram melalui
jobStateTimeLimitActions
parameter untuk mengatasi kesalahan ini.Ini adalah praktik terbaik untuk menggunakan Izin peran terkait layanan untuk AWS Batch untuk menghindari kesalahan serupa.
Membatalkan pekerjaan, baik secara manual atau dengan mengatur
jobStateTimeLimitActions
parameterstatusReason
, memungkinkan pekerjaan berikutnya untuk pindah ke kepala antrian. Tanpa menyelesaikan masalah peran layanan, kemungkinan pekerjaan berikutnya juga akan diblokir. Yang terbaik adalah menyelidiki dan menyelesaikan masalah ini secara manual.-
statusReason
pesan saat pekerjaan macet:MISCONFIGURATION:SERVICE_ROLE_PERMISSIONS – Batch service role has a permission issue.
-
-
Alasan: Semua lingkungan komputasi tidak valid. Untuk informasi selengkapnya, lihat INVALIDlingkungan komputasi. Catatan: Anda tidak dapat mengonfigurasi tindakan yang dapat diprogram melalui
jobStateTimeLimitActions
parameter untuk mengatasi kesalahan ini.-
statusReason
pesan saat pekerjaan macet:ACTION_REQUIRED - CE(s) associated with the job queue are invalid.
-
-
Alasan: AWS Batch telah mendeteksi antrian yang diblokir, tetapi tidak dapat menentukan alasannya. Catatan: Anda tidak dapat mengonfigurasi tindakan yang dapat diprogram melalui
jobStateTimeLimitActions
parameter untuk mengatasi kesalahan ini. Untuk informasi selengkapnya tentang pemecahan masalah, lihat Mengapa AWS Batch pekerjaan saya macet RUNNABLE AWS di re:Post. -
statusReason
pesan saat pekerjaan macet:UNDETERMINED - Batch job is blocked, root cause is undetermined.
-
Jika Anda tidak menerima acara dari Acara atau Anda menerima CloudWatch peristiwa alasan yang tidak diketahui, berikut adalah beberapa penyebab umum untuk masalah ini.
- Driver
awslogs
log tidak dikonfigurasi pada sumber daya komputasi Anda -
AWS Batch pekerjaan mengirim informasi log mereka ke CloudWatch Log. Untuk mengaktifkan ini, Anda harus mengonfigurasi sumber daya komputasi Anda untuk menggunakan driver log
awslogs
. Misalkan Anda mendasarkan sumber daya komputasi Anda AMI dari Amazon yang ECS dioptimalkan AMI (atau Amazon Linux). Kemudian, driver ini terdaftar secara default denganecs-init
paket. Sekarang anggaplah Anda menggunakan basis yang berbedaAMI. Kemudian, Anda harus memverifikasi bahwa driverawslogs
log ditentukan sebagai driver log yang tersedia dengan variabelECS_AVAILABLE_LOGGING_DRIVERS
lingkungan saat agen ECS penampung Amazon dimulai. Untuk informasi selengkapnya, silakan lihat Menghitung spesifikasi sumber daya AMI dan Tutorial: Buat sumber daya komputasi AMI. - Sumber daya tidak mencukupi
-
Jika definisi pekerjaan Anda menentukan lebih banyak CPU atau sumber daya memori daripada sumber daya komputasi Anda dapat mengalokasikan, maka pekerjaan Anda tidak pernah ditempatkan. Misalnya, pekerjaan Anda menentukan 4 GiB memori, dan sumber daya komputasi Anda memiliki kurang dari yang tersedia. Maka itu adalah kasus bahwa pekerjaan tidak dapat ditempatkan pada sumber daya komputasi tersebut. Dalam hal ini, Anda harus mengurangi memori yang ditentukan dalam ketentuan tugas Anda atau menambahkan sumber daya komputasi yang lebih besar ke lingkungan Anda. Beberapa memori disediakan untuk agen ECS kontainer Amazon dan proses sistem penting lainnya. Untuk informasi selengkapnya, lihat Menghitung manajemen memori sumber daya.
- Tidak ada akses internet untuk sumber daya komputasi
Sumber daya komputasi memerlukan akses untuk berkomunikasi dengan titik akhir ECS layanan Amazon. Ini bisa melalui VPC titik akhir antarmuka atau melalui Anda menghitung sumber daya yang memiliki alamat IP publik.
Untuk informasi selengkapnya tentang VPC titik akhir antarmuka, lihat Amazon ECS Interface VPC Endpoints (AWS PrivateLink) di Panduan Pengembang Layanan Amazon Elastic Container.
Jika Anda tidak memiliki VPC titik akhir antarmuka yang dikonfigurasi dan sumber daya komputasi Anda tidak memiliki alamat IP publik, maka mereka harus menggunakan terjemahan alamat jaringan (NAT) untuk menyediakan akses ini. Untuk informasi selengkapnya, lihat NATgateway di Panduan VPC Pengguna Amazon dan di panduan . Untuk informasi selengkapnya, lihat Tutorial: Buat VPC.
- Batas EC2 instans Amazon tercapai
-
Jumlah EC2 instans Amazon yang dapat diluncurkan akun Anda Wilayah AWS ditentukan oleh kuota EC2 instans Anda. Jenis instance tertentu juga memiliki per-instance-type kuota. Untuk informasi selengkapnya tentang kuota EC2 instans Amazon akun Anda termasuk cara meminta peningkatan batas, lihat Batas EC2 Layanan Amazon di Panduan EC2 Pengguna Amazon.
- Agen ECS kontainer Amazon tidak diinstal
-
Agen ECS penampung Amazon harus diinstal pada Amazon Machine Image (AMI) untuk membiarkan pekerjaan AWS Batch berjalan. Agen ECS penampung Amazon diinstal secara default di Amazon yang ECS dioptimalkanAMIs. Untuk informasi selengkapnya tentang agen ECS kontainer Amazon, lihat Agen ECS kontainer Amazon di Panduan Pengembang Layanan Kontainer Elastis Amazon.
Untuk informasi selengkapnya, lihat Mengapa AWS Batch pekerjaan saya terjebak dalam RUNNABLE
status?