Titik ECS akhir perlindungan skala tugas Amazon - Amazon Elastic Container Service

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

Titik ECS akhir perlindungan skala tugas Amazon

Agen ECS penampung Amazon secara otomatis menyuntikkan variabel ECS_AGENT_URI lingkungan ke dalam wadah ECS tugas Amazon untuk menyediakan metode untuk berinteraksi dengan titik API akhir agen penampung.

Sebaiknya gunakan titik akhir agen ECS penampung Amazon untuk tugas yang dapat menentukan sendiri kebutuhan untuk dilindungi.

Saat kontainer mulai memproses pekerjaan, Anda dapat menyetel protectionEnabled atribut menggunakan jalur titik akhir perlindungan skala tugas $ECS_AGENT_URI/task-protection/v1/state dari dalam wadah.

Gunakan PUT permintaan untuk ini URI dari dalam wadah untuk mengatur perlindungan skala tugas. GETPermintaan untuk ini URI mengembalikan status perlindungan tugas saat ini.

Parameter permintaan perlindungan skala tugas

Anda dapat mengatur perlindungan skala tugas menggunakan ${ECS_AGENT_URI}/task-protection/v1/state titik akhir dengan parameter permintaan berikut.

ProtectionEnabled

Tentukan true untuk menandai tugas untuk perlindungan. Tentukan false untuk menghapus perlindungan dan membuat tugas memenuhi syarat untuk penghentian.

Jenis: Boolean

Wajib: Ya

ExpiresInMinutes

Jumlah menit tugas dilindungi. Anda dapat menentukan minimal 1 menit hingga 2.880 menit (48 jam). Selama periode waktu ini, tugas Anda tidak akan dihentikan oleh peristiwa penskalaan dari Auto Scaling atau penerapan layanan. Setelah periode waktu ini berlalu, protectionEnabled parameter diatur kefalse.

Jika Anda tidak menentukan waktu, maka tugas secara otomatis dilindungi selama 120 menit (2 jam).

Tipe: Integer

Wajib: Tidak

Contoh berikut menunjukkan cara mengatur perlindungan tugas dengan durasi yang berbeda.

Contoh cara melindungi tugas dengan periode waktu default

Contoh ini menunjukkan cara melindungi tugas dengan periode waktu default 2 jam.

curl --request PUT --header 'Content-Type: application/json' ${ECS_AGENT_URI}/task-protection/v1/state --data '{"ProtectionEnabled":true}'

Contoh cara melindungi tugas selama 60 menit

Contoh ini menunjukkan cara melindungi tugas selama 60 menit menggunakan expiresInMinutes parameter.

curl --request PUT --header 'Content-Type: application/json' ${ECS_AGENT_URI}/task-protection/v1/state --data '{"ProtectionEnabled":true,"ExpiresInMinutes":60}'

Contoh cara melindungi tugas selama 24 jam

Contoh ini menunjukkan cara melindungi tugas selama 24 jam menggunakan expiresInMinutes parameter.

curl --request PUT --header 'Content-Type: application/json' ${ECS_AGENT_URI}/task-protection/v1/state --data '{"ProtectionEnabled":true,"ExpiresInMinutes":1440}'

PUTPermintaan mengembalikan respons berikut.

{ "protection": { "ExpirationDate": "2023-12-20T21:57:44.837Z", "ProtectionEnabled": true, "TaskArn": "arn:aws:ecs:us-west-2:111122223333:task/1234567890abcdef0" } }

Parameter respons perlindungan skala tugas

Informasi berikut dikembalikan dari titik akhir ${ECS_AGENT_URI}/task-protection/v1/state perlindungan skala tugas dalam respons. JSON

ExpirationDate

Waktu zaman ketika perlindungan untuk tugas akan kedaluwarsa. Jika tugas tidak dilindungi, nilai ini adalah nol.

ProtectionEnabled

Status perlindungan tugas. Jika perlindungan scale-in diaktifkan untuk tugas, nilainya adalah. true Kalau tidak, itufalse.

TaskArn

Nama Sumber Daya Amazon lengkap (ARN) dari tugas yang dimiliki penampung.

Contoh berikut menunjukkan detail yang dikembalikan untuk tugas yang dilindungi.

curl --request GET ${ECS_AGENT_URI}/task-protection/v1/state
{ "protection":{ "ExpirationDate":"2023-12-20T21:57:44Z", "ProtectionEnabled":true, "TaskArn":"arn:aws:ecs:us-west-2:111122223333:task/1234567890abcdef0" } }

Informasi berikut dikembalikan ketika terjadi kegagalan.

Arn

Nama Sumber Daya Amazon lengkap (ARN) dari tugas.

Detail

Detail terkait dengan kegagalan.

Reason

Sebab kegagalan.

Contoh berikut menunjukkan rincian yang dikembalikan untuk tugas yang tidak dilindungi.

{ "failure":{ "Arn":"arn:aws:ecs:us-west-2:111122223333:task/1234567890abcdef0", "Detail":null, "Reason":"TASK_NOT_VALID" } }

Informasi berikut dikembalikan ketika pengecualian terjadi.

requestID

ID AWS permintaan untuk ECS API panggilan Amazon yang menghasilkan pengecualian.

Arn

Nama Sumber Daya Amazon lengkap (ARN) dari tugas atau layanan.

Code

Kode kesalahan.

Message

Pesan kesalahan.

catatan

Jika RequestTimeout kesalahan RequestError atau muncul, kemungkinan itu adalah masalah jaringan. Coba gunakan VPC titik akhir untuk AmazonECS.

Contoh berikut menunjukkan rincian yang dikembalikan ketika terjadi kesalahan.

{ "requestID":"12345-abc-6789-0123-abc", "error":{ "Arn":"arn:aws:ecs:us-west-2:555555555555:task/my-cluster-name/1234567890abcdef0", "Code":"AccessDeniedException", "Message":"User: arn:aws:sts::444455556666:assumed-role/my-ecs-task-role/1234567890abcdef0 is not authorized to perform: ecs:GetTaskProtection on resource: arn:aws:ecs:us-west-2:555555555555:task/test/1234567890abcdef0 because no identity-based policy allows the ecs:GetTaskProtection action" } }

Kesalahan berikut muncul jika ECS agen Amazon tidak dapat mendapatkan respons dari ECS titik akhir Amazon karena alasan seperti masalah jaringan atau bidang ECS kontrol Amazon sedang down.

{ "error": { "Arn": "arn:aws:ecs:us-west-2:555555555555:task/my-cluster-name/1234567890abcdef0", "Code": "RequestCanceled", "Message": "Timed out calling Amazon ECS Task Protection API" } }

Kesalahan berikut muncul saat ECS agen Amazon mendapatkan pengecualian pelambatan dari Amazon. ECS

{ "requestID": "12345-abc-6789-0123-abc", "error": { "Arn": "arn:aws:ecs:us-west-2:555555555555:task/my-cluster-name/1234567890abcdef0", "Code": "ThrottlingException", "Message": "Rate exceeded" } }