How to handle Network Segmentation in Apache Ignite?

Apache Ignite

Segmentation causes

Network partitioning could occur because of a network glitch, node failure or long GC pauses. Because of network partitioning, the cluster could be divided into one or more segments with one or more nodes. These segments could act as independent clusters and may cause data inconsistency if kept working and writing data.

Custom segmentation plugin

Now, let’s see how we can define a custom network segmentation plugin for Apache Ignite.

Embedded Ignite

When Apache Ignite is running in an embedded mode, i.e. inside an already running process, segmentation needs to be handled differently. The default segmentation policy of stopping the process would not be appropriate. We can change that policy to SegmentationPolicy.NOOP and register a listener for the Segmentation event and can provide appropriate custom handling. One of such handling could be to restart the Ignite service which could wait at startup till segmentation is resolved. This could be configured using IgniteConfiguration.setWaitForSegmentOnStart().

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Amar Gajbhiye

Amar Gajbhiye

Technology Enthusiast | Big Data Developer | Amateur Cricketer | Technical Lead Engineer @ eQ Technologic | https://www.bugdbug.com