Releases: hazelcast/hazelcast-platform-operator
5.12.0
Release Notes
This release adds support to configure User Code Namespaces using the UserCodeNamespace CR.
New Features
- Added support to configure User Code Namespaces using the
UserCodeNamespace
CR. (#1091)
Changes
-
Added "thread name" to the logging pattern. (#1117)
-
Added
DefaultJavaOptions
and appended these options to theJAVA_OPTS
environment variable. (#1114)
Fixed Issues
5.11.0
Release notes
This release introduced Tiered Storage, CP Subsystem, Full and Delta WAN Sync support.
New Features
- Tiered Storage support for Hazelcast and Map CRs (#984)
- CP Subsystem configuration support for Hazelcast CR (#1041)
- Full and Delta WAN Sync support (#977)
- Added ability to configure
consistencyCheckStrategy
in WanReplication CR (#1072) - Introduced localConfig, which was added to the Persistence configuration to restore from existing PVs that are created by the Helm chart or the Operator (#1043)
- Exposed ingress path for external connectivity in the Management Center CR (#989)
- Added Custom Query Attributes into Map CR (#978)
Changes
- Removed the ability to configure
persistence.baseDir
field that is managed by the operator internally (#1028) - Added support for running a Hazelcast cluster with the user-defined
serviceAccount
(#983) - Display HazelcastEndpoint address for NodePort services (#966)
- Enabled the
hazelcast.cluster.version.auto.upgrade.enabled
by default (#957) - Added support for scaling the cluster size using the
scale
subresource (#941) - Added ability to define annotations and labels for Hazelcast resources, which Operator will use when creating new Kubernetes resources (#964)
- Added ‘delete’ Webhook to HotBackup Custom Resource Definition (CRD) for checking to restore references (#981)
- Set the WanConfig name field length limit to prevent port name generation issues (#936)
- Added ability to configure resources field for Operator Agent Sidecar (#980)
- Updated the Platform Operator Agent image version to 0.1.26 (#994)
Fixed Issues
- Fixed Update validation for Management Center
hazelcastClusters[*].tls.secretName
(#1074) - Refactored HotBackup persistence validation to use the
HotBackup
object as the source object of the error instead of theHazelcast
object (#988) - Removed the watching of resources in Operator’s own namespace when watchedNamespaces were specified (#935)
- Fixed that WatchedNamespaces were passed as environment variable (#934)
5.10.0
Release Notes
This release introduces LDAP Security Provider support for Management Center CR.
New Features
- Added LDAP Security Provider support for Management Center CR (#892)
Changes
- Added the ability to configure Interfaces for ClientServer (#920)
- The new
hazelcastendpoint
Custom Resource Definition (CRD) provides a better way to list the external addresses of your Hazelcast cluster (#860) - A
hazelcast-resource
column has been added to theadditionalPrinterColumns
for the wide output of CRDs referencing Hazelcast CR (#899) - Failed HotBackup upload to bucket now correctly handles partially uploaded files and tries to remove them (#885)
- The
v.Err
function was moved tofieldValidator
to remove duplication (#886) - Improved validations for HotBackup, WANReplication, JetJob, JetJobSnapshot, Map, Cache, and Topic. (#877)#876)(#875)(#874)(#873)(#872)(#871)(#859)
Fixed Issues
- WAN Services are now deleted automatically when their corresponding Hazelcast resource is deleted (#862)
- Skip validations on Management Center and Hazelcast deletion (#923)
- Improved CronHotBackup controller behavior when deleting referenced backups (#903)
- Fixed an error that occurred during Hazelcast cluster creation when an empty 'basedir' path was used for backup without '/' (#841)
- Fixed the issue where SQL metadata persistence could change after being enabled (#883)
- The name of a JetJobSnapshot is now taken through the
SnapshotName()
function (#870) - The misleading logs in the external address function have been removed (#897)
- Fix HazelcastEndpoint discovery type issue in Management Center (#895)
- Fixed the generation of compact serialization config (#865)
5.9
Release notes
This release introduced bug fixes and improvements to existing features and UX.
New Features
- Added the ability to configure SQL in the Hazelcast CR. (#831)
- Added the ability to set arbitrary JVM options in the Management Center CR. (#801)
Changes
- Updated the status of a failed JetJob associated with a Hazelcast cluster that is not in a running state. (#799)
- Added webhook validation for WanReplication updates and standardized error messages to ensure consistency with other validation.(#803)
- Changed the Management Center configuration format from XML to YAML. (#823)
- Added IPv6 Support to connect members. (hazelcast/hazelcast-go-client#964)
- Removed
replicaCount
from the Helm chart.(#811)
Fixed Issues
- Assigned a default value for
pvc.requestStorage
(for PVC configuration), and madepvc.accessMode
required. (#837) - Hazelcast
exposeExternally.discoveryServiceType
is now limited to LoadBalancer or NodePort (#829) - The bucket connection errors now are reflected to the Hazelcast Operator CRs.(#828)
- Corrected a typo in the
writeCoalescing
property within the mapStore schema. (#821) - Fixed an issue where the subsequent WAN Replication CR was overwriting the previous batch publishers. (#814)
5.8
Release notes
This release added support for the JetJob CR, JetJobSnapshot CR, custom configurations using ConfigMap, and serialization configuration for the Hazelcast CR. You can now deploy your code from URLs and submit the JetJob CR using an existing JAR file for running the Jet job. Additionally, we enhanced the TLS support.
New Features
- Added the JetJob CR, which provided a way to submit a Jet job using an existing JAR file. (#687)
- Added the ability to configure
instance
andedgeDefaults
Jet configuration parameters in the Hazelcast CR. (#678) - Enabled persistence for jobs to provide Lossless Restart capability. (#730)
- Added the ability to specify the HTTP URLs, where the Pipeline JARs are located, in the Hazelcast CR. (#726)
- Added the JetJobSnapshot CR, which provides a way to export the snapshots of JetJob CRs. (#791)
- Added support for custom configurations using ConfigMap via the
customConfigCmName
field in the Hazelcast CR. (#750) - Added support for serialization configuration for the Hazelcast CR. (#743)
- EventJournal configuration section is now included in both the Map and Cache CRs. (#791)
- Implemented the ability to deploy JARs and other files into members' CLASSPATH using URLs. (#699)
Changes
- The field
licenseKeySecret
in the ManagementCenter CR has been renamed aslicenseKeySecretName
and the fieldsecret
in the HotBackup CR has been renamed assecretName
. (#740) - The fields
licenseKeySecret
andsecret
in the Hazelcast CR have been renamed aslicenseKeySecretName
andsecretName
, respectively. (#735) - Added the Hazelcast CR name validation to conform to the DNS-1035 label. (#734)
- Added support for Hazelcast mTLS client-server communication. You can now enforce the Hazelcast mutual authentication in TLS using the
tls.mutualAuthentication
property. (#722) - Added new field validations for the Management Center and Hazelcast CRs. (#709)
- The separate secret for mTLS has been removed, enabling the utilization of a single secret to store all the required files for the operator and members. (#696)
- Improved validation logic for multiple errors in the Webhooks and Reconciler. (#683)
Fixed Issues
- Jet Job submission and UCD from client/CLC is now possible. (#794)
- Fixed an error in the Map reconciler when nearCache is configured. (#786)
- Added the
spec.jet.bucketConfig.secretName
validation. (#778) - Fixed a bug in Map config persistence caused by MapStore. (#776)
- Added the ability to validate
secretName
of bucket configuration in theHazelcast.Jet
andJetJob
CRs. (#772) - Added validation for
NativeMemory.AllocatorType
whenPersistence
is enabled. (#767) - NativeMemory can now only be used with Hazelcast Enterprise, providing enhanced security and performance. (#759)
- TLS can now be used exclusively with Hazelcast Enterprise version. (#756)
- Enforced validation to require a non-empty secretName for TLS configuration. (#755)
- Fixed a bug that caused Java exceptions when creating a Cache CR with improper
backupCount/asyncBackupCount
values. (#754) - Added
backupCount/asyncBackupCount
validation in Queue creation to prevent Java exceptions. (#753) - Added backupCount/asyncBackupCount validation during MultiMap creation. (#752)
- Added validation for the sum of backupCount and asyncBackupCount for the Map CR. (#749)
- Fixed the TLS handshake error occurring after redeploying cluster with the same name. (#738)
- Converted the Jet configuration fields with no default value to pointer. (#731)
- Removed the TLS enterprise validation in Webhook. (#710)
- Enhanced the JetJob CR state validation to exclusively perform validation when there is a state change in the JetJob CR. (#793)
- Added secret validation of bucket configuration in the JetJob CR. (#787)
- When the Hazelcast CR is deleted, its dependent JetJob CRs are now deleted as well. (#771)
5.7
Release notes
This release introduced the cluster-scoped operator, Native Memory support, and Near Cache support for Map CR. We also added JVM Garbage Collector (GC) configuration, Advanced Network Configuration, Ingress & OCP Route support for Management Center external connectivity.
New Features
- Added support for TLS connections between members using self-signed certificates (#677)
- Added multi-namespace support for the Hazelcast Platform Operator (#591)
- Added off-heap memory (HD memory and native memory) support for the Map CR (#582)
- Added Near Cache support for the Map CR (#661)
- Added the ability to set arbitrary JVM arguments (#653)
- Enabled the configuration of the JVM Garbage Collector (GC) using the Hazelcast Platform Operator (#647)
- Added support for
-XX:{Initial,Max,Min} RAMPercentage
Java options (#567) - Added native memory support for the Cache CR (#645)
- Added Route support for external connectivity to Management Center in OpenShift environments (#631)
- Added Ingress support for external connectivity to Management Center (#608)
- Enabled the configuration of advanced networking options through the Hazelcast Platform Operator (#605)
- Enabled the configuring of Management Center monitoring parameters (#675)
Changes
- Removed support for
hostPath
option for configuring persistent storage in Hazelcast (#607) - Added the default port
5701
to endpoints used in WAN Replication (#662) - WAN Replication is now automatically triggered for newly created Map CRs in the Hazelcast resource (#656)
- Added external Ingress and Route addresses to Management Center (#643)
- Maps without a
publisherID
are now deleted from the WAN status to resolve an issue where the finalizer did not exit successfully (#615) - Updated the cluster service version (CSV) file for multi-namespace and cluster-wide operator support (#599)
- Added the option to create a namespace-scoped cluster role for the Hazelcast Platform Operator (#594)
- Added support for the cluster-scoped operator to Helm chart (#589)
- Added a new installation option for using the Hazelcast Platform Operator with namespace-scoped roles in Helm chart (#588)
- The Webhook installation is now configurable in the Helm chart values field
webhook.enabled
(#586) - Added MTLS secret generation by namespace (#585)
- Removed
Security Context Constraints
from permissions for the Hazelcast Platform Operator and Management Center. The Hazelcast Platform Operator no longer supportshostPath
persistence in OpenShift environments (#581) - Added a connectivity check to the WAN replication CR (#541)
- Changed
podManagementPolicy
toParallel
to improve cluster setup time (#539) - Improved support for the cluster-scoped operator in the phone home package and Kubebuilder roles (#521)
- Updated the Hazelcast Go client to 1.4.0 (#663)
- Updated the default agent version to 0.1.16 (#690)
- Added the watched namespace to phone home data collection (#616)
Fixed Issues
- Default WAN Replication is now available through the Hazelcast service on port 5710. If no
serviceType
is specified during configuration, the value is set toLoadBalancer
(#706) - Added dynamic update functionality to Hazelcast container ports and removed infinite triggers (#692)
- Fixed
CreateOrUpdate
function usage to prevent the accidental deletion of the Map CR (#686) - Made service ports and RBAC permissions updateable when upgrading the Hazelcast Platform Operator version (#676)
- Added validation to the admission WebHook to limit the cluster size to 300 members (#558)
5.6
Release notes
This release introduced the High Availability Mode configuration and custom resources (CRs) for Cache and Queue data structures. We also added persistence support for the Cache CR and introduced a new way to install the Hazelcast Platform Operator, using Helm.
New Features
- Introduced High Availability Mode configuration to create clusters that are resilient to node and zone failures (#538)
- Added support for the Queue CR (#428)
- Added support for the Cache CR (#430)
- Made persistence support for the Cache CR configurable (#474)
- Replaced the
autoForceStart
option withstartupAction
. When applied, startupAction allows you to triggerForce Start
orPartial Start
(#511) - Introduced a new way to install the Hazelcast Platform Operator, using Helm
Changes
- Added persistence for WAN Replication configurations. WAN Replication configurations are now stored in the Hazelcast ConfigMap so that when member containers restart, replication continues (#513)
- Added logic for recreating a Hazelcast client when the client is unable to access a cluster. When the client is unable to connect, the Hazelcast Platform Operator restarts it (#500)
- Updated CR validation to use a webhook. The Hazelcast Platform Operator can now report issues with CRs before they are applied (#492)
- Improved the approach for exposing API fields. Exposed API fields are now more consistent (#498)
- Removed
h.Spec.Persistence.DataLoadTimeoutSec
parameter (#512) - Split
restore
andrestore_local
commands (#471) - Updated the cluster activation logic to use the Go client (#466)
- Added
tilt-debug
support for the remote debugging of local Kubernetes clusters (#528) - Added
ClusterIDs
to Phone Home data (#527) - Updated capabilities of Cluster Service Version (CSV) from Seamless Upgrades to Full Lifecycle. Both options now appear on the OCP OperatorHub dashboard (#476)
Fixed Issues
- A HotBackup can now be created before the Hazelcast cluster is ready (#503)
- Added webhook support for Operator Lifecycle Management (OLM) (#540)
- Sets a Hazelcast resource message when attempting to restore a hot backup that does not exist (#514)
- Multiple CRs for data structures can now be created and then stored correctly in the ConfigMap (#501)
- Added a security context to all containers for hostPath permissions (#485)
- Fixed the incorrect assignment of a variable in WanRep ConfigMap. After a restart, cluster members will now continue replicating map entries (#554)
- Hazelcast member status no longer contains an empty pod name field (#456)
5.5
Release notes
In this release, we introduced custom resources (CRs) for Topic, Multimap, and Replicated Map data structures. We also added EntryListener support for the Map CR.
New features
- Added support for the MultiMap CR (#367)
- Added support for the Topic CR (#371)
- Added support for the ReplicatedMap CR (#394)
- Added support for the CronHotBackup CR(#362)
- Added support for restores using the HotBackup resource name (#401)
- Added configuration for the Jet engine to the Hazelcast CR (#457)
- Added a Map Entry listener that is notified when a map entry is added, removed, updated, evicted, or expired (#408)
- Add support for using WAN Replication with multiple resources (#363)
- Added the
ClearWanQueue
function into theWanReplication
finalizer executor to clean the WAN Replication queue after a CR deletion (#403) - Make
LOGGING_LEVEL
configurable for Hazelcast containers (#352)
Changes
- Moved scheduling of HotBackups from the HotBackup API to the CronHotBackup CR (#362)
- Added a default value to the kind property in the WanReplication CR specification (#374)
- Added a namespaced Role and RoleBinding that are created and passed to the namespaced service account of the Hazelcast cluster to grant secret access (#407)
- Replaced the REST client with Go for triggering backups (#381)
- Changed the default repository to Hazelcast Enterprise when the
licenseKeySecret
is present (#402) - Enabled TLS for the backup server sidecar (#350)
- Added a retry for backup service calls (#434)
- Added
WanReplication
to the API reference (#355) - Refactored the Multimap and Topic CR data structures and Hazelcast’s
configMap
creation (#393) - Upgraded Hazelcast and Management Center versions to 5.1.4
Fixed Issues
- Fixes topic controller import (#387)
- Errors are now handled correctly by the
startBackup()
function. Previously, no errors were returned (#445) - Removed the agent port from the Kubernetes discovery service, to resolve an issue where external IP addresses were not correctly allocated to members (#409)
5.4
Release notes
In this release, we introduced the User Code Deployment feature, which allows you to deploy custom and domain classes to Hazelcast members. We also introduced support for WAN replication.
New features
- Added support for WAN replication (#226)
- Added support for the
EntryProcessor
interface (#334) - Added supported for the
MapStore
/MapLoader
interfaces (#291 ) - Added support for the Executor service (#300)
Changes
- Enabled client-side code deployments (#340)
- Enabled JAR file uploads using ConfigMaps (#304)
- Enabled JAR file downloads into the Java classpath (PVC) (#244)
- Enabled a reference to the
Map
resource so that the resource is updated with configuration changes for WAN replication (#216) - When a Hazelcast CR is marked for deletion, all dependent CRs are also deleted (#314)
- Added support for stopping hot backups gracefully (#318)
- Added configuration to skip checks of the Management Center lock file (#333)
- Added Phone Home data collection as a separate process (#336)
- Added Phone Home data collection for Map CR (#341), WAN replication (#342), user code deployment (#344) and backup and restore (#345)
Fixed Issues
- The "Reconciler error" is no longer thrown at the beginning of the setup process for Hazelcast Platform (#323)
- Fixed the issue with hot backups where the status was set to successful before the upload of the external backup had completed (#242)
- Fixed the issue for HotBackup with BucketURI, which incorrectly triggered a backup upload for the Local backup type (#261)
- Fixed the timeout issue for long-running backup uploads in the platform-operator-agent (#288)
- Fixed an error which occurred when enabling persistence without PVC (#339)
- Fixed an operator issue which caused it to remain idle instead of picking up new CRs (#343)
5.3
Release Notes
In this release, we introduced a custom Resource for Hazelcast maps as well as support for backing up map data to cloud storage.
New features
- Added Map CR (#195)
- Added support for resource limit and request for Hazelcast and MC CRs (#203)
- Added agent support for external Backup and Restore (#191)
Changes
- Added Hazelcast members detailed status (#171)
- Added HotBackup status (#179)
- Added periodic member list and status update (#180)
- Added client connection message to Hazelcast CR status (#176)
- Added restore status Hazelcast CR (#187)
- Added HotBackup pending status (#205)
- Implemented map persistence using Hazelcast ConfigMap (#204)
- Defined restore agent config types (#196)
- Introduced
internal
package (#215) - Refactored logger usage and remove unnecessary logging (#213)
- Used different logger options for local and production environments (#214)
- Set HotBackup to failed when Hazelcast CR does not exist (#222)
- Made
resources
andscheduling
fields updatable for Hazelcast and MC CRs (#227) - Improved client to cluster connection check (#209)
- Added GS and Azure support for backup and restore (#230)
- Upgraded Hazelcast and MC versions to 5.1.2 and 5.1.3 (#241)
Fixed Issues
- Fixed the problem where the LoadBalancer hostname is present but not resolvable by
the clients. Wait for DNS to resolve AWS ELB hostnames (#169) - Fixed wrong duration unit usage in client connectionStrategy, use correct
seconds (#174) - Set HotBackup status to the failure when HotBackup fails (#198)
- Fixed
evictionPolicy
field name (#210) - Fixed the issue that caused scheduled backups to continue even after the
scheduled
field was removed from theHotBackup
custom resource (#218)