说明:下面安装未涉及持久性,但是生产环境必须要持久化
1.下载基本文件
[root@k8s-master01 ~]# git clone https://gitee.com/jeckjohn/stateful-set-rabbit-mq.git
2.检查之前是否安装过rabbitmq,若没有,可直接略过
[root@k8s-master01 ~]# kubectl get po -n public-service
No resources found in public-service namespace.
[root@k8s-master01 ~]# kubectl get svc,deployment -n public-service
No resources found in public-service namespace.
如果存在,进行删除
[root@k8s-master01 ~]# kubectl delete svc rabbitmq -n public-service
[root@k8s-master01 ~]# kubectl delete deploy rabbitmq -n public-service
3.一键部署RabbitMQ集群
[root@k8s-master01 ~]# kubectl create ns public-service
[root@k8s-master01 ~]# cd stateful-set-rabbit-mq
[root@k8s-master01 stateful-set-rabbit-mq]# kubectl apply -f . -n public-service
4.查看Pod及service建立情况
[root@k8s-master01 ~]# kubectl get po -n public-service
NAME READY STATUS RESTARTS AGE
rmq-cluster-0 1/1 Running 0 25m
rmq-cluster-1 1/1 Running 0 24m
rmq-cluster-2 1/1 Running 0 22m
[root@k8s-master01 stateful-set-rabbit-mq]# kubectl get svc -n public-service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
rmq-cluster ClusterIP None <none> 5672/TCP 29m
rmq-cluster-balancer NodePort 10.0.3.116 <none> 15672:31372/TCP,5672:32359/TCP 29m
5.打开浏览器输入节点IP:32359页面测试访问,其中用户名是RABBITMQ_USER,用户密码是RABBITMQ_PASS

6.卸载安装的集群
[root@k8s-master01 ~]# cd stateful-set-rabbit-mq
[root@k8s-master01 stateful-set-rabbit-mq]# kubectl delete -f . -n public-service