Vylepšené skripty předběžného příspěvku pro snímek konzistentní vzhledem k databázi
Služba Azure Backup již poskytuje architekturu předpřipravených skriptů pro dosažení konzistence aplikací na virtuálních počítačích s Linuxem pomocí služby Azure Backup. Tento proces zahrnuje vyvolání předběžného skriptu (k zablokování aplikací) před pořízením snímku disků a voláním po skriptu (příkazy pro zrušení ukotvení aplikací) po dokončení snímku, aby se aplikace vrátily do normálního režimu.
Vytváření, ladění a údržba předzálohovacích skriptů může být náročné. Aby bylo možné tuto složitost odebrat, poskytuje Azure Backup zjednodušené prostředí před skriptem a následné skriptování pro databáze, které zajistí konzistentní snímky aplikací s nejnižší režií.
Nová vylepšená architektura předzálohovacího skriptu má následující klíčové výhody:
- Tyto předzálohovací skripty se přímo instalují do virtuálních počítačů Azure spolu s rozšířením zálohování, které pomáhá eliminovat vytváření obsahu a stahovat je z externího umístění.
- Můžete zobrazit definici a obsah předzálohovaných skriptů na GitHubu, a to i odesílat návrhy a změny. Prostřednictvím GitHubu můžete dokonce odesílat návrhy a změny, které budou zařazeny do třídění a přidány tak, aby využívaly širší komunitu.
- Můžete dokonce přidat nové předzálohovací skripty pro jiné databáze prostřednictvím GitHubu, které budou triagedovány a adresovány tak, aby využívaly širší komunitu.
- Robustní architektura je efektivní pro zpracování scénářů, jako je selhání spuštění před skriptem nebo chybové ukončení. V každém případě se po spuštění skriptu automaticky vrátí zpět všechny změny provedené v předběžném skriptu.
- Tato architektura také poskytuje kanál pro zasílání zpráv pro externí nástroje pro načítání aktualizací a přípravu vlastního akčního plánu pro všechny zprávy nebo události.
Tok řešení
Matice podpory
Následující seznam databází se vztahuje na rozšířenou architekturu:
- Oracle (obecně dostupné) - Odkaz na matice podpory
- MySQL (Preview)
Požadavky
K zadání podrobností o připojení stačí upravit konfigurační soubor workload.conf/etc/azure
. To umožňuje službě Azure Backup připojit se k příslušné aplikaci a spouštět předběžné a následné skripty. Konfigurační soubor má následující parametry.
[workload]
# valid values are mysql, oracle
workload_name =
command_path =
linux_user =
credString =
ipc_folder =
timeout =
Následující tabulka popisuje parametry:
Parametr | Povinné | Vysvětlení |
---|---|---|
workload_name | Ano | Bude obsahovat název databáze, pro kterou potřebujete zálohování konzistentní vzhledem k aplikacím. Aktuální podporované hodnoty jsou oracle nebo mysql . |
command_path/configuration_path | Bude obsahovat cestu k binárnímu souboru úlohy. Toto pole není povinné, pokud je binární soubor úlohy nastavený jako proměnná cesty. | |
linux_user | Ano | Bude obsahovat uživatelské jméno uživatele Linuxu s přístupem k přihlášení uživatele databáze. Pokud tato hodnota není nastavená, považuje se kořen za výchozího uživatele. |
credString | To znamená řetězec přihlašovacích údajů pro připojení k databázi. Bude obsahovat celý přihlašovací řetězec. | |
ipc_folder | Úloha může zapisovat pouze do určitých cest k systému souborů. Musíte zadat tuto cestu ke složce, aby předzálohovací skript mohl zapisovat stavy do této cesty ke složce. | |
timeout | Ano | Jedná se o maximální časový limit, pro který bude databáze ve stavu nečinnosti. Výchozí hodnota je 90 (sekund). Nedoporučuje se nastavit hodnotu menší než 60 sekund. |
Poznámka:
Definice JSON je šablona, kterou může služba Azure Backup upravit tak, aby vyhovovala konkrétní databázi. Informace o konfiguračním souboru pro každou databázi najdete v příručce každé databáze.
Celkové prostředí pro použití vylepšené architektury předzálohovacího skriptu je následující:
- Příprava databázového prostředí
- Úprava konfiguračního souboru
- Aktivace zálohování virtuálního počítače
- Podle potřeby obnovte virtuální počítače nebo disky nebo soubory z bodu obnovení konzistentního vzhledem k aplikaci.
Vytvoření strategie zálohování databáze
Použití snímků místo streamování
Zálohování streamování (například úplné, rozdílové nebo přírůstkové) a protokoly obvykle používají správci databáze ve své strategii zálohování. Následuje několik klíčových pivotů v návrhu.
- Výkon a náklady: Denní úplná + protokoly by byly nejrychlejší během obnovení, ale zahrnují značné náklady. Zahrnutí typu rozdílového nebo přírůstkového zálohování streamování snižuje náklady, ale může mít vliv na výkon obnovení. Snímky ale poskytují nejlepší kombinaci výkonu a nákladů. Vzhledem k tomu, že snímky jsou ze své podstaty přírůstkové, mají nejmenší dopad na výkon během zálohování, obnovují se rychle a také šetří náklady.
- Dopad na databázi nebo infrastrukturu: Výkon zálohování streamování závisí na základním IOPS úložiště a dostupné šířce pásma sítě, když je datový proud cílený na vzdálené umístění. Snímky tuto závislost nemají a poptávka po IOPS a šířce pásma sítě se výrazně snižuje.
- Použitelnost: Příkazy pro aktivaci různých typů zálohování streamování se pro každou databázi liší. Skripty se tedy nedají snadno znovu použít. Pokud používáte různé typy zálohování, ujistěte se, že chcete vyhodnotit řetěz závislostí, aby se zachoval životní cyklus. U snímků je snadné psát skript, protože neexistuje žádný řetěz závislostí.
- Dlouhodobé uchovávání: Úplné zálohy jsou vždy výhodné pro dlouhodobé uchovávání0, protože je možné je nezávisle přesunout a obnovit. Pro provozní zálohy s krátkodobým uchováváním jsou ale snímky příznivé.
Proto je nejlepší zásadou zálohování pro databáze denní snímek + protokoly s občasným úplným zálohováním pro dlouhodobé uchovávání.
Strategie zálohování protokolů
Vylepšená architektura předzálohovacího skriptu je založená na zálohování virtuálních počítačů Azure, které plánuje zálohování jednou za den. Proto okno ztráty dat s cílem bodu obnovení (RPO) jako 24 hodin není vhodné pro produkční databáze. Toto řešení je doplněno strategií zálohování protokolů, ve které se zálohy protokolů streamují explicitně.
Systém souborů NFS v objektech blob a NFS ve službě AFS (Preview) pomáhá snadno připojit svazky přímo na databázových virtuálních počítačích a pomocí databázových klientů přenášet zálohy protokolů. Okno ztráty dat, které je RPO, spadá do frekvence zálohování protokolů. Cíle systému souborů NFS také nemusí být vysoce výkonné, protože možná nebudete muset aktivovat pravidelné streamování (úplné a přírůstkové) pro provozní zálohy, jakmile budete mít snímky konzistentní vzhledem k databázi.
Poznámka:
Vylepšený předzálohovací skript se obvykle postará o vyprázdnění všech transakcí protokolu přenášených do cíle zálohování protokolu, a teprve potom, než databázi vynutí pořízení snímku. Snímky jsou proto během obnovení konzistentní a spolehlivé.
Strategie obnovení
Jakmile se pořídí snímky konzistentní vzhledem k databázi a zálohy protokolů se streamují do svazku NFS, strategie obnovení databáze může využít funkci obnovení záloh virtuálních počítačů Azure. Možnost zálohování protokolů se na ni navíc používá pomocí databázového klienta. Následuje několik možností strategie obnovení:
- Vytvořte nové virtuální počítače z bodu obnovení konzistentního s databází. Virtuální počítač by už měl mít připojený přípojný bod protokolu. Pomocí databázových klientů spusťte příkazy obnovení pro obnovení k určitému bodu v čase.
- Vytvořte disky z bodu obnovení konzistentního s databází a připojte ho k jinému cílovému virtuálnímu počítači. Pak připojte cíl protokolu a pomocí databázových klientů spusťte příkazy obnovení pro obnovení k určitému bodu v čase.
- Použijte možnost obnovení souboru a vygenerujte skript. Spusťte skript na cílovém virtuálním počítači a připojte bod obnovení jako disky iSCSI. Potom pomocí databázových klientů spusťte na připojených discích ověřovací funkce specifické pro databázi a ověřte zálohovaná data. Místo obnovení celé databáze použijte také databázové klienty k exportu nebo obnovení několika tabulek nebo souborů.
- Pomocí funkce obnovení mezi oblastmi můžete provést výše uvedené akce ze sekundární spárované oblasti během regionální havárie.
Shrnutí
Pomocí snímků konzistentních s databází a protokolů zálohovaných pomocí vlastního řešení můžete vytvořit výkonné a nákladově efektivní řešení zálohování databází s využitím výhod zálohování virtuálních počítačů Azure a také opětovné použití funkcí databázových klientů.