目前我有两台服务器运行Debian 7 HA主动/被动设置使用Pacemaker和Corosync如下: node1->IP->xx.xx.xx.1 node2->IP->xx.xx.xx.2 VIP(Floating IP) ->xx.xx.xx.3 它configuration了心跳以进行故障切换设置。 以上所有知识产权都是面向公众的。 当其他节点发生故障时,系统全部按照高可用性运行。当其中一个系统处于活动状态时,将有两个IP分配给一个服务器。 所以这是我的问题 – 我是否必须为不同的IP(VIP和静态公共IP)添加任何单独的iptable规则? 如何仅允许(监听)特定IP(VIP)上的stream量来为eg-DB服务器服务,而不是来自外部其他公共地址(xx.1)的stream量。 如果你有什么担心安全等问题的设置,请评论.. 谢谢
我已经设置了两个节点的active/active ip failover与heartbeat和pacemaker遵循zivtech在后端Web服务器的两个负载平衡器上的链接 。 两个LB具有公共IP,每个公共IP用于故障转移,并且如果一磅失败,我检查ips是否被可用的lb接pipe,并且它运行良好。 现在我想添加一个更多的负载平衡器公共IP故障切换(共3 ips),我想这是不可能的心跳。 我该怎么做呢? 有什么build议吗? 谢谢! 编辑:1 尝试直接添加autojoin any点ha.cf文件与autojoin any但crm_mon没有显示第三个节点,就好像它既不添加Online也不Offline 。 ha.cf : ucast eth0 192.168.1.2 ucast eth0 192.168.1.3 ucast eth0 192.168.1.4 ….. node lb1 node lb2 node lb3 …….. autojoin any crm_mon -1 : ============ Last updated: Mon Jan 16 22:29:20 2012 Stack: Heartbeat Current DC: lb2 (47f9c1f7-e24b-4183-b9f0-9082e268578e) – partition […]
尝试使用Hetzner作为托pipe提供程序来实现双节点故障转移群集时,遇到以下问题。 我的corosync.conf如下: # Please read the corosync.conf.5 manual page compatibility: whitetank totem { version: 2 secauth: off interface { member { memberaddr: 144.76.91.XXX } member { memberaddr: 5.9.121.XXX } ringnumber: 0 bindnetaddr: 5.9.121.0 mcastport: 5405 ttl: 1 } transport: udpu } logging { fileline: off to_logfile: yes to_syslog: yes debug: on logfile: /var/log/cluster/corosync.log debug: off […]
我想知道Corosync消息传递软件中多播地址的用途: 由于我们必须将每个networking接口与IP地址和特定端口绑定,并且每个环通过这些IP进行通信, 我不明白为什么我们还必须使用多播地址。 有人可以开导我吗? 谢谢 ! [编辑] 好的,但是当我评论多播地址时,corosync无法启动: [MAIN ] parse error in config: No multicast address specified 这里是我的configuration文件,我从头开始使用指南集群来configuration解决scheme,大部分设置都是默认值。 totem { version: 2 token: 3000 token_retransmits_before_loss_const: 10 join: 60 consensus: 3600 vsftype: none max_messages: 20 clear_node_high_bit: yes secauth: off threads: 0 rrp_mode: passive interface { ringnumber: 0 bindnetaddr: 10.55.54.1 mcastaddr: 226.97.1.2 mcastport: 5409 } interface […]
我在CentOS 7上的corosync堆栈上运行了两个起搏器集群,所有软件包都与发行版/更新软件包保持最新。 两个集群都显示没有命令pcs status集群名称:像这样: 集群名称: 最后更新:2014年11月3日星期一09:55:58 最后更改:2014年10月31日星期五11:09:22通过烧杯上的cibadmin 堆栈:corosync 当前DC:踏板车(2) – 与法定人数的分区 版本:1.1.10-32.el7_0.1-368c726 5节点configuration 21资源configuration /etc/corosync/corosync.conf的totem部分中有一个cluster_name:条目,但我在起搏器CIB中找不到与集群名称相关的任何内容。 群集是使用pcs cluster setup –name clustername node1 node2 node3 node4 node5创build的 – 名称群集名称pcs cluster setup –name clustername node1 node2 node3 node4 node5 (群集名称是群集的预定名称)。 /etc/corosync/corosync.conf是世界上可读的,以及它上面的目录。
我正在使用2个根服务器和1个fail-over-ip的设置(在我们的临时系统上)。 作为软件,我们使用corosync和起搏器。 Corosyncconfiguration为通过端口5405进行多播通信。 – >一切工作正常。 现在我想用failover-ip在2个根服务器上部署这个系统。 那么,组播通信将不起作用,因为根服务器不直接连接; 它们与路由器连接,位于不同的数据中心 现在我根据udpu支持更改了corosync.conf(如示例)。 我正在使用corosync v.1.4.1 corosync.conf: compatibility: whitetank totem { version: 2 secauth: off interface { member { memberaddr: AAAA } member { memberaddr: BBBB } ringnumber: 0 bindnetaddr:AAAA mcastport: 5405 } transport: udpu } logging { fileline: off to_stderr: no to_logfile: yes to_syslog: yes logfile: /var/log/cluster/corosync.log debug: off […]
我正在尝试添加一个Pacemaker虚拟IP地址; 与它,网关,和它在不同的子网上服务的两个虚拟机。 我以前只使用同一个子网上的所有IP,我需要一些帮助。 我在200.xx.xxx.9和200.xx.xxx.10上有两个虚拟机,下面是/etc/network/interfaces auto eth0 iface eth0 inet static address 200.xx.xxx.9 gateway 200.xx.xxx.9 netmask 255.255.255.255 post-up route add yy.yyy.yyy.1 dev eth0 post-up route add default gw yy.yyy.yyy.1 和 auto eth0 iface eth0 inet static address 200.xx.xxx.10 gateway 200.xx.xxx.10 netmask 255.255.255.255 post-up route add yy.yyy.yyy.1 dev eth0 post-up route add default gw yy.yyy.yyy.1 他们都在Pacemaker中出现,看起来好像在沟通。 两个/etc/corosync/corosync.conf文件中的bindnetaddr参数是: […]
我有两台服务器configurationdrbd,corosync与起搏器。 这一切都工作正常,主服务器获得次要的,如果失败,并辅助获取主要。 但是,如果第一台服务器在故障转移后重新启动,drbd将不会再次连接,我必须做一个 drbdadm连接所有 在现在的中学。 这里是从我做的所有inputserver1的日志( https://www.refheap.com/95997 ): root@server1:~# ifdown eth4 Jan 12 08:11:37 server1 kernel: [237958.935578] ixgbe 0000:04:00.0: removed PHC on eth4 Jan 12 08:11:43 server1 kernel: [237965.430849] cib[2877]: segfault at 0 ip 00007f7d342c8aca sp 00007fffaba39e58 error 4 in libc-2.19.so[7f7d34247000+19f000] Jan 12 08:11:44 server1 kernel: [237966.427423] crmd[2878]: segfault at 0 ip 00007eff7d291aca sp 00007fffaae51538 […]
我试图启用故障转移策略,在两台运行由VritualBox创build的openSUSE 12的虚拟机上进行mysql Master-Master复制时使用pacemaker。 我设法完成MySQL双主复制,它似乎工作。 服务器A的IP为192.168.Xb ,服务器B的IP为192.168.Xb 我遵循这里的指令,所以基本上我的corosync.conf看起来像指南中介绍的,除了下面写的接口部分: interface { ringnumber: 0 bindnetaddr: 192.168.Xc mcastaddr: 226.94.1.1 mcastport: 5405 ttl: 1 } 我的第一个问题是:什么是bindnetaddr: 它是我的群集的虚拟IP吗? 如果不是,它应该是其他节点的IP还是它自己的IP? (我的意思是服务器的IP有这个configuration或其他服务器) 我的第二个问题是:什么是mcastaddr和mcastport ,他们应该设置什么? 然后我尝试添加MySQL作为资源,所以我按照这里所述做了 。 但是当我inputcrm configure primitive ip_mysql ocf:heartbeat:IPaddr2 params ip="192.168.Xc"我得到 crm configure primitive ip_my ocf:heartbeat:IPaddr2 params ip='192.168.114.8' crm_verify[23888]: 2012/12/29_12:25:51 WARN: cluster_option: Using deprecated name 'stonith_enabled' for cluster option 'stonith-enabled' Warnings […]
我有一对服务器设置为高可用性负载均衡器/反向代理。 每个运行Ubuntu 12.04 x64服务器,Varnish,心跳和Pacemaker,与清漆负载平衡stream量到后端服务器。 如果负载平衡器中的任何一个发生故障,Heartbeat / Pacemaker会将一组虚拟IP转移到另一台服务器上,并恢复stream量。 这一点工作正常。 我没有考虑的是,如果Varnish没有运行在任何一台服务器上。 目前可以停止清漆而不触发Heartbeat / Pacemaker的任何行动。 我想在当前的服务器上缺乏运行的Varnish来触发备份(而不是尝试重新启动Varnish),但是我正在努力寻找任何types的在线指导。 谁能帮忙? 编辑后Daff的援助: 我结束了一些与原始请求不同的事情:Pacemaker尝试重新启动Varnish,如果失败,它会将所有资源移动到被动节点。 我的设置是两个服务器,serverA(主动)和serverB(被动)。 我会假设消息层(Heartbeat或Corosync)已经安装并正在工作。 为了让Pacemaker控制Varnish,我们需要修复Ubuntu的Varnish init脚本: sudo vim /etc/init.d/varnish 更换: –start –quiet –pidfile ${PIDFILE} –exec ${DAEMON} — \ 在start_varnish_d()函数中: –start –quiet –pidfile ${PIDFILE} –oknodo –exec ${DAEMON} — \ 所以它按照这里列出的规则工作。 现在在serverA上用两个虚拟IP设置一个基本的Pacemaker集群: sudo crm configure property no-quorum-policy=ignore sudo crm configure property stonith-enabled=false sudo […]