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工具是为提高RPM软件安装性而开发的一种软件包管理器,是由pyt…

    Linux干货 2015-04-01
  • 马哥教育网络班25期-第2周作业

    一、Linux文件管理类命令: (1)ls             list 用来显示目录列表             …

    Linux干货 2016-12-12
  • 网络基础笔记

    网络管理笔记 1. 网络概念:     一组网络设备或计算机,通过无形的规则链接起来的体系!    2. 应用程序种类:     (1)批处理应用程序:            FTP、TFTP、库存更新    &nbsp…

    Linux干货 2017-03-16
  • 进程及任务管理

    进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合     进程ID(Process ID,PID)号码被用来标记各个进程     UID、GID、和SELi…

    Linux干货 2016-09-09
  • Linux实验-搭建路由环境

    Linux实验-搭建路由环境 背景: 在学习网络基础过程中,为了加强理解路由功能,准备用Linux模拟一个路由环境。同时也试试Linux的路由转发功能。 实验简介: 准备5个虚拟机,其中三个做路由,两个做客户机,相连的设备之间在同一个网段,三个路由设备在中间,两个客户机在两侧,最后实现两个虚拟机能相互通信。 实验规划: 这里配的IP都是随意配的,保证相连设备…

    2017-08-19
  • Linux软件包管理器—rpm

    rpm 最开始是Red Hat Package Manager 之意,原用在Red Hat Linux一款软件包管理器,先在已被许多其他Linux 发行商使用,成为主流包管理器,rpm包的文件格式也写进Linux标准库中,所以rpm 现在递归意为RPM Package Manager。rpm的诞生使得在Linux上管理软件包变得方便许多,rpm功能强大,可完成构建、安装、查询、校验、升级和卸载软件包。

    Linux干货 2016-08-26