CPS-1026 Hazelcast Licensing
https://lf-onap.atlassian.net/browse/CPS-1026
Overview
Version : 4.2.x
Hazelcast has 3 license models.
Apache License 2.0
Hazelcast Community License
Hazelcast Enterprise License
Licenses
License Questions (hazelcast.com)
What we will need
Feature | License | Comment |
---|---|---|
Hazelcast Client | Apache 2.0 License | present in hazelcast-all maven artifact |
IMDG | Apache 2.0 License | In memory embedded data grid |
K8S and Docker Integration | Apache 2.0 License | to be able to run in k8s env. |
Spring Module | Apache 2.0 License | to be able to integrate with Spring Boot |
Cloud Discovery Plugin | Hazelcast Community Plugin | to be able to use k8s discovery feature to identify other Hazelcast members |
Separate Maven Artifacts
We have separate maven artifacts for hazelcast open source and enterprise features. Below are the artifacts for the same.
hazelcast-all
<dependencies>
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast-all</artifactId>
<version>4.2.5</version>
</dependency>
</dependencies>
hazelcast-enterprise-all
<repositories>
<!-- You need to define following repository: -->
<repository>
<id>Hazelcast Private Release Repository</id>
<url>https://repository.hazelcast.com/release/</url>
</repository>
<!-- Optional repository if you want to use latest snapshots -->
<repository>
<id>Hazelcast Private Snapshot Repository</id>
<url>https://repository.hazelcast.com/snapshot/</url>
</repository>
</repositories>
<dependencies>
<!-- You also need to define following dependencies: -->
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast-enterprise-all</artifactId>
<version>4.2.5</version>
</dependency>
<!-- Optional dependency for including JavaDoc -->
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast-enterprise-all</artifactId>
<version>4.2.5</version>
<classifier>javadoc</classifier>
</dependency>
</dependencies>
Hazelcast Community License
The Hazelcast Community License is identical to the Confluent Community License 1.0, which includes an Excluded Purpose designed to prevent service wrapping.
“Excluded Purpose” is defined in the license as making available any software-as-a-service, platform-as-a-service, infrastructure-as-a-service or other similar online service that competes with Hazelcast products or services that provide the software.
The software remains open, or source available, in the Hazelcast GitHub repository.
References
https://hazelcast.com/blog/announcing-the-hazelcast-community-license/
https://hazelcast.com/community-license-faq/
https://hazelcast.com/open-source-projects/downloads/
https://docs.hazelcast.com/imdg/4.2/installation/installing-using-maven