Tag Info

Hot answers tagged

12

I am actually working on something very similar to what you described (a fail-over cluster on EC2), and after trying out Heartbeat, settled on Corosync as my messaging layer. Corosync will run on multiple servers and it does support Unicast (UDPU) as of version 1.3.0 (from Nov, 2010). I have setup and tested Corosync on Amazon's EC2 cloud (using Amazon's ...


11

I prefer to use keepalived for high-availability. I find it simpler to setup (one daemon and config) than heartbeat and company. The only drawback I run into, is that keepalived doesn't have a unicast option by default, and only uses VRRP for communication (The author of HAProxy has written a unicast patch for keepalived however)


9

Sorry, but the part about Pacemaker is not true. The Pacemaker regression and release tests make extensive use of automation. To configure without an active cluster, prefix all commands with CIB_file=/var/lib/heartbeat/crm/cib.xml or set it in your environment. Just be sure you remove the .sig file before starting the cluster. For clusters without quorum, ...


5

You can use RFC1918 IP addresses to test your configuration. Depending on the load balancing setup, the use of RFC1918 addresses may continue in some form into production.


3

you can enter the host ip in there. So on one server you'll have: bindnetaddr: 10.244.19.47 And on the other: bindnetaddr: 10.196.55.173 I had exactly the same setup with my two servers in EC2 and it worked well.


3

I am late to reply to your question, but here goes: Yes heartbeat is deprecated. No this is not a distro specific problem There are a lot of benefits to using Corosync instead of heartbeat, the first and foremost is point number 1 above. Still, I will list as many as I know of here. Comparison of features: First off the only benefit(IMO) of using ...


3

In the open source world, there's RedHat Cluster Suite. It's been several years since I've implemented RHCS so I don't have many relevant things to say about it today. Commercially, there is Veritas Cluster Server. No experience with it. A much simpler and open source HA tool is UCARP. UCARP doesn't provide nearly the same kind of "infrastructure" that ...


2

res_exportfs_export2_stop_0 on xx.xx.xx.1 'unknown error' (1): call=47, status=Timed Out, last-rc-change='Tue Mar 31 12:53:04 2015', queued=0ms, exec=20003ms Shows that your res_exportfs2 resources failed to stop due to a timeout. It may simply be that it needs a longer timeout. Try configuring a stop timeout for this resource like so: primitive ...


2

Yes, that's right. See also here, an example configuration published by Florian Haas (one of the Linux HA guys): https://github.com/fghaas/corosync/blob/master/conf/corosync.conf.example.udpu And please read the Corosync man page, it's all explained in there.


2

Eureka! Both of us forgot a very very important log file, it's... /var/log/mysqld.log: socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server (GPL) by Atomicorp [Note] Slave SQL thread initialized, starting replication in log 'mysql-bin.000082' at position 58569, relay log './mysqld-relay-bin.000002' position: 58715 [Note] Slave I/O ...


2

I haven't seen how 6.1 changes things, I've only done it with 6.0, but this is what worked for me: Install the following patterns: Scalable File Systems Resilient Storage High Availability On each node, start the ricci service (service start ricci), entering a password when prompted Start the luci service (service start luci) on one node Go to port :8084 ...


2

I think the easiest way out is to have 2 fail-over IPs. One for nginx and the other for pgpool + haproxy pair. That way it will work the way you intend it to. nginx can be configured to run from first machine and pgpool + haproxy pair from the second one.


2

From the mailing list (that solved my problem), courtesy of Dan Friscu: "You're not supposed to use the same bindnetaddr in both places, it's relevant only at node level for UDPU (your use case). On the node where you have the 144.* address, use that as bindnetaddr." Hope that this is useful to someone.


2

You don't have to use multicast on corosync. You may use unicast to do your job. This can be done by using something like this in /etc/corosync/corosync.conf for a two-member cluster: compatibility: whitetank totem { version: 2 secauth: off interface { member { memberaddr: 10.23.55.201 ...


2

You do need to run them on the DB hosts as well as they are required to manage the resources (which are the database instances in your case). I assume that you could also create "remote resources" and remotely manage them but I'd say it is rather inefficient.


1

This happen, because, you don't have the cluster fencing configured(stonith), now your cluster is in split-brain Now you have a cluster with two DC and every node are trying to start the resource


1

You have exchanged the values ​​of the options, you must use: crypto_cipher: aes256 crypto_hash: sha1 instead of crypto_cipher: sha1 crypto_hash: aes256


1

In the sources of pcs-0.9.115-32.el7 the getClusterName function is implemented: def getClusterName(): if is_rhel6(): try: dom = parse(settings.cluster_conf_file) except (IOError,xml.parsers.expat.ExpatError): return "" return dom.documentElement.getAttribute("name") else: try: f = ...


1

Try setting the bindnetaddr to 192.168.1.0 instead of .100. You can also remove TTL option as it is only valid for multicast and you're using udpu transport. You probably don't need the compatibility option. It's only relevant for openais version older than 0.81. You can check the status of your rings with: corosync-cfgtool -S and the member who joined ...


1

In my configuration I use bindnetaddr with the ip address for each host. For example: node1: bindnetaddr: 192.168.1.101 node2: bindnetaddr: 192.168.1.102 Edit: bindnetaddr his is normally the network address of the interface to bind to. This ensures that you can use identical instances of this configuration file across all your cluster nodes, without ...


1

You have add balancer-manager handler in same virtualhost where you have configured load balancer. Also need you need to exclude location with "ProxyPass /balancer-manager !". Please see the below virtualhost <Virtualhost x.x.x.x:443> SSLEngine On ServerName abc.xyz.com ..... <Location /balancer-manager> SetHandler balancer-manager ...


1

You can configuring Notifications via External-Agent adding external script to process cluster changes. For example configure ClusterMon to execute an external-agent: primitive ClusterMon ocf:pacemaker:ClusterMon \ params user="root" update="30" extra_options="-E /path/to/pcmk_curl_helper.sh" \ op monitor on-fail="restart" interval="10" clone ...


1

Same issue after upgrading i386 servers from 2.6.32 kernel and 1.25 ipvadm to 3.2.0 kernel and 1.26 ipvadm, while ipvsadm shows oly one /proc/net/ip_vs shows all real servers. On a newly installed amd64 all is working fine. To solve the issue i applied the patch posted here http://archive.linuxvirtualserver.org/html/lvs-users/2011-08/msg00033.html and ...


1

So after much banging of my head on a table, our Percona contract finally kicked in again. Using a new HA resource : https://github.com/percona/percona-pacemaker-agents/raw/master/agents/mysql_monitor Create the HA resource in its own folder , I called it Percona ( /usr/lib/ocf/resource.d/percona ). This resource will not try to kill your mysql nodes like ...


1

If you use multicast you can quickly and easily add new nodes to the cluster. Because of this I suspect that the developers may have never saw a need to allow dynamically adding nodes via UDP unicast. At least no "clean" way exist that I myself am aware of. However, you should be able to reload Corosync and apply the newly edited config files without ...


1

If I understand correctly what you need, you can do this by putting location constraints: pcs constraint location WanCluster101 prefers 11sch=10 pcs constraint location WanCluster101 prefers 10sch=5 What I did in the past was to put the constraint for both IPs, both ways. So that when one node goes down, the other takes both IPs, no matter which of them ...


1

1: before test your cluster connectivity, you need to configure you stonith device, the stonith is very important in cluster, for resolve the split-brain situation 2: for the less important question, you can try to use location constrains you can start from something like this: location mycol dummy1 \ rule $id="myrule" -inf: defined dummy2 and ...


1

I have do similar configuration to make sure the virtual IP to live along with Mysql master server. For your case, I think the steps should be: Add a primitive for two JBOSS intances (as your shareIP or MySQL servers) Add colocation configure for JBOSS primitive to live along with MySQL Master as example below: colocation mysql_co_jboss inf: jboss ...


1

With the two machines in different datcenters? You can't. This scenario assumes that both machines in the cluster are on the same subnet; the VIP is also in that subnet. To do what I think you want to do, you would need an anycast IP address. Then you'd still have to run your own AS so you could add and withdraw routes as the machines go online and offline. ...


1

May be you need to switch to unicast from multicast communication. Try something like this in your corosync.conf: totem { version: 2 secauth: off interface { member { memberaddr: 172.16.0.1 } member { memberaddr: 172.16.0.2 ...



Only top voted, non community-wiki answers of a minimum length are eligible