0

I've installed RabbitMQ on kubernetes(k3s) on ARM (Oracle OCI Ampere A1) using the community docker image.

I'm seeing very regular periodic CPU usage spikes (two series of spikes, both with a period of 60 seconds and offset by about 20 or so seconds). Is this normal? Is there something I can do to reduce these?

Netdata CPU Utilization for the RabbitMQ Namespace

This is an entirely empty installation of RabbitMQ, I haven't even tried to connect to it. I'm concerned that these CPU usage spikes might get worse when there are messages actually flowing through rabbitmq.

The configuration I'm using is:

enabled_plugins: |
  [rabbitmq_peer_discovery_k8s, rabbitmq_management, rabbitmq_prometheus].
rabbitmq.conf: |
  cluster_formation.peer_discovery_backend = k8s
  cluster_formation.k8s.host = kubernetes.default.svc.devcluster.oci.domain
  cluster_formation.k8s.address_type = hostname
  cluster_formation.k8s.service_name = rabbitmq-internode-svc
  queue_master_locator=min-masters

I want to be able to scale it up later, but presently I have only one RabbitMQ pod.

I also have some probes configured from k3s with a 60s period, could these be the cause of this CPU usage? If I remember correctly (I had written the k3s service many months ago now), these were based on RabbitMQ recommendations for k8s deployments.

  livenessProbe:
      exec:
        command: ["rabbitmq-diagnostics", "status"]
      initialDelaySeconds: 60
      periodSeconds: 60
      timeoutSeconds: 15
  readinessProbe:
      exec:
        command: ["rabbitmq-diagnostics", "ping"]
      initialDelaySeconds: 20
      periodSeconds: 60
      timeoutSeconds: 10

0 Answers0