feat(helm): add Helm chart for ActiveMQ broker deployment#1761
feat(helm): add Helm chart for ActiveMQ broker deployment#1761jbonofre wants to merge 2 commits intoapache:mainfrom
Conversation
Add a production-ready Helm chart for deploying ActiveMQ on Kubernetes, including StatefulSet with persistent KahaDB storage, multi-protocol services (OpenWire, AMQP, STOMP, MQTT, WebSocket), security hardening, Ingress, HPA, PDB, Prometheus ServiceMonitor, and example values files.
jeanouii
left a comment
There was a problem hiding this comment.
This is all out of my skills to be honest. I just asked stupid questions and did some sanity check. Sorry to not be more useful.
| image: {{ include "activemq.image" . }} | ||
| imagePullPolicy: {{ .Values.image.pullPolicy }} | ||
| env: | ||
| - name: ACTIVEMQ_CONNECTION_USER |
There was a problem hiding this comment.
I double checked all variables and they are all valid in the docker image for activemq
|
Awesome @jbonofre taking a look right now |
| name: activemq | ||
| description: Apache ActiveMQ - the most popular open source, multi-protocol, Java-based message broker | ||
| type: application | ||
| version: 6.3.0-SNAPSHOT |
There was a problem hiding this comment.
Are we launching this on 6.3? Not back porting it to 6.2?
There was a problem hiding this comment.
I'm fine to create a backport on 6.2.x branch.
That said, regarding the number of improvements for 6.3.0, I will focus on 6.3.0 as first citizen 😄
|
|
||
| image: | ||
| # -- Container image repository | ||
| repository: apache/activemq-classic |
There was a problem hiding this comment.
if i run helm install my-activemq ./helm/activemq it will run the chart appVersion which is now set to 6.3 which doesn't exist on dockerhub yet. Should we change doc and set the appVersion to 6.2?
There was a problem hiding this comment.
Good catch, also the repository is not the one we should use.
HPA scaling creates independent broker instances each with their own KahaDB store and no shared state. The KahaDB file lock only guarantees a single process per volume, not cross-pod coordination. This leads to message loss when producers and consumers connect to different pods.
Add a production-ready Helm chart for deploying ActiveMQ on Kubernetes, including StatefulSet with persistent KahaDB storage, multi-protocol services (OpenWire, AMQP, STOMP, MQTT, WebSocket), security hardening, Ingress, HPA, PDB, Prometheus ServiceMonitor, and example values files.
@kenliao94 do you mind to review ? It's a merge between what you did and what I did :)