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

相关推荐

  • openssl建立私有CA和申请证书

    实验环境: 虚拟机:VMware® Workstation 12 Pro 主机A:ip为10.1.255.55/16,创建CA并给其他主机提供CA服务 主机B:为httpd服务器,ip为10.1.249.115/16 1、查看openssl的配置文件/etc/pki/tls/openssl.cnf [root@localhost…

    Linux干货 2016-09-23
  • Linux用户和组管理整理

    本节介绍Linux用户和组相关的配置文件,用户账号管理、查询用户信息以及切换用户的相关命令,将会让我们更了解各配置文件中各个字段的含义,以及各相关命令的使用方法,方便Linux运维人员管理Linux系统中的用户和组。 背景: Linux是个多用户、多任务的系统,考虑到每个人的隐私权、每个人喜好的工作环境以及每个用户所使用的权限等方面的不同,所以设定了“用户”…

    Linux干货 2015-06-15
  • Linux程序包管理

    Linux程序包管理 RPM包基础 RPM YUM 编译安装 概述 Linux上的程序包管理,是我们的必备技能,本文将从三个视角:rpm、yum、源码编译来浅析Linux的程序包管理。首先,我们来看下本文的主要内容: – 程序包的命名- RPM: 程序包管理器    安装、卸载、升级、查询…

    Linux干货 2016-08-29
  • 马哥教育网络班25期-第3周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who root     tty1         2016-12-…

    Linux干货 2016-12-19
  • LVM原理、创建、扩容、缩减、快照详解

    LVM是什么?为什么要使用LVM?     LVM(Logical Volume Manager):逻辑卷管理, 在日常使用或生产环境中, 我们可能会因为在规划存储时未考虑到未来数据增长的速度超乎我们的预计而措手不及,因为增加一块硬盘再将源数据移到新硬盘上很麻烦并且提高了成本还浪费硬盘空间。   &…

    Linux干货 2016-03-09
  • 0806文本处理工具

    ———- 文件查看工具 ———- cat:    cat [OPTION]… [FILE]…   //查看文本文件内容,一般后面跟文件名(相对路径),或者是文件名(绝对路径) -n 加行号 -b 加行号,…

    Linux干货 2016-08-07