当前位置: 首页 > 知识库问答 >
问题:

RabbitMQ cluster-operator在Kubernetes中不起作用

卫泉
2023-03-14

RabbitMQ集群运算符在kubernetes中不起作用。
我有一个由3个节点组成的kubernetes集群1.17.17。我和一个牧场主一起部署的。根据此说明,我安装了RabbitMQ cluster-operator:https://www.RabbitMQ.com/kubernetes/operator/quickstart-operator.html
kubectl apply-f“https://github.com/RabbitMQ/cluster-operator/releases/lates/download/cluster-operator.yml”
好!但是..我根据文档为实例创建了这个非常简单的配置:

apiVersion: rabbitmq.com/v1beta1
kind: RabbitmqCluster
metadata:
  name: rabbitmq
  namespace: test-rabbitmq

我有错误:在为pod“rabbitmq-server-0”运行“volumeBinding”筛选器插件时出错:pod已解除绑定立即PersistentVolumeClaims

之后,我检查了:
Kubectl get StorageClasses
,发现没有资源!我添加了以下StoreGleclass:

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer

创建pv和PVC:

kind: PersistentVolume
apiVersion: v1
metadata:
  name: rabbitmq-data-sigma
  labels:
    type: local
  namespace: test-rabbitmq
  annotations:
    volume.alpha.kubernetes.io/storage-class: rabbitmq-data-sigma
spec:
  storageClassName: local-storage
  capacity:
    storage: 3Gi
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Recycle
  hostPath:
    path: "/opt/rabbitmq-data-sigma"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: rabbitmq-data
  namespace: test-rabbitmq
spec:
  storageClassName: local-storage
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 3Gi

FailedBinding   no persistent volumes available for this claim and no storage class is set  

请帮助理解这个问题!

共有1个答案

白弘伟
2023-03-14

您可以配置动态卷配置,例如,如本文所述的动态NFS配置,也可以手动创建persistentvolume(不推荐使用这种方法)。

我确实建议您配置动态配置-这将允许您自动生成persistentvolumes

正如我提到的,这不是推荐的方法,但当我们想要快速检查某些东西而不配置额外的组件时,它可能很有用。

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Recycle
  hostPath:
    path: /mnt/rabbitmq # data will be stored in the "/mnt/rabbitmq" directory on the worker node
    type: Directory
# kubectl get pv,pvc -A
NAME                   CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                                         STORAGECLASS   REASON   AGE
persistentvolume/pv    10Gi       RWO            Recycle          Bound    test-rabbitmq/persistence-rabbitmq-server-0                           11m


NAMESPACE       NAME                                                  STATUS   VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS   AGE
test-rabbitmq   persistentvolumeclaim/persistence-rabbitmq-server-0   Bound    pv       10Gi       RWO                           11m

# kubectl get pod -n test-rabbitmq
NAME                READY   STATUS    RESTARTS   AGE
rabbitmq-server-0   1/1     Running   0          11m
 类似资料:
  • 本文介绍如何在 Kubernetes 上部署 TiDB Operator。 准备环境 TiDB Operator 部署前,请确认以下软件需求: Kubernetes v1.12 或者更高版本 DNS 插件 PersistentVolume RBAC 启用(可选) Helm 版本 >= 2.11.0 && < 3.0.0 && != 2.16.4 部署 Kubernetes 集群 TiDB Oper

  • 我有一些 在量角器中,我们搜索并找到元素,检查文本是否符合我们的期望,然后对该元素调用。测试在Chrome中运行良好,但在IE中就好像没有点击发生一样。破坏了测试。 IE 11是否支持点击

  • 安装舵机图 在同一命名空间部署入口 将服务的入口类型从LoadBalancer更改为NodePort,因为它不是以其他方式创建的。

  • 问题内容: 我注意到less.js在firefox中工作,但在Chrome中不工作,或者是因为我出错了吗? 即使我尝试在Chrome中仍然无法使用,我在某个地方犯了错误吗? 问题答案: 通过您提供的链接: 如果您使用的是Chrome,Less.js浏览器脚本当前将无法使用,并且由于已知的Chrome问题,网页的路径以“file:///”开头。

  • 问题内容: 不仅如此,其他代码也有相同的问题。只是不能使用ImageView。 环境:macOS,IntelliJ 造成原因:java.lang.IllegalArgumentException:无效的URL:无效的URL或找不到资源 问题答案: 该图像构造函数接受一个url作为参数。如果您未在其中添加协议,则它将假定该项目来自类路径。显然,不会出现在您的类路径中。 要从文件而不是类路径中读取,请

  • 问题内容: 当我迅速运行此代码时,我不知道为什么应用程序会在“ alertView.show()”部分显示一个断点而终止,请有人帮帮我。 问题答案: 从Xcode 6.0 UIAlertView类: 不推荐使用UIAlertView。改用UIAlertController和UIAlertControllerStyleAlert的preferredStyle。 在Swift(iOS 8和OS X 1