架設MariaDB Cluster

會選擇MariaDB而不是選擇MySQL來架設Cluster的原因很簡單,就是筆者當初在架設MySQL Cluster時失敗了,失敗的原因是MySQL Cluster的說明文件不足造成的(筆者是這麼認為的),因為Maria Cluster的說文件寫得很好,是一步一步教你如何來安裝、設定,筆者照著做的結果,很簡單就成功了。

下面我們來安裝Marai DB Cluster,首先要請大家準備至少三台以上的Linux機器;下方的示範,會使用三台的CentOS 6.7的Linux機器來實作,其中二台是會安裝MariaDB Cluster,另外一台是安裝HA proxy,當做Load Balance,環境如下圖所示。

Untitled.png

 

安裝MariaDB

設定yum repository

請先用root或相等權限的使用者登入資料庫1及資料庫2的機器,接下來我們要在資料庫1與資料庫2同時做yum的repository設定,透過指令 vi /etc/yum.repos.d/mariadb.repo

修改內容如下:

For CentOS 6 – 64bit:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

 

 

For CentOS 6 – 32bit:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos6-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1


 

儲存後即可。

 

關閉SELinux(安全增強式Linux)

因為Cluster需要彼此的DB連線,所以某些安全性的設定會防礙彼此的DB連線,所以要關閉SELinux。指令是  setenforce 0。

設定後可sestatus來查看結果,正常設定完後顯示如下

如果是開啟的狀態的話,顯示如下:

設定完後,因為重啟電腦還是會保持開啟狀態,所以還要編輯開機設定,編輯/etc/sysconfig/selinux,來決定下次開機的狀態。指令 vi /etc/sysconfig/selinux

原本的設定

變更為

儲存後即可。

關閉防火牆

因為Cluster之間彼此的互通資料並不在一般開放的port範圍中,所以依預設的情況會有問題;為了解決這個問題的最快方法就是關閉防火牆。關閉防火牆的指令:service iptables stop

因為這樣只是臨時關閉,重啟後防火牆就會回復,所以為了讓防火牆下次不要重啟,所以要再下指令:chkconfig iptables off

不過因為關閉了防火牆,所以安全性的問題,要從其他方面去考量了。

安裝socat

socat是拿來做Cluster彼此溝通用的,所以必需先安裝,不過CentOS 6.7是已經安裝,為預防萬一,我們還是來下一下安裝指令: 

sudo yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/socat-1.7.2.3-1.el6.x86_64.rpm

移除預設的MySQL

因為MariaDB與MySQL相沖,但是CentOS 6.7預設會幫我們安裝MySQL,所以在安裝MariaDB前,需先解除MySQL,解除安裝的指令如下: yum remove mysql-server

 

安裝Marai DB

終於要開始安裝MariaDB了,安裝指令如下:

yum install MariaDB-Galera-server MariaDB-client rsync galera

遇到問題就按Y之後,之後就能完成安裝了。

要記得資料庫2也要跟著重做一次喔!

arrow
arrow

    JAVA Programmer 發表在 痞客邦 留言(0) 人氣()