k8s局域网通过operator部署rabbitmq

参考:Installing RabbitMQ Cluster Operator in a Kubernetes Cluster | RabbitMQ

1、下载cluster-operator.yml

wget https://github.com/rabbitmq/cluster-operator/releases/download/v2.7.0/cluster-operator.yml

2、拉取对应的镜像,这里的版本是根据github发布的版本确定(如上图https://github.com/rabbitmq/cluster-operator/releases):

docker pull rabbitmqoperator/cluster-operator:2.7.0

3、导出镜像:

docker save rabbitmqoperator/cluster-operator:2.7.0 | gzip > rabbitmq-cluster-operator_v2.7.0.tar.gz

4、将镜像和cluster-operator.yml传输到局域网:

scp -P10022 rabbitmq-cluster-operator_v2.7.0.tar.gz root@ip:/data/

scp -P10022 cluster-operator.yml root@ip:/data/

5、进入局域网服务器,将镜像导入并且上传:

docker load -i rabbitmq-cluster-operator_v2.7.0.tar.gz

docker tag 2324be6c5743ad72bedb72bec9beaf989bd5bace9ed49992566ee2bcda03dcdd harbor.xxx.com:10443/rabbitmqoperator/cluster-operator:2.7.0

docker push harbor.xxx.com:10443/rabbitmqoperator/cluster-operator:2.7.0

6、修改cluster-operator.yml

找到下面的内容:

        image: rabbitmqoperator/cluster-operator:2.7.0  
        name: operator  

换成:

        image: harbor.xxx.com:10443/rabbitmqoperator/cluster-operator:2.7.0
        name: operator

7、通过下面命令执行创建:

kubectl apply -f cluster-operator.yml 

执行后会创建namespace rabbitmq-system。可以通过下面方式查看:

kubectl get all -n rabbitmq-system

8、进入yaml文件的目录,rabbitmq.yaml的文件内容如下:

apiVersion: rabbitmq.com/v1beta1
kind: RabbitmqCluster
metadata:
  name: rabbitmq-release
  namespace: rabbitmq-system
  labels:
    app: rabbitmq-release
spec:
  replicas: 3
  image: "harbor.xxx.com:10443/xxx-apps/rabbitmq:3.12.13-debian-12-r2"
  resources:
    requests:
      cpu: 5000m
      memory: 10Gi
    limits:
      cpu: 8000m
      memory: 10Gi
  persistence:
    storageClassName: "xsky-iscsi-sc"
    storage: 20Gi
  rabbitmq:
    additionalConfig: |
      default_vhost = vhost      #配置Virtual Hosts
      default_user = barn       #配置登录账号
      default_pass = barn      #配置账号密码

9、执行创建,完成rabbitmq的创建:

kubectl apply -f rabbitmq.yaml -n rabbitmq-system

10,如果需要卸载,执行下面命令:

kubectl delete -f rabbitmq.yaml -n rabbitmq-system

参考网站

k8s部署RabbitMQ Operator - 知乎

遇到问题及解决

kubectl delete -f rabbitmq.yaml

执行以上命令失败,报下面错误:

Error from server (NotFound): error when deleting "rabbitmq.yaml": rabbitmqclusters.rabbitmq.com "helloworld" not found

原因:删除的时候没有指定namespace。

kubectl delete -f rabbitmq.yaml -n rabbitmq-system

删除成功

相关推荐

  1. 开发K8S Operator

    2024-04-01 14:38:03       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-01 14:38:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-01 14:38:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-01 14:38:03       87 阅读
  4. Python语言-面向对象

    2024-04-01 14:38:03       96 阅读

热门阅读

  1. npm 与 yarn 命令比较

    2024-04-01 14:38:03       41 阅读
  2. Spring与Spring Boot的区别

    2024-04-01 14:38:03       36 阅读
  3. 修改aws账户的密码和MFA

    2024-04-01 14:38:03       37 阅读
  4. 【力扣】374.猜数字大小

    2024-04-01 14:38:03       40 阅读
  5. RuoYi-Vue-Plus(登录流程)

    2024-04-01 14:38:03       38 阅读
  6. css去除滑动框

    2024-04-01 14:38:03       42 阅读
  7. pgsql已有表设置主键自增

    2024-04-01 14:38:03       38 阅读
  8. C语言点h文件设置

    2024-04-01 14:38:03       44 阅读
  9. C++常见算法有哪些

    2024-04-01 14:38:03       36 阅读