corosync+pacemaker基本配置

Pacemaker是 Linux环境中使用最为广泛的开源集群资源管理器。

1, Pacemaker利用集群基础架构(Corosync或者 Heartbeat)提供的消息和集群成员管理功能,实现节点和资源级别的故障检测和资源恢复,从而最大程度保证集群服务的高可用。

2,从逻辑功能而言,pacemaker在集群管理员所定义的资源规则驱动下,负责集群中软件服务的全生命周期管理,这种管理甚至包括整个软件系统以及软件系统彼此之间的交互。

3,Pacemaker在实际应用中可以管理任何规模的集群,由于其具备强大的资源依赖模型,这使得集群管理员能够精确描述和表达集群资源之间的关系(包括资源的顺序和位置等关系)。同时,对于任何形式的软件资源,通过为其自定义资源启动与管理脚本(资源代理),几乎都能作为资源对象而被 Pacemaker管理。

4,Pacemaker仅是资源管理器,并不提供集群心跳信息,由于任何高可用集群都必须具备心跳监测机制,因而很多初学者总会误以为 Pacemaker本身具有心跳检测功能,而事实上 Pacemaker的心跳机制主要基于 Corosync或 Heartbeat来实现

5,pacemaker只是作为HA的资源管理器,所以不要想当然理解它能够直接管控资源,如果你的资源没有做脚本配置那么对于pacemaker来说它就是不可管理的。

特性

1、监测并恢复节点和服务级别的故障。
2、存储无关,并不需要共享存储。
3、资源无关,任何能用脚本控制的资源都可以作为集群服务。
4、支持节点 STONITH功能以保证集群数据的完整性和防止集群脑裂。
5、支持大型或者小型集群。
6、支持 Quorum机制和资源驱动类型的集群。
7、支持几乎是任何类型的冗余配置。
8、自动同步各个节点的配置文件。
9、可以设定集群范围内的 Ordering、 Colocation and Anti-colocation等约束。
10、高级服务类型支持,例如:
Clone功能:即那些要在多个节点运行的服务可以通过Clone功能实现,Clone功能将会在多个节点上启动相同的服务;
Multi-state功能:
即那些需要运行在多状态下的服务可以通过 Multi–state实现,
在高可用集群的服务中,有很多服务会运行在不同的高可用模式下,如:Active/Active模式或者 Active/passive模式等,
并且这些服务可能会在 Active 与standby(Passive)之间切换。
11、具有统一的、脚本化的集群管理工具。

一:基本配置
Pacemaker集群管理:支持fence;对服务本身也有监控。使用corosync检测结点心跳。

一、集群结点端安装软件----linux1 ,linux2
1,先搭建好yum源
corosync+pacemaker基本配置_第1张图片
2,yum install pacemaker -y 两台都下载服务
corosync+pacemaker基本配置_第2张图片
corosync+pacemaker基本配置_第3张图片
3,下载所需要的依赖包,两个一起下载可解决相互依赖关系
在这里插入图片描述
在这里插入图片描述
4,拷贝主配置文件
corosync+pacemaker基本配置_第4张图片
5,配置文件
bindnetaddr: 172.25.66.0 ##集群结点网络
mcastport: 5466 ##多播端口

corosync+pacemaker基本配置_第5张图片
6,添加此段,启动corosync时,将pacemaker也启动 ver:0 开机自启动
corosync+pacemaker基本配置_第6张图片
7,因为集群结点配置均相同,因此我们可以将配置文件拷贝至其它结点
在这里插入图片描述
启动服务
在这里插入图片描述
在这里插入图片描述
8, crm_mon 查看结点连接状态
corosync+pacemaker基本配置_第7张图片
9,关闭fence模块
表示资源不会迁移
verify 检测
commit 保存
corosync+pacemaker基本配置_第8张图片
corosync+pacemaker基本配置_第9张图片
查看是否同步
corosync+pacemaker基本配置_第10张图片
10,交互式命令
crm(live)# node ##进入对结点操作模式

crm(live)node# standby ##使其为standbt状态 linux1下线
corosync+pacemaker基本配置_第11张图片

corosync+pacemaker基本配置_第12张图片
1)online上线,(后面加上那台主机的名字可使那台主机下线或上线)
在这里插入图片描述
corosync+pacemaker基本配置_第13张图片
2)创建资源vip,监控以上资源在哪个结点上运行;
添加vip资源,params 指定参数 op monitor 监控配置,interval指定执行操作的频率,单位:秒
corosync+pacemaker基本配置_第14张图片
3)online:表示服务正常且可以接管资源的结点;标记部分为添加的资源;started:表示该资源正运行在server1结点上
corosync+pacemaker基本配置_第15张图片
4)测试 使其为standbt状态 linux2接管,
在这里插入图片描述
corosync+pacemaker基本配置_第16张图片
5)pacemaker默认无回切机制,关机linux2结点,让linux1结点上线
若关闭服务,则为OFFline;若是一个双结点集群,当有一端宕掉服务时,另一结点则会自动丢弃资源,也不再接管,因为一个结点不能构成集群。
corosync+pacemaker基本配置_第17张图片

corosync+pacemaker基本配置_第18张图片
linux2上线资源并不会回切,在这之前我已将linux1上线
corosync+pacemaker基本配置_第19张图片
corosync+pacemaker基本配置_第20张图片
安装apache

在两个节点上都安装
在这里插入图片描述
在这里插入图片描述
建立发布文件
在这里插入图片描述
在这里插入图片描述
在集群上加入apache
只在一端加入即可,加入httpd服务

corosync+pacemaker基本配置_第21张图片
corosync+pacemaker基本配置_第22张图片
建立集群服务组
目的是为了让服务都运行在一台服务器上
在这里插入图片描述
corosync+pacemaker基本配置_第23张图片
linux1下线 linux2接管,linux1再次上线 ,pacemaker默认无回切机制
在这里插入图片描述
corosync+pacemaker基本配置_第24张图片
不仅仅只有服务组这一种方法,下面我们试第二种
先删除集群服务组,删除方法如下
corosync+pacemaker基本配置_第25张图片
在这里插入图片描述
排列约束 (colocation):资源间的依赖/互斥性,定义资源是否运行在同一节点上
在这里插入图片描述
corosync+pacemaker基本配置_第26张图片
位置约束(location):每个节点都有一个score值,正值则倾向于本节点,负值倾向于其他节点,所有节点score比较,倾向于最大值的节点。
corosync+pacemaker基本配置_第27张图片
corosync+pacemaker基本配置_第28张图片
设置默认的粘滞性
corosync+pacemaker基本配置_第29张图片
corosync+pacemaker基本配置_第30张图片
定义资源监控配置如下:当httpd服务停止时,将自动重启httpd,如重启失败则将资源转移至可用的节点
corosync+pacemaker基本配置_第31张图片
这里简单介绍在添加资源时命令写错的解决方法
corosync+pacemaker基本配置_第32张图片
corosync+pacemaker基本配置_第33张图片
添加vip资源,params 指定参数 op monitor 监控配置,interval指定执行操作的频率,单位:秒
在这里插入图片描述
添加服务
在这里插入图片描述
corosync+pacemaker基本配置_第34张图片
测试:当杀死httpd服务时,根据规则会对httpd进行监控,然后再次让httpd服务启动
corosync+pacemaker基本配置_第35张图片
可用下面方法删除图中的缓存
corosync+pacemaker基本配置_第36张图片
corosync+pacemaker基本配置_第37张图片
三、corosync+pacemaker+nfs实现高可用案例
此实验需将另一台服务器启动nfs服务并挂载至两节点上配置同样的页面文件
在这里插入图片描述
corosync+pacemaker基本配置_第38张图片
建立一个递归目录,并且给所有人执行权限
corosync+pacemaker基本配置_第39张图片
建立共享的发布目录,可读可写
corosync+pacemaker基本配置_第40张图片
在这里插入图片描述
corosync+pacemaker基本配置_第41张图片
尝试是否成功挂载
corosync+pacemaker基本配置_第42张图片
corosync+pacemaker基本配置_第43张图片
定义webdata
corosync+pacemaker基本配置_第44张图片
将vip、webserver、webdata加入到webgroup组
corosync+pacemaker基本配置_第45张图片
corosync+pacemaker基本配置_第46张图片
测试 此时服务在linux1上,可以看到linux4共享过来的文件内容
corosync+pacemaker基本配置_第47张图片
自动挂载
corosync+pacemaker基本配置_第48张图片
使linux1处于standby状态,linux2接管并且自动挂载,测试也是可以看到linux4共享过来文件的内容
在这里插入图片描述
corosync+pacemaker基本配置_第49张图片
corosync+pacemaker基本配置_第50张图片

你可能感兴趣的:(corosync+pacemaker基本配置)