I'm trying to auto start of MySQL Cluster.
There are several nodes and several distinct processes, and I must start them in the proper order.
Firstly, I must start ndb_mgmd on management nodes, then I must be sure that it is working.
After that, I must run ndbmtd on data nodes, again ensuring that it's working. After, all usual mysql on MySQL servers.
For now, I have only 3 nodes (1 as management and MySQL and 2 as data nodes), and I can make my own little script. But if there are ever more servers and nodes, how I can do this?
Are there any tools for such problems? I know about chef and puppet for configuration. You can give different roles to different nodes, and they will be configured in right way. Can I take something (may be not these tools) and assign roles/configs to servers like "server of first type must run this process if all servers of second type are running process2"?
I'm not looking for things like scripts from SeveralNines, I want to know about general ways to solve such problems.