原创

RabbitMq on k8s(Kubernetes) windows 安装手记

最近学习spring cloud,涉及到消息总线(Spring Cloud Bus),需要安装一个RabbitMQ,电脑中安装的软件已经够多了,不想再装这么一个消息队列工具,那就用最火的k8s来部署好了。

一、下载

  1. ####VirtualBox6.1.12 下载地址跳转到virtualbox.org
  2. ####minikube1.12.3 下载地址GitHub下载
  3. ####kubectl
    • 这个如果最新版本的话,在这里找
    • 我这里用v1.17.11的版本,查看v1.17.11 GitHub查看,下载v1.17.11GitHub下载 (至于为什么用1.17,是因为1.18对RabbitMQ来说无法运行,具体有个issue)

二、基础配置

  1. 重命名minikube-windows-amd64.exeminikube.exe

  2. 创建目录D:\Program\k8skubectl,并且将kubectl.exe以及minikube.exe拷贝进去

  3. 管理员运行CMD,执行:setx /M PATH "%PATH%;D:\Program\k8skubectl;",该语句会自动将D:\Program\k8skubectl路径加入到系统级的PATH环境变量中。

  4. 安装VirtualBox略。

三、使用minikube创建集群

  • CMD中执行minikube start --kubernetes-version v1.17.11,将会下载v1.17.11版本的k8s。

  • CMD中执行minikube start,该命令会自动下载minikube的iso镜像以及Kubernetes的对应版本。之后还会自动创建虚拟机。

5.png

下载的iso镜像路径C:\Users\User\.minikube\machines\minikube\boot2docker.iso~~

创建的虚拟机路径C:\Users\User\.minikube\machines\minikube\disk.vmdk

4.png

使用命令minikube status,可以查看k8s的状态。

D:\Program\k8skubectl>minikube status
minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured

使用命令minikube dashboard,会自动打开默认浏览器,访问管理页,一般:http://127.0.0.1:端口/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/overview?namespace=default
更多minikube文档,请访问k8sio
至此,k8s单机集群就搭建完成。

四、创建RabbitMq集群以及实例

  • 集群创建,运行命令
git clone https://github.com/rabbitmq/cluster-operator.git
cd cluster-operator
kubectl create -f config/namespace/base/namespace.yaml
kubectl create -f config/crd/bases/rabbitmq.com_rabbitmqclusters.yaml
kubectl -n rabbitmq-system create --kustomize config/rbac/
kubectl -n rabbitmq-system create --kustomize config/manager/
  • 创建实例
    从github上下载示例配置
git clone https://github.com/rabbitmq/diy-kubernetes-examples.git
cd diy-kubernetes-examples
kubectl apply -f diy-kubernetes-examples/minikube

切换到dashboard,查看实例创建情况

6.png

查看集群分配的ip

minikube ip

通过ip:port访问RabbitMq。这个配置http默认的端口是:31672,amqp默认端口是:30672

amqp://guest:guest@{minikube_ip}:30672
http://{minikube_ip}:31672

至此,RabbitMq应该能被应用程序使用了。

7.png

  • 查看状态
    kubectl --namespace="test-rabbitmq" get pods
  • 修改节点数量
    kubectl scale statefulset/rabbitmq --namespace=test-rabbitmq --replicas=5

五、后记

  • minikube自动安装的虚拟机,默认用户密码:docker/tcuser,直接用minikube ssh命令,我感觉很卡,不知道为啥。所以我习惯用ssh工具直接连。
  • RabbitMq用户密码,默认用户密码:guest/guest
  • 如果需要修改密码,可以参考这里进行修改
  • minikube 常用指令

    minikube version,查看minikube的版本
    minikube start,启动minikube
    minikube ssh,ssh到虚拟机中
    minikube logs,显示minikube的log
    minikube dashboard,启动minikube dashboard
    minikube ip,显示虚拟机地址
    minikube stop,停止虚拟机
    minikube delete,删除虚拟机

参考文章:

1.Kubectl_国内服务器安装kubectl
2.在windows10上安装Kubernetes
3.minikube国内安装步骤
4.minikube使用
5.RabbitMq搭建
6.RabbitMQ on Kubernetes
7.Minikube 安装踩坑记

温馨提示:
本文最后更新于 2022年03月01日,已超过 167 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我
正文到此结束
该篇文章的评论功能已被站长关闭
本文目录