Infinispan Cluster Service

Spring Boot auto-configuration for the Camel Infinispan Cluster Service.

This starter provides leader election and cluster coordination for Camel routes using Infinispan as the distributed backend. It integrates with Camel’s CamelClusterService SPI so you can use the clustered route controller to ensure only one instance of a route runs across a cluster.

Maven coordinates

<dependency>
    <groupId>org.apache.camel.springboot</groupId>
    <artifactId>camel-infinispan-cluster-service-starter</artifactId>
</dependency>

Usage

To use this cluster service, enable the clustered route controller and configure routes with routePolicy=ClusteredRoutePolicy:

# enable the cluster service
camel.cluster.infinispan.remote.enabled = true

# enable the clustered route controller
camel.clustered.controller.enabled = true

Spring Boot Auto-Configuration

The starter supports 17 options, which are listed below.

Name Description Default Type

camel.cluster.infinispan.remote.attributes

Custom service attributes.

Object>

camel.cluster.infinispan.remote.cache-container

RemoteCacheManager

camel.cluster.infinispan.remote.cache-container-configuration

Configuration

camel.cluster.infinispan.remote.configuration-properties

String>

camel.cluster.infinispan.remote.configuration-uri

String

camel.cluster.infinispan.remote.enabled

Sets if the zookeeper cluster service should be enabled or not, default is true.

true

Boolean

camel.cluster.infinispan.remote.hosts

String

camel.cluster.infinispan.remote.id

Cluster Service ID

String

camel.cluster.infinispan.remote.lifespan

Long

camel.cluster.infinispan.remote.lifespan-time-unit

TimeUnit

camel.cluster.infinispan.remote.order

Service lookup order/priority.

Integer

camel.cluster.infinispan.remote.password

String

camel.cluster.infinispan.remote.sasl-mechanism

String

camel.cluster.infinispan.remote.secure

Boolean

camel.cluster.infinispan.remote.security-realm

String

camel.cluster.infinispan.remote.security-server-name

String

camel.cluster.infinispan.remote.username

String