Topik ini menjelaskan cara memantau sebuah kontainer Docker untuk membantu perusahaan mengelola dan memelihara aplikasi berbasis kontainer dengan lebih baik.
Prasyarat
Managed Service for Prometheus telah diaktifkan. Untuk informasi lebih lanjut, lihat Penagihan Instance.
Sebuah Instance ECS telah dibuat. Untuk informasi lebih lanjut, lihat Buat dan kelola instance ECS menggunakan konsol ECS (versi ekspres).
Pusat Sumber Daya Alibaba Cloud telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktivasi Pusat Sumber Daya.
Langkah 1: Integrasikan sebuah kontainer Docker
Masuk ke Konsol Managed Service for Prometheus. Di panel navigasi sebelah kiri, klik Integration Center.
Klik Docker Container. Di panel yang muncul, atur parameter sesuai petunjuk. Berikut adalah deskripsi parameter utama.
Parameter
Deskripsi
cAdvisor Installation Mode
Container Advisor (cAdvisor) adalah alat pemantauan kontainer open source yang dikembangkan oleh Google. Ini mengumpulkan metrik penggunaan sumber daya seperti CPU, memori, jaringan, dan utilitas disk untuk kontainer.
Instalasi otomatis: Penemuan layanan otomatis dilakukan berdasarkan kondisi filter yang Anda berikan, mengidentifikasi instance ECS dan menginstal layanan cAdvisor pada instance yang ditemukan.
Instalasi manual: Sebelum mengintegrasikan kontainer, Anda perlu secara manual menginstal layanan cAdvisor pada instance ECS Anda dan membuka port yang sesuai untuk mengizinkan akses dalam virtual private cloud (VPC).
CatatanDaftar putih instance ECS harus membuka port tertentu untuk VPC.
Host Service Discovery Mode
Tentukan opsi berikut untuk memilih instance ECS.
Stain Label Selection
ECS Stain Label: mengecualikan instance ECS yang menggunakan noda.
Unconditional (Select all Windows instances in the current VPC)
-
Tag Label Selection
ECS Instance Label: mencocokkan instance ECS menggunakan tag.
IP CIDR
ECS IP CIDR: mencocokkan instance ECS yang memiliki awalan IP atau beberapa bit tertentu. Jika Anda menentukan blok CIDR dari VPC, semua instance ECS di VPC dipilih.
Instance ID
ECS Instance ID: ID dari instance ECS. Pisahkan beberapa ID instance dengan koma (,).
cAdvisor Service Port
Nilai default: 8080.
Metric Scrape interval (unit/second)
Nilai default: 15.
Security Groups Are Automatically Configured
Tentukan apakah akan menambahkan aturan kelompok keamanan secara otomatis jika pemeriksaan kelompok keamanan gagal.
Custom ECS Tag Injection
Tentukan kunci tag dari instance ECS. Kemudian, seluruh pasangan nilai kunci ditambahkan ke metrik.
Langkah 2: Lihat dashboard
Managed Service for Prometheus menyediakan beberapa dashboard bawaan untuk menampilkan detail pemantauan seperti gambaran kontainer, komponen inti, node, dan pod. Anda dapat melihat dashboard ini di Container Service for Kubernetes, Application Real-Time Monitoring Service, atau Konsol Managed Service for Prometheus. Ikuti langkah-langkah berikut untuk melihat dashboard:
Masuk ke Konsol Managed Service for Prometheus. Di panel navigasi sebelah kiri, klik Integration Management.
Di halaman Integration Management, klik tab Query Dashboards. Pilih VPC untuk melihat dashboard kontainer.

Langkah 3: Konfigurasikan peringatan
Masuk ke Konsol Managed Service for Prometheus. Di panel navigasi sebelah kiri, klik Integration Management.
Di halaman Integration Management, klik tab Integrated Environments. Di tab ECS Instance, klik nama VPC.
Di tab Component Management, lihat aturan peringatan bawaan di bagian Aturan Peringatan.
Aturan peringatan bawaan menghasilkan peristiwa peringatan tanpa mengirimkan notifikasi peringatan. Jika ingin mengonfigurasi metode notifikasi untuk suatu aturan peringatan, klik Edit di kolom Tindakan.
Di halaman Edit Aturan Peringatan Prometheus, Anda dapat mengonfigurasi ambang batas peringatan kustom, durasi, dan isi peringatan. Untuk informasi lebih lanjut, lihat Buat aturan peringatan untuk instance Prometheus.

Metrik
Metrik | Pengukuran | Deskripsi |
container_blkio_device_usage_total | COUNTER | Penggunaan byte perangkat I/O blok. |
container_cpu_cfs_periods_total | COUNTER | Jumlah interval periode penegakan yang telah berlalu. |
container_cpu_cfs_throttled_periods_total | COUNTER | Jumlah interval periode yang telah dibatasi. |
container_cpu_cfs_throttled_seconds_total | COUNTER | Total durasi waktu ketika kontainer telah dibatasi. |
container_cpu_load_average_10s | GAUGE | Nilai rata-rata beban CPU kontainer selama 10 detik terakhir. |
container_cpu_schedstat_run_periods_total | COUNTER | Jumlah kali proses grup kontrol (cgroup) telah berjalan di CPU. |
container_cpu_schedstat_runqueue_seconds_total | COUNTER | Durasi waktu ketika proses kontainer telah menunggu di antrian run. |
container_cpu_schedstat_run_seconds_total | COUNTER | Durasi waktu ketika proses kontainer telah berjalan di CPU. |
container_cpu_system_seconds_total | COUNTER | Waktu total yang dikonsumsi oleh CPU sistem. |
container_cpu_usage_seconds_total | COUNTER | Waktu CPU total yang dikonsumsi. |
container_cpu_user_seconds_total | COUNTER | Waktu total yang dikonsumsi oleh CPU pengguna. |
container_file_descriptors | GAUGE | Jumlah deskriptor file yang terbuka untuk kontainer. |
container_fs_inodes_free | GAUGE | Jumlah Inode yang tersedia. |
container_fs_inodes_total | GAUGE | Jumlah total Inode. |
container_fs_io_current | GAUGE | Jumlah I/O yang sedang berlangsung. |
container_fs_io_time_seconds_total | COUNTER | Jumlah total detik yang dihabiskan oleh I/O. |
container_fs_io_time_weighted_seconds_total | COUNTER | Jumlah total waktu I/O tertimbang. |
container_fs_limit_bytes | GAUGE | Jumlah byte yang dapat dikonsumsi oleh kontainer pada sistem file. |
container_fs_read_seconds_total | COUNTER | Jumlah total detik yang dihabiskan untuk membaca. |
container_fs_reads_bytes_total | COUNTER | Jumlah total byte yang dibaca. |
container_fs_reads_merged_total | COUNTER | Jumlah total pembacaan gabungan. |
container_fs_reads_total | COUNTER | Jumlah total pembacaan yang selesai. |
container_fs_sector_reads_total | COUNTER | Jumlah total pembacaan sektor yang selesai. |
container_fs_sector_writes_total | COUNTER | Jumlah total penulisan sektor yang selesai. |
container_fs_usage_bytes | GAUGE | Jumlah byte yang dikonsumsi oleh kontainer pada sistem file. |
container_fs_write_seconds_total | COUNTER | Jumlah total detik yang dihabiskan untuk menulis. |
container_fs_writes_bytes_total | COUNTER | Jumlah total byte yang ditulis. |
container_fs_writes_merged_total | COUNTER | Jumlah total penulisan gabungan. |
container_fs_writes_total | COUNTER | Jumlah total penulisan yang selesai. |
container_enormoustlb_failcnt | COUNTER | Jumlah kali penggunaan enormouspage mencapai batas. |
container_enormoustlb_max_usage_bytes | GAUGE | Penggunaan enormouspage maksimum yang tercatat. |
container_enormoustlb_usage_bytes | GAUGE | Penggunaan enormouspage saat ini. |
container_last_seen | GAUGE | Waktu terakhir kontainer terlihat. |
container_llc_occupancy_bytes | GAUGE | Penggunaan cache tingkat terakhir untuk kontainer dihitung dengan Resource Director Technology (RDT) Memory Bandwidth Monitoring (MBM). |
container_memory_bandwidth_bytes | GAUGE | Total penggunaan bandwidth memori untuk kontainer dihitung dengan RDT MBM. |
container_memory_bandwidth_local_bytes | GAUGE | Penggunaan bandwidth memori lokal untuk kontainer dihitung dengan RDT MBM. |
container_memory_cache | GAUGE | Total memori cache halaman. |
container_memory_failcnt | COUNTER | Jumlah kali penggunaan memori melebihi batas. |
container_memory_failures_total | COUNTER | Jumlah total kegagalan alokasi memori. |
container_memory_mapped_file | GAUGE | Ukuran file memori yang dipetakan. |
container_memory_max_usage_bytes | GAUGE | Penggunaan memori maksimum. |
container_memory_migrate | GAUGE | Status migrasi memori. |
container_memory_numa_pages | GAUGE | Jumlah halaman yang digunakan per node Non-Uniform Memory Access (NUMA). |
container_memory_rss | GAUGE | Ukuran Resident Set Size (RSS). |
container_memory_swap | GAUGE | Penggunaan swap kontainer. |
container_memory_usage_bytes | GAUGE | Penggunaan memori saat ini. |
container_memory_working_set_bytes | GAUGE | Set kerja saat ini. |
container_network_advance_tcp_stats_total | GAUGE | Jumlah total koneksi TCP lanjutan untuk kontainer. |
container_network_receive_bytes_total | COUNTER | Jumlah total byte yang diterima. |
container_network_receive_errors_total | COUNTER | Jumlah total kesalahan yang ditemui saat menerima. |
container_network_receive_packets_dropped_total | COUNTER | Jumlah total paket yang dijatuhkan saat menerima. |
container_network_receive_packets_total | COUNTER | Jumlah total paket yang diterima. |
container_network_tcp6_usage_total | GAUGE | Jumlah koneksi TCP6 untuk kontainer. |
container_network_tcp_usage_total | GAUGE | Jumlah koneksi TCP untuk kontainer. |
container_network_transmit_bytes_total | COUNTER | Jumlah total byte yang ditransmisikan. |
container_network_transmit_errors_total | COUNTER | Jumlah total kesalahan yang ditemui saat mentransmisikan. |
container_network_transmit_packets_dropped_total | COUNTER | Jumlah total paket yang dijatuhkan saat mentransmisikan. |
container_network_transmit_packets_total | COUNTER | Jumlah total paket yang ditransmisikan. |
container_network_udp6_usage_total | GAUGE | Jumlah koneksi UDP6 untuk kontainer. |
container_network_udp_usage_total | GAUGE | Jumlah koneksi UDP untuk kontainer. |
container_oom_events_total | COUNTER | Jumlah peristiwa kehabisan memori yang diamati untuk kontainer. |
container_perf_events_scaling_ratio | GAUGE | Rasio penskalaan untuk penghitung acara perf. |
container_perf_events_total | COUNTER | Penghitung acara inti perf yang diskalakan. |
container_perf_uncore_events_scaling_ratio | GAUGE | Rasio penskalaan untuk penghitung acara uncore perf. Acara dapat diidentifikasi oleh label acara. Label "PMU" dan "socket" menunjukkan Performance Monitoring Unit (PMU) dan soket CPU tempat acara diukur. |
container_perf_uncore_events_total | COUNTER | Penghitung acara uncore perf yang diskalakan. Acara dapat diidentifikasi oleh label acara. Label "PMU" dan "socket" menunjukkan PMU dan soket CPU tempat acara diukur. |
container_processes | GAUGE | Jumlah proses yang berjalan di dalam kontainer. |
container_referenced_bytes | GAUGE | Byte referensi kontainer selama siklus pengukuran terakhir berdasarkan bidang Referenced dari file /proc/smaps. |
container_sockets | GAUGE | Jumlah soket terbuka untuk kontainer. |
container_spec_cpu_period | GAUGE | Periode CPU kontainer. |
container_spec_cpu_quota | GAUGE | Kuota CPU kontainer. |
container_spec_cpu_shares | GAUGE | Bagian CPU kontainer. |
container_spec_memory_limit_bytes | GAUGE | Batas memori kontainer. |
container_spec_memory_reservation_limit_bytes | GAUGE | Batas reservasi memori untuk kontainer. |
container_spec_memory_swap_limit_bytes | GAUGE | Batas swap memori untuk kontainer. |
container_start_time_seconds | GAUGE | Waktu mulai kontainer. Format: Timestamp Unix. |
container_tasks_state | GAUGE | Jumlah tugas dalam status tertentu (tidur, berjalan, berhenti, tidak terganggu, dan menunggu I/O). |
container_threads | GAUGE | Jumlah thread yang berjalan di dalam kontainer. |
container_threads_max | GAUGE | Jumlah maksimum thread yang diizinkan di dalam kontainer. |
container_ulimits_soft | GAUGE | Nilai ulimit lunak dari proses root kontainer. |
machine_cpu_cache_capacity_bytes | GAUGE | Ukuran cache dalam byte yang dialokasikan ke node NUMA dan core CPU. |
machine_cpu_cores | GAUGE | Jumlah core CPU logis. |
machine_cpu_physical_cores | GAUGE | Jumlah core CPU fisik. |
machine_cpu_sockets | GAUGE | Jumlah soket CPU. |
machine_dimm_capacity_bytes | GAUGE | Total kapasitas Random Access Memory (RAM) Dual Inline Memory Module (DIMM) dari semua modul memori. |
machine_dimm_count | GAUGE | Jumlah RAM DIMM. |
machine_memory_bytes | GAUGE | Jumlah memori yang terpasang pada mesin. |
machine_swap_bytes | GAUGE | Jumlah memori swap yang tersedia pada mesin. |
machine_node_distance | GAUGE | Jarak antara node NUMA dan node NUMA target. |
machine_node_enormouspages_count | GAUGE | Jumlah enormouspages yang dialokasikan ke node NUMA. |
machine_node_memory_capacity_bytes | GAUGE | Jumlah memori yang dialokasikan ke node NUMA. |
machine_nvm_avg_power_budget_watts | GAUGE | Anggaran daya Non-Volatile Memory (NVM). |
machine_nvm_capacity | GAUGE | Nilai kapasitas NVM. |
machine_thread_siblings_count | GAUGE | Jumlah saudara thread CPU. |
Referensi
Bagaimana cara membangun sistem pemantauan kontainer Docker yang efisien dan stabil?