Share via


Veritabanıyla tutarlı anlık görüntü için gelişmiş post öncesi betikler

Azure Backup hizmeti, Azure Backup kullanarak Linux VM'lerinde uygulama tutarlılığı elde etmek için zaten bir post-post betik çerçevesi sağlar. Bu, disklerin anlık görüntüsünü almadan önce bir ön betik çağırmayı (uygulamaları sessize almak için) ve uygulamaları normal moda döndürmek için anlık görüntü tamamlandıktan sonra betik sonrası (uygulamaları dondurmaya yönelik komutlar) çağırmayı içerir.

E öncesi/sonrası betiklerinin yazılması, hata ayıklaması ve bakımı zor olabilir. bu karmaşıklığı ortadan kaldırmak için Azure Backup, kayan yazı veritabanları için uygulamayla tutarlı anlık görüntüyü en az ek yükle almaya yönelik basitleştirilmiş betik öncesi/sonrası deneyimi sağlar.

Azure Backup'a göre Linux uygulamasıyla tutarlı anlık görüntüyü gösteren diyagram.

Yeni geliştirilmiş post öncesi betik çerçevesi aşağıdaki temel avantajlara sahiptir:

  • Bu gönderi öncesi betikler, yedekleme uzantısıyla birlikte doğrudan Azure VM'lerine yüklenir. Bu, yazma işlemini ortadan kaldırmaya ve bunları dış bir konumdan indirmeye yardımcı olur.
  • GitHub'da gönderi öncesi betiklerin tanımını ve içeriğini görüntüleyebilir, hatta öneriler ve değişiklikler gönderebilirsiniz. Hatta GitHub aracılığıyla öneriler ve değişiklikler gönderebilirsiniz. Bu, daha geniş bir topluluğa fayda sağlamak için önceliklendirilecek ve eklenecektir.
  • GitHub aracılığıyla diğer veritabanları için yeni post öncesi betikler bile ekleyebilirsiniz. Bu betikler daha geniş bir topluluğa fayda sağlamak için önceliklendirilecek ve ele alınacaktır.
  • Sağlam çerçeve, betik öncesi yürütme hatası veya kilitlenmeleri gibi senaryoları işlemek için etkilidir. Her durumda, ön betikte yapılan tüm değişiklikleri geri almak için betik sonrası otomatik olarak çalıştırılır.
  • Çerçeve ayrıca herhangi bir iletide/olayda güncelleştirmeleri getirmek ve kendi eylem planlarını hazırlamak için dış araçlar için bir mesajlaşma kanalı sağlar.

Çözüm akışı

Çözüm akışını gösteren diyagram.

Destek matrisi

Aşağıdaki veritabanları listesi gelişmiş çerçeve kapsamındadır:

Önkoşullar

Bağlantı ayrıntılarını sağlamak için yalnızca içinde workload.conf/etc/azureadlı bir yapılandırma dosyasını değiştirmeniz gerekir. Bu, Azure Backup ilgili uygulamaya bağlanmasını ve ön ve son betikleri yürütmesini sağlar. Yapılandırma dosyasında aşağıdaki parametreler bulunur.

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

Aşağıdaki tabloda parametreler açıklanmaktadır:

Parametre Zorunlu Açıklama
workload_name Yes Bu, uygulamayla tutarlı yedeklemeye ihtiyacınız olan veritabanının adını içerir. Desteklenen geçerli değerler veya mysql'dıroracle.
command_path/configuration_path Bu, iş yükü ikili dosyasının yolunu içerir. İş yükü ikili dosyası yol değişkeni olarak ayarlandıysa, bu zorunlu bir alan değildir.
linux_user Yes Bu, veritabanı kullanıcısı oturum açma bilgilerine erişimi olan Linux kullanıcısının kullanıcı adını içerir. Bu değer ayarlı değilse kök varsayılan kullanıcı olarak kabul edilir.
credString Bu, veritabanına bağlanmak için kimlik bilgisi dizesi anlamına gelir. Bu, tüm oturum açma dizesini içerir.
ipc_folder İş yükü yalnızca belirli dosya sistemi yollarına yazabilir. Ön betiğin durumları bu klasör yoluna yazabilmesi için bu klasör yolunu buraya sağlamanız gerekir.
timeout Yes Bu, veritabanının sessiz moda alınacağı maksimum süre sınırıdır. Varsayılan değer 90 saniyedir. 60 saniyeden kısa bir değer ayarlamanız önerilmez.

Not

JSON tanımı, Azure Backup hizmetinin belirli bir veritabanına uyacak şekilde değiştirebileceği bir şablondur. Her veritabanının yapılandırma dosyasını anlamak için her veritabanının el kitabına bakın.

Gelişmiş post betik çerçevesinin genel deneyimi aşağıdaki gibidir:

  • Veritabanı ortamını hazırlama
  • Yapılandırma dosyasını düzenleme
  • VM yedeklemesini tetikleme
  • Vm'leri veya diskleri/dosyaları uygulamayla tutarlı kurtarma noktasından gerektiği gibi geri yükleyin.

Veritabanı yedekleme stratejisi oluşturma

Akış yerine anlık görüntüleri kullanma

Genellikle akış yedeklemeleri (tam, değişiklik veya artımlı gibi) ve günlükler veritabanı yöneticileri tarafından yedekleme stratejilerinde kullanılır. Aşağıda, tasarımdaki temel özetlerden bazıları yer alır.

  • Performans ve maliyet: Günlük dolu + günlükler geri yükleme sırasında en hızlı olacaktır ancak önemli bir maliyet gerektirir. Değişiklik/artımlı akış yedekleme türü dahil olmak maliyeti düşürür, ancak geri yükleme performansını etkileyebilir. Ancak anlık görüntüler, performans ve maliyetin en iyi bileşimini sağlar. Anlık görüntüler doğal olarak artımlı olduğundan, yedekleme sırasında performans üzerinde en az etkiye sahiptir, hızlı geri yüklenir ve maliyet tasarrufu sağlar.
  • Veritabanı/altyapı üzerindeki etki: Akış yedeklemesinin performansı, temel alınan depolama IOPS'sine ve akış uzak bir konuma hedeflendiğinde kullanılabilen ağ bant genişliğine bağlıdır. Anlık görüntülerde bu bağımlılık yoktur ve IOPS ve ağ bant genişliği talebi önemli ölçüde azalır.
  • Yeniden kullanılabilirlik: Farklı akış yedekleme türlerini tetikleme komutları her veritabanı için farklıdır. Bu nedenle betikler kolayca yeniden kullanılamaz. Ayrıca farklı yedekleme türleri kullanıyorsanız yaşam döngüsünü korumak için bağımlılık zincirini değerlendirdiğinizden emin olun. Bağımlılık zinciri olmadığından anlık görüntüler için betik yazmak kolaydır.
  • Uzun süreli saklama: Tam yedeklemeler, bağımsız olarak taşınıp kurtarılabildikleri için uzun süreli saklama0 için her zaman faydalıdır. Ancak, kısa süreli saklama ile operasyonel yedeklemeler için anlık görüntüler uygundur.

Bu nedenle, günlük anlık görüntü + uzun süreli saklama için ara sıra tam yedekleme içeren günlükler veritabanları için en iyi yedekleme ilkesidir.

Günlük yedekleme stratejisi

Geliştirilmiş post öncesi betik çerçevesi, günde bir kez yedekleme zamanlayan Azure VM yedeklemesi üzerine kurulmuştur. Bu nedenle, 24 saat olarak RPO içeren veri kaybı penceresi üretim veritabanları için uygun değildir. Bu çözüm, günlük yedeklemelerinin açıkça dışarı aktarıldığı bir günlük yedekleme stratejisiyle tamamlanır.

Blob üzerinde NFS ve AFS üzerinde NFS (Önizleme) birimlerin doğrudan veritabanı VM'lerine kolayca takılmasına yardımcı olur ve günlük yedeklemelerini aktarmak için veritabanı istemcilerini kullanır. RPO olan veri kaybı penceresi, günlük yedeklemelerinin sıklığına düşer. Ayrıca veritabanıyla tutarlı anlık görüntüleriniz olduktan sonra işlem yedeklemeleri için düzenli akış (tam ve artımlı) tetiklemeniz gerekmeyebileceği için NFS hedeflerinin yüksek performansa sahip olması gerekmez.

Not

Gelişmiş ön betik genellikle veritabanını anlık görüntü almak üzere sessize almadan önce günlük yedekleme hedefine aktarımdaki tüm günlük işlemlerini temizlemeye özen gösterir. Bu nedenle, anlık görüntüler kurtarma sırasında veritabanıyla tutarlı ve güvenilirdir.

Kurtarma stratejisi

Veritabanıyla tutarlı anlık görüntüler alındıktan ve günlük yedeklemeleri bir NFS birimine akışla aktarıldıktan sonra, veritabanının kurtarma stratejisi Azure VM yedeklemelerinin kurtarma işlevini kullanabilir. Günlük yedeklemeleri özelliği ayrıca veritabanı istemcisi kullanılarak bu yedeklemeye uygulanır. Aşağıda birkaç kurtarma stratejisi seçeneği vardır:

  • Veritabanıyla tutarlı kurtarma noktasından yeni VM'ler oluşturun. VM'de günlük bağlama noktasının zaten bağlı olması gerekir. Belirli bir noktaya kurtarma için kurtarma komutlarını çalıştırmak için veritabanı istemcilerini kullanın.
  • Veritabanıyla tutarlı kurtarma noktasından diskler oluşturun ve başka bir hedef VM'ye ekleyin. Ardından günlük hedefini bağlayın ve belirli bir noktaya kurtarma için kurtarma komutlarını çalıştırmak için veritabanı istemcilerini kullanın
  • Dosya kurtarma seçeneğini kullanın ve bir betik oluşturun. Betiği hedef VM'de çalıştırın ve kurtarma noktasını iSCSI diskleri olarak ekleyin. Ardından, veritabanı istemcilerini kullanarak ekli disklerde veritabanına özgü doğrulama işlevlerini çalıştırın ve yedekleme verilerini doğrulayın. Ayrıca, veritabanının tamamını kurtarmak yerine birkaç tabloyu/dosyayı dışarı aktarmak/kurtarmak için veritabanı istemcilerini kullanın.
  • Bölgesel olağanüstü durum sırasında ikincil eşleştirilmiş bölgeden yukarıdaki eylemleri gerçekleştirmek için Bölgeler Arası Geri Yükleme işlevini kullanın.

Özet

Özel bir çözüm kullanılarak yedeklenen veritabanı tutarlı anlık görüntüleri + günlükleri kullanarak, Azure VM yedeklemenin avantajlarından yararlanan ve ayrıca veritabanı istemcilerinin özelliklerini yeniden kullanan yüksek performanslı ve uygun maliyetli bir veritabanı yedekleme çözümü oluşturabilirsiniz.