Install Operator kubectl apply -f "https://github.com/rabbitmq/cluster-operator/releases/latest/download/cluster-operator.yml" # namespace/rabbitmq-system created # customresourcedefinition.apiextensions.k8s.io/rabbitmqclusters.rabbitmq.com created # serviceaccount/rabbitmq-cluster-operator created # role.rbac.authorization.k8s.io/rabbitmq-cluster-leader-election-role created # clusterrole.rbac.authorization.k8s.io/rabbitmq-cluster-operator-role created # rolebinding.rbac.authorization.k8s.io/rabbitmq-cluster-leader-election-rolebinding created # clusterrolebinding.rbac.authorization.k8s.io/rabbitmq-cluster-operator-rolebinding created # deployment.apps/rabbitmq-cluster-operator created Define an instance Mqinstance.yaml: apiVersion: rabbitmq.com/v1beta1 kind: RabbitmqCluster metadata: name: production-ready spec: replicas: 1 resources: requests: cpu: 1 memory: 1Gi limits: cpu: 1 memory: 1Gi rabbitmq: additionalConfig: | cluster_partition_handling = pause_minority disk_free_limit.relative = 1.0 collect_statistics_interval = 10000 persistence: storageClassName: csi-rbdfs-sc storage: "5Gi" affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: app.kubernetes.io/name operator: In values: - production-ready topologyKey: kubernetes.io/hostname override: statefulSet: spec: template: spec: containers: [] topologySpreadConstraints: - maxSkew: 1 topologyKey: "topology.kubernetes.io/zone" whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/name: production-ready