MariaDBでGalera Cluster構成「CentOS 7.x」

2021-07-12

MariaDB 10.4 Galera Clusterでマルチマスタ構成

MariaDB 10.4で、マルチマスタ構成で動作するので3台構成で動作確認してみました。
マルチマスタ構成のですので、どのサーバーもマスターサーバーとなり、どのノードからも更新ができます

mariadbのレポジトリの設定

3台構成のIPアドレス名は「192.168.0.101」、「192.168.0.102」、「192.168.0.103」となります。
また、動作検証ですのでSELinux は無効にして、F/Wは停止しています

yumでインストールするために、mariadbのレポジトリを設定してそちらからインストールできるようにします。
「192.168.0.101」、「192.168.0.102」、「192.168.0.103」ともおこないます

$ sudo vim /etc/yum.repos.d/MariaDB.repo

# MariaDB 10.4 CentOS repository list - created 2020-01-09 02:29 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

レポジトリを設定したら、MariaDBとGaleraServerを、yumでインストールします

$ sudo yum --enablerepo=mariadb install MariaDB-server MariaDB-client

1台目の「server.conf」の設定

1台目のサーバー(192.168.0.101)の「server.conf」に以下の設定をおこないます

$ sudo vim /etc/my.cnf.d/server.cnf

[galera]
# Mandatory settings
wsrep_on=ON
wsrep_provider='/usr/lib64/galera-4/libgalera_smm.so'
wsrep_cluster_address=gcomm://192.168.0.101,192.168.0.102,192.168.0.103
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
wsrep_cluster_name=MariaDB_Cluster
wsrep_node_address=192.168.0.101
wsrep_node_name=DBHOST01
wsrep_sst_method=rsync
bind-address=0.0.0.0

MariaDBを起動します

# systemctl start mariadb.service

2台目の「server.conf」の設定

2台目のサーバー(192.168.0.102)の「server.conf」に以下の設定をおこないます

$ sudo vim /etc/my.cnf.d/server.cnf
[galera]
# Mandatory settings
wsrep_on=ON
wsrep_provider='/usr/lib64/galera-4/libgalera_smm.so'
wsrep_cluster_address=gcomm://192.168.0.101,192.168.0.102,192.168.0.103
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
wsrep_cluster_name=MariaDB_Cluster
wsrep_node_address=192.168.0.102
wsrep_node_name=DBHOST02
wsrep_sst_method=rsync
bind-address=0.0.0.0

3台目の「server.conf」の設定

3台目のサーバー(192.168.0.103)の「server.conf」に以下の設定をおこないます

3台目
$ sudo vim /etc/my.cnf.d/server.cnf
[galera]
# Mandatory settings
wsrep_on=ON
wsrep_provider='/usr/lib64/galera-4/libgalera_smm.so'
wsrep_cluster_address=gcomm://192.168.0.101,192.168.0.102,192.168.0.103
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
wsrep_cluster_name=MariaDB_Cluster
wsrep_node_address=192.168.0.103
wsrep_node_name=DBHOST03
wsrep_sst_method=rsync
bind-address=0.0.0.0

「wsrep_local_state_comment」ステータス確認

DBにログインしてステータスを確認します。[wsrep_local_state_comment] が [Synced] になっていれば同期はできています

$ mysql -u root -p

MariaDB [(none)]> show status like 'wsrep_%';
+-------------------------------+---------------------------------------------------------------------
| Variable_name                 | Value                                                               
+-------------------------------+---------------------------------------------------------------------
| wsrep_local_state_uuid        | 1b0f41b9-328c-11ea-b977-faddaa0620f7                                
| wsrep_protocol_version        | 10                                                                  
| wsrep_last_committed          | 6                                                                   
| wsrep_replicated              | 1                                                                   
| wsrep_replicated_bytes        | 488                                                                 
| wsrep_repl_keys               | 1                                                                   
| wsrep_repl_keys_bytes         | 32                                                                  
| wsrep_repl_data_bytes         | 391                                                                 
| wsrep_repl_other_bytes        | 0                                                                   
| wsrep_received                | 6                                                                   
| wsrep_received_bytes          | 1496                                                                
| wsrep_local_commits           | 0                                                                   
| wsrep_local_cert_failures     | 0                                                                   
| wsrep_local_replays           | 0                                                                   
| wsrep_local_send_queue        | 0                                                                   
| wsrep_local_send_queue_max    | 1                                                                   
| wsrep_local_send_queue_min    | 0                                                                   
| wsrep_local_send_queue_avg    | 0                                                                   
| wsrep_local_recv_queue        | 0                                                                   
| wsrep_local_recv_queue_max    | 1                                                                   
| wsrep_local_recv_queue_min    | 0                                                                   
| wsrep_local_recv_queue_avg    | 0                                                                   
| wsrep_local_cached_downto     | 2                                                                   
| wsrep_flow_control_paused_ns  | 0                                                                   
| wsrep_flow_control_paused     | 0                                                                   
| wsrep_flow_control_sent       | 0                                                                   
| wsrep_flow_control_recv       | 0                                                                   
| wsrep_cert_deps_distance      | 1                                                                   
| wsrep_apply_oooe              | 0                                                                   
| wsrep_apply_oool              | 0                                                                   
| wsrep_apply_window            | 1                                                                   
| wsrep_commit_oooe             | 0                                                                   
| wsrep_commit_oool             | 0                                                                   
| wsrep_commit_window           | 1                                                                   
| wsrep_local_state             | 4                                                                   
| wsrep_local_state_comment     | Synced                                                              
| wsrep_cert_index_size         | 3                                                                   
| wsrep_causal_reads            | 0                                                                   
| wsrep_cert_interval           | 0                                                                   
| wsrep_open_transactions       | 0                                                                   
| wsrep_open_connections        | 0                                                                   
| wsrep_incoming_addresses      | AUTO,AUTO,AUTO                                                      
| wsrep_cluster_weight          | 3                                                                   
| wsrep_desync_count            | 0                                                                   
| wsrep_evs_delayed             |                                                                     
| wsrep_evs_evict_list          |                                                                     
| wsrep_evs_repl_latency        | 0/0/0/0/0                                                           
| wsrep_evs_state               | OPERATIONAL                                                         
| wsrep_gcomm_uuid              | 61709fcb-328d-11ea-a920-42b06a755294                                
| wsrep_applier_thread_count    | 1                                                                   
| wsrep_cluster_capabilities    |                                                                     
| wsrep_cluster_conf_id         | 18446744073709551615                                                
| wsrep_cluster_size            | 3                                                                   
| wsrep_cluster_state_uuid      | 1b0f41b9-328c-11ea-b977-faddaa0620f7                                
| wsrep_cluster_status          | Primary                                                             
| wsrep_connected               | ON                                                                  
| wsrep_local_bf_aborts         | 0                                                                   
| wsrep_local_index             | 1                                                                   
| wsrep_provider_capabilities   | :MULTI_MASTER:CERTIFICATION:PARALLEL_APPLYING:TRX_REPLAY:ISOLATION:P
| wsrep_provider_name           | Galera                                                              
| wsrep_provider_vendor         | Codership Oy <info@codership.com>                                   
| wsrep_provider_version        | 26.4.3(r4535)                                                       
| wsrep_ready                   | ON                                                                  
| wsrep_rollbacker_thread_count | 1                                                                   
| wsrep_thread_count            | 2                                                                   
+-------------------------------+---------------------------------------------------------------------
65 rows in set (0.001 sec)

テーブル作成して動作確認

各サーバーでデータベースを作成してみて、データベースが作成できているか確認します

1台目(192.168.0.101)で「test01_db 」のデータベースを作成します

MariaDB [(none)]> CREATE DATABASE test01_db DEFAULT CHARACTER SET utf8;
Query OK, 1 row affected (0.006 sec)

MariaDB [(none)]>  show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| test01_db          |
+--------------------+
5 rows in set (0.000 sec)

2台目(192.168.0.102)で「test02_db 」のデータベースを作成します

MariaDB [(none)]> CREATE DATABASE test02_db DEFAULT CHARACTER SET utf8;

3台目(192.168.0.103)で「test03_db 」のデータベースを作成します

MariaDB [(none)]> CREATE DATABASE test03_db DEFAULT CHARACTER SET utf8;

各サーバーでデータベースを作成されているか確認します

MariaDB [(none)]>  show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| test01_db          |
| test02_db          |
| test03_db          |
+--------------------+
7 rows in set (0.000 sec)

 

 

 

 

スポンサーリンク

0
0

LinuxCentOS 7,mariadb

Posted by admin