tnblog
首页
视频
资源
登录

Kubernetes 搭建RabbitMq集群环境

6710人阅读 2021/12/2 22:53 总访问:3667905 评论:0 收藏:0 手机
分类: RabbitMq

Kubernetes 搭建RabbitMq集群环境


由于Kubectl RabbitMQ 插件在官方是基于krew进行安装的所以我们首先需要安装krew插件。

安装Krew插件


Krew 本身是一个kubectl通过 Krew 安装和更新的插件。
可通过该链接根据不同环境进行安装:https://krew.sigs.k8s.io/docs/user-guide/setup/install/

MacOS/Linux安装


1.确保git已安装。
2.运行此命令下载并安装krew。

  1. (
  2. set -x; cd "$(mktemp -d)" &&
  3. OS="$(uname | tr '[:upper:]' '[:lower:]')" &&
  4. ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')" &&
  5. KREW="krew-${OS}_${ARCH}" &&
  6. curl -fsSLO "https://github.com/kubernetes-sigs/krew/releases/latest/download/${KREW}.tar.gz" &&
  7. tar zxvf "${KREW}.tar.gz" &&
  8. ./"${KREW}" install krew
  9. )


3.将该$HOME/.krew/bin目录添加到 PATH 环境变量中。为此,请更新您的.bashrc.zshrc文件并附加以下行:

  1. export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"


4.运行kubectl krew以检查安装。

安装 kubectl-rabbitmq 插件


通过如下命令可以使用krew进行安装:

  1. kubectl krew install rabbitmq


验证安装情况

  1. kubectl rabbitmq help


安装Rabbitmq Cluster Operator

  1. kubectl rabbitmq install-cluster-operator


安装 Cluster Operator 会创建一堆 Kubernetes 资源。
Operator 需要这些来创建、更新和删除 RabbitMQ 集群。
它将创建于一个新的命名空间中rabbitmq-system,我们可以通过kubectl get all -n rabbitmq-system查看创建情况。

创建Rabbitmq集群


接着我们通过kubectl rabbitmq create mq1命令创建一个mq1的rabbitmq集群。


接着我们查看mq1的集群情况

  1. kubectl rabbitmq get mq1


我们发现pod一直处于Pending状态,一般为Pending状态多半是没有可绑定的pv的引起的。


我们先在所有的机器上创建/mq1data目录,并赋予权限

  1. mkdir /mq1data
  2. chmod -R 777 /mq1data


接着我们编写一个PV。并进行创建。

  1. vim pv.yaml
  1. apiVersion: v1
  2. kind: PersistentVolume
  3. metadata:
  4. name: mq1-pv
  5. spec:
  6. capacity:
  7. storage: 10Gi
  8. accessModes:
  9. - ReadWriteOnce
  10. hostPath:
  11. path: "/mq1data"
  1. kubectl apply -f pv.yaml


再次查看已经没问题了

查看Dashborad UI


查看用户与密码

  1. kubectl rabbitmq secrets mq1


接着我们通过port-forward端口转发的方式,访问我们mq1的服务。

  1. kubectl port-forward "service/mq1" 15672 --address='0.0.0.0'


访问地址为:host:15672

关于集群创建的相关参数

  1. kubectl rabbitmq create mq1 [arg]
参数名 描述
-n 命名空间
—replicas 集群副本数
—service 服务类型(默认为:ClusterIP)
—image pod的镜像
—image-pull-secret 拉取镜像的secret
—tls-secret https的证书secret
—storage-class 指定的SC动态卷(建议在此之前指定好SC动态卷)

更多管理请参考


https://www.rabbitmq.com/kubernetes/operator/quickstart-operator.html
https://www.rabbitmq.com/kubernetes/operator/kubectl-plugin.html
https://www.rabbitmq.com/kubernetes/operator/install-operator.html


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

评价
这一世以无限游戏为使命!
排名
2
文章
657
粉丝
44
评论
93
docker中Sware集群与service
尘叶心繁 : 想学呀!我教你呀
一个bug让程序员走上法庭 索赔金额达400亿日元
叼着奶瓶逛酒吧 : 所以说做程序员也要懂点法律知识
.net core 塑形资源
剑轩 : 收藏收藏
映射AutoMapper
剑轩 : 好是好,这个对效率影响大不大哇,效率高不高
ASP.NET Core 服务注册生命周期
剑轩 : http://www.tnblog.net/aojiancc2/article/details/167
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术