Bagikan melalui


Enhanced prepost scripts for database consistent snapshot

Layanan Azure Backup sudah menyediakan kerangka kerja skrip prepost untuk mencapai konsistensi aplikasi di VM Linux menggunakan Azure Backup. Proses ini melibatkan pemanggilan pra-skrip (untuk menghentikan aplikasi) sebelum mengambil rekam jepret disk dan memanggil pasca-skrip (perintah untuk tidak membekukan aplikasi) setelah rekam jepret selesai untuk mengembalikan aplikasi ke mode normal.

Authoring, debugging, and maintenance of the pre/post scripts could be challenging. Untuk menghilangkan kompleksitas ini, Azure Backup menyediakan pengalaman pra/pasca-skrip yang disederhanakan untuk basis data unggulan sehingga bisa mendapatkan snapshot aplikasi yang konsisten dengan overhead yang minimal.

Diagram yang menunjukkan cuplikan konsisten aplikasi Linux oleh Azure Backup.

Kerangka skrip pra-posting yang disempurnakanbaru memiliki manfaat utama berikut:

  • Skrip pra-posting ini langsung diinstal di Azure VM bersama dengan ekstensi cadangan, yang membantu menghilangkan penulisan dan mengunduhnya dari lokasi eksternal.
  • Anda dapat melihat definisi dan konten skrip pra-posting di GitHub, bahkan mengirimkan saran dan perubahan. Anda bahkan dapat mengirimkan saran dan perubahan melalui GitHub, yang akan diprioritaskan dan ditambahkan untuk memberikan manfaat bagi komunitas yang lebih luas.
  • You can even add new pre-post scripts for other databases via GitHub, which will be triaged and addressed to benefit the broader community.
  • Kerangka kerja yang kuat efisien untuk menangani skenario, seperti kegagalan eksekusi pra-skrip atau crash. Bagaimanapun, pasca-skrip secara otomatis berjalan untuk memutar kembali semua perubahan yang dilakukan dalam pra-skrip.
  • Kerangka kerja ini juga menyediakan saluran perpesananuntuk alat eksternal untuk mengambil pembaruan dan menyiapkan rencana aksi mereka sendiri pada pesan/acara apa pun.

Alur solusi

Diagram yang menunjukkan alur solusi.

Support matrix

Berikut daftar database yang tercakup dalam kerangka kerja yang disempurnakan:

Prasyarat

Anda hanya perlu memodifikasi file konfigurasi, workload.conf in /etc/azure, untuk memberikan detail koneksi. Hal ini memungkinkan Azure Backup untuk terhubung ke aplikasi yang relevan dan mengeksekusi pra dan pasca-skrip. File konfigurasi memiliki parameter-parameter berikut.

[workload]
# valid values are mysql, oracle
workload_name =
command_path = 
linux_user =
credString = 
ipc_folder = 
timeout =

Tabel berikut ini menjelaskan parameter:

Parameter Wajib Penjelasan
nama_beban_kerja Ya This will contain the name of the database for which you need application consistent backup. Nilai yang didukung adalah oracle atau mysql.
jalur_perintah/jalur_konfigurasi This will contain path to the workload binary. This isn't a mandatory field if the workload binary is set as path variable.
linux_user Ya Ini akan berisi nama pengguna dari pengguna Linux dengan akses ke login pengguna database. Jika nilai ini tidak diatur, maka root dianggap sebagai pengguna default.
credString Ini adalah singkatan dari string kredensial untuk terhubung ke database. Ini akan berisi seluruh string login.
ipc_folder Beban kerja hanya dapat menulis ke jalur sistem file tertentu. Anda perlu menyediakan jalur folder ini di sini sehingga pra-skrip dapat menulis status ke jalur folder ini.
timeout Ya Ini adalah batas waktu maksimum yang database akan berada dalam keadaan quiesce. Nilai default-nya adalah 90 detik. Tidak disarankan untuk menetapkan nilai kurang dari 60 detik.

Catatan

Definisi JSON adalah templat yang dapat dimodifikasi oleh layanan Azure Backup agar sesuai dengan database tertentu. Untuk memahami file konfigurasi untuk setiap database, lihat manual masing-masing database.

Pengalaman keseluruhan dalam menggunakan kerangka skrip pra-dan-pasca yang disempurnakan adalah sebagai berikut:

  • Menyiapkan lingkungan database
  • Edit the configuration file
  • Trigger the VM backup
  • Pulihkan VM atau disk/file dari titik pemulihan aplikasi yang konsisten sesuai kebutuhan.

Build a database backup strategy

Using snapshots instead of streaming

Usually, streaming backups (such as full, differential, or incremental) and logs are used by database admins in their backup strategy. Berikut ini adalah beberapa pivot kunci dalam desain.

  • Performance and cost: A daily full + logs would be the fastest during restore but involves significant cost. Dengan memasukkan tipe cadangan streaming diferensial/inkremental dapat mengurangi biaya tetapi mungkin berdampak pada kinerja pemulihan. But snapshots provide the best combination of performance and cost. As snapshots are inherently incremental, they have least impact on performance during backup, are restored fast, and also save cost.
  • Dampak pada database/infrastruktur: Kinerja cadangan streaming tergantung pada IOPS penyimpanan yang mendasari dan bandwidth jaringan yang tersedia ketika aliran ditargetkan ke lokasi terpencil. Rekam jepret idak memiliki ketergantungan ini, dan permintaan pada IOPS dan bandwidth jaringan berkurang secara signifikan.
  • Re-usability: The commands for triggering different streaming backup types are different for each database. Jadi, skrip tidak dapat dengan mudah digunakan kembali. Juga, jika Anda menggunakan jenis cadangan yang berbeda, pastikan untuk mengevaluasi rantai ketergantungan untuk mempertahankan siklus hidup. Untuk rekam jepret, mudah untuk menulis skrip karena tidak ada rantai ketergantungan.
  • Retensi jangka panjang:Cadangan penuh selalu bermanfaat untuk retensi0 jangka panjang karena dapat dipindahkan dan dipulihkan secara independen. But, for operational backups with short-term retention, snapshots are favorable.

Oleh karena itu, cuplikan harian dan catatan log dengan sesekali melakukan cadangan penuh untuk penyimpanan jangka panjang adalah kebijakan cadangan terbaik untuk database.

Log backup strategy

The enhanced pre-post script framework is built on Azure VM backup that schedules backup once per day. Jadi, rentang waktu kehilangan data dengan Tujuan Titik Pemulihan (RPO) selama 24 jam tidak cocok untuk database produksi. Solusi ini dilengkapi dengan strategi cadangan log di mana cadangan log dialirkan secara eksplisit.

NFS on blob and NFS on AFS (Preview) help in easy mounting of volumes directly on database VMs and use database clients to transfer log backups. The data loss window that is RPO, falls to the frequency of log backups. Selain itu, target NFS tidak perlu berkinerja tinggi karena Anda mungkin tidak perlu mengaktifkan streaming reguler (penuh dan bertahap) untuk cadangan operasional setelah Anda memiliki rekaman snapshot database yang konsisten.

Catatan

The enhanced pre- script usually takes care to flush all the log transactions in transit to the log backup destination, before quiescing the database to take a snapshot. Oleh karena itu, cuplikan tersebut konsisten dengan database dan dapat diandalkan selama pemulihan.

Strategi Pemulihan

Setelah rekam jepret konsisten database diambil dan backup log dialirkan ke volume NFS, strategi pemulihan database dapat menggunakan fungsi pemulihan backup Azure VM. Kemampuan pencadangan log juga diterapkan dengan menggunakan klien database. Berikut adalah beberapa pilihan strategi pemulihan:

  • Create new VMs from database consistent recovery point. The VM should already have the log mount-point connected. Use database clients to run recovery commands for point-in-time recovery.
  • Buat disk dari titik pemulihan konsisten basis data dan lampirkan ke VM target lainnya. Kemudian pasang lokasi log dan gunakan klien database untuk menjalankan perintah pemulihan untuk pemulihan pada titik waktu tertentu.
  • Gunakan opsi pemulihan file dan buat skrip. Jalankan skrip pada VM target dan lampirkan titik pemulihan sebagai disk iSCSI. Kemudian gunakan klien database untuk menjalankan fungsi validasi khusus database pada disk terlampir dan memvalidasi data cadangan. Juga, gunakan klien database untuk mengekspor/memulihkan beberapa tabel/file alih-alih memulihkan seluruh database.
  • Use the Cross Region Restore functionality to perform the above actions from secondary paired region during regional disaster.

Ringkasan

Menggunakan cuplikan konsisten database + log yang dicadangkan dengan solusi kustom, Anda dapat membangun solusi cadangan database yang berkinerja baik dan hemat biaya, memanfaatkan cadangan Azure VM dan juga menggunakan kembali fitur klien database.