Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Instans EC2 Kontainer Amazon ECS
Agen Amazon ECS adalah proses yang berjalan pada setiap instance container yang terdaftar di klaster Anda. Ini memfasilitasi komunikasi antara instans kontainer Anda dan Amazon ECS.
catatan
Pada instance kontainer Linux, container agen memasang direktori tingkat atas seperti/lib
,, dan. /lib64
/proc
Ini diperlukan untuk fitur dan fungsi ECS seperti volume Amazon EBS, mode awsvpc
jaringan, Amazon ECS Service Connect, dan FireLens untuk Amazon ECS.
Setiap versi agen penampung Amazon ECS mendukung set fitur yang berbeda dan menyediakan perbaikan bug dari versi sebelumnya. Jika memungkinkan, kami selalu merekomendasikan menggunakan versi terbaru dari agen kontainer Amazon ECS. Untuk memperbarui agen kontainer ke versi terbaru, lihat Memperbarui agen kontainer Amazon ECS.
Agen kontainer Amazon ECS berisi amazon-ecs-pause
gambar.Amazon ECS menggunakan gambar ini untuk tugas-tugas yang menggunakan mode jaringan. awsvpc
penting
Versi Docker minimum untuk metrik yang andal adalah versi Docker v20.10.13
dan yang lebih baru, yang disertakan dalam AMI yang dioptimalkan Amazon ECS dan yang lebih baru. 20220607
Versi agen Amazon ECS 1.20.0
dan yang lebih baru telah menghentikan dukungan untuk versi Docker yang lebih lama dari. 18.01.0
Siklus hidup
Saat agen penampung Amazon ECS mendaftarkan EC2 instans Amazon ke klaster Anda, EC2 instans Amazon melaporkan statusnya sebagai ACTIVE
dan status koneksi agennya sebagai. TRUE
Instance container ini dapat menerima permintaan tugas run.
Jika Anda menghentikan (tidak menghentikan) instance kontainer, statusnya tetap adaACTIVE
, tetapi status koneksi agen bertransisi ke FALSE
dalam beberapa menit. Tugas yang berjalan pada instans kontainer berhenti. Jika Anda memulai instance kontainer lagi, agen kontainer akan terhubung kembali dengan layanan Amazon ECS, dan Anda dapat menjalankan tugas pada instance lagi.
penting
Jika Anda menghentikan dan memulai instance container, atau me-reboot instance tersebut, beberapa versi lama dari agen penampung Amazon ECS akan mendaftarkan instance tersebut lagi tanpa membatalkan pendaftaran ID instance container asli. Dalam hal ini, Amazon ECS mencantumkan lebih banyak instance container di cluster Anda daripada yang sebenarnya Anda miliki. (Jika Anda memiliki instance penampung duplikat IDs untuk ID EC2 instans Amazon yang sama, Anda dapat dengan aman membatalkan pendaftaran duplikat yang terdaftar sebagai ACTIVE
dengan status koneksi agen.) FALSE
Masalah ini telah diperbaiki dalam versi agen kontainer Amazon ECS saat ini. Untuk informasi selengkapnya tentang memperbarui versi CNI Anda, lihat Memperbarui agen kontainer Amazon ECS.
Jika Anda mengubah status instans kontainer ke DRAINING
, maka tugas baru tidak ditempatkan pada instans kontainer. Tugas layanan yang berjalan pada instans kontainer akan dihapus jika memungkinkan, agar Anda dapat melakukan pembaruan sistem. Untuk informasi selengkapnya, lihat Menguras instans kontainer Amazon ECS.
Jika Anda membatalkan pendaftaran atau mengakhiri instans kontainer, maka status instans kontainer seketika berubah menjadi INACTIVE
, dan instans kontainer tidak lagi dilaporkan ketika Anda mencantumkan instans kontainer Anda. Namun, Anda tetap dapat menjelaskan instans kontainer selama satu jam setelah penghentian. Setelah satu jam, deskripsi instans tidak lagi tersedia.
penting
Anda dapat menguras instance secara manual, atau membuat hook siklus hidup grup Auto Scaling untuk menyetel status instans. DRAINING
Lihat kait siklus hidup EC2 Auto Scaling Amazon untuk informasi selengkapnya tentang kait siklus hidup Auto Scaling.
Support Docker
Amazon ECS mendukung dua versi utama terakhir dari Docker yang diterbitkan di Amazon Linux. Saat ini, ini termasuk Docker 20.10.x dan Docker 25.x.
Versi Docker minimum yang diperlukan untuk Amazon ECS dapat ditemukan di file spesifikasi Amazon ECS Agent
Saat menggunakan AMI Amazon ECS yang dioptimalkan, Docker sudah diinstal sebelumnya dan dikonfigurasi untuk bekerja dengan agen penampung Amazon ECS. AMI menyertakan versi Docker yang diuji dan didukung oleh Amazon ECS.
catatan
Meskipun Amazon ECS mendukung beberapa versi Docker, sebaiknya gunakan versi Docker yang disertakan dengan AMI Amazon ECS yang dioptimalkan untuk kompatibilitas dan dukungan terbaik.
AMI Amazon ECS yang dioptimalkan
Varian Linux dari AMI Amazon ECS yang dioptimalkan menggunakan Amazon Linux 2 AMI sebagai basis mereka. Nama AMI sumber Amazon Linux 2 untuk setiap varian dapat diambil dengan menanyakan Systems Manager Parameter Store API. Untuk informasi selengkapnya, lihat Mengambil metadata AMI Linux Amazon ECS yang dioptimalkan. Saat Anda meluncurkan instans kontainer kami dari Amazon Linux 2 AMI Amazon ECS terbaru yang dioptimalkan Amazon ECS, Anda menerima versi agen kontainer saat ini. Untuk meluncurkan instans kontainer dengan Amazon Linux 2 AMI Amazon ECS terbaru yang dioptimalkan oleh Amazon ECS, lihat. Meluncurkan instans penampung Amazon ECS Linux
Informasi tambahan
Halaman-halaman berikut memberikan informasi tambahan tentang perubahan:
-
Kode sumber untuk
ecs-init
aplikasi dan skrip dan konfigurasi untuk pengemasan agen sekarang menjadi bagian dari repositori agen. Untuk versiecs-init
dan kemasan yang lebih lama, lihat Amazon ecs-initchangelog di GitHub -
Catatan rilis Docker Engine
dalam dokumentasi Docker -
Dokumentasi Driver NVIDIA
dalam dokumentasi NVIDIA
Parameter konfigurasi log agen kontainer Amazon ECS
Agen kontainer Amazon ECS menyimpan log pada instans kontainer Anda.
Untuk agen kontainer versi 1.36.0 dan yang lebih baru, secara default log terletak di /var/log/ecs/ecs-agent.log
pada instans Linux dan di C:\ProgramData\Amazon\ECS\log\ecs-agent.log
pada instans Windows.
Untuk agen kontainer versi 1.35.0 dan sebelumnya, secara default log terletak di /var/log/ecs/ecs-agent.log.
pada instans Linux dan di timestamp
C:\ProgramData\Amazon\ECS\log\ecs-agent.log.
pada instans Windows.timestamp
Secara default, log agen diputar per jam dengan maksimum 24 log yang disimpan.
Berikut ini adalah variabel konfigurasi agen kontainer yang dapat digunakan untuk mengubah perilaku pencatatan agen default. Untuk informasi terperinci tentang semua parameter konfigurasi yang tersedia, lihat Konfigurasi agen kontainer Amazon ECS atau README Agen Amazon ECS
Untuk agen kontainer versi 1.36.0 dan yang lebih baru, berikut ini adalah contoh berkas log ketika format logfmt
digunakan.
level=info time=2019-12-12T23:43:29Z msg="Loading configuration" module=agent.go
level=info time=2019-12-12T23:43:29Z msg="Image excluded from cleanup: amazon/amazon-ecs-agent:latest" module=parse.go
level=info time=2019-12-12T23:43:29Z msg="Image excluded from cleanup: amazon/amazon-ecs-pause:0.1.0" module=parse.go
level=info time=2019-12-12T23:43:29Z msg="Amazon ECS agent Version: 1.36.0, Commit: ca640387" module=agent.go
level=info time=2019-12-12T23:43:29Z msg="Creating root ecs cgroup: /ecs" module=init_linux.go
level=info time=2019-12-12T23:43:29Z msg="Creating cgroup /ecs" module=cgroup_controller_linux.go
level=info time=2019-12-12T23:43:29Z msg="Loading state!" module=statemanager.go
level=info time=2019-12-12T23:43:29Z msg="Event stream ContainerChange start listening..." module=eventstream.go
level=info time=2019-12-12T23:43:29Z msg="Restored cluster 'auto-robc'" module=agent.go
level=info time=2019-12-12T23:43:29Z msg="Restored from checkpoint file. I am running as 'arn:aws:ecs:us-west-2:0123456789:container-instance/auto-robc/3330a8a91d15464ea30662d5840164cd' in cluster 'auto-robc'" module=agent.go
Berikut ini contoh berkas log ketika format JSON digunakan.
{"time": "2019-11-07T22:52:02Z", "level": "info", "msg": "Starting Amazon Elastic Container Service Agent", "module": "engine.go"}
Untuk agen kontainer versi 1.35.0 dan sebelumnya, berikut adalah format berkas log.
2016-08-15T15:54:41Z [INFO] Starting Agent: Amazon ECS Agent - v1.12.0 (895f3c1)
2016-08-15T15:54:41Z [INFO] Loading configuration
2016-08-15T15:54:41Z [WARN] Invalid value for task cleanup duration, will be overridden to 3h0m0s, parsed value 0, minimum threshold 1m0s
2016-08-15T15:54:41Z [INFO] Checkpointing is enabled. Attempting to load state
2016-08-15T15:54:41Z [INFO] Loading state! module="statemanager"
2016-08-15T15:54:41Z [INFO] Detected Docker versions [1.17 1.18 1.19 1.20 1.21 1.22]
2016-08-15T15:54:41Z [INFO] Registering Instance with ECS
2016-08-15T15:54:41Z [INFO] Registered! module="api client"