HiveMQ Platform Operator for Kubernetes 1.3.0 Release
The HiveMQ Team is excited to announce the release of Kubernetes Operator 1.3.0. This release updates the HiveMQ Platform Operator process to Java 21, removes the need for a rolling restart to update the HiveMQ Platform Init App, and provides numerous useful bug fixes.
Highlights
- Simplified updates for the HiveMQ Platform Init App
- HiveMQ Platform Operator support for Java 21
Simplified runtime updates for the HiveMQ Platform Init App
Starting with HiveMQ Platform Operator 1.3.0, the HiveMQ Platform Init App handles updates during runtime without a rolling restart.
How it works
The HiveMQ Platform Operator periodically checks the version of the HiveMQ Platform Operator Init App on running HiveMQ Platform pods.
If the operator detects an outdated init app, the operator enters the new UPDATE_INIT_APP
state and sends update requests to the pods.
The pods then download the HiveMQ Platform Operator Init App JAR file via the operator service from the operator pod. After a successful download, the HiveMQ Platform Operator Init App automatically updates itself, without restarting the pod or the HiveMQ Platform process.
Once the HiveMQ Platform Operator has verified the new version of the init app, the operator switches back to the RUNNING
state.
IMPORTANT: Check to make sure your Kubernetes network policy allows network traffic between your HiveMQ Platform and HiveMQ Platform Operator pods.
How it helps
A core focus of the HiveMQ Platform Operator design is to minimize the need for rolling restarts. This is especially pertinent during updates to the operator itself. Through the runtime init app update, we ensure that the init app remains current whenever the operator is updated. The improved process guarantees that new features, improvements, and bug fixes are seamlessly integrated without causing any disruption to the ongoing operation of the HiveMQ Platform.
HiveMQ Platform Operator Updates to Java 21
The HiveMQ Platform Operator utilizes the Quarkus Java framework. In a recent development, Quarkus has transitioned to Java 17 as its minimum JDK requirement. Starting with HiveMQ Platform Operator 1.3.0, we use Java 21 for the main operator application. Java 21 delivers significant performance, stability, and security updates, various bug fixes, and an array of new features and enhancements. However, to support legacy platform releases, compatibility with Java 11 will be maintained for the HiveMQ Platform Operator Init App that runs within HiveMQ Platform pods.
How it helps
Oracle has announced long-term support for Java 21 at least until January 2032 and OpenJDK 21 will be a long-term support (LTS) release from most vendors. These extended support periods give organizations greater flexibility to keep applications in production longer, with minimal maintenance, and less migration pressure.
Additional Features and Improvements
HiveMQ Platform Operator for Kubernetes Helm charts:
- Added the ability to configure the private key password for Java KeyStores (JKS) when securing MQTT, WebSocket, and Control Center listeners.
- Fixed an issue when configuring a Pod Security Context with
runAsUser=0
that continued to apply the default user185
(for the HiveMQ Platform Operator) and10000
(for the HiveMQ Platform).
HiveMQ Platform Operator for Kubernetes:
- Updated the HiveMQ Platform Operator to Java 21.
- Added the ability to update the HiveMQ Platform Operator Init App during runtime without initiating a rolling restart of the HiveMQ Platform.
- Added a new HTTP endpoint to the operator that provides the Platform Operator Init App JAR archive for downloads.
- Fixed an issue with the Privilege Step-Down when using the official HiveMQ Platform 4.28.0 container images.
- Fixed an issue that could cause the HiveMQ Platform Operator Init App to keep a pod running after the operating system has terminated the HiveMQ Platform.
- Added verification that prevents the start of the HiveMQ Enterprise Extension for Kafka if the current configuration is invalid or does not define any Kafka clusters, mappings, or transformers.
- Fixed an issue when custom extensions are configured with a URI that is redirected with HTTP status code 301 or 302.
Get Started Today
To get started with the operator, see our HiveMQ Platform Operator Quick Start Guide.
To update from a previous version of the Platform Operator for Kubernetes, you need to update your HiveMQ Platform custom resource definition. For simple step-by-step instructions, see our Upgrade Guide.
To learn more about our new operator, see HiveMQ Platform Operator for Kubernetes.
HiveMQ Team
The HiveMQ team loves writing about MQTT, Sparkplug, Industrial IoT, protocols, how to deploy our platform, and more. We focus on industries ranging from energy, to transportation and logistics, to automotive manufacturing. Our experts are here to help, contact us with any questions.