Vysoká dostupnost ve službě Azure Database for MySQL

PLATÍ PRO: Jednoúčelový server Azure Database for MySQL

Důležité

Jednoúčelový server Azure Database for MySQL je na cestě vyřazení. Důrazně doporučujeme upgradovat na flexibilní server Azure Database for MySQL. Další informace o migraci na flexibilní server Azure Database for MySQL najdete v tématu Co se děje s jednoúčelovým serverem Azure Database for MySQL?

Služba Azure Database for MySQL poskytuje garantovanou vysokou úroveň dostupnosti díky finančně zajištěné smlouvě o úrovni služeb (SLA) o provozu 99,99 %. Azure Database for MySQL poskytuje vysokou dostupnost během plánovaných událostí, jako je operace škálování iniciovaná uživatelem, a také v případě neplánovaných událostí, jako jsou základní hardware, software nebo selhání sítě. Azure Database for MySQL se může rychle zotavit z nejdůležitějších okolností a zajistit tak prakticky žádný časový limit aplikace při používání této služby.

Azure Database for MySQL je vhodný pro spouštění důležitých databází, které vyžadují vysokou dobu provozu. Tato služba je založená na architektuře Azure a má základní možnosti vysoké dostupnosti, redundance a odolnosti, které snižují výpadky databáze z plánovaných a neplánovaných výpadků, aniž byste museli konfigurovat další komponenty.

Komponenty ve službě Azure Database for MySQL

Součást Popis
Databázový server MySQL Azure Database for MySQL poskytuje možnosti zabezpečení, izolace, ochrany prostředků a rychlého restartování databázových serverů. Tyto funkce usnadňují operace, jako je škálování a operace obnovení databázového serveru po výpadku za 60 až 120 sekund v závislosti na transakční aktivitě databáze.
Změny dat na databázovém serveru se obvykle vyskytují v kontextu databázové transakce. Všechny změny databáze se zaznamenávají synchronně ve formě předem zapisovaných protokolů (ib_log) ve službě Azure Storage , která je připojená k databázovému serveru. Během procesu kontroly databáze se do úložiště vyprázdní také datové stránky z paměti databázového serveru.
Vzdálené úložiště Všechny fyzické datové soubory a soubory protokolů MySQL jsou uložené ve službě Azure Storage, která je navržená tak, aby ukládal tři kopie dat v rámci oblasti, aby se zajistila redundance, dostupnost a spolehlivost dat. Vrstva úložiště je také nezávislá na databázovém serveru. Můžete ho odpojit od neúspěšného databázového serveru a znovu připojit k novému databázovému serveru do 60 sekund. Azure Storage také nepřetržitě monitoruje případné chyby úložiště. Pokud se zjistí poškození bloku, automaticky se opraví vytvořením instance nové kopie úložiště.
Brána Brána funguje jako proxy databáze, směruje všechna klientská připojení k databázovému serveru.

Plánované zmírnění výpadků

Služba Azure Database for MySQL je navržená tak, aby poskytovala vysokou dostupnost během plánovaných výpadků.

view of Elastic Scaling in Azure MySQL

Tady je několik scénářů plánované údržby:

Scénář Popis
Vertikální navýšení nebo snížení kapacity výpočetních prostředků Když uživatel provádí operaci vertikálního navýšení/snížení kapacity výpočetních prostředků, zřídí se nový databázový server pomocí škálované výpočetní konfigurace. Na starém databázovém serveru jsou povoleny aktivní kontrolní body, klientská připojení se vyprázdní, zruší se všechny nepotvrzené transakce a vypne se. Úložiště se pak odpojilo od starého databázového serveru a připojilo se k novému databázovému serveru. Když klientská aplikace opakuje připojení nebo se pokusí vytvořit nové připojení, brána přesměruje žádost o připojení na nový databázový server.
Vertikální navýšení kapacity úložiště Vertikální navýšení kapacity úložiště je online operace a nepřeruší databázový server.
Nové nasazení softwaru (Azure) Nové funkce zavedení nebo opravy chyb se automaticky stávají součástí plánované údržby služby. Další informace najdete v dokumentaci a také na portálu.
Upgrady podverze Azure Database for MySQL automaticky opravuje databázové servery na podverzi určenou Azure. Stává se to jako součást plánované údržby služby. Během plánované údržby může dojít k restartování databázového serveru nebo převzetí služeb při selhání, což může vést ke krátké nedostupnosti databázových serverů koncovým uživatelům. Servery Azure Database for MySQL běží v kontejnerech, takže restartování databázového serveru je obvykle rychlé, obvykle se očekává, že se dokončí za 60 až 120 sekund. Celou událost plánované údržby, včetně každého restartování serveru, pečlivě monitoruje technický tým. Doba převzetí služeb při selhání serveru závisí na době obnovení databáze, což může způsobit, že databáze bude online déle, pokud máte na serveru v době převzetí služeb při selhání velkou transakční aktivitu. Pokud se chcete vyhnout delší době restartování, doporučujeme se vyhnout dlouhotrvajícím transakcím (hromadnému načítání) během událostí plánované údržby. Další informace najdete v dokumentaci a také na portálu.

Zmírnění dopadu neplánovaných výpadků

Neplánované výpadky můžou nastat v důsledku nepředvídatelných selhání, včetně základní chyby hardwaru, problémů se sítí a chyb softwaru. Pokud databázový server neočekávaně přestane fungovat, nový databázový server se automaticky zřídí za 60 až 120 sekund. K novému databázovému serveru se automaticky připojí vzdálené úložiště. Modul MySQL provádí operaci obnovení pomocí WAL a databázových souborů a otevře databázový server, aby se klienti mohli připojit. Nepotvrzené transakce jsou ztraceny a aplikace je musí opakovat. I když neplánovaný výpadek nelze zabránit, Azure Database for MySQL snižuje výpadky tím, že automaticky provádí operace obnovení na databázových serverech i vrstvách úložiště bez nutnosti zásahu člověka.

view of High Availability in Azure MySQL

Neplánovaný výpadek: scénáře selhání a obnovení služby

Tady jsou některé scénáře selhání a způsob automatického obnovení služby Azure Database for MySQL:

Scénář Automatické obnovení
Selhání databázového serveru Pokud databázový server nefunguje kvůli nějaké základní chybě hardwaru, aktivní připojení se zahodí a všechny příchozí transakce se přeruší. Automaticky se nasadí nový databázový server a vzdálené úložiště dat se připojí k novému databázovému serveru. Po dokončení obnovení databáze se klienti můžou připojit k novému databázovému serveru přes bránu.

Aplikace využívající databáze MySQL musí být sestaveny způsobem, který zjišťuje a opakuje ukončená připojení a neúspěšné transakce. Při opakování aplikace brána transparentně přesměruje připojení na nově vytvořený databázový server.
Selhání úložiště Aplikace nevidí žádný dopad na problémy související s úložištěm, jako je selhání disku nebo poškození fyzického bloku. Vzhledem k tomu, že data jsou uložená ve 3 kopiích, kopie dat se obsluhuje úložištěm, které přežije. Blokování poškození se opraví automaticky. Pokud dojde ke ztrátě kopie dat, automaticky se vytvoří nová kopie dat.

Tady je několik scénářů selhání, které k obnovení vyžadují akci uživatele:

Scénář Plán obnovení
Selhání oblasti Selhání oblasti je vzácná událost. Pokud ale potřebujete ochranu před selháním oblasti, můžete nakonfigurovat jednu nebo více replik pro čtení v jiných oblastech pro zotavení po havárii (DR). (Podrobnosti najdete v tomto článku o vytváření a správě replik pro čtení). V případě selhání na úrovni oblasti můžete repliku pro čtení nakonfigurovanou v jiné oblasti ručně zvýšit na produkční databázový server.
Logické nebo uživatelské chyby Obnovení z chyb uživatelů, jako jsou náhodné vyřazení tabulek nebo nesprávně aktualizovaná data, zahrnuje obnovení k určitému bodu v čase (PITR) obnovením a obnovením dat do doby těsně před tím, než došlo k chybě.

Pokud chcete obnovit pouze podmnožinu databází nebo konkrétních tabulek místo všech databází na databázovém serveru, můžete obnovit databázový server v nové instanci, exportovat tabulky přes mysqldump a pak tyto tabulky obnovit do databáze pomocí obnovení .

Shrnutí

Azure Database for MySQL poskytuje možnost rychlého restartování databázových serverů, redundantního úložiště a efektivního směrování z brány. Pro další ochranu dat můžete nakonfigurovat zálohování tak, aby se geograficky replikovaly, a také nasadit jednu nebo více replik pro čtení v jiných oblastech. Díky vlastním možnostem vysoké dostupnosti chrání Azure Database for MySQL vaše databáze před nejběžnějšími výpadky a nabízí špičkové finanční 99,99 % smlouvy SLA o provozuschopnosti. Všechny tyto možnosti dostupnosti a spolehlivosti umožňují Azure být ideální platformou pro spouštění důležitých aplikací.

Další kroky