L8 heartbeat v2使用crm搭建wordpress
一,阐述Linux HA Cluster的使用背景;HA简介
1、高可用集群的定义
高可用集群,英文原文为High Availability Cluster,简称HACluster,简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统 就是集群的节点(node)。
高可用集群的出现是为了使集群的整体服务尽可能可用,从而减少由计算机硬件和软件易错性所带来的损失。如果某个节点失效,它的备援节点将在几秒钟的时间内接管它的职责。因此,对于用户而言,集群永远不会停机。
高可用集群软件的主要作用就是实现故障检查和业务切换的自动化。只有两个节点的高可用集群又称为双机热备,即使用两台服务器互相备份。当一台服务器出现故障时,可由另一台服务器承担服务任务,从而在不需要人工干预的 情况下,自动保证系统能持续对外提供服务。双机热备只是高可用集群的一种,高可用集群系统更可以支持两个以上的节点,提供比双机热备更多、更高级的功能,更能满足用户不断出现的需求变化。
2、高可用集群的衡量标准
HA(High Available), 高可用性群集是通过系统的可靠性(reliability)和可维护性(maintainability)来度量的。工程上,通常用平均无故障时间(MTTF)来度量系统的可靠性,用平均维修时间(MTTR)来度量系统的可维护性。于是可用性被定义为:HA=MTTF/(MTTF+MTTR)*100%
具体HA衡量标准:
99% 一年宕机时间不超过4天
99.9% 一年宕机时间不超过10小时
99.99% 一年宕机时间不超过1小时
99.999% 一年宕机时间不超过6分钟
二,总结Linux HA Cluster的系统组成,HA Cluster的工作模型;
1,HA Cluster系统组成
http://s3.运维网.com/wyfs02/M02/74/D3/wKiom1Yp8jKAXY1xAAEc56aNSfc797.jpg
Messaging Layer:实现心跳信息传递、集群事务消息传递;
heartbeat
v1, v2, v3
corosync
cman (RedHat, RHCS)
keepalived (完全不同上述三种)
CRM:集群资源管理器;
heartbeat v1 haresources (配置接口:配置文件,文件名为haresources)
heartbeat v2 crm (在各节点运行一个crmd进程,配置接口:命令行客户端程序crmsh,GUI客户端:hb_gui);
heartbeat v3, pacemaker (pacemaker可以以插件或独立方式运行;配置接口,CLI接口:crmsh, pcs; GUI: hawk(webgui), LCMC, pacemaker-mgmt);
rgmanager (配置接口,CLI:clustat, cman_tool; GUI: Conga(luci+ricci))
组合方式:
heartbeat v1,自带haresources(v2版的crm)
heartbeat v2,自带crm管理(图形化工具hb_gui安装包)
heartbeat v3 + pacemaker
corosync + pacemaker
cman + rgmanager (RHCS)
cman + pacemaker
LRM: Local Resource Manager, 由CRM通过子程序提供;
RA: Resouce Agent资源代理
heartbeat legacy:heartbeat传统类型的RA,通常位于/etc/ha.d/haresources.d/目录下;
LSB:Linux Standard Base, /etc/rc.d/init.d目录下的脚本,至少接受4个参数:{start|stop|restart|status};
OCF:Open Cluster Framework
子类别:provider
STONITH:专用于实现调用STONITH设备功能的资源;通常为clone类型;
Messaging Layer通告,CRM指挥LRM,LRM使用RA完成资源管理
我们的一个DC决定,应该在某个节点上启用高可用服务,这个DC的CRM(通过选举的支配角色CRM),通过Messaging Layer传告给另一个节点的Messaging Layer,这个Messaging Layer再传递给CRM,CRM再指挥着LRM通过RA来完成资源管理。
一些重要概念概述:
通常我们需要讲多个资源通过约束来限制:web服务,我们需要,webip,webserver服务在同一主机,需要先启动webip再启动webserver,关闭也需要先关闭webserver再关闭webip。这里会使用到如下的资源约束
vote system:投票系统
HA中的各节点无法探测彼此的心跳信息时,必须无法协调工作;此种状态即为partitioned cluster;
少数服从多数的原则:quorum
with quorum > total/2
without quorumCREATE USER 'zkl'@'192.168.0.%' IDENTIFIED BY 'zkl';
Query OK, 0 rows affected (0.31 sec)
mysql> GRANT ALL ON *.* TO 'zkl'@'192.168.0.%';
Query OK, 0 rows affected (0.11 sec)
mysql>flush privileges;
4,crm配置:图形化界面运行 hb_gui &(需要创建用户并设置密码)
在需要运行的节点上:
useradd hacluster
echo "root"|passwd --stdin hacluster
Resources资源配置:
定义组资源:myservices
组内添加资源,依照顺序:
web网页ip地址:webip IPaddr -->192.168.0.199 24 eth0
httpd服务: webserver httpd -->httpd
NFS共享挂载: mysql_store Filesystem-->device:192.168.0.202:/mydata/data directory: /mysql/data fstype:nfs
mysql服务: mysqld mysqld
Colocations配置:
webserver依据webip规则
http://s3.运维网.com/wyfs02/M02/74/CC/wKioL1YpwvDiqTAcAADYygY4o1s140.jpg
mysqld服务依据mysql_store规则
http://s3.运维网.com/wyfs02/M00/74/CF/wKiom1YpwuvzWbtAAAGMnyvxvTA804.jpg
orders顺序约束配置:详情参考说明(Description)
http://s3.运维网.com/wyfs02/M01/74/CF/wKiom1Ypwx3S6xrWAAFTCVZA6og623.jpg
http://s3.运维网.com/wyfs02/M02/74/CF/wKiom1YpwzrBEzqXAAFSveYQLXU613.jpg
最后如下所示:
5,wordpress配置(在活动节点node1)
tar zxvf wordpress-4.3.1-zh_CN.tar.gz -C /var/www/html/
打开网页http://192.168.0.199:/wordpress
依据内容进行配置
配置完成后:
scp -r /var/www/html/wordpress 192.168.0.201:/var/www/html/
6,测试
node1发表文章,切换到node2也可以看到node1节点:发表文章如下:
http://s3.运维网.com/wyfs02/M02/74/CF/wKiom1Ypw9Xg8sH6AAMKolCaBVc073.jpg
http://s3.运维网.com/wyfs02/M02/74/CC/wKioL1YpxAKgCZLaAAFn9zOaiOI138.jpg
http://s3.运维网.com/wyfs02/M02/74/CC/wKioL1YpxAKiregWAAMTfGwDIJg898.jpg
http://s3.运维网.com/wyfs02/M00/74/CF/wKiom1Ypw9WS7r0kAAFuE7rfbDw190.jpg
页:
[1]