Devin Reade <gdr@...> writes: > > --On Wednesday, July 20, 2011 09:19:33 AM +0000 pskrap <pskrap@...> > wrote: > > > I have a cluster where some of the resources cannot run on the same node. > > All resources must be running to provide a functioning service. This > > means that a certain amount of nodes needs to be up before it makes > > sense for the cluster to start any resources. > > Without knowing anything about your application, I would tend to question > this statement. Is it true that you must not start *any* resources before > you have enough nodes, or is sufficient to say that the application > is not considered up until all resources are started? It may not > make sense to run any, but does it do any harm? > > If you *can* start at least some resources before all nodes are available, > then I would expect that you could get by with defining colocation > constraints to ensure that some resources don't run on the same nodes, > perhaps augmenting things with some order constraints if necessary. > > If your applications die or do other horrible stuff when only some subset > are running then I'd have a talk with your application developers > as it sounds like a larger robustness problem. > > Devin >
No, there are no crash issues etc when all resources are not running. The application is just not usable until all resources are started. As for the harm, the resources which have constraints preventing them from running will fail, but I guess they will recover as more nodes are added. The harm is mostly in the fact that starting nodes one by one will cause the resources to be unevenly distributed over the nodes since everything will start on the nodes in the order they are installed. I know I can give a preferred node to a resource and allow it to relocate when it becomes available. However, this application provides a real-time service so I only want resources to relocate when it is absolutely necessary. Therefore I have given the resources a preferred node, but do not allow them to relocate when it becomes available. So I guess the overall harm is limited even though it exists. I was just looking for a cleaner startup for the system. Since you did not mention any way to do what my question was about I assume it is currently not possible to do what I asked for. I do think such an option would be useful though. Logically it does not make sense for the cluster to be starting resources for an application before the cluster have enough nodes for the application to be able to run. _______________________________________________ Pacemaker mailing list: Pacemaker@oss.clusterlabs.org http://oss.clusterlabs.org/mailman/listinfo/pacemaker Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker