ivaneeo's blog

          自由的力量,自由的生活。

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            669 Posts :: 0 Stories :: 64 Comments :: 0 Trackbacks

          Install MariaDB Galera Cluster in Ubuntu

          by  on 2 JULY 2013 · LEAVE A COMMENT

          I am going to show you on how to install MariaDB Cluster (with Galera) in Ubuntu Precise (12.04) LTS 64bit. You need at least 3 hosts running together to form a reliable cluster.

          Hosts list:

          maria1 – 192.168.10.101
          maria2 – 192.168.10.102
          maria3 – 192.168.10.103

           

          Prepare Hosts

          In all hosts, this is my /etc/hosts definition:

          192.168.10.101        maria1 maria1.mycluster.com 192.168.10.102        maria2 maria2.mycluster.com 192.168.10.103        maria3 maria3.mycluster.com

           

          Install MariaDB Cluster

          1. Install the GPG key required by apt:

          $ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 1BB943DB

          2. Add the apt repository:

          $ sudo add-apt-repository 'deb http://mirror.stshosting.co.uk/mariadb/repo/5.5/ubuntu precise main'

          3. Get the latest repo:

          $ sudo apt-get update

          4. Install MariaDB Cluster and related packages:

          $ sudo apt-get install -y galera  mariadb-galera-server-5.5 mariadb-client-5.5 libmariadbclient18 mariadb-client-core-5.5 rsync netcat-openbsd

          ** Make sure you put the same MySQL root password on all hosts

           

          Install Percona Xtrabackup

          1. We are going to use Xtrabackup to perform State Snapshot Transfer (SST). Install GPG key for Percona:

          $ sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A

          2. Add the apt repository for Percona:

          $ sudo add-apt-repository 'deb http://repo.percona.com/apt precise  main'

          3. Update and install Percona Xtrabackup:

          $ sudo apt-get update && sudo apt-get -y install percona-toolkit percona-xtrabackup

           

          Configure MariaDB Cluster

          1. Once the installation completed, you need to comment following lines in /etc/mysql/my.cnf:

          #bind-address #default_storage_engine #query_cache_limit #query_cache_size

          2. Add following lines for wsrep configuration options in /etc/mysql/my.cnf under [mysqld] directive:

          binlog_format=ROW default_storage_engine=innodb innodb_autoinc_lock_mode=2 innodb_locks_unsafe_for_binlog=1 innodb_doublewrite=1

          3. Add following lines into specific node under [mysqld] directive:

          maria1:

          # wsrep provider configuration wsrep_provider=/usr/lib/galera/libgalera_smm.so wsrep_provider_options="gcache.size=256M; gcache.page_size=128M" wsrep_cluster_address=gcomm:// wsrep_cluster_name="MariaDB_Cluster" wsrep_node_address="maria1" wsrep_node_name="maria1" wsrep_sst_method=xtrabackup wsrep_sst_auth="root:MyR00tPasswd" wsrep_node_incoming_address=192.168.10.101 wsrep_sst_receive_address=192.168.10.101 wsrep_slave_threads=16

          maria2:

          # wsrep provider configuration wsrep_provider=/usr/lib/galera/libgalera_smm.so wsrep_provider_options="gcache.size=256M; gcache.page_size=128M" wsrep_cluster_address=gcomm://maria1 wsrep_cluster_name="MariaDB_Cluster" wsrep_node_address="maria2" wsrep_node_name="maria2" wsrep_sst_method=xtrabackup wsrep_sst_auth="root:MyR00tPasswd" wsrep_node_incoming_address=192.168.10.102 wsrep_sst_receive_address=192.168.10.102 wsrep_slave_threads=16

          maria3:

          # wsrep provider configuration wsrep_provider=/usr/lib/galera/libgalera_smm.so wsrep_provider_options="gcache.size=256M; gcache.page_size=128M" wsrep_cluster_address=gcomm://maria1 wsrep_cluster_name="MariaDB_Cluster" wsrep_node_address="maria3" wsrep_node_name="maria3" wsrep_sst_method=xtrabackup wsrep_sst_auth="root:MyR00tPasswd" wsrep_node_incoming_address=192.168.10.103 wsrep_sst_receive_address=192.168.10.103 wsrep_slave_threads=16

           

          Initialize the Cluster

          1. Login to maria1 to initialize the cluster by restarting the service:

          $ sudo service mysql restart

          2. Login to maria2 and maria3 and restart MySQL. This will allow maria2 and maria3 to perform SST from maria1:

          $ sudo service mysql restart

          3. Login to MariaDB console and check for following values:

          MariaDB [(none)]> show status like 'wsrep_%';

          And you should see following output:

          | wsrep_local_state | 4 | | wsrep_local_state_comment | Synced | | wsrep_incoming_addresses | 192.168.10.101:3306,192.168.10.102:3306,192.168.10.103:3306 | | wsrep_cluster_size | 3 | | wsrep_ready | ON |

          You could now point your web server or application server to one of MariaDB cluster node to query.

           

          posted on 2014-03-02 00:26 ivaneeo 閱讀(530) 評論(0)  編輯  收藏 所屬分類: tip
          主站蜘蛛池模板: 杭锦旗| 洱源县| 泸定县| 鄯善县| 潞西市| 嘉荫县| 灵山县| 朔州市| 新蔡县| 永胜县| 余干县| 昌邑市| 云梦县| 蕲春县| 青州市| 祁门县| 卢氏县| 五莲县| 嵊州市| 南和县| 泸定县| 蒙山县| 从化市| 乐陵市| 禄劝| 华阴市| 清远市| 潍坊市| 平塘县| 靖江市| 浦北县| 乌兰浩特市| 天水市| 邹城市| 大新县| 沾益县| 秀山| 吴江市| 民县| 上高县| 奉新县|