Skip to content

Configure RabbitMQ to use my own PVC #1976

Description

Is your feature request related to a problem? Please describe.

Seems that RabbitMQCluster Operator simply ignores any existing PVC and tries to create its own.

I have attempted several variations of the yaml file to get this working

apiVersion: rabbitmq.com/v1beta1
kind: RabbitmqCluster
metadata:
  labels:
    app: rabbitmq
  name: rabbitm
  namespace: mynamepsace
spec:
  replicas: 1
  image: rabbitmq:latest
  service:
    type: ClusterIP
  persistence:
    existingClaim: pvclaim-winrabbitmq
  resources:
    requests:
      cpu: 256m
      memory: 1Gi
    limits:
      cpu: 256m
      memory: 1Gi
  rabbitmq:
    additionalPlugins:
      - rabbitmq_management
      - rabbitmq_peer_discovery_k8s
    additionalConfig: |
      default_user = admin
      default_pass = adminpassword
    advancedConfig: ""

This is default persistence bit.

  persistence:
    storageClassName: ""
    storage: 10Gi

I have tried other things like

  persistence:
    existingClaim: 
          ClameName: pvclaim-winrabbitmq

I also tried adding in the volume

  volumes:
  - name: pvc-mount
    persistentVolumeClaim:
      claimName: pvclaim-winrabbitmq

There doesn't appear to be any configurable option here for an existing PVC that we have setup using NFS or CSi to ensure the PVC is persistent between pod restarts.

Describe the solution you'd like

I want to take my persistent volume (PV) and claim (PVC) created before hand
I already have the PV
example PVC:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvclaim-winrabbitmq
spec:
  storageClassName: ""
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 10Gi
  volumeName: pv-winrabbitmq

and tell RabbitMQCluster Operator to stop creating the the one called "persistence-rabbitmq-server-0" which fails because I need persistence not local storage class

Describe alternatives you've considered

I was using bitnami charts previously but now they are giving us imagepullback errors.
Arrow does not respond in anyway or form to the access requests on the website, and if I phone them they seem unable to help, no one there has ever heard of bitnami or rabbitmq, so therefore they are seemingly unable to assist

I have also tried adding the legacy repo and that also doesn't work and imagepullback errors is all you get.

Seems there is no paid or free way to make this work properly.

This was the best solution and it doesn't work anymore...

Our Helm deployment looked like this:

helm install rabbitmq-alpha bitnami/rabbitmq --namespace ourapp-alpha \
--set replicaCount=1 \
--set volumePermissions.enabled=true \
--set clustering.forceBoot=true \
--set podManagementPolicy=Parallel \
--set auth.username=admin,auth.password=adminpassword \
--set namespaceOverride=ourapp-alpha \
--set readinessProbe.enabled=false \
--set service.type=LoadBalancer \
--set persistence.existingClaim=pvclaim-winrabbitmq-alpha

Maybe some better documentation for NON developers (IT Admins) to be able to setup and manage RabbitMQ?

Additional context

https://www.rabbitmq.com/blog/2020/08/10/deploying-rabbitmq-to-kubernetes-whats-involved#use-a-persistent-volume-for-node-data

we do not want to use this for persistence either. Quite simply it doesn't fit the environment.

Activity

  1. ghost added
    enhancementNew feature or request
    on Oct 21, 2025
  2. mkuratczyk commented on Oct 21, 2025

    @mkuratczyk
    Contributor

    if I remember correctly, the Operator will use the existing PVC as long as it has the expected name. So if you create your PVC with the same name that the Operator would have created, it should be used.

    Can you explain what you mean by "we do not want to use this for persistence either. Quite simply it doesn't fit the environment." What is it that you don't want for persistence? Persistent disks? That sounds strange...

  3. locked and limited conversation to collaborators on Oct 23, 2025
  4. converted this issue into a discussion #1979 on Oct 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions