Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Memantau Percona XtraDB Cluster - Metrik Utama

Percona XtraDB Cluster adalah solusi ketersediaan tinggi yang sangat terkenal di dunia MySQL. Ini didasarkan pada Galera Cluster dan menyediakan replikasi yang hampir sinkron di beberapa node. Seperti halnya setiap database, sangat penting untuk melacak apa yang terjadi dalam sistem, jika kinerja berada pada tingkat yang diharapkan dan, jika tidak, apa hambatannya. Ini sangat penting untuk dapat bereaksi dengan baik dalam situasi, di mana kinerja terpengaruh. Tentu saja, Percona XtraDB Cluster hadir dengan beberapa metrik dan tidak selalu jelas mana yang paling penting untuk melacak status database. Di blog ini kita akan membahas beberapa metrik utama yang ingin Anda perhatikan saat bekerja dengan PXC.

Untuk memperjelas, kami akan berfokus pada metrik khusus untuk PXC dan Galera, kami tidak akan mencakup metrik untuk MySQL atau InnoDB. Metrik tersebut telah dibahas di blog kami sebelumnya.

Mari kita lihat beberapa informasi terpenting yang disajikan PXC kepada kita.

Kontrol Aliran

Kontrol aliran adalah metrik terpenting yang dapat Anda pantau di Gugus Galera mana pun, oleh karena itu mari kita lihat sedikit latar belakang. Galera adalah cluster multi-master yang hampir sinkron. Dimungkinkan untuk mengeksekusi penulisan pada salah satu node database yang membentuknya. Setiap penulisan harus dikirim ke semua node dalam cluster untuk memastikan bahwa itu dapat diterapkan - proses ini disebut sertifikasi. Tidak ada transaksi yang dapat diterapkan sebelum semua node setuju bahwa transaksi dapat dilakukan. Jika salah satu node memiliki masalah kinerja yang membuatnya tidak dapat mengatasi lalu lintas, itu akan mulai mengeluarkan pesan kontrol aliran yang dimaksudkan untuk menginformasikan seluruh cluster tentang masalah kinerja dan meminta mereka untuk mengurangi beban kerja dan membantu penundaan. node untuk mengejar ketinggalan dengan cluster lainnya.

Anda dapat melacak kapan node harus memperkenalkan jeda buatan agar rekan-rekan mereka yang tertinggal dapat mengejar menggunakan metrik kontrol aliran yang dijeda (wsrep_flow_control_paused):

Anda juga dapat melacak apakah node mengirim atau menerima pesan kontrol aliran (wsrep_flow_control_recv dan wsrep_flow_control_sent).

Informasi ini akan membantu Anda memahami lebih baik simpul mana yang tidak berkinerja sama tingkat sebagai rekan-rekannya. Anda kemudian dapat fokus pada simpul tersebut dan mencoba memahami apa masalahnya dan bagaimana cara menghilangkan hambatan tersebut.

Kirim dan Terima Antrian

Metrik tersebut terkait dengan kontrol aliran. Seperti yang telah kita diskusikan, sebuah node mungkin tertinggal dari node lain dalam cluster. Ini dapat disebabkan oleh pembagian beban kerja yang tidak merata atau oleh alasan lain (beberapa proses berjalan di latar belakang, pencadangan, atau permintaan khusus yang berat). Sebelum kontrol aliran dimulai, node yang tertinggal akan mencoba untuk menyimpan writeset yang masuk dalam antrian terima (wsrep_local_recv_queue) dengan harapan bahwa dampak kinerja bersifat sementara dan dapat segera menyusul. Hanya jika antrian menjadi terlalu besar (diatur oleh pengaturan gcs.fc_limit), pesan kontrol aliran mulai dikirim ke seluruh cluster.

Anda dapat menganggap antrian penerimaan sebagai penanda awal yang menunjukkan bahwa ada ada masalah dengan kinerja dan kontrol aliran mungkin muncul.

Di sisi lain, antrian kirim (wsrep_local_send_queue) akan memberi tahu Anda bahwa node tidak dapat mengirim writeset ke anggota lain dari cluster yang mungkin menunjukkan masalah dengan konektivitas jaringan (mendorong writeset ke jaringan tidak terlalu padat sumber daya).

Metrik Paralelisasi

Kluster Percona XtraDB dapat dikonfigurasi untuk menggunakan beberapa utas untuk menerapkan set tulis yang masuk - ini memungkinkannya menangani lebih baik banyak utas yang terhubung ke kluster dan menerbitkan penulisan pada saat yang sama. Ada dua metrik utama yang mungkin ingin Anda perhatikan.

Pertama, wsrep_cert_deps_distance, memberi tahu kita apa potensi paralelisasi - berapa banyak set tulis yang berpotensi dapat diterapkan pada saat yang sama. Berdasarkan nilai ini, Anda dapat mengonfigurasi jumlah utas budak paralel (wsrep_slave_threads) yang akan bekerja untuk menerapkan writeset yang masuk. Aturan praktisnya adalah tidak ada gunanya mengonfigurasi lebih banyak utas daripada nilai wsrep_cert_deps_distance.

Metrik kedua, di sisi lain, memberi tahu kami seberapa efisien kami dapat memparalelkan proses penerapan writeset - wsrep_apply_oooe memberi tahu kami seberapa sering applier mulai menerapkan writeset yang tidak berurutan (yang mengarah ke paralelisasi yang lebih baik ).

Kesimpulan

Seperti yang Anda lihat, ada beberapa metrik yang layak dilihat di Percona XtraDB Cluster. Tentu saja, seperti yang kami nyatakan di awal blog ini, metrik tersebut terkait erat dengan PXC dan Galera Cluster pada umumnya.

Anda juga harus mengawasi metrik MySQL dan InnoDB reguler untuk mendapatkan pemahaman yang lebih baik tentang status database Anda. Dan ingat, Anda dapat memantau teknologi ini secara gratis menggunakan ClusterControl Community Edition.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Penggunaan memori maksimum MySQL

  2. Kolom MySQL tidak dikenal dalam klausa ON

  3. Bagaimana saya memutuskan kapan harus menggunakan gabungan kanan/gabungan kiri atau gabungan dalam Atau bagaimana menentukan tabel mana yang berada di sisi mana?

  4. Tips Berguna untuk Memecahkan Kesalahan Umum di MySQL

  5. Bagaimana cara menghitung kata di MySQL/pengganti ekspresi reguler?