MySQL Forums
Forum List  »  NDB clusters

Re: MySQL Cluster configuration.
Posted by: Harrison Fisk
Date: January 24, 2005 09:49PM

Hi,

Comments below.

Chris Sarginson wrote:
> Hello, I have a few questions about MySQL
> clustering, so I hope you guys may be able to shed
> some light on this for me.
>
> I have 2 servers (Linux), which i wish to set up
> clustering on. I know this isn't really ideal, as
> the management node should be seperate, but we can
> always add a 3rd server later on, depending on
> traffic etc..

This isn't so much "ideal" as required. In order for a cluster to run and get HA you need at least 3 machines. Keep in mind that that the third one can be a weak little thing (ie. pentium 133 with 8 mb of ram), as it is only needed for arbitration.

> Server 1 would run the management node, 1(of two)
> NDB nodes, and an API node, Server 2 would run the
> second NDB and API nodes. If the first server
> went down, am I correct in presuming that the
> second server would continue running on its own
> until Server 1 came back up?

Nope! The problem is that if you lose server 1, then you lose half of the cluster. The arbitrator would be required to solve this to prevent network partitioning from occuring. Unfortunately the arbitrator was also running on server 1, so server 2 can't get the OK, so it will shutdown.

If server 2 died, then server 1 could continue, but obviously this is less than ideal due to above.

This has been discussed recently on the cluster@ mailing list. Read http://lists.mysql.com/cluster/1407 for more information.


From here on, I will assume you have a 3rd server acting as the arbitrator. All of my below answers are with regards to that.

> Once server 1 comes
> back up, would it detect the already running
> NDB+API nodes, and just pick them up under the
> management daemon or would it require a restart of
> the NDB and API nodes?

Automatically. No restart required.

> Queries on the database (this is the bit that I'm
> not really sure about at all, so please bear with
> me), do you need to specify some kind of
> connection string on each server when MySQL is
> started to allow queries on the clustered DB?

You have the normal mysqld startup options to use. Particularly the --ndbcluster and --ndb-connectstring options

> If
> the first server is down, the 2nd server will have
> an existing copy of this database running,
> correct?

Yes.

> So the only real change that would be
> noticed is extra load on the server while we bring
> the first one back up?

Yes. Resync'ing is normally quite light on CPU and much more heavy on network i/o.

> If the first server goes down, when it comes back
> up, would it pick up changes that were made on the
> second server even though the management node was
> down?

Yes. You would need to make sure the management node starts first, so you can start the other nodes. The management server is only used to know where the other nodes are and for other such things as backups, status reporting, etc... It doesn't actually do anything with the data itself. That is why you can run it on a tiny machine without any problems.

> Thanks for any help
>
> Chris

Options: ReplyQuote


Subject
Views
Written By
Posted
3084
January 24, 2005 11:42AM
Re: MySQL Cluster configuration.
2101
January 24, 2005 09:49PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.