ClusterControl 1.6 přichází s těsnější integrací s AWS, Azure a Google Cloud, takže je nyní možné spouštět nové instance a nasazovat MySQL, MariaDB, MongoDB a PostgreSQL přímo z uživatelského rozhraní ClusterControl. V tomto blogu vám ukážeme, jak nasadit cluster ve webových službách Amazon.
Všimněte si, že tato nová funkce vyžaduje dva moduly zvané clustercontrol-cloud a clustercontrol-clud . První z nich je pomocný démon, který rozšiřuje možnosti CMON cloudové komunikace, zatímco druhý je klient správce souborů pro nahrávání a stahování souborů v cloudových instancích. Oba balíčky jsou závislé na balíčku clustercontrol UI, který se nainstaluje automaticky, pokud neexistují. Podrobnosti najdete na stránce dokumentace komponent.
Cloudové přihlašovací údaje
ClusterControl vám umožňuje ukládat a spravovat vaše cloudové přihlašovací údaje v části Integrace (boční nabídka) -> Cloud Providers:
Podporované cloudové platformy v této verzi jsou Amazon Web Services, Google Cloud Platform a Microsoft Azure. Na této stránce můžete přidávat nové cloudové přihlašovací údaje, spravovat stávající a také se připojit ke své cloudové platformě a spravovat zdroje.
Přihlašovací údaje, které zde byly nastaveny, lze použít k:
- Správa cloudových zdrojů
- Nasazení databází v cloudu
- Nahrajte zálohu do cloudového úložiště
Po kliknutí na tlačítko „Spravovat AWS“ byste viděli následující:
Na cloudových instancích můžete provádět jednoduché úlohy správy. Můžete také zkontrolovat nastavení VPC na kartě "AWS VPC", jak je znázorněno na následujícím snímku obrazovky:
Výše uvedené funkce jsou užitečné jako reference, zejména při přípravě cloudových instancí před zahájením nasazení databáze.
Nasazení databáze v cloudu
V předchozích verzích ClusterControl se s nasazením databáze v cloudu zacházelo podobně jako s nasazením na standardních hostitelích, kde jste museli předem vytvořit instance cloudu a poté zadat podrobnosti o instanci a pověření v průvodci „Nasazením clusteru databáze“. Postup nasazení neznal žádné další funkce a flexibilitu v cloudovém prostředí, jako je dynamická alokace IP a názvu hostitele, veřejná IP adresa NAT, elasticita úložiště, konfigurace sítě virtuálního privátního cloudu a tak dále.
Ve verzi 1.6 stačí zadat přihlašovací údaje ke cloudu, které lze spravovat prostřednictvím rozhraní „Cloud Providers“ a postupovat podle průvodce nasazením „Deploy in the Cloud“. V uživatelském rozhraní ClusterControl klikněte na Deploy a zobrazí se vám následující možnosti:
V tuto chvíli jsou podporovanými cloudovými poskytovateli tři velcí hráči – Amazon Web Service (AWS), Google Cloud a Microsoft Azure. V budoucí verzi se chystáme integrovat další poskytovatele.
Na první stránce se vám zobrazí možnosti Podrobnosti o clusteru:
V této části byste museli vybrat podporovaný typ clusteru, MySQL Galera Cluster, MongoDB Replica Set nebo PostgreSQL Streaming Replication. Dalším krokem je výběr podporovaného dodavatele pro vybraný typ clusteru. V současné době jsou podporováni následující výrobci a verze:
- MySQL Galera Cluster – Percona XtraDB Cluster 5.7, MariaDB 10.2
- Cluster MongoDB – MongoDB 3.4 od MongoDB, Inc a Percona Server pro MongoDB 3.4 od Percona (pouze sada replik).
- Cluster PostgreSQL – PostgreSQL 10.0 (pouze streamovaná replikace).
V dalším kroku se vám zobrazí následující dialog:
Zde můžete odpovídajícím způsobem nakonfigurovat vybraný typ clusteru. Vyberte počet uzlů. Název clusteru bude použit jako značka instance, takže toto nasazení snadno poznáte na řídicím panelu poskytovatele cloudu. V názvu clusteru není povolena žádná mezera. My.cnf Template je konfigurační soubor šablony, který ClusterControl použije k nasazení clusteru. Musí být umístěn v /usr/share/cmon/templates na hostiteli ClusterControl. Zbytek polí je docela samozřejmý.
Dalším dialogem je výběr přihlašovacích údajů cloudu:
Můžete si vybrat existující cloudové přihlašovací údaje nebo vytvořit nové kliknutím na tlačítko „Přidat nové přihlašovací údaje“. Dalším krokem je výběr konfigurace virtuálního počítače:
Většina nastavení v tomto kroku je dynamicky vyplněna od poskytovatele cloudu podle zvolených přihlašovacích údajů. Můžete nakonfigurovat operační systém, velikost instance, nastavení VPC, typ a velikost úložiště a také určit umístění klíče SSH na hostiteli ClusterControl. Můžete také nechat ClusterControl vygenerovat nový klíč speciálně pro tyto instance. Po kliknutí na tlačítko „Přidat nový“ vedle Virtual Private Cloud se vám zobrazí formulář pro vytvoření nového VPC:
VPC je logická síťová infrastruktura, kterou máte v rámci své cloudové platformy. Své VPC můžete nakonfigurovat úpravou rozsahu IP adres, vytvořením podsítí, konfigurací směrovacích tabulek, síťových bran a nastavení zabezpečení. Doporučuje se nasadit vaši databázovou infrastrukturu v této síti za účelem izolace, zabezpečení a řízení směrování.
Při vytváření nového VPC zadejte název VPC a blok adresy IPv4 s podsítí. Poté zvolte, zda má být IPv6 součástí sítě, a možnost pronájmu. Tuto virtuální síť pak můžete použít pro svou databázovou infrastrukturu.
Posledním krokem je shrnutí nasazení:
V této fázi si musíte vybrat, na které podsíti ve zvolené virtuální síti chcete, aby databáze běžela. Vezměte na vědomí, že vybraná podsíť MUSÍ mít povoleno automatické přidělování veřejné adresy IPv4. Můžete také vytvořit novou podsíť pod tímto VPC kliknutím na tlačítko "Přidat novou podsíť". Ověřte, zda je vše v pořádku, a kliknutím na tlačítko „Deploy Cluster“ spusťte nasazení.
Průběh pak můžete sledovat kliknutím na Aktivita -> Úlohy -> Vytvořit klastr -> Úplné podrobnosti o úloze:
V závislosti na připojení může dokončení trvat 10 až 20 minut. Po dokončení uvidíte nový databázový cluster uvedený pod řídicím panelem ClusterControl. V případě clusteru streamingové replikace PostgreSQL budete možná po dokončení nasazení potřebovat znát hlavní a podřízené IP adresy. Jednoduše přejděte na kartu Nodes a uvidíte veřejné a soukromé IP adresy v seznamu uzlů vlevo:
Váš databázový cluster je nyní nasazen a spuštěn na AWS.
V tuto chvíli škálování funguje podobně jako standardní hostitel, kde je třeba předem vytvořit cloudovou instanci ručně a zadat hostitele pod ClusterControl -> vybrat cluster -> Přidat uzel.
Pod kapotou proces nasazení provádí následující:
- Vytvářejte cloudové instance
- Konfigurujte skupiny zabezpečení a sítě
- Ověřte připojení SSH z ClusterControl ke všem vytvořeným instancím
- Nasadit databázi v každé instanci
- Nakonfigurujte klastrovací nebo replikační odkazy
- Zaregistrujte nasazení do ClusterControl
Upozorňujeme, že tato funkce je stále ve verzi beta. Tuto funkci však můžete použít k urychlení vašeho vývojového a testovacího prostředí řízením a správou databázového clusteru u různých poskytovatelů cloudu z jediného uživatelského rozhraní.
Zálohování databáze v cloudu
Tato funkce existuje od ClusterControl 1.5.0 a nyní jsme přidali podporu pro Azure Cloud Storage. To znamená, že nyní můžete nahrávat a stahovat vytvořenou zálohu u všech tří hlavních cloudových poskytovatelů (AWS, GCP a Azure). Proces nahrávání proběhne ihned po úspěšném vytvoření zálohy (pokud přepnete na „Nahrát zálohu do cloudu“), nebo můžete ručně kliknout na tlačítko ikony cloudu v seznamu záloh:
Poté si můžete stáhnout a obnovit zálohy z cloudu pro případ, že byste ztratili místní úložiště záloh nebo pokud potřebujete snížit využití místa na místním disku pro vaše zálohy.
Aktuální omezení
Existují některá známá omezení pro funkci cloudového nasazení, jak je uvedeno níže:
- V současné době není zavedeno žádné „účtování“ pro cloudové instance. Pokud odeberete databázový cluster, budete muset instance cloudu odstranit ručně.
- Uzel nelze automaticky přidat nebo odebrat pomocí cloudových instancí.
- S cloudovou instancí nelze nástroj pro vyrovnávání zatížení nasadit automaticky.
Tuto funkci jsme rozsáhle testovali v mnoha prostředích a nastaveních, ale vždy se najdou rohová pouzdra, která jsme mohli přehlédnout. Pro více informací se prosím podívejte do protokolu změn.
Šťastné shlukování v cloudu!