MySQL Cluster vs Replication

jarednichols
Honored Contributor

I'm standing up two servers, one as the main JSS, the other will serve as a failover. Failover is being handled by 3DNS. Should the master entry stop responding, the secondary (tertiary etc) entry will take over in DNS.

My question is this: Due to this setup, it would seem that I would want MySQL replication (one-way from master to slave) vs clustering (two-way replication).

Can folks who have run a HA setup chime in?

Thanks!

9 REPLIES 9

spock
New Contributor

Jared -- I'm working on something very similar. Did you manage to sort it out?

donmontalvo
Esteemed Contributor III

@jarednichols I don't have any useful feedback other than I thought JAMF uses "cluster" to describe running multiple WebApps pointing to the same MySQL database?

We had a lot of concerns about JAMF not offering alternate platforms to deploy JSS to, and they dug their heels in and delivered. Now I wish they'd offer failover. I know some folks are going to chime in with "But why do you need 99.9999999999999999999999% uptime?" Those are questions best answered offline (client confidentiality).

We had a similar conversation with Extensis, as we are deploying UTS3 to a global firm. We've been partnering with Extensis on integration projects for over 15 years so we've got a good relationship with them. Unfortunately their product also lacks failover capability. They did say they would submit it as a feature request. Luckily UTS3 can run on MSSQL, MySQL....but I digress...

Don

--
https://donmontalvo.com

jarednichols
Honored Contributor

Sure some info on how we (I?) went:

MySQL replication from a Master to Slave. Information and configuration here: http://dev.mysql.com/doc/refman/5.0/en/replication.html

We then use 3DNS to handle failover. 3DNS monitors services on the primary server and if one of them stops responding (IIS, for instance) it automatically flips all the DNS records over to the secondary.

The only down-side to doing it this way is that Tomcat needs to be restarted manually in this process to reflect changes to the database. This isn't a terribly huge concern as I get notifications all over the place if the primary goes down so I can then go ahead and kick Tomcat on the secondary.

EDIT: As an aside, SSL certs should be issued to the 3DNS entry, not the server hostnames of your primary, secondary, tertiary etc servers. This is also nice because you can move the service to other servers without having to re-issue your certs.

Being in a more global, Enterprise-type company now, I would like to see JAMF give MSSQL support as then we could run it on the cluster.

donmontalvo
Esteemed Contributor III

@jarednichols

Being in a more global, Enterprise-type company now, I would like to see JAMF give MSSQL support as then we could run it on the cluster.

[color=red]+99.9999999999999999999999 !!![/color]

external image link

--
https://donmontalvo.com

jarednichols
Honored Contributor

Though, I'll say, yesterday was a good day to not have your database on one of our clusters... hahaha

Everyone in my office was running around like their hair was on fire and I'm all "whatevs."

rockpapergoat
Contributor III

design/engineer for failure, and keep your hair.

jarednichols
Honored Contributor

You must have had an epic fail along the way then, I figure ;)

rockpapergoat
Contributor III

mine is a preemptive removal of hair in case of emergency. it's part of my ongoing "efficient living" initiative.

hkim
Contributor II

For those doing HA, what made you think of using failover versus a round robin style approach to load balancing JSS? Does replication fit the bill or does your environment need to use mysql clustering?