ECSCluster Amazon untuk jenis peluncuran Fargate - Amazon Elastic Container Service

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

ECSCluster Amazon untuk jenis peluncuran Fargate

Penyedia ECS kapasitas Amazon mengelola penskalaan infrastruktur untuk tugas di cluster Anda. Setiap cluster dapat memiliki satu atau lebih penyedia kapasitas dan strategi penyedia kapasitas opsional. Strategi penyedia kapasitas menentukan bagaimana tugas-tugas tersebar di penyedia kapasitas klaster ini. Saat menjalankan tugas mandiri atau membuat layanan, Anda dapat menggunakan strategi penyedia kapasitas default kluster atau strategi penyedia kapasitas yang mengganti tugas default.

Ketika Anda menjalankan tugas Anda AWS Fargate, Anda tidak perlu membuat atau mengelola kapasitas. Anda hanya perlu mengaitkan salah satu penyedia kapasitas yang telah ditentukan sebelumnya berikut dengan cluster:

  • Fargate

  • Spot Fargate

Dengan Amazon ECS pada penyedia AWS Fargate kapasitas, Anda dapat menggunakan kapasitas Fargate dan Fargate Spot dengan tugas Amazon Anda. ECS

Dengan Fargate Spot, Anda dapat menjalankan ECS tugas Amazon yang toleran interupsi dengan tarif yang didiskon dibandingkan dengan harga Fargate. Spot Fargate menjalankan tugas pada kapasitas komputasi cadangan. Ketika AWS membutuhkan kapasitas kembali, tugas Anda terganggu dengan peringatan dua menit.

Saat tugas yang menggunakan penyedia kapasitas Fargate dan Fargate Spot dihentikan, peristiwa perubahan status tugas dikirim ke Amazon. EventBridge Alasan berhenti menggambarkan penyebabnya. Untuk informasi selengkapnya, lihat Acara perubahan status ECS tugas Amazon.

Sebuah cluster dapat berisi campuran penyedia kapasitas grup Fargate dan Auto Scaling. Namun, strategi penyedia kapasitas hanya dapat berisi penyedia kapasitas grup Fargate atau Auto Scaling, tetapi tidak keduanya. Untuk informasi selengkapnya, lihat Penyedia Kapasitas Grup Auto Scaling.

Pertimbangkan hal berikut saat menggunakan penyedia kapasitas:

  • Anda harus mengaitkan penyedia kapasitas dengan klaster sebelum mengaitkannya dengan strategi penyedia kapasitas.

  • Anda dapat menentukan maksimal 20 penyedia kapasitas untuk strategi penyedia kapasitas.

  • Anda tidak dapat memperbarui layanan menggunakan penyedia kapasitas grup Auto Scaling untuk menggunakan penyedia kapasitas Fargate. Yang sebaliknya juga terjadi.

  • Dalam strategi penyedia kapasitas, jika tidak ada weight nilai yang ditentukan untuk penyedia kapasitas di konsol, maka nilai default 1 digunakan. Jika menggunakan API or AWS CLI, nilai default 0 digunakan.

  • Ketika beberapa penyedia kapasitas ditentukan dalam strategi penyedia kapasitas, setidaknya salah satu penyedia kapasitas harus memiliki nilai bobot yang lebih besar dari nol. Setiap penyedia kapasitas dengan bobot nol tidak digunakan untuk menempatkan tugas. Jika Anda menentukan beberapa penyedia kapasitas dalam strategi dengan bobot nol yang sama, maka CreateService tindakan apa pun RunTask atau yang menggunakan strategi penyedia kapasitas gagal.

  • Dalam strategi penyedia kapasitas, hanya satu penyedia kapasitas yang dapat memiliki nilai dasar yang ditentukan. Jika tidak ada nilai dasar yang ditentukan, nilai default nol digunakan.

  • Sebuah cluster dapat berisi campuran penyedia kapasitas grup Auto Scaling dan penyedia kapasitas Fargate. Namun, strategi penyedia kapasitas hanya dapat berisi grup Auto Scaling atau penyedia kapasitas Fargate, tetapi tidak keduanya.

  • Cluster dapat berisi campuran layanan dan tugas mandiri yang menggunakan penyedia kapasitas dan jenis peluncuran. Layanan dapat diperbarui untuk menggunakan strategi penyedia kapasitas daripada jenis peluncuran. Namun, Anda harus memaksa penerapan baru saat melakukannya.

Pemberitahuan penghentian Fargate Spot

Selama periode permintaan yang sangat tinggi, kapasitas Fargate Spot mungkin tidak tersedia. Hal ini dapat menyebabkan tugas Fargate Spot tertunda. Ketika ini terjadi, ECS layanan Amazon mencoba lagi meluncurkan tugas hingga kapasitas yang diperlukan tersedia. Fargate tidak menggantikan kapasitas Spot dengan kapasitas on-demand.

Ketika tugas yang menggunakan kapasitas Fargate Spot dihentikan karena gangguan Spot, peringatan dua menit dikirim sebelum tugas dihentikan. Peringatan dikirim sebagai peristiwa perubahan status tugas ke Amazon EventBridge dan sebagai SIGTERM sinyal ke tugas yang sedang berjalan. Jika Anda menggunakan Fargate Spot sebagai bagian dari layanan, maka dalam skenario ini penjadwal layanan menerima sinyal interupsi dan mencoba meluncurkan tugas tambahan di Fargate Spot jika ada kapasitas yang tersedia. Layanan dengan hanya satu tugas terganggu sampai kapasitas tersedia. Untuk informasi lebih lanjut tentang penutupan yang anggun, lihat Penutupan anggun dengan. ECS

Untuk memastikan bahwa kontainer Anda keluar dengan anggun sebelum tugas berhenti, Anda dapat mengonfigurasi hal berikut:

  • Nilai stopTimeout selama 120 detik atau kurang dapat ditentukan dalam ketentuan kontainer yang digunakan oleh tugas. stopTimeoutNilai defaultnya adalah 30 detik. Anda dapat menentukan stopTimeout nilai yang lebih panjang untuk memberi diri Anda lebih banyak waktu antara saat peristiwa perubahan status tugas diterima dan titik waktu ketika penampung dihentikan secara paksa. Untuk informasi selengkapnya, lihat Waktu habis kontainer.

  • SIGTERMSinyal harus diterima dari dalam wadah untuk melakukan tindakan pembersihan apa pun. Kegagalan untuk memproses sinyal ini mengakibatkan tugas menerima SIGKILL sinyal setelah dikonfigurasi stopTimeout dan dapat mengakibatkan kehilangan data atau korupsi.

Berikut ini adalah cuplikan dari peristiwa perubahan status tugas. Cuplikan ini menampilkan alasan berhenti dan kode berhenti untuk gangguan Fargate Spot.

{ "version": "0", "id": "9bcdac79-b31f-4d3d-9410-fbd727c29fab", "detail-type": "ECS Task State Change", "source": "aws.ecs", "account": "111122223333", "resources": [ "arn:aws:ecs:us-east-1:111122223333:task/b99d40b3-5176-4f71-9a52-9dbd6f1cebef" ], "detail": { "clusterArn": "arn:aws:ecs:us-east-1:111122223333:cluster/default", "createdAt": "2016-12-06T16:41:05.702Z", "desiredStatus": "STOPPED", "lastStatus": "RUNNING", "stoppedReason": "Your Spot Task was interrupted.", "stopCode": "SpotInterruption", "taskArn": "arn:aws:ecs:us-east-1:111122223333:task/b99d40b3-5176-4f71-9a52-9dbd6fEXAMPLE", ... } }

Berikut ini adalah pola peristiwa yang digunakan untuk membuat EventBridge aturan untuk peristiwa perubahan status ECS tugas Amazon. Anda dapat secara opsional menentukan cluster di detail lapangan. Melakukannya berarti Anda akan menerima peristiwa perubahan status tugas untuk cluster itu. Untuk informasi selengkapnya tentang membuat EventBridge aturan, lihat Memulai Amazon EventBridge di Panduan EventBridge Pengguna Amazon.

{ "source": [ "aws.ecs" ], "detail-type": [ "ECS Task State Change" ], "detail": { "clusterArn": [ "arn:aws:ecs:us-west-2:111122223333:cluster/default" ] } }