Galera Cluster5.7 (CentOs7) 集群搭建

安装环境

  centOs7

  Galera Cluster5.7(MySql5.7)

下载galeracluster

  下载地址http://galeracluster.com/downloads/

  安装前需卸载原有mysql,删除相关文件夹

  卸载Postfix,这个可能跟MySQL配置有冲突: yum remove postfix –y

  安装需要外网环境

使用 (yum install -y 包名)命令进行安装

  安装顺序:

    1、 mysql-wsrep-libs-compat-5.7-5.7.23-25.15.el7.x86_64.rpm

    2、 mysql-wsrep-common-5.7-5.7.23-25.15.el7.x86_64.rpm

    3、 mysql-wsrep-libs-5.7-5.7.23-25.15.el7.x86_64.rpm

    4、 mysql-wsrep-devel-5.7-5.7.23-25.15.el7.x86_64.rpm

    5、 mysql-wsrep-client-5.7-5.7.23-25.15.el7.x86_64.rpm

    6、 mysql-wsrep-server-5.7-5.7.23-25.15.el7.x86_64.rpm

    7、 mysql-wsrep-5.7-5.7.23-25.15.el7.x86_64.rpm

    8、 mysql-wsrep-test-5.7-5.7.23-25.15.el7.x86_64.rpm(该包在安装时会提示没有     mysql-wsrep-server的依赖,使用rpm 加上--nodeps参数安装)

    9、galera-3-25.3.24-2.el7.x86_64

安装完成后mysql 首次启动

  1) 使用命令:mysqld --initialize  初始化mysql

  2) 查看默认密码: grep ‘temporary password‘ /var/log/mysqld.log (路径为my.cnf 中配置的log_error 路径)

  3) 重设root账户密码:SET PASSWORD=PASSWORD("Liufahui1@");(mysql5.7默 认密码等级比较高,修改密码的时候需要至少8位,包含数字,大小写和特殊字符)

  4) 开放远程登录授权

    给对应需要访问MySQL的用户名和密码进行授权,如果没有授权,是无法远程连接MySQL的

    授权无端口限制的用户登录mysql数据库(生产上开放端口):

    GRANT ALL PRIVILEGES ON *.* TO ‘用户名‘@‘%‘ IDENTIFIED BY ‘密码‘ WITH GRANT OPTION;

    FLUSH PRIVILEGES;

  5) 去掉Postfix,这个可能跟MySQL配置有冲突: yum remove postfix -y

  6) 关闭防火墙(生产上可开放端口):

    setenforce 0 && systemctl stop firewalld

  7) 关闭mysql服务:service mysqld stop  (注意mysql5.7是mysqld)

修改配置文件:

  1) 修改my.cnf

    vim /etc/my.cnf,增加:!includedir /etc/my.cnf.d/

  2) 修改wsrep.cnf

    vi  /etc/my.cnf.d/wsrep.cnf


[mysqld]
server-id=145 #每个节点一个唯一的ID
default-storage-engine=innodb
innodb_autoinc_lock_mode=2
innodb_locks_unsafe_for_binlog=1
query_cache_size=0
query_cache_type=0
bind-address=0.0.0.0
wsrep_provider=/usr/lib64/galera-3/libgalera_smm.so
wsrep_provider_options=‘gmcast.listen_addr=tcp://192.168.79.145:4567‘ #修改为本节点地址
wsrep_cluster_name="my_wsrep_cluster" #集群名称,所有节点配置为同一个
wsrep_cluster_address=gcomm://192.168.79.145:4567,192.168.79.146:4567,192.168.79.147:4567 #节点中所有节点地址
wsrep_node_name=node1 #node名称,每个节点名称唯一
wsrep_node_address=‘192.168.79.145‘ #本节点地址
wsrep_node_incoming_address=‘192.168.79.145‘ #本节点地址
wsrep_slave_threads=1
wsrep_certify_nonPK=1
wsrep_max_ws_rows=131072
wsrep_max_ws_size=1073741824
wsrep_debug=0
wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
wsrep_auto_increment_control=1
wsrep_drupal_282555_workaround=0
wsrep_causal_reads=0
wsrep_notify_cmd=
wsrep_sst_method=rsync
wsrep_sst_auth=root:[email protected] #数据量库用户名密码
wsrep_sst_donor=‘node1,node2,node3,‘ #节点中所有节点的node名称

启动集群:

  1)  集群第一个节点启动

    wsrep.cnf 配置中的 wsrep_cluster_address 需要如此配置 wsrep_cluster_address=gcomm:// ,以后再启动的话需要配置完整。

    使用 /usr/bin/mysqld_bootstrap 命令启动

    启动成功后将wsrep_cluster_address=gcomm://补充完整。

  2)  其他节点启动

    修改好my.cnf和wsrep.cnf参数后直接启动mysql即可。

  注意:/usr/bin/mysqld_bootstrap 命令只在集群第一个节点启动时使用,因为这个脚本中带有一个参数:--wsrep-new-cluster,代表新集群。

集群重启:

在集群停止之后重启时,先在每个几点上使用mysqld_safe --wsrep-recover查看节点的Recovered position的值,选择值最大的一个作为第一个几点启动,如果启动失败,则在将作为第一个启动节点的服务器上编辑grastate.dat文件(可以使用find命令查找位置),将safe_to_bootstrap的值设为1,使用/usr/bin/mysqld_bootstrap命令启动该节点,其他节点启动与以前一致。

原文地址:https://www.cnblogs.com/lfh9527/p/10084111.html

时间: 2024-08-30 15:35:17

Galera Cluster5.7 (CentOs7) 集群搭建的相关文章

Centos7下Etcd集群搭建

一.简介 "A highly-available key value store for shared configuration and service discovery." Etcd是coreos开发的分布式服务系统,内部采用raft协议作为一致性算法.作为一个高可用的配置共享.服务发现的键值存储系统,Etcd有以下的特点: 1)简单:安装配置简单,而且提供了 HTTP API 进行交互,使用也很简单 2)安全:支持 SSL 证书验证 3)快速:根据官方提供的数据,单实例支持每秒

CentOS7/RHEL7 pacemaker+corosync高可用集群搭建

目录 一.集群信息... 4 二.集群搭建... 4 1.制作软件源... 4 2.主机基础配置... 5 3.集群基础环境准备... 7 4.集群资源准备... 9 5.资源配置... 11 6.constraint配置... 12 7.stonith配置... 13 8.集群功能验证... 14 三.集群常用命令及作用... 17 1.验证群集安装... 17 2.查看群集资源... 17 3.使用群集脚本... 17 4.STONITH 设备操作... 17 5.查看群集配置... 17

MySQL主从复制、读写分离、高可用集群搭建

MySQL主从复制.读写分离.高可用集群搭建  一.服务介绍   1.1 Keepalived     Keepalived,见名知意,即保持存活,其目的是解决单点故障,当一台服务器宕机或者故障时自动切换到其他的服务器中.Keepalived是基于VRRP协议实现的.VRRP协议是用于实现路由器冗余的协议,VRRP协议将两台或多台路由器设备虚拟成虚拟设备,可以对外提供虚拟路由器IP(一个或多个),即漂移IP(VIP). 1.2 ProxySQL ProxySQL是一个高性能,高可用性的MySQL

Redis主从以及哨兵集群搭建(二)

Redis主从以及哨兵集群搭建 一.前言 Redis主从同步原理同MySQL的主从原理十分相似,而解决Redis单点故障的哨兵机制(sentinel)又同解决MySQL单点故障的MHA十分相似.因此我们在学习Redis时,可以将学习MySQL的知识迁移,这样一来,有利于我们快速掌握Redis主从机制,Redis哨兵集群的搭建.Redis的Sentinel机制大概是这样的.sentinel即哨兵,作用即放哨.开个玩笑,其实哨兵有三个作用:监控.通知和自动故障转移.哨兵是用来监控Redis的mast

Redis 4.0.1集群搭建

Redis 4.0.1集群搭建 一.概述 Redis3.0版本之后支持Cluster. 1.1.redis cluster的现状 目前redis支持的cluster特性: 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot resharding:在线分片 4):进群管理:cluster xxx 5):基于配置(nodes-port.conf)的集群管理 6):ASK 转向/MOVED 转向机制. 1.2.redis cluster 架构 1)redis-clust

LVS高可用集群搭建

最近公司重整架构,前端使用LVS做负债均衡,虽然之前也研究过集群,看过很多LVS原理和架构,但毕竟没有真正操作过,以下案例是在虚拟机中完成实验,记录一下,方便以后在服务器中实施搭建.  架构图如下: 前提介绍:本案例采用Centos7+Keepalived1.3.5+Tomcat9+Mysql5.6+Redis3.2.8+Rabbitmq3.6.10 集群实现的功能有: 1):实现单点访问,利用keepalived的vip实现对不同的后端服务器进行访问: 2):健康检查,利用keepalived

Redis集群搭建笔记

系统为CentOS7,创建9001-9006 6个文件夹,复制 redis-server redis.conf 文件到6个新文件夹下 redis.conf文件配置如下: port 9001 daemonize yes cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 3000 cluster-require-full-coverage no appendonly yes 分别进入900X文件夹下,运行

OpenShift 集群搭建指南

OpenShift 集群搭建指南 v1.0 搭建Hyper-v虚拟机或物理机 配置物理机静态IP,启用Hyper-v服务. 规划服务器节点 节点 说明 主机名 IP Master 主控制节点 openshiftmaster.dynastech.com 192.168.30.95 Etcd 协调服务节点 openshiftetcd.dynastech.com 192.168.30.96 Node1 计算节点1 openshiftnode1.dynsatech.com 192.168.30.102

Docker系列之swarm集群搭建

学习Docker很久了,今天分享一下Docker的swarm集群的搭建过程很简单 首先第一步是 每台机器上面都要安装docker 本人使用的是centos7操作系统,使用3太虚拟机,3太虚拟机必须网络互通(废话) docker早在1.12版本就已经支持原生的swarm集群搭建了不用再用第三方etcd 等注册发现插件 首先第一步创建集群 docker swarm init 默认的集群地址是本机,当然也可以指定地址通过 --listen-addr 参数指定 执行完上面的命令之后显示了证明创建管理节点

负载均衡的mariadb集群搭建

集群介绍: Galera是一个MySQL(也支持MariaDB,Percona)的同步多主集群软件,目前只支持InnoDB引擎. 主要功能: 同步复制 真正的multi-master,即所有节点可以同时读写数据库 自动的节点成员控制,失效节点自动被清除 新节点加入数据自动复制 真正的并行复制,行级 用户可以直接连接集群,使用感受上与MySQL完全一致 优势: 因为是多主,所以不存在Slave lag(延迟) 不存在丢失交易的情况 同时具有读和写的扩展能力 更小的客户端延迟 节点间数据是同步的,而