install database cluster mariadb dengan gluster ubuntu 16 dan 18
Dalam tulisan kami berikut ini, kami akan berikan cara sederhana membuat clustering database mariadb dengan gluster.
mari samakan persepsi servernya
dalam tulisan kami ini, kita buat 3 database
db1 10.3.241.63
db2 10.3.241.62
db3 10.3.241.54
mari kita mulai
1. Download repo nya mariadb dan install
2. stop servivce nyacurl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bashapt-get install mariadb-server -y
keterangan: lakukan hal ini di semua server, pastikan sebelum anda melajutkan service dalam keadaan matisystemctl stop mariadb
3. setelah install mariadb server , copy paste configurasi berikut ini ( sesuaikan lagi ya confignya)
di vim /etc/mysql/mariadb.conf.d/galera.cnf atau /etc/my.cnf.d/galera.cnf buat baru jika galera.cnf belum ada
a. copas ini di server db1 (10.3.241.63)
[mysqld]
bind-address=0.0.0.0
default_storage_engine=InnoDB
binlog_format=row
innodb_autoinc_lock_mode=2
# Galera cluster configuration
wsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://10.3.241.63,10.3.241.62,10.3.241.54" #<-- disesuaikan ya
wsrep_cluster_name="mariadb-galera-cluster"
wsrep_sst_method=rsync
# Cluster node configuration
wsrep_node_address="10.3.241.62" # <--jangan sampe salah, beda server beda settingan
wsrep_node_name="db01" # <--jangan sampe salah, beda server beda settingan
b. copas ini di server db2 (10.3.241.62)
c. copas ini di server db1 (10.3.241.54)[mysqld]
bind-address=0.0.0.0
default_storage_engine=InnoDB
binlog_format=row
innodb_autoinc_lock_mode=2
# Galera cluster configuration
wsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://10.3.241.63,10.3.241.62,10.3.241.54" #<-- disesuaikan ya
wsrep_cluster_name="mariadb-galera-cluster"
wsrep_sst_method=rsync
# Cluster node configuration
wsrep_node_address="10.3.241.62" # <--jangan sampe salah, beda server beda settingan
wsrep_node_name="db02" # <--jangan sampe salah, beda server beda settingan
4. pada node db1 jalankan perintah berikut ini untuk meng inisiasi cluster baru (bootstrap)[mysqld]
bind-address=0.0.0.0
default_storage_engine=InnoDB
binlog_format=row
innodb_autoinc_lock_mode=2
# Galera cluster configuration
wsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://10.3.241.63,10.3.241.62,10.3.241.54" #<-- disesuaikan ya
wsrep_cluster_name="mariadb-galera-cluster"
wsrep_sst_method=rsync
# Cluster node configuration
wsrep_node_address="10.3.241.54" # <--jangan sampe salah, beda server beda settingan
wsrep_node_name="db03" # <--jangan sampe salah, beda server beda settingan
# galera_new_cluster
keterangan: dapat dijalankan di server mana pun
5. cek clusternya dgn perintah berikut ini
# mysql -u root -p -e "show status like 'wsrep_cluster_size'"
keterangan: hasilnya akan seperti ini
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| wsrep_cluster_size | 1 |
+-----------------------+-------+
6. start servernya satu per satu ingat jangan sekaligus
node db2
# systemctl start mariadb
7. cek clusternya dgn perintah berikut ini
# mysql -u root -p -e "show status like 'wsrep_cluster_size'"
keterangan: hasilnya akan seperti ini
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| wsrep_cluster_size | 2 |
+-----------------------+-------+
8. node db2
# systemctl start mariadb
7. cek clusternya dgn perintah berikut ini
# mysql -u root -p -e "show status like 'wsrep_cluster_size'"
keterangan: hasilnya akan seperti ini
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| wsrep_cluster_size | 3 |
+-----------------------+-------+
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| wsrep_cluster_size | 3 |
+-----------------------+-------+
8. jangan lupa di allow ya port berikut
3306For MariaDB client connections and State Snapshot Transfer that use themysqldumpmethod.4567For Galera Cluster replication traffic. Multicast replication uses both UDP transport and TCP on this port.4568For Incremental State Transfers, or IST, the process by which a missing state is received by other nodes in the cluster.4444For all other State Snapshot Transfers, or SST, the mechanism by which a joiner node gets its state and data from a donor node.
sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
sudo firewall-cmd --permanent --zone=public --add-port=4567/tcp
sudo firewall-cmd --permanent --zone=public --add-port=4568/tcp
sudo firewall-cmd --permanent --zone=public --add-port=4444/tcp
sudo firewall-cmd --permanent --zone=public --add-port=4567/udp
Keterangan
1. jika sudah semua, coba lah hasil replicasi nya dengan membuat database di salah satu server dan lihat hasilnya di node lain.
2. kombinasikan dengan grants user agar tercipta read / write cluster
3. lihat tulisan kami lainnya untuk setting maxscale /loadbalancer disini
FINISH
YAP
Comments
Post a Comment