Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

High-level work decomposition

Preparation phase

Introduce new attributes to label Ignite nodes related to different DCs, develop components necessary for operations in MultiDC environment (TopologyValidator, SegmentationResolver with suitable segmentation policy, tooling for managing stretched cluster).

Dicsovery SPI improvements

...

  1. No more than 2 cross-DC connections between two datacenters are allowed in the ring.
  2. In order to achive the first requirement a join protocol should be modified to support adding a node at an arbitrary point in the ring.
  3. To enable the second requirement new node attribute is introduced labeling the node as belonging to a particular DC (e.g. NODE_DC with String values).
  4. TcpDiscoveryNode properties order and internalOrder are reworked to protect higher-level code from changed behavior and to preserve as much internal discovery invariants as possible (to avoid throwing away battle-tested code).

At the same time any improvements to TcpDiscoverySpi should not affect single-DC installations (no additional complexity of configuration or performance penalty is introduced).

...