Kubernetes - assign fixed resources for pods

HiveMQ follows a cloud-native design and is therefore well equipped to run in Containers like Docker.
HiveMQ is also a high-performance, high-reliability product that requires secured resource access to work at its best.
Therefore we strongly recommend assigning fixed resource values to your pods in k8s deployments.
In case you have your own pod manifests then follow this example configuration:

resources: requests: memory: "8GB" cpu: "4000m" limits: memory: "8GB" cpu: "4000m"

 

In case you are using the HiveMQ operator helm charts then please follow the below example configuration in your values.yaml:

hivemq: cpu: 4 memory: 4Gi
  • Use full CPU cores (multiples of 1000)

  • 4 CPU and 4 GB RAM is the minimum requirement

  • Make sure to use the same value for requests and limits

Setting a proper limits is also important for license considerations, as the HiveMQ pod will otherwise view all CPUs of the K8s node is deployed on as the used CPU count.