corosync+pacemaker对mariadb实现高可用


corosync+pacemaker对mariadb实现高可用


利用nfs共享存储,导出一个目录作为mariadb的数据目录,然后利用corosync+pacemaker对mariadb进行高可用

1、实验环境

corosync+pacemaker对mariadb实现高可用

2、实验前的分析

  • 利用nfs导出目录作为mariadb的共享目录,要确保各个mariadb节点对该目录具有写权限,也就是要确保nfs服务器上有一个UID与各个节点上运行mariadb的用户的UID一致的用户,该用户对nfs导出的目录有写权限;且nfs导出共享目录时,权限为rw

  • 要对mariadb服务高可用,构成mariadb服务的高可用的资源有:访问mariadb服务的IP地址、mariadb服务自身、mariadb的数据目录(也就是nfs导出的文件系统)

  • 对应的构成mariadb服务的资源使用到的资源代理有:ocf资源代理类型下heartbeat提供者提供的IPaddr2资源代理,systemd资源代理类型的mariadb,ocf资源代理类型下heartbeat提供者提供的Filesystem资源代理

  • 考虑三个资源之间的约束关系,三个资源必须要同时运行在某一节点上,且三个资源的启动顺序应该为IP地址先启动,然后挂载nfs的文件系统,最后启动mariadb服务,因此对应的资源约束为:位置约束(location)无需特别定义,也就是资源运行在那个节点上都可以;排列约束(colocation)需要定义将三个资源运行在一起的分数为inf,以保证三个资源同时运行在一起;顺序约束(order)需要定义先启动IP、再启动nfs挂载、最后启动mariadb服务

  • 定义资源时,需要对资源进行监控,一般IP地址不易发生变化,因此主要对nfs挂载文件系统和mariadb服务进行监控

3、实验的网络环境配置

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

4、进行高可用实验前的准备工作

  • node68上部署ansible管理端,实现对部分操作的批量管理
    corosync+pacemaker对mariadb实现高可用
    corosync+pacemaker对mariadb实现高可用
    corosync+pacemaker对mariadb实现高可用

  • 各个高可用集群节点之间时间同步
    corosync+pacemaker对mariadb实现高可用
    corosync+pacemaker对mariadb实现高可用

  • 各个集群节点之间的名称解析的主机名和实际主机名保持一致
    corosync+pacemaker对mariadb实现高可用
    corosync+pacemaker对mariadb实现高可用
    corosync+pacemaker对mariadb实现高可用

  • 各个集群节点之间可基于SSH秘钥方式进行通信(对corosync+pacemaker高可用集群非必须)
    corosync+pacemaker对mariadb实现高可用

  • 各个节点之间确保iptables和selinux不会阻碍实验正常进行
    corosync+pacemaker对mariadb实现高可用

5、各个集群节点上部署mariadb服务

corosync+pacemaker对mariadb实现高可用

6、nfs服务器的配置

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

7、修改各个集群节点上的mariadb的配置文件,让其数据目录指向用于挂载nfs导出的文件系统的目录

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

8、在没有高可用的情况下,在某节点测试mariadb是否正常

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

9、在各个集群节点上部署corosync+pacemaker,并对corosync进行配置,启动corosync和pacemaker

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

10、在集群某个节点上安装crmsh程序,利用crm程序对pacemaker进行管理

对集群的操作只需要在某个集群节点上配置,因为集群的DC会将配置信息自动同步到其他各个节点上;因此只需要在一个集群节点上安装crmsh即可
本实验采用在各个集群节点上都安装,以方便查看测试

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

11、定义IP地址资源

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

12、定义文件系统资源

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

13、定义mariadb服务资源

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

14、利用资源组实现各个资源之间运行在一起的配置示例

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

15、利用colocation排列约束定义各个资源运行在一起的配置示例

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

16、定义三个资源之间的order顺序约束,对三个资源的启动顺序进行定义

corosync+pacemaker对mariadb实现高可用

17、测试高可用服务是否配置成功

corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用
corosync+pacemaker对mariadb实现高可用

原创文章,作者:M20-1倪文超,如若转载,请注明出处:http://www.178linux.com/60636

(0)
M20-1倪文超M20-1倪文超
上一篇 2016-11-24 11:35
下一篇 2016-11-24 12:01

相关推荐

  • yum源设置

      yum是我们经常用到的一个程序,我们主要用它来安装或删除安装包,下面我来介绍一下怎样配置yum安装源?    配置yum安装源主要有两种方法:一种是用本地镜像做安装源,二是用提供镜像下载的网站做安装源。    一 配置本地安装源    本地安装源需要有系统镜像,操作步骤如下:…

    Linux干货 2016-01-16
  • mysql主从架构/模式

    MySQL Replication: Master/Slave Master: write/read Slaves: read 为什么? 冗余:promte(提升为主),异地灾备 人工 工具程序 负载均衡:转移一部分“读”请求; 支援安全的备份操作: … 主/从架构: 异步复制:master只需要完成自己的数据库操作即可。至于slaves是否收到…

    2016-11-27
  • crond实现邮件告警

    实验环境:centos 6.8 所需软件:mailx或msmtp或smtpEmail等 smtp客户端程序 所需帐号:我这使用的是163邮箱。 本方案优点:安装软件少,无须启动postfix等邮件服务。无须配置postfix邮件服务。由于调用的是注册邮箱,所以也不会给移入到垃圾邮件中。  建议:生产中,不管是什么服务发送邮件的建议使用外部smtp帐…

    Linux干货 2016-07-10
  • shell脚本编程基础

    shell脚本编程基础以及一些基本的逻辑运算知识和shell的配置用户环境。

    2017-11-26
  • HAproxy对wordpress的代理

    一,实验环境 网络拓扑结构 Web2,master是centos7.3 Web1,backup是centos6.8 客服端的window主机首win7 所有的主机通过switch相连,处于172.18.0.0/16的网段中 二,安装的软件 使用wordpress版本4.3.1 Web1安装httpd,php,php-mysql Web2安装nfs-utils…

    Linux干货 2017-05-17
  • Linux终端类型

            终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。 [root@localhost ~]# ll /dev|egrep 'tty|pts' crw-rw-rw-. 1&nb…

    Linux干货 2016-10-14