Cluster Issues

I have a cluster setup that is basically a HA apache2 server. I am having some strange, yet only occasional issues with crm not being able to start apache2. Here is the error below; any suggestions?

Failed actions:
    apache2_monitor_10000 (node=bacon, call=102, rc=7, status=complete): not running
    apache2_start_0 (node=bacon, call=104, rc=1, status=complete): unknown error

5 Replies

Instead of allowing the CRM control over Apache, I just had it control the failover IP address. They both just run Apache constantly. I know this is an unnecessary memory (and possibly CPU) drain on both machines, but it is the solution that works the best. Both machines' /var/www directories are synchronized using a utility called "Unison." This utility is very lightweight and uses minimal bandwidth and CPU. Better than rsync even! I just wanted to update this post to help anyone who might stumble upon it.

Unison shouldn't be better in terms of bandwidth usage than rsync, since it basically is rsync; it use the rsync algorithm.

@Guspaz:

Unison shouldn't be better in terms of bandwidth usage than rsync, since it basically is rsync; it use the rsync algorithm.
rsync was using copious amounts of bandwidth compared to Unison. Unison uses as much as idle bandwidth, rsync used about ~2mbits each time it ran. Plus, Unison synchronizes in both directions.

@clayfreeman:

@Guspaz:

Unison shouldn't be better in terms of bandwidth usage than rsync, since it basically is rsync; it use the rsync algorithm.
rsync was using copious amounts of bandwidth compared to Unison. Unison uses as much as idle bandwidth, rsync used about ~2mbits each time it ran. Plus, Unison synchronizes in both directions.

It sounds like you may have misconfigured rsync. As I said, they both use the same algorithm for synchronizing data (you can read about this on the Unison website if you don't believe me), and they're both going to have to exchange a certain amount of information to determine what needs to be synced.

rsync relies on the file size and modification date to determine if a file has changed, although this behaviour can be changed to only rely on the filesize (useful for files that only ever grow) or to replace the modification date with a 128-bit checksum. rsync's default method requires a minimum of disk IO to detedmine updated files

Unison's default method is to do a full checksum of every file on both sides and compare those. It's a little bit more efficient for network IO, but enormously more intensive for IO.

You're definitely correct that they're not intended to accomplish exactly the same thing, though. Unison is intended for bi-directional synchronization, although I'm not sure why you'd ever want bi-directional sync in an HA cluster. That sounds dangerous.

It might be that I misconfigured rsync. Even if not, I need the bi-directional file synchronization so that our client can make changes to the site that they want hosted, and they won't even know it is down.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct