sql >> Databáze >  >> RDS >> MariaDB

ClusterControl 1.5 – Automatické ověření zálohy, sestavení Slave ze zálohy a integrace do cloudu

Jádrem ClusterControl je jeho automatizace, stejně jako zajištění toho, že vaše data budou bezpečně zálohována a připravena k obnovení, kdykoli se něco pokazí. Mít efektivní strategii zálohování a plán obnovy po havárii je klíčem k úspěchu jakékoli aplikace nebo prostředí.

V naší nejnovější verzi, ClusterControl 1.5, jsme zavedli řadu vylepšení pro zálohování systémů založených na MySQL a MariaDB.

Jedním z klíčových vylepšení je možnost zálohování z ClusterControl k poskytovateli cloudu dle vašeho výběru. Poskytovatelé cloudu, jako jsou Google Cloud Services a Amazon S3, nabízejí prakticky neomezené úložiště, což snižuje potřebu místního prostoru. To vám umožní uchovat si záložní soubory déle, jak dlouho budete chtít, a nebudete mít obavy z místa na disku.

Pojďme prozkoumat všechny úžasné nové funkce zálohování pro ClusterControl 1.5...

Redesign průvodce zálohováním/obnovením

Nejprve si všimnete, že průvodci zálohováním a obnovou byli přepracováni, aby lépe vylepšili uživatelskou zkušenost. Nyní se načte jako postranní nabídka na pravé straně obrazovky:

Seznam záloh také dostává drobné vylepšení, kde se po kliknutí na konkrétní zálohu zobrazí podrobnosti o záloze:

Budete moci zobrazit umístění zálohy a databáze, které jsou v záloze. Existují také možnosti obnovení zálohy nebo její nahrání do cloudu.

Záloha kompatibilní s PITR

ClusterControl provádí standardní zálohu mysqldump se samostatnými výpisy schémat a dat. Díky tomu je snadné obnovit částečné zálohy. Narušuje však konzistenci zálohy (schéma a data jsou vypisována ve dvou samostatných relacích), a proto ji nelze použít k zajištění podřízeného nebo bodového obnovení.

Záloha kompatibilní s mysqldump PITR obsahuje jeden soubor výpisu s informacemi GTID, souborem binlog a pozicí. Pouze databázový uzel, který vytváří binární protokol, bude mít k dispozici možnost „PITR kompatibilní“, jak je zvýrazněno na snímku obrazovky níže:

Když je přepnuta možnost kompatibilní s PITR, pole databáze a tabulky jsou šedá, protože ClusterControl vždy provede zálohování proti všem databázím, událostem, spouštěčům a rutinám cílového serveru MySQL.

Následující řádky se objeví v prvních ~50 řádcích dokončeného souboru výpisu:

$ head -50 mysqldump_2017-11-07_072250_complete.sql
...
-- GTID state at the beginning of the backup
--
SET @@GLOBAL.GTID_PURGED='20dc5247-4a98-ee18-73af-5c79373388ee:1-1681';

--
-- Position to start replication or point-in-time recovery from
--
CHANGE MASTER TO MASTER_LOG_FILE='binlog.000001', MASTER_LOG_POS=2457790;
...

Tyto informace lze použít k vytvoření slave zařízení ze zálohy nebo k provedení obnovy v určitém okamžiku spolu s binárními protokoly, kde můžete spustit obnovu z MASTER_LOG_FILE a MASTER_LOG_POS nahlášených v souboru výpisu pomocí nástroje "mysqlbinlog". Všimněte si, že binární protokoly nejsou zálohovány pomocí ClusterControl.

Sestavení slave ze zálohy Další funkcí je možnost sestavit slave přímo ze zálohy kompatibilní s PITR, místo aby to bylo ze zvolené master. To je obrovská výhoda, protože to snižuje zátěž hlavního serveru. Tuto možnost lze použít s replikací MySQL nebo Galera Cluster. Stávající zálohu lze použít k opětovnému sestavení existujícího replikačního slave nebo přidání nového replikačního slave během fáze přípravy, jak ukazuje následující snímek obrazovky:

Jakmile je připojení dokončeno, podřízená jednotka se připojí k vybranému masteru a začne dohánět. Dříve ClusterControl prováděl zálohu streamování přímo z vybraného masteru pomocí Percona Xtrabackup. To by mohlo ovlivnit výkon masteru při škálování velké datové sady, přestože operace na masteru neblokuje. S novou možností, pokud je záloha uložena na ClusterControl, budou při nastavování dat na podřízeném zařízení zaneprázdněni pouze tito hostitelé (ClusterControl + slave).

Zálohování do cloudu

Zálohy lze nyní automaticky nahrávat do cloudu. To vyžaduje instalaci modulu ClusterControl s názvem clustercontrol-cloud (modul integrace cloudu) a clustercontrol-clud (Cloud download/upload CLI), které jsou dostupné ve verzi 1.5 a novější. Pokyny k aktualizaci jsou součástí těchto balíčků a dodávají se bez jakékoli další konfigurace. V současnosti jsou podporovanými cloudovými platformami Amazon Web Services a Google Cloud Platform. Cloudové přihlašovací údaje se konfigurují v části ClusterControl -> Nastavení -> Integrace -> Poskytovatelé cloudu.

Při vytváření nebo plánování zálohy byste měli vidět následující další možnosti, když je přepnuto „Nahrát zálohu do cloudu“:

Tato funkce umožňuje jednorázové nahrání nebo naplánování nahrání záloh po dokončení (Amazon S3 nebo Google Cloud Storage). Poté si můžete stáhnout a obnovit zálohy podle potřeby.

Vlastní komprese pro mysqldump

Tato funkce byla ve skutečnosti poprvé představena s ClusterControl v1.4.2 po jeho vydání. Přidali jsme úroveň komprese zálohy založenou na gzip. Dříve ClusterControl používal výchozí kompresi zálohy (úroveň 6), pokud byl cíl zálohy v uzlu řadiče. Nejnižší komprese (úroveň 1 – nejrychlejší, menší komprese) byla použita, pokud byl cíl zálohy na samotném hostiteli databáze, aby se zajistil minimální dopad na databázi během operace komprimace.

V této verzi jsme vylepšili aspekt komprese a nyní si můžete přizpůsobit úroveň komprese bez ohledu na cíl zálohy. Při upgradu vaší instance ClusterControl budou všechny plánované zálohy automaticky převedeny na úroveň 6, pokud je výslovně neupravíte ve verzi 1.5.

Komprese zálohy je zásadní, když je vaše datová sada velká, v kombinaci s dlouhodobou politikou uchovávání záloh, zatímco je úložný prostor omezený. Mysqldump, který je založen na textu, může těžit z komprese s úsporou až 60 % místa na disku původní velikosti souboru. V některých případech je nejvyšší kompresní poměr tou nejlepší volbou, i když je to za cenu delší dekomprese při obnově.

Bonusová funkce:Automatické ověření zálohy

Jak říkají staří správci systému - záloha není záloha, pokud ji nelze obnovit. Ověření zálohy je něco, co mnoho lidí obvykle zanedbává. Někteří správci systému pro to vyvinuli vlastní rutiny, obvykle více manuální než automatizované. Automatizace je obtížná, hlavně kvůli složitosti operace jako celku – počínaje zřízením hostitele, instalací a přípravou MySQL, přenosem záložních souborů, dekompresí, obnovou, ověřovacími procedurami a nakonec vyčištěním systému po procesu. Všechny tyto potíže způsobují, že lidé zanedbávají tak důležitý aspekt spolehlivého zálohování. Obecně by se měl test obnovení zálohy provádět alespoň jednou měsíčně nebo v případě významných změn ve velikosti dat nebo struktuře databáze. Najděte plán, který vám vyhovuje, a formalizujte jej pomocí naplánované události.

ClusterControl může automatizovat ověření zálohy provedením obnovení na novém hostiteli, aniž by došlo k ohrožení některého z výše uvedených ověřovacích postupů. To lze provést po určité prodlevě nebo ihned po dokončení zálohování. Oznámí stav zálohy na základě ukončovacího kódu operace obnovy, provede automatické vypnutí, pokud je záloha ověřena, nebo jednoduše nechá obnoveného hostitele běžet, abyste provedli další ruční ověření dat.

Při vytváření nebo plánování zálohy budete mít další možnosti, pokud je přepnuto "Ověřit zálohu":

Pokud je povolena možnost "Instalovat databázový software", ClusterControl odstraní jakoukoli existující instalaci MySQL na cílovém hostiteli a znovu nainstaluje databázový software se stejnou verzí, jakou má stávající server MySQL. V opačném případě, pokud máte pro obnoveného hostitele specifické nastavení, můžete tuto možnost přeskočit. Zbývající možnosti jsou samozřejmé.

Bonusová funkce:Nezapomeňte na PostgreSQL

Kromě všech těchto skvělých funkcí pro MySQL a MariaDB ClusterControl 1.5 také nyní PostgreSQL poskytuje další metodu zálohování (pg_basebackup), kterou lze použít pro online binární zálohy. Zálohy pořízené pomocí pg_basebackup lze později použít pro obnovu v určitém okamžiku a jako výchozí bod pro záložní servery pro odesílání protokolů nebo streamování.


To je prozatím vše. Vyzkoušejte ClusterControl v1.5, pohrajte si s novými funkcemi a dejte nám vědět, co si myslíte.


  1. Vyhledejte v databázi Microsoft SQL Server uložená data

  2. Jak nevolat Hekaton nativně kompilované uložené procedury

  3. Oracle spoušť po vložení nebo odstranění

  4. Analyzujte výchozí hodnoty parametrů pomocí prostředí PowerShell – část 1