Folks, As we are getting to the conclusion on the discussion about cluster automatic activation proposal [1] I would like to propose one more thing that may also be useful here.
In addition to options of creating BLT (BTW, any ideas of a better name for the concept are welcome; feel free to send a message to [1]) on first cluster activation or preparing it with UI tools user will be allowed to prepare a descriptor of desired BLT and provide it through java API or configuration file. Workflow is as follows: 1. User specifies a descriptor for desired baseline topology. E.g. API like this may be used: Ignite.activation(). setBaselineTopologyDescriptor(BaselineTopologyDescriptor descriptor). 2. Descriptor contains list of IP addressed (address ranges) and ports where cluster nodes are expected to start. List may be continuous or may contain excludes. 3. As this descriptor may be large and is used only once through a lifetime of the cluster I suggest to provide it either through java API or in a separate file but not in a regular configuration file. 4. Descriptor may be set to a cluster of even one node; after being set, it will verify topology on event from each node joined the cluster and activate cluster/create BLT automatically when desired topology reached. 5. When cluster already has a BLT in metastore, any descriptors from API calls or files are ignored. This feature will also provide us a way to notify user when some unexpected nodes are joining the cluster. E.g. we may define a separate event and fire it each time when node unexpected by topology descriptor joins the cluster. Thoughts? [1] http://apache-ignite-developers.2346864.n4.nabble.com/ Cluster-auto-activation-design-proposal-tt20295.html Thanks, Sergey.