高可用集群之heartbeat v2--基于CRM进行资源管理

CRM:Cluster Resource Management,集群资源管理

crmd:作为进程运行,监控一个端口5560/tcp/mgmtd,提供管理API

GUI:图形化管理界面

CLI:命令行管理

集群节点超过两个(奇数个),集群分裂时,某一个子集群的法定票数超过半数,可认为自己正常



启用crm

# vim /etc/ha.d/haresources,添加

crm respawn

crm和haresource不兼容,使用crm的同时想使用haresources怎么解决?

/usr/lib/heartbeat/haresources2cib.py(依赖ha_propagate自动完成配置文件同步,可手动执行)可以将haresources转化为cib格式的集群信息库,供crm使用,转化后存储在/var/lib/heartbeat/crm目录中,ha_propagate

CIB:Cluster Information Base,集群信息库,xml格式

/usr/lib/heartbeat/haresources2cib.py /etc/ha.d/haresources

配置文件同步

# /usr/lib/heartbeat/ha_propagate

Propagating HA configuration files to node node2.hiyang.com.

ha.cf                                                     100%   10KB  10.4KB/s   00:00

authkeys                                                  100%  691     0.7KB/s   00:00

arp欺骗/usr/lib/heartbeat/send_arp



crm命令行工具

cibadmin 管理cib信息库工具

crm_verify 校验cid的xml格式的配置文件

# crm_verify -L -V

crm_mon 监控heartbeat,有DC信息

crm_resource crm 资源配置工具

crm_standby

--node-uname (-U) <node_uname>

crm_attribute 配置crm的属性

crm_sh crm的shell

Cluster Resources Management的进化

haresources --> crm --> pacemaker




hb_gui

1 查看heartbeat的版本

# rpm -q heartbeat

heartbeat-2.1.4

2 下载hb_gui

网址:http://fedoraproject.org/wiki/EPEL --> EPEL 5:x86_64

# wget https://dl.fedoraproject.org/pub/epel/5/x86_64/heartbeat-gui-2.1.4-11.el5.x86_64.rpm

3 安装hb_gui

# yum localinstall -y heartbeat-gui-2.1.4-11.el5.x86_64.rpm

4 登陆账号

# tail -n 1 /etc/passwd

hacluster:x:101:160:heartbeat user:/var/lib/heartbeat/cores/hacluster:/sbin/nologin

配置密码

# passwd hacluster

5 启动hb_gui,此处我使用的是Xshell,运行hb_gui需要Xmanger,无Xmanager也会报错。

# hb_gui &

6 集群的配置信息说明

No Quorum Policy:不满足法定票数时的策略,默认为stop;还有ignore,freeze

Symmetric Cluster:对称集群(左对称),故障时,资源可以根据设定的顺序,转移到其他任意的节点上;非对称集群,故障时,资源只能转移到指定的节点上

Stonith Enabled:启用stonith设备

Default Resourses Stickiness:默认资源粘性为0;运行在任意节点都可以

资源粘性用来定义资源是否倾向于留在此节点;

7 创建资源注意:

1)先通过# crm_mon 查看DC运行在那个节点上,运行# hb_gui时要连接到DC上,新增或修改的配置和资源才能正常同步到其他节点上。

2)创建一组资源时,先添加组,在添加组内的资源;注意各资源的顺序应和资源的启动顺序一致

3)修改配置或添加资源后,要清理之前的状态信息;否则,若之前有错误的状态信息,会影响资源的启动

方法:右键单击 --> cleanup resource

4)master/slave,clone是在native基础上创建的



8 例子,此处添加fip,nfs,httpd资源,通过组将资源约束在一起

8.1 添加fip资源,添加到webservice组中,将fip绑定到eth0和设置了掩码

8.2 添加文件系统

8.3 添加httpd资源,此处使用lsb的httpd,不用添加任何参数

结果如下图



9 添加资源,使用资源约束,定义location,order,colocation

Resources右键 --> Add New Item

webip

webstorage

httpd

1)资源更倾向运行于node1

右键location --> Add New Item

定义了webip更倾向于运行在node1上

2)资源的start和stop顺序

右键Order --> Add New Item

定义启动顺序

Start:webip --> webstorage --> httpd

Stop:httpd--> webstorage --> webip

3)资源间的约束

右键colocation --> Add New Item

定义了哪些资源在一起

webstorage和webip在一起

httpd和webstorage在一起

来自为知笔记(Wiz)

时间: 2024-08-06 20:07:09

高可用集群之heartbeat v2--基于CRM进行资源管理的相关文章

高可用集群之heartbeat v2--基于CRM实现mysql高可用集群(未完)

实验说明: 本实验基于heartbeat的crm,实现对mysql服务的高可用,并没有高可用mysql的数据. 未完部分:使用hb_gui配置挂载nfs时,指定挂载选项,失败. mysql数据和配置文件放在nfs共享存储上 mysql配置文件使用--default-extra-file指定 mysql用户对nfs共享的有读写权限,nfs服务器和mysql所在服务器的mysql的id号要保持一致 在nfs服务器上 1 修改hostname # vim /etc/sysconfig/network

高可用集群之heartbeat基于crm进行资源管理(二)

一.高可用集群之heartbeat基于crm进行资源管理 1.集群的工作模型: A/P:两个节点,工作与主备模型 N-M N>M,N个节点,M个服务 N-N:N个节点,N个服务 A/A:双主模型: 2.资源转移的方式 rgmanager:failover domain priority pacemaker: 资源黏性: 资源约束(三种类型): 位置约束:资源更倾向于那个节点上 inf:无穷大 n: -n: -inf:负无穷 排列约束:资源运行在同一节点的倾向性 inf: -inf: 顺序约束:资

高可用集群之heartbeat安装配置

高可用集群之heartbeat安装配置 说明: 系统为rhel 5.8 64bit heartbeat版本为v2 配置web高可用服务 节点为两个:node1和node2 创建高可用集群需要注意的地方: 各节点需要传递集群事务信息,传递时需要识别各节点,每个节点对对方的识别必须靠节点名称来实现,节点名称能够解析IP地址,配置DNS的话,如果DNS挂了,节点也找不到了,所以对于名称的解析不要依赖DNS,这就需要使用本地hosts文件,需要为每一个节点配置好hosts文件解析,每一个节点的hosts

CentOS linux 高可用集群之heartbeat

CentOS linux 高可用集群之heartbeat Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里,由 heartbeat 模块实现了这两个功能. Heartbeat是Linux-HA工程的一个组件,自1999年开始到现在,发布了众多版本,是目前开源Linux-HA项目最成功的一个例子,在行业内得到了广泛的应用. 随着Linux在关键行业应用的逐渐增多,它必将提供一些

高可用集群软件Heartbeat介绍

一.Heartbeat的定义 Heartbeat 项目是 Linux-HA 工程的一个组成部分,也是目前开源HA项目中最成功的一个例子,Linux-HA的全称是High-Availability Linux,这个开源项目的目标是:通过社区开发者的共同努力,提供一个增强linux可靠性(reliability).可用性(availability)和可服务性(serviceability)(RAS)的群集解决方案,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Hear

高可用集群之heartbeat

高可用集群的基本概念 一.什么是高可用集群: 所谓高可用集群就是在其出现故障时,可以把业务自动转移到其他主机上并让服务正常运行的集群架构. 二.heartbeat的概念 Linux-HA的全称是High-Availability Linux,它是一个开源项目,这个开源项目的目标是:通过社区开发者的共同努力,提供一个增强LInux可靠性(reliability).可用性(availability)和可服务性(serviceability)(RAS)的群集解决方案.其中heartbeat就是Linu

Linux集群系列之十——高可用集群之heartbeat安装配置

rhel 5.8 32bit heartbeat v2 ha web node1 node2 节点名称, /etc/hosts 节点名称必须跟uname -n命令的直行结果一致 ssh 互信通信, 时间同步 1先配置两个主机的ip 列如 192.168.1.11   192.168.1.12 VIP192.168.1.8  网关 192.168.1.1 配置两个主机的主机名#hostname node1.mylinux.com #hostname node2.mylinux.com 为了让主机名

HA(高可用集群)heartbeat

HA 即 (high available)高可用,又被叫做双机热备, 常用实现高可用的开源软件有heartbeat和keepalived,其中keepalived有负载均衡的功能. 下面我们使用heartbeat来做HA集群,并且把nginx服务作为HA对应的服务. 试验准备:两个机器, 都是centos6.5,网卡eth0 ip如下:aming   192.168.31.166aming1  192.168.31.100两个eth1 ip如下:aming  192.168.21.166 ami

Linux集群——高可用集群之heartbeat

Heartbeat :UDP 694heartbeat v2ha webnode1 , node2节点名称, /etc/hosts节点名称必须跟uname -n 命令的执行结果一致ssh互信通信时间同步Heartbeat Heartbeat subsystem for High-Availability Linuxheartbeat-devel Heartbeat development packageheartbeat-gui Provides a gui interface to manag