一、资源的类型
定义资源时;必须对资源的类型进行选择;主要类型有:
-
primitive;native:主资源;只能运行于一个节点上
-
resource group:组资源
-
clone:克隆资源;必须为主资源
-
master/slave:主从资源;为克隆类型
资源转移方式:
rgmanager:failover domain;priority
pacemaker:
资源黏性:有节点约束都一样;当值为正值;就留在该节点。
资源约束
资源约束(3中类型):
-
locations(位置约束):资源更倾向于哪个节点上;数值表示;
INFINITY 无穷大;优先使用 N 给定的一个数值 -INFINITY 负无穷;最后使用 -
colocations(排列约束):两个资源是否运行在同一节点的倾向性;
INFINITY 无穷大;优先使用 -INFINITY 负无穷;最后使用 -
orders(顺序约束):定义资源启动次序和关闭次序;
HA集群的工作模型:
A/P | two nodes;工作于主备模型; |
N-M |
N>M;N个节点;M个服务;活动节点为N;备用N-M个 |
N-N | N个节点;N个服务; |
A/A | 双主模型 |
接上篇:HA Cluster—heartbeat v1基础应用 这里直接对heartbeat v2进行配置。
直接根据上篇的配置下更改一些基本配置即可:
安装gui软件包:
1
2
3
4
5
6
7
|
[root@node1 heartbeat2] # ls
heartbeat - 2.1 . 4 - 12.el6 .x86_64.rpm heartbeat - ldirectord - 2.1 . 4 - 12.el6 .x86_64.rpm
heartbeat - debuginfo - 2.1 . 4 - 12.el6 .x86_64.rpm heartbeat - pils - 2.1 . 4 - 12.el6 .x86_64.rpm
heartbeat - devel - 2.1 . 4 - 12.el6 .x86_64.rpm heartbeat - stonith - 2.1 . 4 - 12.el6 .x86_64.rpm
heartbeat - gui - 2.1 . 4 - 12.el6 .x86_64.rpm
[root@node1 heartbeat2] #
#heartbeat-gui-2.1.4-12.el6.x86_64.rpm 在安装了前三个包的前提下安装该包 |
修改配置文件;配置前先正常停止heartbeat:
1
2
3
4
5
6
7
8
9
|
[root@node1 ~] # vim /etc/ha.d/ha.cf
# Tell what machines are in the cluster # node nodename ... -- must match uname -n #node ken3 #node kathy node node1.soul.com node node2.soul.com crm on #找个空白地方加入该行
#完成后把配置文件复制给node2 |
二、配置heartbeat v2
配置前先设置登陆密码:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[root@node2 ~] # passwd hacluster
Changing password for user hacluster.
New password: BAD PASSWORD: it does not contain enough DIFFERENT characters
BAD PASSWORD: is too simple
Retype new password: passwd: all authentication tokens updated successfully.
[root@node2 ~] #用该密码登陆控制台
# #正常启动;看是端口是否监听 [root@node2 ~] # ss -tunl | grep 5560
tcp LISTEN 0 10 * : 5560 * : *
#查看正常;如配置不正常;建议重启下虚拟机测试下 |
启动配置资源
# hb_gui & 在命令后加&以释放终端
登陆界面;输入账户密码即可登陆。
Linux-ha:显示with quorum:为满足法定票数的
resources:配置资源
informations:显示一些基本信息的
三、配置资源:
VIP:172.16.251.222
在resource上右键新建;选择本地资源
填写好资源ID;这里为webip
Type:资源代理类型;ocf/heartbeat/IPaddr2
ip:默认值;填写VIP
add parameter:添加其他参数;可以自己选择
其中右边显示的都有配置是的参数和属性等信息
添加NFS共享存储资源
格式很简单;与上面一样的;添加完成后;如有问题;可以在parameters中修改
添加httpd资源
配置完成后可以启动了
启动后会发现默认机制会负载均衡到不同的节点上;这不是我们需要的;所以要对其限制
添加完成后就会发现资源自动运行在同一个节点上。
测试一下网页
现在停掉node2;在测试看下
node2节点standby之后;可以发现自动都转移到node1上了;再测试网页
测试正常。没有任何问题;此时node2节点active以后;资源又会自动转移回来;如果不想转移;让其还运行在node1上;就必须进行位置约束
attribute:uname的值
operation:eq等于
value:node1的节点名称
type:字符串;默认也是字符串
score:值为100;也可以选infinity
定义完成后;会发现资源自动转移到了node1上。node1暂停后会自动转移到node2。
四、配置资源组
这里定义与上面定义资源是一样的;只是添加是需要添加组和组ID
添加完成后会发现资源里多了一个组;依次在组中添加web_store和web_server
然后启动node和资源进行测试
测试正常
此时把node2节点standby之后会自动转移到node1上。如果不想在node2节点active之后转移回去;只需要定义位置约束即可。此处不再演示
到此;heartbeat v2基于crm做资源管理配置已完成。
本文转自Mr_陈 51CTO博客,原文链接:http://blog.51cto.com/chenpipi/1398631,如需转载请自行联系原作者