发布时间: 2025-3-11 文章作者: myluzh 分类名称: Kubernetes 朗读文章
apiVersion: apps/v1 kind: StatefulSet metadata: name: emqx namespace: base spec: serviceName: "emqx-headless" replicas: 1 selector: matchLabels: app: emqx template: metadata: labels: app: emqx spec: containers: - name: emqx image: 172.30.82.223:5443/base/emqx/emqx:4.4.1 ports: - containerPort: 1883 name: mqtt - containerPort: 8083 name: mqtt-ws - containerPort: 8883 name: mqtts - containerPort: 8084 name: mqtt-wss - containerPort: 18083 name: dashboard volumeMounts: - name: emqx-data mountPath: /opt/emqx/data - name: emqx-etc mountPath: /opt/emqx/etc volumeClaimTemplates: - metadata: name: emqx-data spec: accessModes: ["ReadWriteOnce"] resources: requests: storage: 10Gi - metadata: name: emqx-etc spec: accessModes: ["ReadWriteOnce"] resources: requests: storage: 1Gi --- apiVersion: v1 kind: Service metadata: name: emqx-headless namespace: base spec: clusterIP: None selector: app: emqx ports: - port: 1883 name: mqtt - port: 8083 name: mqtt-ws - port: 8883 name: mqtts - port: 8084 name: mqtt-wss - port: 18083 name: dashboard --- apiVersion: v1 kind: Service metadata: name: emqx-dashboard-nodeport namespace: base spec: type: NodePort selector: app: emqx ports: - port: 18083 targetPort: 18083 #nodePort: 30083 name: dashboard-nodeport2、配置文件复制
# 创建一个临时的emqx容器 docker run -d --name emqx-temp 172.30.82.223:5443/base/emqx/emqx:4.4.1 # 把emqx容器默认的配置文件都复制到持久化的pvc路径下面去 docker cp emqx-temp:/opt/emqx/etc/. /opt/local-path-provisioner/pvc-e250eb69-cc03-4481-a089-20e7591fbeab_base_emqx-etc-emqx-0/ docker cp emqx-temp:/opt/emqx/data/. /opt/local-path-provisioner/pvc-b492589d-bde7-44e6-93c5-8ad84e43d762_base_emqx-data-emqx-0/ # 停止并且移除临时的emqx容器 docker stop emqx-temp && docker rm emqx-temp3、更改配置文件
bash-5.1$ cat /opt/emqx/etc/plugins/emqx_dashboard.conf | grep dashboard dashboard.default_user dashboard.default_user.login = admin dashboard.default_user.password = c1d5MfZWYuzj89edk客户端连接密码在/opt/emqx/etc/plugins/emqx_auth_mnesia.conf,按需修改。
bash-5.1$ grep -v '^#' /opt/emqx/etc/plugins/emqx_auth_mnesia.conf auth.mnesia.password_hash = plain auth.client.1.clientid = sxhl_user auth.client.1.password = GHrdnn9s8 auth.user.1.username = sxhl_user auth.user.1.password = GHrdnn9s8
发表评论