Hybridní cloudová databáze je směs aktivních hostitelů sídlících v místní i cloudové infrastruktuře, kteří fungují jako jeden operační systém. Pomáhá implementovat prostředí s vysokou dostupností, a protože jak databáze, tak aplikace musí být přenosné, aby mohly fungovat na místě i v cloudu, snižuje také závislost na konkrétním dodavateli cloudu (uzamknutí cloudového dodavatele). Nasazení tohoto druhu prostředí však není tak jednoduché.
V tomto příspěvku na blogu se podíváme na použití ClusterControl k nasazení hybridní cloudové databáze MySQL mezi místní a cloudovou infrastrukturou běžící na AWS. Toto nastavení nám umožňuje přiblížit databázi klientům a aplikacím umístěným v cloudovém prostředí a repliku databáze budeme uchovávat v místním prostředí pro účely obnovy po havárii a živé zálohy.
Architektura
Naše nasazení se skládá ze čtyř uzlů – jeden uzel pro ClusterControl a jeden uzel pro master server další dva uzly jsou na slave serverech, kde 2 z databázových uzlů jsou umístěny v datovém centru AWS jako primární datové centrum (stejně jako ClusterControl), zatímco třetí uzel je umístěn v místním datovém centru. Následující diagram ilustruje naši finální architekturu.
Příprava cloudového prostředí
Nejprve si musíte vytvořit prostředí s vaším hlavním poskytovatelem cloudu. V tomto případě použijeme AWS se třemi instancemi EC2.
Potom přejděte do místního prostředí a vytvořte jeden virtuální počítač nebo hostitele, který bude pohotovostním uzlem.
ClusterControl - 52.14.222.75
Master - 3.17.190.53
Slave 1 - 3.14.146.131
Slave 2 - 192.168.33.15
Předpokládáme, že máte spuštěnou instalaci ClusterControl a již jste vytvořili účty Cloud Provider. Všimněte si, že pro účely blogu používáme cloudové instance s veřejnými IP. Pro nastavení na produkční úrovni musíte zabezpečit své prostředí, například cloudové virtuální počítače by měly být v rámci VPC pouze s privátními IP adresami. Měli byste zabezpečené spojení mezi on-prem a VPC.
Nasazení MySQL pomocí ClusterControl
Přejděte do GUI ClusterControl a vyberte možnost „Nasadit“. Pokud již máte spuštěnou instanci MySQL, musíte místo toho vybrat „Importovat existující server/databázi“.
Zde provedeme nové nasazení, takže vybereme možnost „Deploy“. Při výběru MySQL musíte zadat uživatele, klíč nebo heslo a port pro připojení pomocí SSH k vašim uzlům MySQL .
Další podrobnosti o připojení SSH naleznete v požadavcích uživatele ClusterControl.
Po nastavení přístupu SSH musíte definovat uživatele databáze a verzi. Datadir je volitelný. Můžete také určit, které úložiště chcete použít. Zde vybíráme verzi MySQL 8.0.
Ujistěte se, že se zobrazuje ikona zeleného zaškrtnutí, která označuje, že ClusterControl se může připojit k uzlům databáze a provést nasazení. Kliknutím na tlačítko "Deploy" zahájíte nasazení a můžete sledovat průběh nasazení v části Aktivita -> Úlohy -> Vytvořit cluster. Stav vytvoření můžete sledovat v monitoru aktivity ClusterControl.
Po dokončení úlohy můžete na hlavní obrazovce ClusterControl vidět své nové nastavení MySQL.
A zkontrolujte konečnou topologii v části Zobrazení topologie.
Závěr
Funkce ClusterControl vám umožní rychle nastavit replikaci v prostředí Hybrid Cloud, mezi různými poskytovateli cloudu nebo dokonce mezi poskytovatelem cloudu a prostředím On-prem. Pokud jde o komunikaci mezi poskytovateli cloudu nebo mezi soukromým a veřejným cloudem, z bezpečnostních důvodů musíte omezit provoz pouze ze známých zdrojů, abyste snížili riziko neoprávněného přístupu do vaší sítě.