Topik ini menjelaskan cara memantau TiDB menggunakan Prometheus.
Prasyarat
Anda telah menghubungkan instance terhubung-VPC ke Managed Service for Prometheus. Untuk informasi selengkapnya, lihat Prometheus for ECS.
Permasalahan saat menggunakan Prometheus yang dikelola sendiri untuk memantau TiDB
Saat memantau kluster TiDB yang dikelola sendiri pada instance ECS di VPC menggunakan Prometheus yang dikelola sendiri, Anda mungkin menghadapi masalah berikut:
Karena alasan keamanan atau manajemen organisasi, layanan Anda biasanya diterapkan di beberapa VPC terisolasi. Hal ini mengharuskan Anda menerapkan Prometheus secara berulang dan independen di beberapa VPC, sehingga menimbulkan biaya penerapan serta operasi dan pemeliharaan (O&M) yang tinggi.
Setiap sistem pemantauan lengkap yang dikelola sendiri mengharuskan Anda menginstal dan mengonfigurasi komponen seperti Prometheus, Grafana, dan AlertManager. Proses ini rumit dan memakan waktu.
Mekanisme penemuan layanan yang dapat diintegrasikan dengan cepat ke Alibaba Cloud ECS tidak tersedia. Akibatnya, Anda tidak dapat menentukan target pengambilan (scrape targets) secara fleksibel berdasarkan tag ECS. Untuk mengimplementasikan fitur serupa, Anda harus mengembangkan kode dalam bahasa Go yang memanggil API POP Alibaba Cloud ECS dan mengintegrasikannya dengan kode sumber terbuka Prometheus. Setelah itu, Anda harus mengompilasi, mengemas, dan menerapkan kode tersebut. Metode ini memiliki ambang batas implementasi yang tinggi, rumit, dan menyulitkan peningkatan versi.
Dasbor Grafana sumber terbuka umum tidak dapat dikustomisasi secara mendalam berdasarkan prinsip dan praktik terbaik komponen pemantauan.
Templat peringatan TiDB tidak tersedia. Anda harus mengonfigurasi aturan peringatan sendiri, yang memakan waktu dan menuntut keahlian teknis.
Perbandingan antara Prometheus yang dikelola sendiri dan Managed Service for Prometheus Alibaba Cloud
Managed Service for Prometheus terintegrasi secara mulus dengan ECS. Secara default, layanan ini menyediakan pengumpulan metrik inti untuk berbagai komponen TiDB, seperti TiDB, TiPD, TiKV, dan TiConsole. Layanan ini juga menyediakan dasbor dan aturan peringatan yang sesuai, sehingga memberikan solusi pemantauan TiDB siap pakai.
Tabel berikut membandingkan Prometheus yang dikelola sendiri dengan Managed Service for Prometheus dalam skenario pemantauan TiDB.
Item | Prometheus yang Dikelola Sendiri | Managed Service for Prometheus |
Biaya penerapan dan O&M | Anda harus membeli instance ECS untuk menerapkan Prometheus, Grafana, dan AlertManager di beberapa VPC. Hal ini mengakibatkan biaya O&M yang tinggi. | Managed Service for Prometheus menyediakan solusi terintegrasi, sepenuhnya dikelola, dan siap pakai yang mencakup kemampuan Grafana dan peringatan. |
Ketersediaan, kinerja, dan kapasitas data | Pengaturan yang dikelola sendiri memiliki keterbatasan dalam ketersediaan tinggi, kinerja, dan kapasitas data. | Menyediakan ketersediaan tinggi, kinerja tinggi, dan kapasitas data besar. |
Penemuan layanan | Di lingkungan ECS, penemuan layanan diimplementasikan menggunakan metode seperti static_configs sumber terbuka dan registri layanan pihak ketiga. Pendekatan ini tidak praktis dan memiliki biaya pemeliharaan yang tinggi. | aliyun_sd_configs bawaan memungkinkan Anda menggunakan tag ECS untuk mencocokkan instance ECS target. Ini memberikan pengalaman yang konsisten dengan labelSelector dalam skenario Kubernetes dan sangat menyederhanakan konfigurasi serta pemeliharaan penemuan layanan. |
Dasbor Grafana | Dasbor Grafana sumber terbuka untuk TiDB umumnya bersifat dasar. Sebagian besar hanya menampilkan metrik yang dikumpulkan dan tidak dioptimalkan secara mendalam berdasarkan prinsip dan praktik terbaik TiDB. | Templat dasbor TiDB khusus disediakan untuk membantu Anda memahami status operasional end-to-end TiDB secara cepat dan akurat serta memecahkan masalah. |
Aturan peringatan | Templat aturan peringatan TiDB tidak tersedia. Anda perlu meneliti dan mengonfigurasi aturan peringatan sendiri. | Berdasarkan praktik terbaik pemantauan TiDB, templat aturan peringatan khusus dan fleksibel disediakan. Anda dapat mengonfigurasi aturan peringatan menggunakan antarmuka grafis (GUI). |
Perbandingan di atas menunjukkan bahwa penggunaan Managed Service for Prometheus untuk memantau TiDB dapat sangat menyederhanakan O&M dan mengurangi biaya. Untuk informasi selengkapnya tentang cara menggunakan Managed Service for Prometheus untuk memantau TiDB, lihat Memantau TiDB menggunakan Prometheus.
Gunakan Prometheus untuk memantau TiDB
Langkah 1: Integrasi TiDB
Masuk ke Konsol ARMS.
Di panel navigasi kiri, klik Integration Center. Lalu, di bagian Database, klik TIDB. Pada halaman yang muncul, ikuti petunjuk di layar untuk mengintegrasikan komponen.
Pilih Environment Type, yang dapat berupa Container Service Environment atau ECS (VPC). Kemudian, Select A Container Service Cluster atau Select A VPC.
Di bagian Configuration Information, konfigurasikan parameter dan klik OK.
Parameter
Deskripsi
Integration Name
Nama integrasi kustom.
TIDB Cluster Name
Nama kluster TiDB. Anda harus menggunakan nama kluster yang berbeda untuk setiap integrasi guna mencegah konflik pengumpulan metrik yang dapat menyebabkan kesalahan tampilan dasbor.
Namespace
Namespace kustom.
PD Server Container Name
Jika terdapat beberapa nama kontainer, Anda dapat menggunakan tanda pipa vertikal (|) untuk memisahkannya guna pencocokan "ATAU". Contoh: "pd|pd1".
PD Metrics Port
Port pendengar untuk metrik komponen PD, TiDB, dan TiKV, yang memungkinkan Managed Service for Prometheus mengakses port tersebut untuk memperoleh data pemantauan. Termasuk juga jalur pengambilan HTTP (HTTP scrape path) untuk metrik, yang biasanya
/metrics.PD Metrics Scrape Path
TiDB Server Container Name
TiDB Metrics Port
TiDB Metrics Scrape Path
TiKV Server Container Name
TiKV Metrics Port
TiKV Metrics Scrape Path
Metric Scrape Interval (Seconds)
Managed Service for Prometheus mengambil data pemantauan TiDB. Nilai default adalah 30 detik.
CatatanAnda dapat melihat metrik pada tab Scraped Metrics.
Komponen yang diinstal ditampilkan pada halaman Integration Management di Konsol Managed Service for Prometheus. Halaman Integration Management terdiri dari tab Integrated Environments, Integrated Addons, dan Query Dashboards, tempat Anda dapat melihat informasi seperti target, metrik, dasbor, dan peringatan.
Langkah 2: Melihat data dasbor TiDB
Managed Service for Prometheus menyediakan lebih dari 20 dasbor Grafana bawaan yang umum digunakan untuk TiDB. Anda dapat melihat dasbor pemantauan berbagai komponen TiDB tanpa perlu menginstal Grafana secara terpisah.
Pada halaman Provisioning, pilih kluster target dan klik tab Dashboards untuk melihat dasbor komponen tersebut. Klik tautan untuk membuka dasbor pemantauan yang sesuai di Alibaba Cloud Grafana.
Langkah 3: Mengonfigurasi peringatan pemantauan TiDB
Pada halaman Provisioning, pilih kluster target dan klik tab Alert Rules untuk melihat semua aturan peringatan Prometheus untuk komponen TiDB.
Managed Service for Prometheus secara otomatis membuat lebih dari 30 aturan peringatan utama untuk komponen TiDB. Anda hanya perlu mengubah ambang batas aturan peringatan tersebut dan mengaktifkannya. Anda juga dapat menambahkan aturan peringatan baru sesuai kebutuhan. Untuk informasi selengkapnya, lihat Create a Prometheus alert rule.