GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat a nakonfigurovat MariaDB Galera Cluster na Ubuntu 18.04

Klastrování databází je proces sloučení více serverů jejich připojením k jedné databázi. Clustering zlepšuje dostupnost vaší databáze rozložením zátěže na různé servery. Pokud některý server selže, ostatní jsou rychle k dispozici pro pokračování v poskytování služeb.

MariaDB Galera je multi-master clusteringové řešení, které vám umožňuje číst a zapisovat do libovolného uzlu v clusteru. S MariaDB Galera je změna provedená v jakémkoliv uzlu replikována do všech uzlů. MariaDB Galera podporuje úložiště XtraDB/InnoDB a je k dispozici pouze v systému Linux.

Funkce

  • Aktivní-aktivní multi-master topologie
  • Automatické spojení uzlů
  • Schopnost číst a zapisovat do libovolného uzlu clusteru
  • Automatické řízení členství, selhání uzlů vyřazení z clusteru
  • Automatické zřizování uzlů

V tomto tutoriálu vám ukážeme, jak nastavit tříuzlový cluster MariaDB Galera na Ubuntu 18.04.

Předpoklady

  • Tři nové Ubuntu 18.04 VPS na cloudové platformě Atlantic.Net.
  • Heslo uživatele root nakonfigurované na všech serverech.

Pro účely tohoto tutoriálu použijeme tři servery s následující konfigurací:

server1 :192.168.0.101
server2 :192.168.0.102
server3 :192.168.0.103

Krok 1 – Vytvoření cloudového serveru Atlantic.Net

Nejprve se přihlaste ke svému cloudovému serveru Atlantic.Net. Vytvořte nový server a jako operační systém vyberte Ubuntu 18.04 s alespoň 2 GB RAM. Připojte se ke svému cloudovému serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.

Jakmile se přihlásíte na svůj server Ubuntu 18.04, spusťte následující příkaz a aktualizujte svůj základní systém nejnovějšími dostupnými balíčky.

apt-get update -y

Krok 2 – Instalace serveru MariaDB na všechny servery

Nejprve přidejte klíč úložiště MariaDB pomocí následujícího příkazu:

apt-get install software-properties-commonapt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

Dále přidejte úložiště pomocí následujícího příkazu:

add-apt-repository "deb [arch=amd64,arm64,ppc64el] http://mariadb.mirror.liquidtelecom.com/repo/10.4/ubuntu $(lsb_release -cs) main"

Po přidání úložiště aktualizujte úložiště pomocí následujícího příkazu:

apt-get update -y

Nakonec nainstalujte server MariaDB pomocí následujícího příkazu:

apt-get install mariadb-server -y

Počínaje verzí 10.1 je funkce clusteru Galera součástí MariaDB. Balíček MariaDB Galera Server se automaticky nainstaluje se serverem MariaDB.

Můžete jej nastavit pomocí následujícího příkazu:

mysql_secure_installation

Odpovězte na všechny otázky, jak je uvedeno níže:

Zadejte aktuální heslo pro uživatele root (zadejte pro žádné):Zadejte heslo uživatele root Přepnout na ověřování unix_socket [A/n] n Změnit heslo uživatele root? [A/n] A Nové heslo:Znovu zadejte nové heslo:Odstranit anonymní uživatele? [A/n] A Zakázat vzdálené přihlášení root? [A/n] A Odebrat testovací databázi a přístup k ní? [A/n] A Znovu načíst tabulky oprávnění? [A/n] A 

Poznámka :Opakujte výše uvedené kroky na všech třech serverech.

Krok 3 – Konfigurace každého serveru v clusteru

V tomto okamžiku jsme nainstalovali a nakonfigurovali server MariaDB na každém serveru. Dále budete muset nakonfigurovat cluster Galera pro komunikaci mezi servery. K tomu budete muset vytvořit společný konfigurační soubor na každém serveru.

V této části vám ukážeme, jak nakonfigurovat každý server v clusteru.

Konfigurace prvního serveru

Nejprve se přihlaste k prvnímu serveru a vytvořte konfigurační soubor Galera pomocí následujícího příkazu:

nano /etc/mysql/conf.d/galera.cnf

Přidejte následující řádky (ujistěte se, že zadáváte vlastní IP adresy serveru):

[mysqld]binlog_format=ROWdefault-storage-engine=innodbinnodb_autoinc_lock_mode=2bind-address=0.0.0.0# Konfigurace poskytovatele Galerawsrep_on=ONwsrep_provider=/usr/lib/galera/libgalera_smmster_address_cluster_cluster_name=libgalera_smmlerwrepgalup "gcomm://192.168.0.101,192.168.0.102,192.168.0.103"# Konfigurace synchronizace Galerawsrep_sst_method=rsync# Galera Node Configurationwsrep_node_address="192.168.0.10>name"192.168.0.10> 

Po dokončení uložte a zavřete soubor. Dále můžete pokračovat na druhý server.

Konfigurace druhého serveru

Dále se přihlaste k druhému serveru a vytvořte konfigurační soubor Galera pomocí následujícího příkazu:

nano /etc/mysql/conf.d/galera.cnf

Přidejte následující řádky:

[mysqld]binlog_format=ROWdefault-storage-engine=innodbinnodb_autoinc_lock_mode=2bind-address=0.0.0.0# Konfigurace poskytovatele Galerawsrep_on=ONwsrep_provider=/usr/lib/galera/libgalera_smmster_address_cluster_cluster_name=libgalera_smmlerwrepgalup "gcomm://192.168.0.101,192.168.0.102,192.168.0.103"# Konfigurace synchronizace Galerawsrep_sst_method=rsync# Galera Node Configurationwsrep_node_address="192.162"wsrep_server_nodename 

Po dokončení uložte a zavřete soubor. Dále můžete pokračovat na třetí server.

Konfigurace třetího serveru

Dále se přihlaste ke třetímu serveru a vytvořte konfigurační soubor Galera pomocí následujícího příkazu:

nano /etc/mysql/conf.d/galera.cnf

Přidejte následující řádky:

[mysqld]binlog_format=ROWdefault-storage-engine=innodbinnodb_autoinc_lock_mode=2bind-address=0.0.0.0# Konfigurace poskytovatele Galerawsrep_on=ONwsrep_provider=/usr/lib/galera/libgalera_smmster_address_cluster_cluster_name=libgalera_smmlerwrepgalup "gcomm://192.168.0.101,192.168.0.102,192.168.0.103"# Konfigurace synchronizace Galerawsrep_sst_method=rsync# Galera Node Configurationwsrep_node_address="192.1638.0.10>name" 

Po dokončení uložte a zavřete soubor.

V tuto chvíli jsme nakonfigurovali všechny tři servery tak, aby spolu komunikovaly.

Krok 4 – Inicializujte Galera Cluster

Před spuštěním clusteru budete muset zastavit službu MariaDB na všech serverech.

Spuštěním následujícího příkazu zastavte službu MariaDB na všech serverech.

systemctl stop mariadb

Dále inicializujte cluster v prvním uzlu pomocí následujícího příkazu:

galera_new_cluster

Výše uvedený příkaz spustí cluster a přidá server1 do clusteru.

Můžete to zkontrolovat pomocí následujícího příkazu:

mysql -u root -p -e "ZOBRAZIT STAV LIKE 'wsrep_cluster_size'"Zadejte heslo:

Zadejte své root heslo a stiskněte Enter. Měli byste vidět následující výstup:

+--------------------+-------+| Název_proměnné      | Hodnota |+--------------------+-------+| wsrep_cluster_size | 1     |+--------------------+-------+

Dále přejděte na druhý server a spusťte službu MariaDB:

systemctl start mariadb

Dále ověřte velikost clusteru pomocí následujícího příkazu:

mysql -u root -p -e "ZOBRAZIT STAV LIKE 'wsrep_cluster_size'"Zadejte heslo:

Zadejte své root heslo a stiskněte Enter. Měli byste vidět, že se druhý server připojil ke clusteru.

+--------------------+-------+| Název_proměnné      | Hodnota |+--------------------+-------+| wsrep_cluster_size | 2     |+--------------------+-------+

Dále přejděte na třetí server a spusťte službu MariaDB:

systemctl start mariadb

Dále ověřte velikost clusteru pomocí následujícího příkazu:

mysql -u root -p -e "ZOBRAZIT STAV LIKE 'wsrep_cluster_size'"Zadejte heslo:

Zadejte své root heslo a stiskněte Enter. Měli byste vidět, že se třetí server připojil ke clusteru.

+--------------------+-------+| Název_proměnné      | Hodnota |+--------------------+-------+| wsrep_cluster_size | 3     |+--------------------+-------+

Krok 5 – Test replikace clusteru Galera

Váš cluster Galera je nyní v provozu. Je čas otestovat a zjistit, zda replikace funguje.

Chcete-li tak učinit, vytvořte databázi na prvním serveru a zkontrolujte, zda byla replikována na jiné servery.

Na server1 se přihlaste do prostředí MySQL pomocí následujícího příkazu:

mysql -u root -p

Po zobrazení výzvy zadejte heslo uživatele root a poté vytvořte databázi pomocí následujícího příkazu:

vytvoření databáze replikadb;vytvoření databáze mydb;

Dále ukončete prostředí MySQL pomocí následujícího příkazu:

exit;

Na serveru2 se přihlaste do prostředí MySQL pomocí následujícího příkazu:

mysql -u root -p

Po zobrazení výzvy zadejte heslo uživatele root a zkontrolujte, zda databáze existuje.

zobrazit databáze;

Měli byste získat následující výstup:

+--------------------+| Databáze           |+--------------------+| informační_schéma || mydb               || mysql              || výkonnostní_schéma || replicadb          |+--------------------+

Na serveru 3 se přihlaste do prostředí MySQL pomocí následujícího příkazu:

mysql -u root -p

Po zobrazení výzvy zadejte heslo uživatele root a zkontrolujte, zda databáze existuje.

zobrazit databáze;

Měli byste získat následující výstup:

+--------------------+| Databáze           |+--------------------+| informační_schéma || mydb               || mysql              || výkonnostní_schéma || replicadb          |+--------------------+

Výše uvedený výstup jasně ukazuje, že replikace funguje správně.

Závěr

Gratulujeme! Úspěšně jste nainstalovali a nakonfigurovali tříuzlový cluster MariaDB Galera na Ubuntu 18.04 VPS. Nyní byste měli mít dostatek znalostí k nastavení clusteru MariaDB Galera v produkčním prostředí. Další informace naleznete v dokumentaci MariaDB Galera.


Linux
  1. Jak nainstalovat a nakonfigurovat Mariadb 10 v Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat strongSwan VPN na Ubuntu 18.04

  3. Jak nainstalovat a nakonfigurovat Fail2ban na Ubuntu?

  1. Jak nainstalovat MariaDB Galera Cluster na Ubuntu 16.04

  2. Jak nainstalovat a nakonfigurovat server DHCP na Ubuntu 20.04

  3. Jak nainstalovat a nakonfigurovat server Redis v Ubuntu

  1. Jak nainstalovat a nakonfigurovat server NFS na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat OpenVPN Server na Ubuntu 20.04

  3. Jak nainstalovat MariaDB na Ubuntu 22.04