Pages

Instalacija MariaDB klastera na Centos 7 OS

Ova podešavanja konfigurisati na svakom serveru koji će biti deo MariaDB kalstera.

#isključivanje selinux-a
sudo setenforce 0

#dodavanje mariadb repository-a
vi /etc/yum.repos.d/mariadb.repo
#rad u VI editoru
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
#kraj rada u VI editoru

#instalacija socat paketa
sudo yum install socat

#instalacija MariaDB Galera Cluster-a
yum install MariaDB-Galera-server MariaDB-client rsync galera

#inicijalno podešavanje mysql-a
sudo service mysql start
sudo /usr/bin/mysql_secure_installation


#kreiranje korisničkog naloga za sinhronizaciju
mysql -u root -p
#rad u mysql konzoli
GRANT USAGE ON *.* to sst_user@'%' IDENTIFIED BY 'dbpass';
GRANT ALL PRIVILEGES on *.* to sst_user@'%';
FLUSH PRIVILEGES;
quit
#kraj rada u mysql konzoli

#zaustavljane mysql servisa pre setovanja klastera
sudo service mysql stop

#konfiguracija servera za klaster mod
vi /etc/my.cnf.d/server.cnf
#rad u VI editoru
[server]
[mysqld]
[galera]
binlog_format=ROW
default-storage-engine=innodb
innodb_autoinc_lock_mode=2
innodb_locks_unsafe_for_binlog=1
query_cache_size=0
query_cache_type=0
bind-address=0.0.0.0
datadir=/var/lib/mysql
innodb_log_file_size=100M
innodb_file_per_table
innodb_flush_log_at_trx_commit=2
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.1.101,192.168.1.102" # dodati sve servere u klasteru
wsrep_cluster_name='galera_cluster'
wsrep_node_address='192.168.1.101' # na ostalim serverima staviti njihovu adresu
wsrep_node_name='db1' # staviti drugo ime za ostale servere
wsrep_sst_method=rsync
wsrep_sst_auth=sst_user:dbpass
#kraj rada u VI editoru

Kada se na svim nodovima instalira i podesi mysql potrebno je startovati klaster.
Na prvom nodu se startuje mysql klaster komandom:

#startovanje prvog servera u klaster mod
sudo /etc/init.d/mysql start --wsrep-new-cluster

Na ostalim nodovima se samo startuje mysql servis komandom:
sudo service mysql start


Startovanje MariaDB klastera nakon planiranog isključivanja svih servera iz klastera

Serveri iz klastera se mogu nesmetano isključivati i uključivati, ali je potrebno da bar jedan server klastera radi. U ovom slučaju, ako se mysql servis ne startuje automatski, treba pokrenuti komandu: sudo service mysql start.

U situaciji kada imamo isključene sve nodove iz klastera, pre startovanja klastera potrebno je proveriti koji se nod poslednji isključio, a zatim startujemo klaster na prvom serveru:
sudo tail -100 /var/lib/mysql/grastate.dat
sudo /etc/init.d/mysql start --wsrep-new-cluster


Kada je isključivanje servera bilo neplanirano i u /var/lib/mysql/grastate.dat fajlu se javlja vrednost -1, potrebno je uraditi recover baze komandom:

 sudo /usr/sbin/mysqld -u root -wsrep-recover




Nema komentara:

Objavi komentar