Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Hazelcast-Based Discovery Provider

Revision as of 23:57, 14 October 2019 by Slewis.composent.com (Talk | contribs) (Hazelcast Discovery Provider Configuration Properties)

A new ECF discovery provider has been created (September 15, 2019), based upon the Hazelcast communications library. See the Hazelcast website for technical specifics about Hazelcast and configuration and API documentation.

Getting Hazelcast Discovery Provider

The Hazelcast ECF Discovery provider repository is here.

A binary build of the Hazelcast Discovery Provider and Hazelcast Distribution Provider are available here.

Karaf Install

A Karaf features file karaf-features.xml (with both Distribution and Discovery features) is available in karaf-features.xml.

Hazelcast Discovery Provider Configuration Properties

The ECF Hazelcast Discovery Provider is configured via two system properties.

System Property Name Description Type Default value
ecf.discovery.hazelcast.configURL File to use for Hazelcast group configuration for remote service discovery. In addition to normal URLs such as http://host.com/path/to/hazelcast.xml, or https://securehost.com/path/to/myhazelcast.xml, this property supports a values with a 'bundle' protocol to allow references Hazelcast config files from within other bundles within a given framework.

For example: -Decf.discovery.hazelcast.configURL=bundle:my.org.bundle.symbolic.id/path/to/hc-config-file.xml. If given as the value of this property, at discovery start time, the bundle my.org.bundle.symbolic.id (latest version) will be consulted and the contents within the bundle of an entry with the path /path/to/hc-config-file.xml will be read and used as for the Hazelcast config.
NOTE: For discovery to work, each node must use the same Hazelcast discovery config.

String None - If not specified, uses /hc-discovery-config.xml file inside of bundle org.eclipse.ecf.discovery.provider.hazelcast. This config uses Hazelcast multicast group: 224.2.2.5 and port: 54327. See here for entire default config.
ecf.discovery.hazelcast.enabled Flag to enable/disable Hazelcast Discovery via bundle org.eclipse.ecf.discovery.provider.hazelcast. True/enabled by default. Setting system property to anything other than 'true' will disable the ECF Hazelcast Discovery provider. Boolean true

Note that these values and defaults are also defined in the source code in the org.eclipse.ecf.provider.internal.jms.hazelcast.Activator class available at githhub here.

Back to the top