当前位置: 首页 > news >正文

k8s 部署 emqx

安装cert-manager

使用Helm安装

helm repo add jetstack https://charts.jetstack.io
helm repo update
helm upgrade --install cert-manager jetstack/cert-manager \--namespace cert-manager \--create-namespace \--set installCRDs=true

如果通过helm命令安装失败,可以先下载,再按照

wget https://charts.jetstack.io/charts/cert-manager-v1.16.1.tgz

k8s原生安装

参考https://cert-manager.io/docs/installation/

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.16.1/cert-manager.yaml

安装EMQX Operator

helm repo add emqx https://repos.emqx.io/charts
helm repo update
helm upgrade --install emqx-operator emqx/emqx-operator \--namespace emqx-operator-system \--create-namespace

安装后,查下安装结果

kubectl get all -n emqx-operator-system

出现下载镜像失败ImagePullBackOff的状态,说明下载不到国外的镜像,需要寻找国内镜像源。使用以下命令查询具体是哪些镜像下载失败

kubectl describe pod emqx-operator-controller-manager-6d6d5f9684-rhd7f  -n emqx-operator-system

下载镜像,并上传到k8s的各个节点后,再次执行helm安装命令

docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/emqx/emqx-operator-controller:2.2.25
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/emqx/emqx-operator-controller:2.2.25 emqx/emqx-operator-controller:2.2.25
docker save -o emqx.tar emqx/emqx-operator-controller:2.2.25
scp emqx.tar root@10.0.2.12:/root
ssh root@10.0.2.12
docker load -i emqx.tar

等待 EMQX Operator 就绪

kubectl wait --for=condition=Ready pods -l "control-plane=controller-manager" -n emqx-operator-system#输出
pod/emqx-operator-controller-manager-6d6d5f9684-rhd7f condition met

安装 EMQX

apiVersion: v1
kind: Namespace
metadata:name: ns-emqx--- 
apiVersion: apps.emqx.io/v2beta1
kind: EMQX
metadata:name: emqxnamespace: ns-emqx
spec:image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/emqx/emqx:5.8.1

查看 EMQX 的 k8s service

kubectl get svc -n ns-emqx 

上面这种方式部署的一个无头服务的EMQX。下面通过 LoadBalancer 访问 EMQX 集群

apiVersion: v1
kind: Namespace
metadata:name: ns-emqx--- 
apiVersion: apps.emqx.io/v2beta1
kind: EMQX
metadata:name: emqxnamespace: ns-emqx
spec:image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/emqx/emqx:5.8.1listenersServiceTemplate:spec:type: LoadBalancerdashboardServiceTemplate:spec:type: LoadBalancer

再次查看 EMQX 的 k8s service

kubectl get svc -n ns-emqx 

结果

NAME             TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                                       AGE
emqx-dashboard   NodePort    10.100.118.67    <none>        18083:31321/TCP                                               19s
emqx-headless    ClusterIP   None             <none>        4370/TCP,5369/TCP                                             40s
emqx-listeners   NodePort    10.101.198.122   <none>        8883:31407/TCP,1883:31263/TCP,8083:31433/TCP,8084:32283/TCP   19s

EMQX Operator 会创建两个 EMQX Service 资源,一个是 emqx-dashboard,一个是 emqx-listeners,分别对应 EMQX 控制台和 EMQX 监听端口。

通过 NodeIP + 端口 就可以访问EMQX的控制台。这里是http://127.0.0.1:31321;用户和密码:admin/public

http://www.lryc.cn/news/471646.html

相关文章:

  • CSS.导入方式
  • Linux之nfs服务器和dns服务器
  • 大模型系列——AlphaZero/强化学习/MCTS
  • 原生js实现拖拽上传(拖拽时高亮上传区域)
  • python道格拉斯算法的实现
  • STM32的hal库中,后缀带ex和不带的有什么区别
  • 可观测性三大支柱
  • 【银河麒麟高级服务器操作系统·实例分享】裸金属服务器开机失败分析及处理建议
  • 模型剪枝实操
  • 网安学习路线!最详细没有之一!看了这么多分享网安学习路线的一个详细的都没有!
  • Ubuntu18.04安装vscode1.94.2失败安装vscode1.84.2
  • Redis中Lua脚本的使用场景
  • 重工业数字化转型创新实践:某国家特大型钢铁企业如何快速落地基于实时数仓的数据分析平台
  • 【linux】手动启动sshd
  • 前端项目【本科期间】
  • 深度学习中的学习率调度:循环学习率、SGDR、1cycle 等方法介绍及实践策略研究
  • Python毕业设计-基于 Python flask 的前程无忧招聘可视化系统,Python大数据招聘爬虫可视化分析
  • Linux初阶——线程(Part1)
  • SpringBoot后端开发常用工具详细介绍——flyway数据库版本控制工具
  • CSS揭秘:7. 伪随机背景
  • SAP CODE DEMO:查找AL11 指定路径下文件中的内容
  • 【华为HCIP实战课程二十四】中间到中间系统协议IS-IS配置实战,网络工程师
  • 【工具】新手礼包之git相关环境包括中文的一套流程{收集和整理},gitlab的使用
  • 篇章十一 打包构建工具
  • 青少年编程与数学 02-002 Sql Server 数据库应用 06课题、数据库操作
  • MacOS下载安装Logisim(图文教程)
  • Flink CDC系列之:调研应用Flink CDC将 ELT 从 MySQL 流式传输到 StarRocks方案
  • 一次元空间FullGC导致OOM问题分析
  • Web前端开发工具和依赖安装
  • 【学习心得】远程root用户访问服务器中的MySQL8