V tomto tutoriálu vám ukážu, jak nainstalovat a nakonfigurovat Percona XtraDB Cluster na serveru CentOS 7. Budeme používat Percona XtraDB Cluster 5.6, který je plně kompatibilní s MySQL a Percona Server.
Percona je společnost odborníků na databáze MySQL a MongoDB založená v roce 2006. Percona vytváří a spravuje software s otevřeným zdrojovým kódem pro MySQL a MongoDB:Percona Server (databázový server pro MySQL s vylepšeními výkonu vysoké dostupnosti), Percona XtraDB Cluster (řešení s vysokou dostupností pro MySQL cluster), Percona Server pro MongoDB a další nástroje pro správu databází, jako je sada nástrojů Percona, monitorovací nástroje Percona a Percona XtraBackup.
Předpoklad
- 3 uzly serveru CentOS 7.
- Oprávnění uživatele root.
- Základní znalost CentOS 7.
Krok 1 – Nastavení souboru hostitelů
První věc, kterou musíte udělat, je nakonfigurovat názvy hostitelů všech serverů. Mám 3 servery s CentOS 7, jak je uvedeno níže:
Uzel Adresa IP serveru Název hostitele
Uzel1 - 192.168.43.36 percona1
Uzel2 - 192.168.43.166 192.168.43.166 19 3. 38 za cona. 4 3. 38 za 166 19 před 18 166Připojte se ke všem serverům pomocí svého terminálu:
ssh [e-mail chráněný]Pokud jste se přihlásili na všechny servery, upravte soubor '/etc/hosts' na každém serveru pomocí vim:
vim /etc/hostsVložte konfiguraci hostitelů níže:
192.168.43.36 percona1
192.168.43.166 percona2
192.168.43.148 percona3Nahraďte adresy IP adresami, které odpovídají konfiguraci místní sítě. Uložte a ukončete.
Krok 2 – Konfigurace brány firewall
Firewalld je nové výchozí rozhraní brány firewall v systému CentOS 7. Ke konfiguraci brány firewall se používá příkaz firewall-cmd. Můžeme definovat a nakonfigurovat konkrétní skupiny nebo zóny nebo můžeme nakonfigurovat firewall pro služby jako ssh, databáze MySQL, webový server nginx/apache atd.
V tomto kroku použijeme pro konfiguraci firewallu firewall. Použijeme příkaz 'firewall-cmd' k otevření portu serveru percona a dalších portů, které jsou pro cluster potřeba.
Spusťte firewalld pomocí tohoto příkazu systemctl:
systemctl start firewalldPoté spusťte níže uvedený příkaz a otevřete port používaný serverem MySQL/percona:
firewall-cmd --zone=public --add-service=mysql --permanentDále přidejte další porty pro cluster pomocí příkazu níže:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=4567/tcp --permanent
firewall-cmd --zone=public --add-port=4568/tcp --permanent
firewall-cmd --zone=public --add-port=4444/tcp --permanent
firewall -cmd --zone=public --add-port=4567/udp --permanentZnovu načtěte pravidla brány firewall:
firewall-cmd --reloadChcete-li zobrazit seznam všech pravidel brány firewall, použijte volbu '--list-all':
firewall-cm --list-all
Krok 3 – Instalace úložiště Epel a Socat
Aby bylo možné spustit Percona XtraDB Cluster na serveru, musíme nainstalovat socat a je k dispozici v epel-repository. Nejprve tedy musíme nainstalovat úložiště Epel a poté nainstalovat socat. Dále musíme odstranit mariadb-libs ze serveru, protože jsou v konfliktu s Percona XtraDB Cluster.
Nainstalujte epel-repository a socat:
yum -y install epel-release
yum -y install socatOdeberte mariadb-libs, abyste předešli konfliktu balíčků mezi mariadb-libs a Percona XtraDB Cluster:
yum -y odstranit mariadb-libsÚložiště Epel a socat jsou nainstalovány.
Krok 4 – Instalace Percona XtraDB Cluster
V tomto kroku nainstalujeme cluster Percona xtradb se všemi závislostmi balíčků. Potřebujeme přidat úložiště Percona pro instalaci a poté spustíme server Percona a nakonfigurujeme uživatele root a heslo pro databázový server.
Nainstalujte úložiště Percona pomocí yum:
yum -y install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpmNyní nainstalujte cluster Percona XtraDB a další balíčky požadované pro tento tutoriál:
yum install Percona-XtraDB-Cluster-server-56 Percona-XtraDB-Cluster-client-56 Percona-XtraDB-Cluster-shared-56 percona-toolkit percona-xtrabackup Percona-XtraDB-Cluster-galeranc-3 rsync /před>Percona XtraDB Cluster je nainstalován, spusťte server Percona pomocí příkazu zhis systemctl:
systemctl start mysqlDále nakonfigurujte heslo uživatele root pro všechny servery percona/mysql:
mysql_secure_installationNastavte heslo percona/mysql:
Zadejte aktuální heslo pro uživatele root (zadejte pro žádné):STISKNĚTE ENTER
Nastavit heslo uživatele root? [A/n] A
Nové heslo:ZAPIŠTE SVÉ HESLO
Znovu zadejte nové heslo:OPAKOVANÉ HESLO
Odebrat anonymní uživatele? [A/n] A
Zakázat vzdálené přihlášení root? [A/n] A
Načíst nyní tabulky oprávnění? [A/n] APoznámka:
Spusťte kroky 1–4 na všech 3 serverech CentOS.
Krok 5 – Konfigurace Percona XtraDB Cluster
V kroku 4 jsme již nainstalovali Percona XtraDB Cluster a nakonfigurovali root heslo pro všechny serverové uzly Percona/Mysql. V tomto kroku vytvoříme nového uživatele pro ověřování SST a upravíme konfiguraci MySQL my.cnf na každém serveru.
SST (State Snapshot Transfer) je úplná kopie dat z jednoho serveru jako dárce na jiný server jako spojující. Pro ověření SST musíme vytvořit nového uživatele s názvem „sstuser“ s heslem „[email protected]“. A pro metodu SST použijeme místo rsync xtrabackup-v2. Použijte prosím jiné a bezpečné heslo pro váš cluster!
Přihlaste se do prostředí percona/mysql na každém serveru:
mysql -u root -p
ZADEJTE HESLOA vytvořte nový „sstuser“ s heslem „[email protected]“:
vytvořit uživatele [chráněno e-mailem]'%' označeného jako '[chráněn e-mailem]';
udělit vše na *.* uživateli [email protected]'%';
vyprázdnit oprávnění;
Poté před úpravou konfiguračního souboru zastavte službu MySQL na každém serveru:
systemctl stop mysqlDále upravte konfigurační soubor mysql my.cnf na každém serveru pomocí editoru vim.
Na Percona1 server:
vim /etc/my.cnfZměňte všechny řádky 'wsrep' s konfigurací níže:
wsrep_cluster_address =gcomm://
wsrep_provider =/usr/lib64/galera3/libgalera_smm.so
wsrep_slave_threads =8
wsrep_cluster_name =cluster Percona
wsrep_node_address =percona1
wsrep_sst_method =xtrabackup-v2
wsrep_sst_auth su ] ochránit s ]Uložte a ukončete.
Na Percona2 server:
vim /etc/my.cnfZměňte všechny řádky 'wsrep' s konfigurací níže:
wsrep_cluster_address =gcomm:// percona1, percona3
wsrep_provider =/usr/lib64/galera3/libgalera_smm.So
wsrep_slave_threads =8
/>wsrep_node_name =percona2
wsrep_node_address =percona2
wsrep_sst_metoda ] email s předběžnou ochranoupřed zálohou > Uložte a ukončete.
Na Percona3 server:
vim /etc/my.cnfZměňte všechny řádky 'wsrep' s konfigurací níže:
wsrep_cluster_address =gcomm:// percona1, percona2
wsrep_provider =/usr/lib64/galera3/libgalera_smm.So
wsrep_slave_threads =8
/>wsrep_node_name =percona3
wsrep_node_address =percona3
wsrep_sst_metoda ] s e-mailem s předem _ st = před zálohou >Uložte a ukončete.
Snímek obrazovky z percona2 server.
Krok 6 – Spusťte Percona XtraDB Cluster Server
Nakonfigurovali jsme cluster Percona XtraDB na všech serverech a nyní můžeme server spustit.
Na serveru Percona1, bootstraping nebo uvedení clusteru do provozu:
systemctl start [email protected]Dále spusťte server Percona/MySQL na serveru percona2 a percona3 pomocí příkazu níže:
systemctl start mysqlujistěte se, že nejsou žádné chybové zprávy. Pokud po zadání příkazu ke spuštění MySQL dojde k chybě, zkontrolujte soubor protokolu '/var/log/messages'.
Krok 7 – Testování
Pro testování clusteru Percona XtraDB se musíme přihlásit do prostředí percona/mysql na každém serveru.
Přihlaste se do prostředí Percona/MySQL na všech serverech/uzlech:
mysql -u root -p
ZADEJTE HESLOTestování vysoké dostupnosti pomocí příkazu mysql:
ZOBRAZIT STAV JAKO 'wsrep_local_state_comment';Vyzkoušejte tento příkaz na každém uzlu, pokud vidíte "Synchronizováno" v důsledku toho je tento uzel připraven zvládnout provoz.
Testování dostupných uzlů clusteru:
zobrazit globální stav jako 'wsrep_cluster_size';Získáte aktuální počet uzlů v clusteru Percona.
Pro úplné výsledky můžete použít následující příkaz:
zobrazit globální stav jako 'wsrep%';
Jak nainstalovat a nakonfigurovat OpenLiteSpeed s PHP 7.4 na CentOS 8 Jak vytvořit Ceph Distributed Storage Cluster na CentOS 7Cent OS