设为首页 收藏本站
查看: 3213|回复: 4

[经验分享] corosync+openais+pacemaker实现高可用性群集

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2013-11-4 12:50:39 | 显示全部楼层 |阅读模式
corosync+openais+pacemaker实现高可用性群集

实验拓扑



172228387.png
Corosync简介:

Coreosync在传递信息的时候可以通过一个简单的配置文件来定义信息传递的方式和协议等。它是一个新兴的软件,2008年推出,但其实它并不是一个真正意义上的新软件,在2002年的时候有一个项目Openais , 它由于过大,分裂为两个子项目,其中可以实现HA心跳信息传输的功能就是Corosync ,它的代码60%左右来源于Openais. Corosync可以提供一个完整的HA功能,但是要实现更多,更复杂的功能,那就需要使用Openais了。Corosync是未来的发展方向。在以后的新项目里,一般采用Corosync,而hb_gui可以提供很好的HA管理功能,可以实现图形化的管理。另外相关的图形化有RHCS的套件luci+ricci.

Openais:就是corostnc的前身。

Pacemaker是一个群集管理器。它利用首选群集基础设施提供的消息和成员能力,由辅助节点和系统进行故障检测和回收,实现性群集服务(亦称资源)的高可用性。

它可以做几乎任何规模的群集,并带有一个强大的依赖模式,让管理员能够准确地表达的群集资源之间的关系(包括顺序和位置)。

首先准备好环境,配置好两台主机的ip地址



Vip:192.168.2.100

Node1

Eth0:192.168.2.10

Node2

Eth0:182.168.2.20

实现无障碍通讯


172229796.png
172230367.png
配置好yum

172231339.png
拷贝所需软件包

cluster-glue-1.0.6-1.6.el5.i386.rpm

cluster-glue-libs-1.0.6-1.6.el5.i386.rpm

corosync-1.2.7-1.1.el5.i386.rpm 主程序

corosynclib-1.2.7-1.1.el5.i386.rpm

heartbeat-3.0.3-2.3.el5.i386.rpm 安装pacemaker依赖的

heartbeat-libs-3.0.3-2.3.el5.i386.rpm

libesmtp-1.0.4-5.el5.i386.rpm

openais-1.1.3-1.6.el5.i386.rpm

openaislib-1.1.3-1.6.el5.i386.rpm

pacemaker-1.1.5-1.1.el5.i386.rpm 资源管理器

pacemaker-cts-1.1.5-1.1.el5.i386.rpm

pacemaker-libs-1.1.5-1.1.el5.i386.rpm

perl-TimeDate-1.16-5.el5.noarch.rpm

resource-agents-1.0.4-1.1.el5.i386.rpm

安装这些软件包

[iyunv@node1 ~]# yum localinstall *.rpm --nogpgcheck

172231827.png
172232902.png
172233961.png
创建目录 mkdir /var/log/cluster

为了便面其他主机加入该集群,需要认证,生成一个authkey

[iyunv@node1 corosync]# corosync-keygen

172234735.png
排错

11.验证corosync引擎是否正常启动了

[iyunv@node1 corosync]# grep -i -e "corosync cluster engine" -e "configuration file" /var/log/messages

ct 18 23:24:02 node1 smartd[2832]: Opened configuration file /etc/smartd.conf

Oct 18 23:24:02 node1 smartd[2832]: Configuration file /etc/smartd.conf was parsed, found DEVICESCAN, scanning devices

May 7 14:00:29 node1 smartd[2787]: Opened configuration file /etc/smartd.conf

May 7 14:00:29 node1 smartd[2787]: Configuration file /etc/smartd.conf was parsed, found DEVICESCAN, scanning devices

May 7 16:24:36 node1 corosync[686]: [MAIN ] Corosync Cluster Engine ('1.2.7'): started and ready to provide service.

May 7 16:24:36 node1 corosync[686]: [MAIN ] Successfully read main configuration file '/etc/corosync/corosync.conf'.



12。查看初始化成员节点通知是否发出

[iyunv@node1 corosync]# grep -i totem /var/log/messages

May 7 16:24:36 node1 corosync[686]: [TOTEM ] Initializing transport (UDP/IP).

May 7 16:24:36 node1 corosync[686]: [TOTEM ] Initializing transmit/receive security: libtomcrypt SOBER128/SHA1HMAC (mode 0).

May 7 16:24:36 node1 corosync[686]: [TOTEM ] The network interface is down.

May 7 16:24:37 node1 corosync[686]: [TOTEM ] A processor joined or left the membership and a new membership was formed.

May 7 16:38:30 node1 corosync[754]: [TOTEM ] Initializing transport (UDP/IP).

May 7 16:38:30 node1 corosync[754]: [TOTEM ] Initializing transmit/receive security: libtomcrypt SOBER128/SHA1HMAC (mode 0).

May 7 16:38:30 node1 corosync[754]: [TOTEM ] The network interface [192.168.2.10] is now up.

May 7 16:38:31 node1 corosync[754]: [TOTEM ] Process pause detected for 603 ms, flushing membership messages.

May 7 16:38:31 node1 corosync[754]: [TOTEM ] A processor joined or left the membership and a new membership was formed.



13.检查过程中是否有错误产生

grep -i error: /var/log/messages |grep -v unpack_resources (便面stonith的错误)



14.检查pacemaker时候已经启动了



[iyunv@node1 corosync]# grep -i pcmk_startup /var/log/messages

May 7 16:24:36 node1 corosync[686]: [pcmk ] info: pcmk_startup: CRM: Initialized

May 7 16:24:36 node1 corosync[686]: [pcmk ] Logging: Initialized pcmk_startup

May 7 16:24:36 node1 corosync[686]: [pcmk ] info: pcmk_startup: Maximum core file size is: 4294967295

May 7 16:24:36 node1 corosync[686]: [pcmk ] info: pcmk_startup: Service: 9

May 7 16:24:36 node1 corosync[686]: [pcmk ] info: pcmk_startup: Local hostname: node1.a.com

May 7 16:38:31 node1 corosync[754]: [pcmk ] info: pcmk_startup: CRM: Initialized

May 7 16:38:31 node1 corosync[754]: [pcmk ] Logging: Initialized pcmk_startup



May 7 16:38:31 node1 corosync[754]: [pcmk ] info: pcmk_startup: Maximum core file size is: 4294967295

May 7 16:38:31 node1 corosync[754]: [pcmk ] info: pcmk_startup: Service: 9

May 7 16:38:31 node1 corosync[754]: [pcmk ] info: pcmk_startup: Local hostname: node1.a.com



15 前集群的节点上启动另外一个节点



[iyunv@node1 corosync]# ssh node2 '/etc/init.d/corosync start'

Starting Corosync Cluster Engine (corosync): [ OK ]



16,将前面的验证步骤在另外一个节点上再次验证一次

17.在任何一个节点上 查看集群的成员状态

172235694.png
可以看到有stonith错误,在高可用的环境里面,会禁止实用任何支援

可以禁用stonith ,不禁用就提交不上去

172235198.png
定义资源

172236733.png
提交上去

crm(live)configure# commit

172237911.png
查看一下我们的ip

172238304.png
定义我们服务的资源

先安装web服务器

Node1

[iyunv@node2 ~]# yum install httpd

[iyunv@node2 ~]# chkconfig httpd off

[iyunv@node2 ~]# echo "node1" >/var/www/html/index.html

crm(live)configure# primitive webserver lsb:httpd

172239257.png
Node2

[iyunv@node2 ~]# yum install httpd

[iyunv@node2 ~]# chkconfig httpd off

[iyunv@node2 ~]# echo "node2" >/var/www/html/index.html

crm(live)configure# primitive webserver lsb:httpd

172241491.png
停掉我们的票数,不然在节点一是小的时候,节点二不会变成主节点

4.关数闭 quorum

可选的参数有如下 ignore (忽略)

freeze (冻结,表示已经启用的资源继续实用,没有启用的资源不能

启用)

stop(默认)

suicide (所有的资源杀掉)

将节点1 的corosync 服务启动起来

改变quorum

crm(live)configure# property no-quorum-policy=ignore

cimmit

crm(live)# show (在次查看quorum 的属性)

ERROR: syntax: show

crm(live)# configure

crm(live)configure# show

node node1.a.com

node node2.a.com

primitive webIP ocf:heartbeat:IPaddr

params ip="192.168.2.100"

primitive webserver lsb:httpd

group web webIP webserver

property $id="cib-bootstrap-options"

dc-version="1.1.5-1.1.el5-01e86afaaa6d4a8c4836f68df80ababd6ca3902f"

cluster-infrastructure="openais"

expected-quorum-votes="2"

stonith-enabled="false"

no-quorum-policy="ignore" (已经关闭)

172241638.png
停掉节点一

172242392.png
查看一下资源

172243148.png
访问以下我们的节点

172244499.png
再将我们的node1启动起来

172245855.png
看一下资源到底会不会回滚了。其实在这种高可用的群集上是不会回滚的。依然在node2上。

172247957.png
我们把node2停下来。看能不能切换到node1上呢

172248731.png
切换过来了

172248204.png
也变成了node1了

172249453.png



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-10245-1-1.html 上篇帖子: postgresql pgpool搭建及高可用简单配置 下篇帖子: Web负载均衡的几种方式

尚未签到

发表于 2013-11-22 16:34:35 | 显示全部楼层
恐龙说:“遇到色狼,不慌不忙;遇到禽兽,慢慢享受……”

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-9 16:54:24 | 显示全部楼层
你是我最爱的男人、却赐给我最深的伤痕

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-19 19:43:01 | 显示全部楼层
人类继续繁忙,天使都回家乡。因为人间是人间,天堂是天堂

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-27 22:35:32 | 显示全部楼层
■■ヽ︶ㄣ今天是莪最后一次说爱你。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表