Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

This article will guide you through the process of installing a Prometheus server in your Kubernetes cluster to monitor HiveMQ. We'll walk you through the steps to configure Prometheus to scrape metrics from HiveMQ, ensuring smooth and efficient monitoring.

\uD83D\uDCD8 Instructions

  1. Add the Prometheus repository to Helm:

    helm repo add 'prometheus-community' 'https://prometheus-community.github.io/helm-charts'
    helm repo update
  2. Get default values and save to the prometheus-values.yaml file:

    helm show values prometheus-community/prometheus > prometheus-values.yaml
  3. Open the prometheus-values.yaml file and disable unnecessary sub-charts by setting prometheus-pushgateway.enabled and alertmanager.enabled to false.

    prometheus-pushgateway:
      ## If false, pushgateway will not be installed
      ##
      enabled: false
    alertmanager:
      ## If false, alertmanager will not be installed
      ##
      enabled: false
  4. Add a scrape job for HiveMQ: In the prometheus-values.yaml file, locate the prometheus.yml section, and add a new scraping job for HiveMQ:

      prometheus.yml:
        ...
        scrape_configs:
        ...
        ...
          - job_name: 'hivemq'
            scrape_interval: 5s
            metrics_path: '/metrics'
            static_configs:
              - targets: [ 'hivemq:9399' ]
  5. Deploy Prometheus in your Kubernetes cluster using the updated configuration file:

    helm upgrade 'prometheus' \
      --install 'prometheus-community/prometheus' \
      --values 'prometheus-values.yaml' \
      --namespace 'hivemq-namespace'
  6. You can access the Prometheus server within your cluster via port 80 using the following DNS name: prometheus-server.hivemq.svc.cluster.local
    To forward the port to the localhost:80, use the following command:

    kubectl port-forward svc/prometheus-server 80:80
  7. To expose the metrics endpoint for Prometheus, update your HiveMQ deployment with monitoring.enabled=true:

    helm upgrade 'hivemq' --install 'hivemq/hivemq-operator' \
      --values 'hivemq-values.yaml' \
      --set 'monitoring.enabled=true' \
      --namespace 'hivemq-namespace'
  8. If the HiveMQ log is set at the DEBUG level, Prometheus’s activity can be verified:

    DEBUG - Received HTTP-Get-Request from Prometheus to scrape metrics from HiveMQ: Request(GET http://10.244.5.7:9399/metrics)@557cfc7a

In this article, we've outlined the steps to set up Prometheus in your Kubernetes cluster for monitoring HiveMQ. You've learned how to configure Prometheus, enable scraping for HiveMQ, and access the Prometheus server for effective monitoring of your HiveMQ deployment.

  • No labels