Skip to content

多节点扩容模式

说明

原先按照多节点模式的方式部署的节点,可以通过增加节点的方式扩展集群规模。本文档介绍如何通过增加节点的方式扩展集群规模。

假设新增加的节点信息如下:

名称内网IP外网IP
node4(1004)10.206.0.6146.56.232.98

在node4上部署WuKongIM

1. 创建安装目录

创建目录

bash
mkdir  ~/wukongim

进入目录

bash
cd  ~/wukongim

2. 在安装目录创建docker-compose.yml文件

yaml
version: '3.7'
services:
  wukongim: # WuKongIM服务
    image: registry.cn-shanghai.aliyuncs.com/wukongim/wukongim:v2.0.2-beta-20240805
    environment:
      - "WK_CLUSTER_NODEID=1004" 
      - "WK_CLUSTER_APIURL=http://10.206.0.6:5001" # 节点内部通信api url地址,这里ip换成自己节点实际node2的内网ip  
      - "WK_CLUSTER_SERVERADDR=10.206.0.6:11110" # 节点内部通信请求地址
      - "WK_EXTERNAL_WSADDR=ws://119.45.229.172:15200"  # web端访问的ws长连接地址
      - "WK_EXTERNAL_TCPADDR=119.45.229.172:15100"  # app端访问的tcp长连接地址
      - "WK_TRACE_PROMETHEUSAPIURL=http://10.206.0.13:9090" # 监控地址
      - "WK_CLUSTER_SEED=1001@10.206.0.13:11110" # 种子节点, 原集群里任意节点都可以做为种子节点,这里将node1节点作为种子节点
    healthcheck:
      test: "wget -q -Y off -O /dev/null http://localhost:5001/health > /dev/null 2>&1"
      interval: 10s
      timeout: 10s
      retries: 3       
    restart: always  
    volumes:
      - ./wukongim_data:/root/wukongim # 数据挂载到物理机的目录
    ports:
      - 11110:11110 # 分布式节点通讯端口
      - 5001:5001 # 内网api通讯端口
      - 5100:5100 # tcp端口
      - 5200:5200 # websocket端口
      - 5300:5300 # 管理端端口  
      - 5172:5172 # demo端口

3. 配置监控

再原先的node1节点上的安装目录(~/wukongim)里的prometheus.yml文件的scrape_configs内容下新增如下内容:

yaml
scrape_configs:
    ...
    - job_name: 'wukongim4-trace-metrics'
        static_configs:
        - targets: ['10.206.0.6:5300']
          labels:
            id: "1003"

4. 配置负载均衡

node1节点上的安装目录(~/wukongim)里的nginx.conf文件的所有upstream下新增如下内容:

nginx

upstream wukongimapi {
    ...
    server 10.206.0.6:5001;
}

upstream wukongimdemo {
    ...
    server 10.206.0.6:5172;
}

upstream wukongimanager {
    ...
    server 10.206.0.6:5300;
}
upstream wukongimws {
    ...
    server 10.206.0.6:5200;
}


stream {
  ...
  upstream wukongimtcp {
      ...
      server 10.206.0.6:5100;
  }
...

}

5. 重启node1

在node1进入安装目录(~/wukongim)里执行如下命令:

bash

sudo docker-compose restart

6. 启动node4

node4进入安装目录(~/wukongim)里执行如下命令:

bash

sudo docker-compose up -d

验证

登录后台管理系统,在节点管理中可以看到新加入的节点的状态是否是已加入状态,如果是则说明扩容成功。

本文档内容版权属于 上海信必达网络科技有限公司,保留所有权利