欢迎来到天天文库
浏览记录
ID:38958131
大小:1.80 MB
页数:10页
时间:2019-06-22
《corosyncandpacemaker分析x》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Corosyncandpacemaker邱志刚CorosyncandpacemakerCorosync实现的是membership和可靠组通信协议Pacemaker则基于Corosync/Linux-HA实现服务的管理Page1Corosync架构Page2Corosync介绍Corosync是从openais0.90版本上独立出来的,包括了openais中的如下组件TotemprotocolEVSCPGCFGQuorumExtendedVirtualSynchrony算法(EVS)提供两个功能:组成员列表的同步;组消息的可靠组播。Page3Pacemaker架构Page4P
2、acemakerinternalsPage5Pacemaker介绍pacemaker是把2.0的Linux-HA项目中抽出crmd,pengine,stonithd、cib等独立出来crmd:ClusterResourceManagementDaemoncib:ClusterInformationBasepengine:PolicyEnginestonithd:TheHeartbeatfencingsubsystem(fence放到pacemaker)pacemaker主要有两个地方用到了底层的clusterstack,一是Pacemaker包括老版本的Linux-HA都是基
3、于底层的clusterstack的membership,在pacemaker这层做选主(elect),在选出了DC(DesignatedCo-ordinator)也就是leader后,由它来负责后续的HA资源等操作,都有DC来负责,二是cib(ClusterInformationBase)信息通过clusterstack层在各个节点间同步。Page6Pacemaker代码入手点一个是新的节点加入的过程,主要涉及:join_client.c这个是待加入的节点所在的状态机执行的各个状态join-dc.c这个是加入的DC,也就是leader接受加入节点的request所需要执行的各
4、个状态,中间有好几次交互,从I_开头的代表input的事件,A_开头的代表需要执行的操作另一个是选主的过程,涉及的文件是election.c,节点加入时,比如当前DCtimeout时,某个节点开始发起electionvote,http://gonggeng.org/board/view/pubmsg-d818adc2-3a73-11e0-b763-000bcd825917/Page7与cman+rgmanager方案对比openais+cman+rgmanageropenais+corosync+pacemakerDLMRgmanager使用dlm对资源进行同步Pacemak
5、er与dlm无关脑裂解决方案通过qdisk可以解决2-nodes场景下的脑裂无解决2-nodes脑裂的方案分布式文件系统gfs2gfs2技术积累较多无,pacemaker代码中大量用到glib,对glib不了解虚拟机支持完整支持kvm支持Xen,不支持kvmPage8
此文档下载收益归作者所有