上传文件到opt目录下

Galera能够实现MySQL/MariaDB数据库的主主复制和多主复制等模式,这些复制模式都是同步进行的,同步时间非常短。

每一个节点都可以同时写入和读取,当某一节点发生故障时,可自动从集群中自动剔除。

HAProxy能提供负载均衡和故障判断等功能解决服务器系统存在的单点故障。

Keepalived能提供客户端连接数据库时使用的虚拟IP地址(VIP)。

(1)主节点

IP地址:node-1 192.168.1.74

2)备份节点

IP地址:node-2 192.168.1.75

编辑每个节点/etc/hosts文件,添加所有节点IP地址和主机名

vi /etc/hosts

192.168.1.74 node-1

192.168.1.75 node-2

关闭selinux

# vi /etc/selinux/config

SELINUX=permissive

关闭防火墙并设置开机不自启

# systemctl stop firewalld

配置yum源文件

# vi /etc/yum.repos.d/mariadb.repo

#yum clean all

#yum list

安装服务(node-1节点和node-2节点)

#yum install MariaDB-server galera

修改配置文件

(1)修改/etc/my.cnf,添加以下内容(node-1节点和node-2节点)

#vi /etc/my.cnf

[mysqld]

max_connect_errors=1000

(2)配置主节点node-1

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

[galera]
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address=gcomm://
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=
bind-address=0.0.0.0 wsrep_cluster_name="MariaDB_Cluster"
wsrep_node_address="192.168.1.74"
wsrep_sst_method=rsyn

(3)配置备份节点node-2

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

[galera]
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so wsrep_cluster_address="gcomm://192.168.1.74,192.168.1.75" binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
bind-address=0.0.0.0 wsrep_cluster_name="MariaDB_Cluster"
wsrep_node_address="192.168.1.75"
wsrep_sst_method=rsync

 启动服务

node-1节点:

#/bin/galera_new_cluster

node-2节点:

#systemctl start mariadb

测试集群状态

(1)查询集群状态

#mysql -u root -p

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

+------------------------------+---------------------------------------+
| Variable_name | Value |
+------------------------------+---------------------------------------+
| wsrep_apply_oooe | 0.000000 |
| wsrep_apply_oool | 0.000000 |
| wsrep_apply_window | 0.000000 |
| wsrep_causal_reads | |
| wsrep_cert_deps_distance | 0.000000 |
| wsrep_cert_index_size | |
| wsrep_cert_interval | 0.000000 |
| wsrep_cluster_conf_id | |
| wsrep_cluster_size | |
| wsrep_cluster_state_uuid | 841486a3-b56a-11e8-a451-d7d8f2309253 |
| wsrep_cluster_status | Primary |
| wsrep_commit_oooe | 0.000000 |
| wsrep_commit_oool | 0.000000 |
| wsrep_commit_window | 0.000000 |
| wsrep_connected | ON |
| wsrep_desync_count | |
| wsrep_evs_delayed | |
| wsrep_evs_evict_list | |
| wsrep_evs_repl_latency | //// |
| wsrep_evs_state | OPERATIONAL |
| wsrep_flow_control_paused | 0.000000 |
| wsrep_flow_control_paused_ns | |
| wsrep_flow_control_recv | |
| wsrep_flow_control_sent | |
| wsrep_gcomm_uuid | 8412f980-b56a-11e8-bb08-4fd6339a7674 |
| wsrep_incoming_addresses | 192.168.100.11:,192.168.1.74: |
| wsrep_last_committed | |
| wsrep_local_bf_aborts | |
| wsrep_local_cached_downto | |
| wsrep_local_cert_failures | |
| wsrep_local_commits | |
| wsrep_local_index | |
| wsrep_local_recv_queue | |
| wsrep_local_recv_queue_avg | 0.166667 |
| wsrep_local_recv_queue_max | |
| wsrep_local_recv_queue_min | |
| wsrep_local_replays | |
| wsrep_local_send_queue | |
| wsrep_local_send_queue_avg | 0.000000 |
| wsrep_local_send_queue_max | |
| wsrep_local_send_queue_min | |
| wsrep_local_state | |
| wsrep_local_state_comment | Synced |
| wsrep_local_state_uuid | 841486a3-b56a-11e8-a451-d7d8f2309253 |
| wsrep_protocol_version | |
| wsrep_provider_name | Galera |
| wsrep_provider_vendor | Codership Oy <info@codership.com> |
| wsrep_provider_version | 25.3.(r3764) |
| wsrep_ready | ON |
| wsrep_received | |
| wsrep_received_bytes | |
| wsrep_repl_data_bytes | |
| wsrep_repl_keys | |
| wsrep_repl_keys_bytes | |
| wsrep_repl_other_bytes | |
| wsrep_replicated | |
| wsrep_replicated_bytes | |
| wsrep_thread_count | |
+------------------------------+---------------------------------------+
rows in set (0.00 sec)

如果 "wsrep_local_state_comment" is "Synced" 则表明集群创建成功

(3)数据同步

在node-1上新建数据库galera_test

MariaDB [(none)]> create database galera_test;

MariaDB [(none)]> show databases;

在node-2上查询

MariaDB [(none)]> show databases;

部署mariadb高可用的更多相关文章

  1. 部署MYSQL高可用集群

                                                  mysql-day08     部署MYSQL高可用集群 u 集群架构                   ...

  2. 腾讯云部署keepalived高可用

    使用背景: 通过调用python SDK在腾讯云手动部署keepalived高可用 部署环境 系统:centos7.3 Master:192.168.0.100 Slave:192.168.0.14 ...

  3. (六) Docker 部署 Redis 高可用集群 (sentinel 哨兵模式)

    参考并感谢 官方文档 https://hub.docker.com/_/redis GitHub https://github.com/antirez/redis happyJared https:/ ...

  4. 部署zookeepe高可用集群

                                                                部署zookeepe高可用集群 部署规划 Nno1         192.16 ...

  5. 一键部署Kubernetes高可用集群

    三台master,四台node,系统版本为CentOS7 IP ROLE 172.60.0.226 master01 172.60.0.86 master02 172.60.0.106 master0 ...

  6. 容器化部署Cassandra高可用集群

    前提: 三台装有docker的虚拟机,这里用VM1,VM2,VM3表达(当然生产环境要用三个独立物理机,否则无高可用可言),装docker可参见Ubuntu离线安装docker. 开始部署: 部署图 ...

  7. Hadoop部署方式-高可用集群部署(High Availability)

    版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客的高可用集群是建立在完全分布式基础之上的,详情请参考:https://www.cnblogs.com/yinzhengjie/p/90651 ...

  8. RabbitMQ集群部署、高可用和持久化

    RabbitMQ 安装和使用 1.安装依赖环境 在 http://www.rabbitmq.com/which-erlang.html 页面查看安装rabbitmq需要安装erlang对应的版本 在 ...

  9. Linux 系统中部署 LNMP 高可用负载均衡架构集群实现动态博客

    (一)设计思路 高可用:keepalived 解决方案 负载均衡:(lvs)DR做轮询,需要一个调度器,后端节点两个(部署nginx动态博客),通过一个vip去访问动态博客 后端节点需要部署动态博客作 ...

随机推荐

  1. jQuery trigger()以及注意事项

    trigger() 方法触发被选元素的指定事件类型.例如: $('#pcId').trigger("change") ;//触发id为“pcId”的select的 change事件 ...

  2. css 兼容 各类手机的写法 待续

    @media (device-height:480px) and (-webkit-min-device-pixel-ratio:2){/* 兼容iphone4/4s */ .class{} } @m ...

  3. 解决tensorflow的"Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA Using TensorFlow backend."警告问题

    问题描述 程序开始运行的时候报出警告:I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructio ...

  4. 在python中的使用

    操作步骤: 1. 连接数据库,生成数据库连接对象 conn = pymongo.MongoClient('localhost',27017) 2. 选择要操作的数据库,生成数据库对象 (__setit ...

  5. HDU 1003:Max Sum(DP,连续子段和)

    Max Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  6. The Suspects 并查集

    Severe acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, was recognized ...

  7. 租酥雨的NOIP2018赛前日记

    租酥雨的NOIP2018赛前日记 离\(\mbox{NOIP2018}\)只剩下不到一个月的时间辣! 想想自己再过一个月就要退役了,觉得有必要把这段时间的一些计划与安排记录下来. 就从国庆收假开始吧. ...

  8. test20190320 全连(fc)

    题意 全连(fc) [题目背景] 还记得若干年前那段互相比较<克罗地亚狂想曲>的分数的日子吗? [题目描述] E.Space 喜欢打音游. 但是他技术不好,总是拿不到全连(Full Com ...

  9. adnanh webhook 框架request values 说明

      request values 在adnanh webhook 是比较重要的,规则触发以及命令参数传递都是通过它 支持的request values 类似 http header 查询参数 play ...

  10. sdut2408 pick apples (贪心+背包)山东省第三届ACM省赛

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/svitter/article/details/24642587 本文出自:http://blog.c ...