cPanelDavidG

Technical Product Specialist
Nov 29, 2006
11,216
12
313
Houston, TX
cPanel Access Level
Root Administrator
Last edited:

cPanelKenneth

cPanel Development
Staff member
Apr 7, 2006
4,608
77
308
cPanel Access Level
Root Administrator
ok, so that's not clustering. It's just using a remote server.
A true MySQL cluster (what MySQL considers clustering) needs setup manually. Once that is done, the Remote MySQL Setup in WHM can be used to interface the cPanel server to one of the SQL nodes in the cluster. In a MySQL cluster, it's the data nodes that are propagated to other member servers (other data nodes). The SQL Node can draw the data from one or more data nodes.

Update:

Please note that using the Remote MySQL Setup screen in WHM will simplify integration of the cluster, but it does so with two glaring caveats:

1. the function installs maintenance scripts to keep MySQL updated
2. the scripts install the version of MySQL we distribute

Both of these will cause problems in a MySQL cluster. After the integration portion is done, one will need to undo the crontab changes and the MySQL install performed (if MySQL was installed).
 
Last edited:

Somethingblue

Member
Sep 28, 2005
16
0
151
I'm having some issues integrating a MySQL cluster with cPanel.

Do any of the nodes in the MySQL cluster need to have cPanel installed?

As of now I've got the MySQL Cluster setup just like this and as outlined here everything seems to be working properly on the cluster.

When attempting to automatically integrate a cPanel server to the cluster, it says it completes successfully. However when creating a DB on the cPanel server, the database is either never created anywhere or it is created on the cPanel server (as opposed to one of the data nodes on the cluster). Either way the DB is not listed in cPanel.

The cPanel server has no issues connecting to the cluster manually and vise-versa.

Has anyone gotten this working properly and have any ideas on what the issue may be? If you need any further information let me know.

Thanks.
 

cPanelKenneth

cPanel Development
Staff member
Apr 7, 2006
4,608
77
308
cPanel Access Level
Root Administrator
I'm having some issues integrating a MySQL cluster with cPanel.

Do any of the nodes in the MySQL cluster need to have cPanel installed?

As of now I've got the MySQL Cluster setup just like this and as outlined here everything seems to be working properly on the cluster.

When attempting to automatically integrate a cPanel server to the cluster, it says it completes successfully. However when creating a DB on the cPanel server, the database is either never created anywhere or it is created on the cPanel server (as opposed to one of the data nodes on the cluster). Either way the DB is not listed in cPanel.

The cPanel server has no issues connecting to the cluster manually and vise-versa.

Has anyone gotten this working properly and have any ideas on what the issue may be? If you need any further information let me know.

Thanks.
Since you are using an actual cluster, using the Remote MySQL setup interface in WHM is not recommended. A key reason is that interface installs some maintenance scripts on the remote server to keep MySQL up to date. This will easily result in the MySQL engine on the server thus configured to have a different version of MySQL than the other servers.


Also, a MySQL cluster will only benefit you if:

1. Applications create database tables using the NDB table type. This is the only table type that has data shared among the data nodes. Data for other table types will only reside on the SQL node where the table was created. In other words, you cannot cluster MyISAM, InnoDB or the other non-NDB table types.

2. All applications accessing the cluster use transactions. This is how a MySQL cluster guarantees data synchronization, among other reasons.
 

Somethingblue

Member
Sep 28, 2005
16
0
151
Since you are using an actual cluster, using the Remote MySQL setup interface in WHM is not recommended. A key reason is that interface installs some maintenance scripts on the remote server to keep MySQL up to date. This will easily result in the MySQL engine on the server thus configured to have a different version of MySQL than the other servers.


Also, a MySQL cluster will only benefit you if:

1. Applications create database tables using the NDB table type. This is the only table type that has data shared among the data nodes. Data for other table types will only reside on the SQL node where the table was created. In other words, you cannot cluster MyISAM, InnoDB or the other non-NDB table types.

2. All applications accessing the cluster use transactions. This is how a MySQL cluster guarantees data synchronization, among other reasons.
Thank you for the very helpful heads up. I thought based off the response to SoftDux that this implementation/integration would work.

cpanelkenneth said:
A true MySQL cluster (what MySQL considers clustering) needs setup manually. Once that is done, the Remote MySQL Setup in WHM can be used to interface the cPanel server to one of the SQL nodes in the cluster.
...
To clarify, cPanel can be integrated with a standalone non-cPanel server running MySQL but not an actual MySQL cluster. Is that right? Or is there a non-NDB (i.e. MyISAM) cluster type that I'm totally missing?
 
Last edited:

cPanelKenneth

cPanel Development
Staff member
Apr 7, 2006
4,608
77
308
cPanel Access Level
Root Administrator
Thank you for the very helpful heads up. I thought based off the response to SoftDux that this implementation/integration would work.
After my response, I did more research as part of the presentation I gave at the cPanel 2008 conference. I'll go back and update my comment.

To clarify, cPanel can be integrated with a standalone non-cPanel server running MySQL but not an actual MySQL cluster. Is that right? Or is there a non-NDB (i.e. MyISAM) cluster type that I'm totally missing?
Yes, it can be integrated with a stand alone server, whether that server is running MySQL, or is part of some kind of cluster.

There is no MySQL cluster that supports propagating any table type other than NDB. Usually what people use is Replication, because your table type doesn't matter. InnoDB can pose some initial challenges during the replication setup (for pre-existing tables and data), but once migrated to the replication master, all should be fine.
 

vince512

Active Member
Nov 16, 2003
35
0
156
There is no MySQL cluster that supports propagating any table type other than NDB. Usually what people use is Replication, because your table type doesn't matter. InnoDB can pose some initial challenges during the replication setup (for pre-existing tables and data), but once migrated to the replication master, all should be fine.
I am looking at moving MySQL off of 9 of our cPanel servers and was researching MySQL clusters. After reading a lot of your responses, it sounds like MySQL clustering is not the way to go since (assuming I understand you correctly) in a mysql cluster of 3 servers, one would be the mysql server and the others would be used for NDB data.

So in order to accomplish what I am trying to do, would it make more sense to just do the following:

Remote MySQL Server 1: will service servers cp1, cp2 cp3
Remote MySQL Server 2: will service servers cp4, cp5, cp6
Remote MySQL Server 3: will service servers cp7, cp8, cp9

I appreciate your opinion on this...

Best Regards,
Vince
 

cPanelKenneth

cPanel Development
Staff member
Apr 7, 2006
4,608
77
308
cPanel Access Level
Root Administrator
I am looking at moving MySQL off of 9 of our cPanel servers and was researching MySQL clusters. After reading a lot of your responses, it sounds like MySQL clustering is not the way to go since (assuming I understand you correctly) in a mysql cluster of 3 servers, one would be the mysql server and the others would be used for NDB data.

So in order to accomplish what I am trying to do, would it make more sense to just do the following:

Remote MySQL Server 1: will service servers cp1, cp2 cp3
Remote MySQL Server 2: will service servers cp4, cp5, cp6
Remote MySQL Server 3: will service servers cp7, cp8, cp9

I appreciate your opinion on this...

Best Regards,
Vince
One thing to keep in mind with that setup is possible name collisions. Meaning all user names on cp1, cp2 and cp3 need to be unique. What is the desired goal of moving MySQL off the cPanel servers?
 

vince512

Active Member
Nov 16, 2003
35
0
156
One thing to keep in mind with that setup is possible name collisions. Meaning all user names on cp1, cp2 and cp3 need to be unique. What is the desired goal of moving MySQL off the cPanel servers?
I plan on doing this to the shared hosting servers and use a web hosting script to generate and track all of the usernames. WHM users will be on seperate servers

Well I am looking at clustering all of the services as cPanel continues to make the ability available to (looking forward to see what version 12 brings). So far we clustered the dns servers which worked out great and wanted to do the same now for the MySQL services.