全部产品
Search
文档中心

Container Service for Kubernetes:Gambaran Umum Logging

更新时间:Jul 06, 2025

Aplikasi, kontainer, dan komponen infrastruktur dalam sebuah klaster terus-menerus menghasilkan sejumlah besar data log yang tersebar, sehingga sulit untuk dikumpulkan dan dikelola. Container Service for Kubernetes (ACK) terintegrasi dengan Simple Log Service (SLS) untuk menyederhanakan manajemen log.

Catatan

Untuk informasi lebih lanjut tentang fitur dan istilah SLS, lihat Apa itu Simple Log Service? dan Istilah.

Pengenalan komponen pengumpulan log

Komponen pengumpulan log disediakan oleh SLS untuk mengotomatiskan penemuan dan pengumpulan log dari klaster ACK. Anda dapat menggunakan komponen-komponen ini untuk menyederhanakan manajemen log. Komponen-komponen tersebut mendukung berbagai jenis log, termasuk log teks, log biner, dan log HTTP. Log yang dikumpulkan dapat disimpan secara permanen di SLS. SLS memungkinkan Anda untuk menanyai dan menganalisis log secara real-time, membantu mengidentifikasi masalah dengan cepat. Ini meningkatkan efisiensi pemecahan masalah dan mengurangi biaya O&M. Berikut adalah komponen pengumpulan log yang didukung:

  • Pengumpulan Data Berbasis LoongCollector: LoongCollector adalah agen pengumpulan log generasi baru yang disediakan oleh Simple Log Service. LoongCollector merupakan versi ditingkatkan dari Logtail. LoongCollector diharapkan dapat mengintegrasikan kemampuan agen pengumpulan tertentu dari Application Real-Time Monitoring Service (ARMS), seperti pengumpulan data berbasis Managed Service for Prometheus dan teknologi Extended Berkeley Packet Filter (eBPF) untuk pengumpulan data non-intrusif.

  • Pengumpulan Data Berbasis Logtail: Logtail adalah agen pengumpulan log yang disediakan oleh Simple Log Service. Anda dapat menggunakan Logtail untuk mengumpulkan log dari berbagai sumber data, seperti instance Alibaba Cloud Elastic Compute Service (ECS), server di pusat data, dan server dari penyedia layanan cloud pihak ketiga. Logtail mendukung pengumpulan log non-intrusif berdasarkan file log. Anda tidak perlu memodifikasi kode aplikasi Anda, dan pengumpulan log tidak mempengaruhi operasi aplikasi Anda.

Pengumpulan log

Bagian ini menjelaskan dua metode yang dapat digunakan untuk mengonfigurasi pengumpulan log.

Prosedur pengumpulan

Anda dapat menginstal komponen pengumpulan log di klaster ACK untuk mengamankan pengumpulan dan transmisi berbagai jenis data ke SLS untuk penyimpanan dan analisis. Hal ini menyederhanakan konfigurasi pengumpulan log dan manajemen log serta meningkatkan efisiensi pengumpulan log. Gambar berikut menggambarkan prosedur pengumpulan.

Prosedur pengumpulan mencakup langkah-langkah berikut:

  1. Menyebarkan Komponen Pengumpulan Log

    Saat Anda menginstal komponen pengumpulan log di klaster Anda, ACK membuat objek CustomResourceDefinition (CRD) bernama AliyunLogConfig. ACK juga membuat objek spesifik untuk komponen pengumpulan log untuk mengaitkan objek AliyunLogConfig dengan konfigurasi pengumpulan SLS.

    • Objek yang dibuat untuk LoongCollector: loongcollector-ds (DaemonSet), loongcollector-operator (Deployment), dan alibaba-log-configuration (ConfigMap).

    • Objek yang dibuat untuk Logtail: logtail-ds (DaemonSet), alibaba-log-controller (Deployment), dan alibaba-log-configuration (ConfigMap).

  2. Mengonfigurasi Pengumpulan Log: Komponen pengumpulan log mendapatkan konfigurasi pengumpulan yang Anda buat dan mengumpulkan log berdasarkan konfigurasi tersebut.

    Buat konfigurasi pengumpulan log. Anda dapat menggunakan konsol ACK, CRD, atau variabel lingkungan untuk membuat konfigurasi pengumpulan log. Untuk informasi lebih lanjut, lihat Kumpulkan Log Teks dari Kontainer Kubernetes dalam Mode DaemonSet, Kumpulkan stdout dan stderr dari Kontainer Kubernetes dalam Mode DaemonSet (versi lama), dan Kumpulkan Log Teks dari Kontainer Kubernetes dalam Mode Sidecar.

  3. Laporkan Log ke SLS: Komponen pengumpulan log mengirim log ke SLS secara real-time.

Metode pengumpulan

Dalam klaster Kubernetes, Anda dapat menggunakan mode Sidecar atau DaemonSet untuk mengumpulkan log. Setiap metode memiliki prosedur pengumpulan dan skenario penggunaan yang berbeda.

Kategori

Mode DaemonSet

Mode Sidecar

Skema Penggunaan

Sebuah klaster memiliki klasifikasi log yang jelas dan fungsi tunggal.

  • Sebuah klaster dimiliki oleh satu penyewa dan memiliki fungsi tunggal atau sedikit layanan.

  • Anda ingin menggunakan konfigurasi pengumpulan log yang sama untuk semua kontainer pada node yang sama.

  • Anda ingin mengumpulkan aliran stdout.

  • Konsumsi sumber daya rendah.

Klaster besar, hibrida

Jika Anda memerlukan konfigurasi pengumpulan log yang berbeda untuk setiap pod, Anda dapat menggunakan metode ini untuk mengumpulkan log. Namun, pod tunggal dalam mode ini menghasilkan sejumlah besar log dan mengonsumsi banyak sumber daya.

Penggunaan Sumber Daya

Jalankan pod kolektor log di setiap node.

Jalankan kontainer kolektor log di setiap pod.

Penyebaran dan O&M

Anda hanya perlu memelihara DaemonSet.

Anda perlu menyebarkan kontainer kolektor log di setiap pod bisnis.

Tipe Log

stdout dan log teks.

Log teks.

Tipe log yang didukung

Dalam klaster ACK, Anda dapat mengumpulkan data log dari berbagai sumber dan mengamankan transmisi data log ke SLS untuk penyimpanan dan analisis.

Tipe log

Deskripsi

Referensi

Log aplikasi (kontainer)

Data log dari kontainer dalam klaster ACK dapat dikumpulkan dengan cepat. Data log mencakup stdout dan file teks.

Log komponen bidang kontrol

Log dikumpulkan dari komponen bidang kontrol, seperti API server, kube-scheduler, kube-controller-manager, cloud-controller-manager, Controlplane-Events, dan Application Load Balancer (ALB) Ingress controller. Log dikirim ke Logstore tertentu. Komponen ini memfasilitasi manajemen dan analisis terpusat status operasi komponen bidang kontrol. Ini membantu Anda dengan cepat memecahkan masalah, memantau status kesehatan komponen, dan memverifikasi efek konfigurasi parameter kustom.

Setiap Logstore sesuai dengan komponen bidang kontrol Kubernetes.

Kumpulkan log komponen bidang kontrol klaster ACK yang dikelola

Log komponen jaringan

  • Log akses komponen Ingress dapat dikumpulkan untuk membantu Anda memantau dinamika lalu lintas di lapisan akses aplikasi Anda.

  • Anda dapat mengumpulkan log CoreDNS untuk mengidentifikasi dan menyelesaikan masalah, seperti resolusi DNS lambat dan permintaan akses abnormal.

Log komponen bidang data

Log dari plug-in volume, Terway, Flannel, dan komponen auto scaling dapat dikumpulkan.

Kumpulkan log komponen bidang data

Batasan

Item

Deskripsi

Versi Kubernetes

  • Saat Anda mengumpulkan log dalam mode DaemonSet, Kubernetes 1.10.0 atau lebih tinggi diperlukan. HostToContainer mount propagation harus didukung.

  • Saat Anda menggunakan definisi sumber daya kustom (CRD) untuk mengumpulkan log, Kubernetes 1.16.0 atau lebih tinggi diperlukan, dan komponen alibaba-log-controller harus diinstal.

    API apiextensions.k8s.io/v1beta1 yang disediakan oleh Kubernetes 1.7.0 dan lebih tinggi juga mendukung CRD. Namun, stabilitas API dalam versi Beta bervariasi berdasarkan versi Kubernetes yang ditentukan.

LoongCollector

  • loongcollector-ds: Setidaknya 0,1 core CPU dan 256 MB memori harus dicadangkan di setiap node.

  • loongcollector-operator: Setidaknya 0,1 core CPU dan 128 MB memori harus dicadangkan di setiap node.

logtail-ds

    Untuk informasi lebih lanjut tentang batasan, lihat Batasan Logtail.

    Penagihan

    Biaya yang dikeluarkan oleh SLS dalam klaster ACK adalah jumlah dari biaya manajemen klaster dan biaya SLS.

    • Biaya manajemen klaster dikenakan oleh ACK. Biaya manajemen klaster hanya dikenakan untuk klaster Pro ACK yang dikelola. Tidak ada biaya manajemen klaster yang dikenakan untuk klaster Basic ACK yang dikelola atau klaster khusus ACK. Untuk informasi lebih lanjut, lihat Gambaran Umum Penagihan.

    • Biaya SLS dikenakan berdasarkan sistem bayar sesuai penggunaan. Biaya Logstore dikenakan oleh SLS. Untuk informasi lebih lanjut, lihat Gambaran Umum Penagihan.

    FAQ

    Bagaimana cara menyalin log dari satu proyek ke proyek lain?

    Anda dapat mereplikasi log akses dari Logstore logstore-a di proyek project-a ke Logstore logstore-b di proyek project-b. Ini memungkinkan Anda untuk menanyai dan menganalisis data di proyek project-b secara terpusat. Untuk informasi lebih lanjut, lihat Replikasi Data dari Logstore.

    Apa yang harus saya lakukan jika status pengumpulan log tidak normal?

    Saat Anda menggunakan Logtail untuk mengumpulkan log dari kontainer Docker standar atau kontainer Kubernetes, kesalahan mungkin terjadi. Untuk informasi lebih lanjut tentang cara memecahkan kesalahan dan memeriksa status operasi Logtail, lihat Apa yang harus saya lakukan jika kesalahan terjadi saat saya mengumpulkan log dari kontainer?

    FAQ tentang kehilangan log, penghapusan log, dan pengurangan biaya log

    Untuk informasi lebih lanjut tentang cara mengubah periode retensi log dan menonaktifkan pengumpulan log, lihat FAQ tentang Logstore.

    Masalah terkait Logtail

    Untuk informasi lebih lanjut tentang latensi pengumpulan Logtail, cara mengumpulkan log historis, dan waktu efektif konfigurasi Logtail, lihat FAQ tentang Logtail.

    Hubungi kami

    Jika Anda memiliki pertanyaan tentang ACK, hubungi kami.