一、安装环境准备

  1、系统:

    CentOS Linux release 7.4.1708 (Core)

  2、hosts

    10.6.32.51  openstack1

    10.6.32.52  openstack2

    10.6.32.53  openstack3

  3、关闭防火墙和Selinux

  4、同步时间:

    博客:http://www.cnblogs.com/weijie0717/p/8549204.html

  5、查看和卸载 系统原有的 mariadb、mysql (必须卸载,否则后期会有问题):

    #  rpm -qa | grep -i maria

    #  rpm -qa | grep -i mysql

    #  yum remove mariiadb

    #  yum remove mysql 

二、集群部署

  1、包安装

    # yum install  MariaDB-Galera-server galera

    # yum install percona-xtrabackup -y

    #  yum install perl-Time-HiRes.x86_64  socat percona-toolkit -y

  2、修改基础配置文件 (所有节点操作)

      # cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

      # vim /etc/my.cnf        

注释以下行:
binlog_format=mixed
server-id =

      # vim /etc/my.cnf.d/server.cnf        

添加或取消注释如下行:
[mysqld]
#....
datadir=/var/lib/mysql
log-error=/var/log/mysqld.log [galera]
#...
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2

  3、启动服务,修改密码  (节点1操作)

    # systemctl start mysql   

    # mysql     # mariadb 默认没有密码,可以直接进入

    MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');

    MariaDB [(none)]> GRANT ALL ON  *.* TO 'galera'@'localhost' IDENTIFIED BY 'yourpasswd';   (添加用户:galera,后期集群配置文件用到 )

  4、配置集群文件 (所有节点)

    #  vim /etc/my.cnf.d/server.cnf      

添加如下行,红色字体为个节点的差异配置,和自定义配置。
bind-address=10.6.32.51
server-id=101
wsrep_cluster_name=openstack_cluster
wsrep-provider=/usr/lib64/galera/libgalera_smm.so
wsrep_node_name = openstack1
wsrep_cluster_address=gcomm://10.6.32.51,10.6.32.52,10.6.32.53
wsrep_node_address=10.6.32.51
wsrep_provider_options =gmcast.listen_addr=tcp://10.6.32.51:4567
wsrep_sst_donor=openstack1,openstack2,openstack3
wsrep_sst_method=xtrabackup-v2 #集群数据同步方式( xtrabackup-v2或rsync 都需要安装所匹配的插件)
wsrep_sst_auth=galera:yourpasswd
slow_query_log=on

  5、集群启动

    a、当集群中还没有节点启动时,确认所有节点上没有mysql进程,如果有请关闭。(所有节点操作)

      # ps -aux | grep mysql

      # kill -9 mysql-id

    b、启动集群中第一个节点。(openstack1 上操作)  

      #   /usr/libexec/mysqld  --wsrep-new-cluster     (当且仅当 集群中没有任何节点开启,启动第一个节点时使用)

    c、启动其他节点,逐台启动,然后查看集群状态

      # systemctl start mysqld    (集群中有节点后就可以正常启动。openstack2 和openstack3 上依次启动,启动一台查看依次集群状态)

      

    d、重新启动第一个节点的数据库(opoenstsck1上操作)

      # kill -i mysq-id    (因为第一次为非正常启动,需要使用kill 杀掉进程来关闭mysql)

      # systemctl restart mysqld

        (如果重启失败,请查看/var/lib/mysql/mysql.sock.lock 是否存在,如果存在,删除后重新启动。)

    e、在各节点使用 数据同步用户galera登录,如果可以正常启动并登录成功。到此,Galera Cluster 已经成功部署。

 三、测试

  参考:Centos 7 下 Mysql 5.7 Galera Cluster 集群部署

  

  谢谢!!!

Centos 7 MariaDB Galera cluster 部署的更多相关文章

  1. MariaDB Galera Cluster部署手册

    MariaDB Galera Cluster部署手册 galara保证双主数据库的同步及一致性 1.环境准备 基于新部署.最小化安装centos6.5 1>  yum install opens ...

  2. MariaDB Galera Cluster 部署(如何快速部署MariaDB集群)

    MariaDB Galera Cluster 部署(如何快速部署MariaDB集群) [日期:--] 来源:Linux社区 作者:Linux [字体:大 中 小] MariaDB作为Mysql的一个分 ...

  3. MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)

    MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)  OneAPM蓝海讯通7月3日 发布 推荐 4 推荐 收藏 14 收藏,1.1k 浏览 MariaDB 作为 ...

  4. MariaDB Galera Cluster 部署 + keepalived实现高可用

    MariaDB Galera Cluster 部署 MariaDB作为Mysql的一个分支,在开源项目中已经广泛使用,例如大热的openstack,所以,为了保证服务的高可用性,同时提高系统的负载能力 ...

  5. MariaDB Galera Cluster 部署

    原文  http://code.oneapm.com/database/2015/07/02/mariadb-galera-cluster/MariaDB作为Mysql的一个分支,在开源项目中已经广泛 ...

  6. MariaDB Galera Cluster部署实践

    原理 官方地址:http://galeracluster.com/documentation-webpages/index.html Galera Cluster与传统的复制方式不同,不通过I/O_t ...

  7. 【原】基于 HAproxy 1.6.3 Keeplived 在 Centos 7 中实现mysql mariadb galera cluster 集群分发读写 —— 上篇

    前言 有一段时间没有写blogs,乘着周末开始整理下haproxy + keeplived 实现 mysql mariadb galera cluster 集群访问环境的搭建工作. 本文集中讲hapr ...

  8. Mariadb Galera Cluster 群集 安装部署

    #Mariadb Galera Cluster 群集 安装部署 openstack pike 部署  目录汇总 http://www.cnblogs.com/elvi/p/7613861.html # ...

  9. MariaDB Galera Cluster集群搭建

    MariaDB Galera Cluster是什么?   Galera Cluster是由第三方公司Codership所研发的一套免费开源的集群高可用方案,实现了数据零丢失,官网地址为http://g ...

随机推荐

  1. 4. Tomcat内存溢出解决

    1.  java.lang.OutOfMemoryError: PermGen space a.如果tomcat是以bat方式启动的,则如下设置: 修改TOMCAT_HOME/bin/catalina ...

  2. Python3下获取WINDOWS下所有常用系统路径

    #codeing:utf-8import os #搞定WINDOWS下所有系统路径filename='c:\\WINDOWS_ALL_PATH.txt'f=open(filename,'w')i=1f ...

  3. PyCharm 安装使用

    服务器激活地址(转载)http://www.cnblogs.com/littlehb/p/7784517.html   PyCharm 服务器激活地址: 最近用edu邮箱申请了一个JetBrains针 ...

  4. [记录] Ubuntu 配置Apache虚拟站点

    版本 Ubuntu 16.04 1 . 首先找到Apapche配置文件夹  /etc/apache2/ apache2.conf conf-enabled magic mods-enabled sit ...

  5. react-native android 和ios 集成 jpush-react-native 激光推送

    安装 $ npm install jpush-react-native --save # jpush-react-native 版本以后需要同时安装 jcore-react-native $ npm ...

  6. java中线程池的使用

    public static ExecutorSevice newSingleThreadExecutor() public static ExecutorSevice newFixedThreadPo ...

  7. HBase 入门

    使用条件: 海量数据百亿级的行 百万列,  准实时查询 使用场景:  比如金融,交通,电商,移动等 特点: 1:

  8. FormData上传文件(不是所有的浏览器都支持)

    <h1>Ajax上传文件</h1> <div> <input type="file" id="img"/> &l ...

  9. Python集合的基本操作

    #-*coding:utf-8 -* list =set([2,3,4]) list2 =set([5,3,7]) #交集 #print (list.intersection(list2)) #并集 ...

  10. Haskell语言学习笔记(85)Async

    安装 async $ cabal install async async-2.2.1 installed async / wait / concurrently async :: IO a -> ...