Memastikan kelancaran operasi database produksi Anda bukanlah tugas yang sepele, dan ada sejumlah alat dan utilitas untuk membantu pekerjaan itu. Ada alat yang tersedia untuk memantau kesehatan, kinerja server, menganalisis kueri, penerapan, mengelola failover, peningkatan, dan daftarnya terus berlanjut. ClusterControl sebagai platform manajemen dan pemantauan untuk infrastruktur database Anda menonjol dengan kemampuannya untuk mengelola siklus hidup penuh dari penerapan hingga pemantauan, manajemen berkelanjutan, dan penskalaan.
Meskipun ClusterControl menawarkan fitur penting seperti failover basis data otomatis, enkripsi saat transit/saat istirahat, manajemen pencadangan, pemulihan tepat waktu, integrasi Prometheus, penskalaan basis data, ini dapat ditemukan di alat manajemen/pemantauan perusahaan lain di pasar. Namun, ada beberapa fitur yang tidak akan Anda temukan dengan mudah. Dalam posting blog ini, kami akan menyajikan 9 fitur yang tidak akan Anda temukan di alat manajemen dan pemantauan lainnya di pasar (seperti saat penulisan ini).
Verifikasi Cadangan
Setiap cadangan benar-benar bukan cadangan sampai Anda tahu itu dapat dipulihkan - dengan benar-benar memverifikasi bahwa itu dapat dipulihkan. ClusterControl memungkinkan pencadangan diverifikasi setelah pencadangan dilakukan dengan memutar server baru dan menguji pemulihan. Memverifikasi cadangan adalah proses penting untuk memastikan Anda memenuhi kebijakan Sasaran Titik Pemulihan (RPO) jika terjadi pemulihan bencana. Proses verifikasi akan melakukan pemulihan pada host mandiri baru (di mana ClusterControl akan menginstal paket database yang diperlukan sebelum memulihkan) atau pada server yang didedikasikan untuk verifikasi cadangan.
Untuk mengonfigurasi verifikasi cadangan, cukup pilih cadangan yang ada dan klik Pulihkan. Akan ada opsi untuk Pulihkan dan Verifikasi:
Kemudian, cukup tentukan alamat IP server yang Anda inginkan pulihkan dan verifikasi:
Pastikan host yang ditentukan dapat diakses melalui SSH tanpa kata sandi sebelumnya. Anda juga memiliki beberapa opsi di bawah untuk proses penyediaan. Anda juga dapat mematikan server verifikasi setelah pemulihan untuk menghemat biaya dan sumber daya setelah cadangan diverifikasi. ClusterControl akan mencari kode keluar proses restorasi dan mengamati log pemulihan untuk memeriksa apakah verifikasi gagal atau berhasil.
Menyederhanakan Manajemen ProxySQL Melalui GUI
Banyak yang akan setuju bahwa memiliki antarmuka pengguna grafis lebih efisien dan kurang rentan terhadap kesalahan manusia saat mengkonfigurasi sistem. ProxySQL adalah bagian dari lapisan basis data penting (walaupun berada di atasnya) dan harus cukup terlihat oleh mata DBA untuk menemukan masalah dan masalah umum. ClusterControl menyediakan antarmuka pengguna grafis yang komprehensif untuk ProxySQL.
Instans ProxySQL dapat digunakan pada host baru, atau yang sudah ada dapat diimpor ke ClusterControl. ClusterControl dapat mengkonfigurasi ProxySQL untuk diintegrasikan dengan alamat IP virtual (disediakan oleh Keepalive) untuk akses titik akhir tunggal ke server database. Ini juga memberikan wawasan pemantauan ke komponen ProxySQL utama seperti Backend Kueri, Kueri Lambat, Kueri Teratas, Hit Kueri, dan banyak statistik pemantauan lainnya. Berikut ini adalah tangkapan layar yang menunjukkan cara menambahkan aturan kueri baru:
Jika Anda menambahkan aturan kueri yang sangat kompleks, Anda akan lebih nyaman melakukannya melalui antarmuka pengguna grafis. Setiap bidang memiliki tooltip untuk membantu Anda saat mengisi formulir Aturan Kueri. Saat menambahkan atau memodifikasi konfigurasi ProxySQL, ClusterControl akan memastikan perubahan dilakukan pada runtime, dan disimpan ke disk untuk persistensi.
ClusterControl 1.7.4 sekarang mendukung ProxySQL 1.x dan ProxySQL 2.x.
Laporan Operasional
Laporan Operasional adalah kumpulan laporan ringkasan infrastruktur database Anda yang dapat dibuat saat itu juga atau dapat dijadwalkan untuk dikirim ke penerima yang berbeda. Laporan ini terdiri dari pemeriksaan yang berbeda dan menangani berbagai tugas DBA sehari-hari. Ide di balik pelaporan operasional ClusterControl adalah untuk menempatkan semua data yang paling relevan ke dalam satu dokumen yang dapat dianalisis dengan cepat untuk mendapatkan pemahaman yang jelas tentang status database dan prosesnya.
Dengan ClusterControl Anda dapat menjadwalkan laporan lingkungan lintas-cluster seperti Laporan Sistem Harian, Laporan Peningkatan Paket, Laporan Perubahan Skema serta Pencadangan dan Ketersediaan. Laporan ini akan membantu Anda menjaga keamanan dan operasional lingkungan Anda. Anda juga akan melihat rekomendasi tentang cara memperbaiki kesenjangan. Laporan dapat ditujukan ke SysOps, DevOps, atau bahkan manajer yang ingin mendapatkan pembaruan status rutin tentang kesehatan sistem tertentu.
Berikut ini adalah contoh laporan operasional harian yang dikirim ke kotak surat Anda sehubungan dengan ketersediaan:
Kami telah membahas ini secara rinci dalam posting blog ini, Tinjauan Umum Pelaporan Operasional Basis Data di ClusterControl.
Sinkronisasi ulang Budak melalui Cadangan
ClusterControl memungkinkan pementasan budak (baik budak baru atau budak rusak) melalui cadangan penuh atau tambahan terbaru. Kedengarannya tidak terlalu menarik, tetapi fitur ini sangat besar jika Anda memiliki kumpulan data besar 100GB ke atas. Praktik umum saat menyinkronkan ulang slave adalah mengalirkan cadangan master saat ini yang akan memakan waktu tergantung pada ukuran basis data. Ini akan menambah beban bagi master, yang dapat membahayakan kinerja master.
Untuk menyinkronkan ulang budak melalui cadangan, pilih node budak di bawah halaman Nodes dan buka Node Actions -> Rebuild Replication Slave -> Rebuild from a backup. Hanya cadangan yang kompatibel dengan PITR yang akan dicantumkan di dropdown:
Menyinkronkan ulang slave dari cadangan tidak akan membawa overhead tambahan apa pun ke master, di mana ClusterControl mengekstrak dan mengalirkan cadangan dari lokasi penyimpanan cadangan ke slave dan akhirnya mengonfigurasi tautan replikasi antara slave ke master. Slave nantinya akan menyusul master setelah link replikasi dibuat. Master tidak tersentuh selama seluruh proses, dan Anda dapat memantau seluruh kemajuan di bawah Aktivitas -> Pekerjaan.
Bootstrap Cluster Galera
Galera Cluster sangat populer saat menerapkan ketersediaan tinggi untuk MySQL atau MariaDB, tetapi perintah manajemen yang salah dapat menyebabkan konsekuensi yang membawa malapetaka. Lihatlah posting blog ini tentang cara mem-bootstrap Cluster Galera dalam kondisi yang berbeda. Ini menggambarkan bahwa bootstrap Cluster Galera memiliki banyak variabel dan harus dilakukan dengan sangat hati-hati. Jika tidak, Anda dapat kehilangan data atau menyebabkan otak terbelah. ClusterControl memahami topologi database dan tahu persis apa yang harus dilakukan untuk mem-bootstrap cluster database dengan benar. Untuk bootstrap sebuah cluster melalui ClusterControl, klik pada Cluster Actions -> Bootstrap Cluster:
Anda akan memiliki opsi untuk membiarkan ClusterControl memilih node bootstrap yang tepat secara otomatis, atau melakukan bootstrap awal di mana Anda memilih salah satu node database dari daftar untuk menjadi node referensi dan menghapus datadir MySQL pada node joiner untuk memaksa SST dari simpul yang di-bootstrap. Jika proses bootstrap gagal, ClusterControl akan menarik log kesalahan MySQL.
Jika Anda ingin melakukan bootstrap manual, Anda juga dapat menggunakan fitur "Find Most Advanced Node" dan melakukan operasi bootstrap cluster pada node paling canggih yang dilaporkan oleh ClusterControl.
Konfigurasi dan Logging Terpusat
ClusterControl menarik sejumlah konfigurasi penting dan file logging dan menampilkannya dalam struktur pohon dalam ClusterControl. Tampilan terpusat dari file-file ini adalah kunci untuk memahami dan memecahkan masalah pengaturan basis data terdistribusi secara efisien. Cara tradisional tailing/grepping file-file ini sudah lama hilang dengan ClusterControl. Tangkapan layar berikut menunjukkan pengelola file konfigurasi ClusterControl yang mencantumkan semua file konfigurasi terkait untuk klaster ini dalam satu tampilan (tentu saja dengan penyorotan sintaks):
ClusterControl menghilangkan pengulangan saat mengubah opsi konfigurasi cluster database. Mengubah opsi konfigurasi pada beberapa node dapat dilakukan melalui satu antarmuka dan akan diterapkan ke node database yang sesuai. Saat Anda mengklik "Ubah/Tetapkan Parameter", Anda dapat memilih instance database yang ingin Anda ubah dan menentukan grup konfigurasi, parameter, dan nilai:
Anda dapat menambahkan parameter baru ke dalam file konfigurasi atau memodifikasi parameter yang ada . Parameter akan diterapkan ke runtime node database yang dipilih dan ke dalam file konfigurasi jika opsi melewati proses validasi variabel. Beberapa variabel mungkin memerlukan restart server, yang kemudian akan disarankan oleh ClusterControl.
Kloning Klaster Basis Data
Dengan ClusterControl, Anda dapat dengan cepat mengkloning MySQL Galera Cluster yang ada sehingga Anda memiliki salinan persis dataset di cluster lain. ClusterControl melakukan operasi kloning secara online, tanpa mengunci atau membawa downtime ke cluster yang ada. Ini seperti operasi penskalaan cluster kecuali kedua cluster independen satu sama lain setelah sinkronisasi selesai. Cluster yang dikloning tidak harus memiliki ukuran cluster yang sama dengan yang sudah ada. Kita dapat memulai dengan “kluster satu simpul”, dan memperluasnya dengan lebih banyak simpul basis data di tahap selanjutnya.
Fitur serupa lainnya yang ditawarkan oleh ClusterControl adalah "Buat Cluster dari Cadangan". Fitur ini diperkenalkan di ClusterControl 1.7.1, khusus untuk klaster Galera dan klaster PostgreSQL di mana seseorang dapat membuat klaster baru dari cadangan yang ada. Berlawanan dengan kloning cluster, operasi ini tidak membawa beban tambahan ke cluster sumber dengan tradeoff bahwa cluster yang dikloning tidak akan berada dalam status yang sama dengan cluster sumber.
Kami telah membahas topik ini secara rinci dalam posting blog ini, Cara Membuat Klon dari MySQL atau Cluster Database PostgreSQL Anda.
Pulihkan Cadangan Fisik
Sebagian besar alat manajemen basis data memungkinkan pencadangan basis data, dan hanya beberapa di antaranya yang mendukung pemulihan basis data hanya untuk pencadangan logis. ClusterControl mendukung pemulihan penuh tidak hanya untuk pencadangan logis, tetapi juga pencadangan fisik, apakah itu cadangan penuh atau tambahan. Memulihkan cadangan fisik memerlukan sejumlah langkah penting (terutama pencadangan tambahan) yang pada dasarnya melibatkan penyiapan cadangan, menyalin data yang disiapkan ke dalam direktori data, menetapkan izin/kepemilikan yang benar, dan memulai node dalam urutan yang benar untuk menjaga konsistensi data di seluruh semua anggota dalam cluster. ClusterControl melakukan semua operasi ini secara otomatis.
Anda juga dapat memulihkan cadangan fisik ke node lain yang bukan bagian dari cluster. Di ClusterControl, opsi untuk ini disebut "Buat Cluster dari Cadangan". Anda dapat memulai dengan “kluster satu simpul” untuk menguji proses pemulihan di server lain atau menyalin kluster database Anda ke lokasi lain.
ClusterControl juga mendukung pemulihan cadangan eksternal, cadangan yang diambil bukan melalui ClusterControl. Anda hanya perlu mengunggah cadangan ke server ClusterControl dan menentukan jalur fisik ke file cadangan saat memulihkan. ClusterControl akan mengurus sisanya.
Replikasi Cluster-to-Cluster
Ini adalah fitur baru yang diperkenalkan di ClusterControl 1.7.4. ClusterControl sekarang dapat menangani dan memantau replikasi cluster-cluster, yang pada dasarnya memperluas replikasi database asinkron antara beberapa set cluster di beberapa lokasi geografis. Sebuah cluster dapat ditetapkan sebagai master cluster (cluster aktif yang memproses baca/tulis) dan slave cluster dapat ditetapkan sebagai cluster read-only (cluster siaga yang juga dapat memproses pembacaan). ClusterControl mendukung replikasi cluster-cluster asinkron untuk Galera Cluster (log biner harus diaktifkan) dan juga replikasi master-slave untuk PostgreSQL Streaming Replication.
Untuk membuat cluster baru yang merupakan replika dari cluster lain, buka Cluster Actions -> Create Slave Cluster:
Hasil penerapan di atas disajikan dengan jelas di dasbor Daftar Cluster Database :
Cluster slave secara otomatis dikonfigurasi sebagai read-only, mereplikasi dari cluster utama dan bertindak sebagai cluster siaga. Jika bencana menimpa kluster utama dan Anda ingin mengaktifkan situs sekunder, cukup pilih menu "Nonaktifkan Hanya Baca" yang tersedia di menu tarik-turun Node -> Tindakan Node untuk mempromosikannya sebagai kluster aktif.