Pacemaker 仅仅做资源管理器(CRM)。底下的消息系统採用 corosync。

安装

以 ubuntu 为例,

  1. sudo aptitude install -y pacemaker corosync

配置 corosync

改动 /etc/default/corosync 文件。改动 start=yes,否则服务脚本无法启动。

/etc/corosync/corosync.conf 中,改动 bindnetaddr 的值为节点之间互相通知监听的网段(比如
eth1 所在的 10.0.100.0 网段)。

加入例如以下内容。让corosync 启动的时候也启动 pacemaker(ubuntu 上执行会有 bug,还得是手动启动)。

  1. service {
  2. ver: 0
  3. name: pacemaker}

改动 expected_votes 的值为大于节点数目一半的数字。

运行 corosync-keygen 命令,会生成 /etc/corosync/authkey 文件。该文件和 corosync.conf,分别拷贝到集群的各个成员节点上。

启动 pacemaker 和
corosync

  1. $ sudo service pacemaker restart
  2. $ sudo service corosync restart

假设启动成功了,能够通过 sudo corosync-cmapctl |grep members 或者 sudo
crm status
查看集群中成员的状态。

配置资源信息

在随意一个 node 上运行以下的 crm 配置命令(实际上是通过 CLI 来编辑后面的 XML 文件)。

  1. # crm
  2. crm(live)# configure #进入配置模式
  3. crm(live)configure# verify #校验配置
  4. error: unpack_resources: Resource start-up disabled since no STONITH resources have been defined
  5. error: unpack_resources: Either configure some or disable STONITH with the stonith-enabled option
  6. error: unpack_resources: NOTE: Clusters with shared data need STONITH to ensure data integrity
  7. Errors found during check: config not valid
  8. -V may provide more details
  9. crm(live)configure# property stonith-enabled=false #依据校验情况,关闭 stonith
  10. crm(live)configure# commit # 提交改动
  11. crm(live)configure# verify # 又一次校验
  12. crm(live)configure# primitive web_ip ocf:IPaddr params ip=9.186.100.102 #定义 IP 资源,这个 ip 资源会被主节点配到自己的网卡上
  13. crm(live)configure# primitive nginx_service lsb:nginx #定义服务资源
  14. crm(live)configure# commit
  15. crm(live)configure# group mygroup web_ip nginx_service #定义资源组
  16. crm(live)configure# commit
  17. crm(live)configure# property no-quorum-policy=ignore #投票权不到一半时的策略
  18. crm(live)configure# commit
  19. crm(live)configure# exit

測试

分别在各个节点上启动 nginx,页面填入不同内容。

訪问配置的虚 IP,即 9.186.100.102,查看详细訪问到了哪个节点,然后在该节点上断开 eth1,同一时候删除 eth0:0(假设 enable 了
stonith 能够自己主动完毕。否则要手动解决 split)。过一会又一次查看虚 IP 页面,会发现自己主动变成了其他的节点。

转载请注明:http://blog.csdn.net/yeasy/article/details/46638101

Pacemaker 安装与使用的更多相关文章

  1. ZABBIX冗余架构构筑(Centos6.4+pacemaker+corosync+drbd)

    基本构成: 用pacemaker+corosync控制心跳和资源迁移 用drbd同步zabbix配置文件和mysql数据库 所有软件都用yum安装至默认路径 主机的drbd领域挂载至/drbd,备机不 ...

  2. 理解 OpenStack 高可用(HA) (4): Pacemaker 和 OpenStack Resource Agent (RA)

    本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1)OpenStack 高可用方案概述 (2)Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3)N ...

  3. Corosync+Pacemaker+DRBD+MySQL 实现高可用(HA)的MySQL集群

    大纲一.前言二.环境准备三.Corosync 安装与配置四.Pacemaker 安装与配置五.DRBD 安装与配置六.MySQL 安装与配置七.crmsh 资源管理 推荐阅读: Linux 高可用(H ...

  4. Linux-HA实战(3)— 基于Pacemaker搭建TFS Nameserver HA

    上篇文章简单介绍了下基于Heartbeat的虚拟IP配置,个人觉得简单易用已经能够应付大部分场景了.但是既然花时间研究HA,如果仅限于一个虚拟IP飘来飘去未免有点糊弄任务了,因此这篇文章打算介绍下基于 ...

  5. 配置高可用集群(实验) corosyne+pacemaker

    环境准备: 一准备三个虚拟机,把/etc/hosts/文件配置好                              192.168.43.9 node0                     ...

  6. corosync+pacemaker高可用集群

    高可用集群,是指以减少服务中断(如因服务器宕机等引起的服务中断)时间为目的的服务器集群技术.简单的说,集群就是一组计算机,它们作为一个整体向用户提供一组网络资源.这些单个的计算机系统就是集群的节点. ...

  7. OpenStack中MySQL高可用配置

    采用Heartbeat+DRBD+mysql高可用方案,配置两个节点的高可用集群 l  配置各节点互相解析 gb07 gb06 l  配置各节点时间同步 gb07 [root@gb07 ~]# ntp ...

  8. OpenStack API部分高可用配置(一)

    一.概况与原理  SHAPE  \* MERGEFORMAT 1)所需要的配置组件有:pacemaker+corosync+HAProxy 2)主要原理:HAProxy作为负载均衡器,将对openst ...

  9. MooseFS及其高可用部署

    MooseFS的工作原理分析 MooseFS(下面统一称为MFS)由波兰公司Gemius SA于2008年5月30日正式推出的一款Linux下的开源存储系统,是OpenStack开源云计算项目的子项目 ...

随机推荐

  1. 检查bug

    用selective_search生成的坐标是(ymin,xmin,ymax,xmax),并且是从1开始的,不是从0 这是cache中的gt数据,明显看到有65535,说明很有可能是0-1变成了655 ...

  2. install docker-ce for ubuntu

    may need login vpn first docker-ce for ubuntu chinese version docker-ce for ubuntu

  3. web前端中的一些注释表达法

    1.HTML注释 <!--注释的内容--> 注释的地方(根据个人习惯可能有所不同): 结束标签的后面,这一切都是为了程序在嵌套的时候更加方便.明了,如: <div class=&qu ...

  4. sublime中使用markdown并实时编辑

    1.需求 想在sublime中编辑.md文件 2.步骤 找到菜单栏: 快捷键,shift + command + p,选择 Package Control:Install Package, 没有找到P ...

  5. 配置c3p0-config.xml数据库连接池,jdbcurl配置项报错Type The reference to entity "useUnicode" must end with the ';' delimiter.

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE xml> <c3p0-confi ...

  6. ps指令详解

    ps aux #显示出系统上的全部进程ps -ef #显示出系统上的全部进程,且显示出PPID一栏ps -ljF #仅显示与本终端上开启的进程 选项:-t 终端名称1 终端名称2 #指定关联的多个终端 ...

  7. (5) openssl speed(测试算法性能)和openssl rand(生成随机数)

    1.1 openssl speed 测试加密算法的性能 支持的算法有: openssl speed [md2] [mdc2] [md5] [hmac] [sha1] [rmd160] [idea-cb ...

  8. 【Linux】Centos6的iptables防火墙设置

    1,查看防火墙状态 # service iptables status //或 # /etc/init.d/iptables status 2,防火墙的启动.重启,关闭 # service iptab ...

  9. blocking and nonblocking assign

    key word: 仿真建模  clock采样block/nonblock blocking时,有时候clk会sample edge后的data: nobocking时,clk sample 以前的d ...

  10. CEF与代理

    此文已由作者王荣涛授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. CEF(Chromium Embedded Framework)如今已经广泛被应用于客户端软件,网易内部就有 ...