企业 - pacemaker

                                   pacemaker

Pacemaker是一个集群资源管理器。它利用集群基础构件(OpenAIS 、heartbeat或corosync)提供的消息和成员管理能力来探测并从节点或资源级别的故障中恢复,以实现群集服务(亦称资源)的最大可用性。俗称,心脏起搏器

说到高可用,我们可能会用heartbeat和keepalived,也可能会用corosync+pacemaker,但他们之间有什么区别呢?我们在此主要谈下heartbeat和corosync+pacemaker之间的渊源。
??Heartbeat到了v3版本后,拆分为多个子项目,其中pacemaker就是拆分出来的资源管理器。Heartbeat 3.0拆分之后的组成部分:为:
1.Heartbeat:将原来的消息通信层独立为heartbeat项目,新的heartbeat只负责维护集群各节点的信息以及它们之前通信,被称为基础组件;(注意与corosync区别)
2.cluster-glue相当于一个中间层,可以将heartbeat和crm(pacemaker)联系起来,主要包含2个部分,LRM和STONITH;
3.Resource Agent:用来控制服务启停,监控服务状态的脚本集合,这些脚本将被LRM调用从而实现各种资源启动、停止、监控等等。
4.Pacemaker也就是Cluster Resource Manager
(简称CRM),用来管理整个HA的控制中心,客户端通过pacemaker来配置管理监控整个集群。它不能提供底层心跳信息传递的功能,它要想与对方节
点通信需要借助底层(新拆分的heartbeat或corosync)的心跳传递服务,将信息通告给对方。
另,pacemaker管理资源的工具由命令行界面的crmsh、pcs和图形化界面pygui、hawk等进行管理,我们使用pcs链进行资源管理。
??通过以上,我们了解了pacemaker的由来,下面我们再来看下集群底层新拆分的heartbeat和corosync之间的区别:
1.配置文件的版本管理:Heartbeat只能为所有的资源配置一个主服务,而corosync则允许为不同的资源组配置不同的主服务
2.管理资源的灵活性:在corosync中,其会自行处理配置文件的同步问题,heartbeat则无此功能
3.分组管理:Heartbeat只支持2个节点,而corosync则支持多个节点的集群,支持把资源进行分组,按照组进行资源的管理,设置主服务,自行进行启停
4.配置复杂度:Heartbeat非常容易进行配置,第一次配置可能只需要几分钟,而Corosync由于有一定的复杂度则需要一点耐心
??因此,一般来说都是选择corosync来进行心跳的检测,搭配pacemaker的资源管理系统来构建高可用的系统,下面我们就来介绍下corosync+pacemaker构建高可用系统。

实验

这次实验是基于上次的haproxy实验所做的

实验环境

server1       haproxy主机

server2       http主机

server3       http主机

server4       haproxy主机

在之前的实验中,server1主机已经配置完成,保持server4与server1配置一致

从server1将安装包和配置文件发送到server4上

[[email protected] x86_64]# scp haproxy-1.6.11-1.x86_64.rpm [email protected]

[[email protected] haproxy]# scp haproxy.cfg [email protected]:/etc/haproxy/
[[email protected] security]# pwd
/etc/security
[[email protected] security]# scp limits.conf [email protected]:/etc/security/

[[email protected] ~]# rpm -ivh haproxy-1.6.11-1.x86_64.rpm  安装

创建用户,修改文件,开启服务

server1和server4均改

[[email protected] ~]# yum install pacemaker corosync -y     安装服务

[[email protected] ~]#  yum install pacemaker corosync -y    安装服务

修改配置文件(网段)

[[email protected] corosync]# scp corosync.conf [email protected]:/etc/corosync/   发给server4

开启server1,4的服务

[[email protected] ~]# yum install -y crmsh-1.2.6-0.rc2.2.1.x86_64.rpm pssh-2.3.1-2.1.x86_64.rpm   安装

[[email protected] ~]# yum install -y crmsh-1.2.6-0.rc2.2.1.x86_64.rpm pssh-2.3.1-2.1.x86_64.rpm   安装

[[email protected] ~]# crm 进入查看

检查配置文件是否正确

[[email protected] ~]# crm_verify -LV

保证数据安全性,pacemaker默认启动stonith,但是我们没有配置stonith,因此报错

在物理机打开服务


[[email protected] ~]# crm

再次运行,不会报错

在server1端,加入VIP

[[email protected] ~]# crm_mon (监控)

物理机

当关掉server1端的服务时

[[email protected] ~]# /etc/init.d/corosync stop

server4端如下显示

打开server1端服务

监控端

添加策略使高可用

crm(live)configure# property no-quorum-policy=ignore (实现高可用)

监控端

加入组

修改配置文件

[[email protected] haproxy]# vim haproxy.cfg
      bind             192.168.122.100:80 name clear
[[email protected] haproxy]# vim haproxy.cfg
      bind             192.168.122.100:80 name clear

server1端执行

[[email protected] ~]# crm node standby

[[email protected] ~]# crm node online

原文地址:http://blog.51cto.com/13362895/2083813

时间: 2024-10-04 21:01:53

企业 - pacemaker的相关文章

企业之pacemaker

pacemaker,是一个群集资源管理器.它实现最大可用性群集服务(亦称资源管理)的节点和资源级故障检测和恢复使用您的首选集群基础设施(OpenAIS的或Heaerbeat)提供的消息和成员能力.它可以做乎任何规模的集群,并配备了一个强大的依赖模型,使管理员能够准确地表达群集资源之间的关系(包括顺序和位置).几乎任何可以编写脚本,可以管理作为心脏起搏器集群的一部分. pacemaker的特点: 主机和应用程序级别的故障检测和恢复 几乎支持任何冗余配置 同时支持多种集群配置模式 配置策略处理法定人

Linux的企业-高可用集群Haproxy+corosync+pacemaker+fence

一.Haproxy简介 Haproxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上. 二.HAProxy的特点1.支持两种代理模式:TCP(四层)和HTTP(七层),支持虚

MySQL DBA及Linux企业集群实战工程师

MySQL DBA及Linux企业集群实战工程师 2015,来一场随时随地的学习之旅 开启我赢职场MySQL学习之旅 不能错过的我赢之旅 任性就是想问就问 谁是你的群聊小伙伴 学习点滴我主宰 名师在线答与问 职业入门--数据库基础知识及安装MySQL MySQL课程介绍 讲师访谈 深入了解什么是数据库 MySQL从万千数据库中脱颖而出 选择学习哪个版本的MySQL 搭建学习MySQL的实验环境 提前熟悉一下MySQL环境 Linux下基于官方YUM源安装MySQL Linux下基于官方源码包包安

OpenStack 企业私有云的若干需求(6):大规模扩展性支持

本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云(Hybrid cloud)支持 主流硬件支持.云快速交付 和 SLA 保证 大规模扩展性支持 私有云外围环境支持(包括支持CDN .商业SDN控制器.防火墙和VPN/专线等) 向上扩展性(PaaS 和 SaaS 等支撑) 企业数据中心IT环境支持(包括裸金属/Bare metal.F5 .GPU.跨

CentOS 6.5环境实现corosync+pacemaker实现DRBD高可用

DRBD (Distributed Replicated Block Device)分布式复制块设备,它是 Linux 平台上的分散式储存系统,通常用于高可用性(high availability, HA)集群中.DRBD 类似磁盘阵列的RAID 1(镜像),只不过 RAID 1 一般配置在一台服务器内,而 DRBD 是通过网络. DRBD Resource:DRBD所具有的几种属性: resource name:可以使用除空白字符外的任意ACSII表中的字符: drbd设备:drbd的设备的访

Java企业微信开发_09_身份验证之移动端网页授权(有完整项目源码)

注: 源码已上传github: https://github.com/shirayner/WeiXin_QiYe_Demo 一.本节要点 1.1 授权回调域(可信域名) 在开始使用网页授权之前,需要先设置一下授权回调域.这里瞬间想到之前做JSSDK的时候,也设置过一个域名.二者本质上都是设置可信域名. 当用户授权完毕之后,请求将重定向到此域名(或者子域名)下的执行者(jsp页面或者servlet等).如何设置授权回调域,请见第二节. 1.2 获取Code https://open.weixin.

C#开发微信支付之企业向用户付款

1.企业付款的介绍 所谓企业付款指的是,在功能开放后诸如保险行业的客户理赔.退保.商品退款.发放征集活动奖金.抽奖互动等操作都可以通过企业付款完成.而此前,微信支付只能提供客户向企业单向付款. 商户如果需要给用户付款,可以直接将钱打入用户的"微信零钱"中,微信支付将做零钱入账消息通知,零钱收支明细会展示相应记录.针对无零钱账户的历史客户端版本,资金将进入用户的红包账户,微信支付无消息通知用户,企业可选择自行触达用户. 通过认证的企业号可以开通微信支付功能.通过认证的企业号可以管理平台的

企业三证合一没组织机构代码怎么做微信公众号?

三证合一只有企业执照的话,可以直接通过"舒尔营销"快速认证.一般2天内可以认证好. 服务号.订阅号.企业号的区别1.订阅号:主要偏于为用户传达资讯(类似报纸杂志),认证前后都是每天只可以发一条消息:2.服务号:主要偏于服务交互,认证前后都是每个月可发4条消息:3.企业号:主要用于公司内部通讯使用,需要先有成员的通讯信息验证才可以关注成功企业号. 微信认证下单地址:http://www.shuers.com/erweima/201410929.html联系QQ:523998781 温馨提

Java企业微信开发_08_JSSDK多图上传

一.本节要点 1.1可信域名 所有的JS接口只能在企业微信应用的可信域名下调用(包括子域名),可在企业微信的管理后台“我的应用”里设置应用可信域名.这个域名必须要通过ICP备案,不然jssdk会配置失败 1.2JS-SDK使用权限签名算法 1.2.1 签名生成规则如下: (1)参与签名的字段包括: noncestr(随机字符串), 有效的jsapi_ticket, timestamp(时间戳), url(当前网页的URL,不包含#及其后面部分) . (2)对所有待签名参数按照字段名的ASCII