Kirim ECS log Amazon 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 ECS log Amazon ke AWS layanan atau AWS Partner

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

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

Pertimbangkan hal berikut saat menggunakan FireLens untuk AmazonECS:

  • Kami menyarankan Anda my_service_ menambahkan nama wadah log sehingga Anda dapat dengan mudah membedakan nama kontainer di konsol.

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

  • FireLens untuk Amazon ECS didukung untuk tugas-tugas yang di-host AWS Fargate di Linux dan Amazon EC2 di Linux. Kontainer Windows tidak mendukung FireLens.

    Untuk informasi tentang cara mengonfigurasi pencatatan terpusat untuk kontainer Windows, lihat Pencatatan terpusat untuk kontainer Windows di Amazon ECS menggunakan Bit Lancar.

  • Anda dapat menggunakan AWS CloudFormation template untuk mengkonfigurasi FireLens untuk AmazonECS. Untuk informasi selengkapnya, lihat AWSECS::: TaskDefinition FirelensConfiguration di Panduan AWS CloudFormation Pengguna

  • FireLens mendengarkan di port24224, jadi untuk memastikan bahwa router FireLens log tidak dapat dijangkau di luar tugas, Anda tidak boleh mengizinkan lalu lintas masuk pada port 24224 dalam grup keamanan yang digunakan tugas Anda. Untuk tugas yang menggunakan mode awsvpc jaringan, ini adalah grup keamanan yang terkait dengan tugas tersebut. Untuk tugas yang menggunakan mode host jaringan, ini adalah grup keamanan yang terkait dengan EC2 instans Amazon 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 mengandalkannya 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 kontainer memiliki persyaratan START atau HEALTHY kondisi.

  • Secara default, FireLens menambahkan nama definisi klaster dan tugas serta Amazon Resource Name (ARN) dari cluster sebagai kunci metadata ke log kontainer stdout/stderr 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, atur enable-ecs-log-metadata ke false firelensConfiguration bagian definisi tugas.

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

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

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

  • Jika tugas Anda di-host 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 eksekusi tugas. IAM

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

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