View a markdown version of this page

Kirim log Amazon ECS ke AWS layanan atau AWS Partner - Amazon Elastic Container Service

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

Kirim log Amazon ECS ke AWS layanan atau AWS Partner

Anda dapat menggunakan Amazon ECS FireLens untuk menggunakan parameter definisi tugas untuk merutekan log ke tujuan AWS layanan atau AWS Partner Network (APN) untuk penyimpanan log dan analitik. Ini AWS Partner Network adalah komunitas mitra global yang memanfaatkan program, keahlian, dan sumber daya untuk membangun, memasarkan, dan menjual penawaran pelanggan. Untuk informasi lebih lanjut lihat AWS Partner. FireLensbekerja dengan Fluentd danFluent Bit. Kami menyediakan Fluent Bit gambar AWS untuk atau Anda dapat menggunakan gambar Anda sendiri Fluentd atau Fluent Bit gambar.

Secara default, Amazon ECS mengonfigurasi ketergantungan wadah sehingga wadah Firelens dimulai sebelum wadah apa pun yang menggunakannya. Wadah Firelens juga berhenti setelah semua wadah yang menggunakannya berhenti.

Untuk menggunakan fitur ini, Anda harus membuat peran IAM untuk tugas Anda yang menyediakan izin yang diperlukan untuk menggunakan AWS layanan apa pun yang diperlukan tugas. Misalnya, jika wadah merutekan log ke Firehose, tugas memerlukan izin untuk memanggil firehose:PutRecordBatch API. Untuk informasi selengkapnya, silakan lihat Menambahkan dan Menghapus Izin Identitas IAM dalam Panduan Pengguna IAM.

Tugas Anda mungkin juga memerlukan peran eksekusi tugas Amazon ECS dalam kondisi berikut. Untuk informasi selengkapnya, lihat Peran IAM pelaksanaan tugas Amazon ECS.

  • Jika tugas Anda dihosting di Fargate dan Anda menarik gambar kontainer dari Amazon ECR atau mereferensikan data sensitif dari AWS Secrets Manager konfigurasi log Anda, maka Anda harus menyertakan peran IAM eksekusi tugas.

  • Saat Anda menggunakan file konfigurasi khusus yang dihosting di Amazon S3, peran IAM eksekusi tugas Anda harus menyertakan s3:GetObject izin tersebut.

Pertimbangkan hal berikut saat menggunakan FireLens untuk Amazon ECS:

  • Sebaiknya tambahkan my_service_ ke nama wadah log sehingga Anda dapat dengan mudah membedakan nama wadah di konsol.

  • Amazon ECS menambahkan ketergantungan pesanan kontainer awal antara wadah aplikasi dan FireLens wadah secara default. Saat Anda menentukan urutan kontainer antara wadah aplikasi dan FireLens wadah, maka urutan kontainer awal default diganti.

  • FireLensuntuk Amazon ECS didukung untuk tugas-tugas yang dihosting AWS Fargate di Linux dan Amazon EC2 di Linux. Wadah Windows tidak mendukungFireLens.

    Untuk informasi tentang cara mengonfigurasi logging terpusat untuk wadah Windows, lihat Pencat atan terpusat untuk wadah Windows di Amazon ECS menggunakan Fluent Bit.

  • Anda dapat menggunakan CloudFormation templat FireLens untuk mengonfigurasi Amazon ECS. Untuk informasi selengkapnya, lihat AWS: :ECS:: TaskDefinition FirelensConfiguration di Panduan Pengguna AWS CloudFormation

  • FireLensmendengarkan pada port24224, jadi untuk memastikan bahwa router FireLens log tidak dapat dijangkau di luar tugas, Anda tidak boleh mengizinkan lalu lintas masuk pada port 24224 di grup keamanan yang digunakan tugas Anda. Untuk tugas yang menggunakan mode awsvpc jaringan, ini adalah grup keamanan yang terkait dengan tugas. Untuk tugas yang menggunakan mode host jaringan, ini adalah grup keamanan yang terkait dengan instans Amazon EC2 yang menghosting tugas tersebut. Untuk tugas yang menggunakan mode bridge jaringan, jangan membuat pemetaan port apa pun yang menggunakan port. 24224

  • Untuk tugas yang menggunakan mode bridge jaringan, wadah dengan FireLens konfigurasi harus dimulai sebelum wadah aplikasi apa pun yang bergantung padanya dimulai. Untuk mengendalikan urutan mulai kontainer Anda, gunakan syarat dependensi dalam ketentuan tugas Anda. Untuk informasi selengkapnya, lihat Dependensi kontainer.

    catatan

    Jika Anda menggunakan parameter kondisi ketergantungan dalam definisi kontainer dengan FireLens konfigurasi, pastikan bahwa setiap wadah memiliki persyaratan HEALTHY kondisi START atau.

  • Secara default, FireLens tambahkan nama definisi cluster dan tugas serta Nama Sumber Daya Amazon (ARN) dari cluster sebagai kunci metadata ke log stdout/stderr kontainer Anda. Berikut ini adalah contoh format metadata.

    "ecs_cluster": "cluster-name", "ecs_task_arn": "arn:aws:ecs:region:111122223333:task/cluster-name/f2ad7dba413f45ddb4EXAMPLE", "ecs_task_definition": "task-def-name:revision",

    Jika Anda tidak ingin metadata di log Anda, set false el enable-ecs-log-metadata ke di firelensConfiguration bagian definisi tugas.

    "firelensConfiguration":{ "type":"fluentbit", "options":{ "enable-ecs-log-metadata":"false", "config-file-type":"file", "config-file-value":"/extra.conf" }

Anda dapat mengonfigurasi FireLens wadah untuk dijalankan sebagai pengguna non-root. Pertimbangkan hal berikut:

  • Untuk mengonfigurasi FireLens wadah agar dijalankan sebagai pengguna non-root, Anda harus menentukan pengguna dalam salah satu format berikut:

    • uid

    • uid:gid

    • uid:group

    Untuk informasi selengkapnya tentang menentukan pengguna dalam definisi wadah, lihat Refer ContainerDefinition ensi API Layanan Kontainer Amazon Elastic.

    FireLensWadah menerima log aplikasi melalui so UNIX ket. Agen Amazon ECS menggunakan uid untuk menetapkan kepemilikan direktori soket ke FireLens wadah.

  • Mengkonfigurasi FireLens wadah untuk dijalankan sebagai pengguna non-root didukung pada versi Agen Amazon ECS dan yang lebih baru, 1.96.0 dan versi Amazon ECS-optimized AMI dan yang lebih baruv20250716.

  • Ketika Anda menentukan pengguna untuk FireLens wadah, itu uid harus unik dan tidak digunakan untuk proses lain milik wadah lain dalam tugas atau instance kontainer.

Untuk informasi tentang cara menggunakan beberapa file konfigurasi dengan Amazon ECS, termasuk file yang Anda host atau file di Amazon S3, lihat Proses Init untuk Fluent Bit di ECS, dukungan multi-konfigurasi.

Untuk informasi tentang contoh konfigurasi, lihatContoh definisi tugas Amazon ECS: Rute log ke FireLens.

Untuk informasi selengkapnya tentang mengonfigurasi log untuk throughput tinggi, lihatMengkonfigurasi log Amazon ECS untuk throughput tinggi.