开发者中心 开发者中心
  • 简体中文
  • English
视频教程
敢为云网站
  • 6.0版本
  • 6.1 版本
视频教程
敢为云网站
  • 平台概述
  • 平台功能
  • 平台安装
  • 开发者指南
  • 项目实战
    • 开始
    • 进阶
    • 提升
      • 使用三维界面
      • 使用语音交互
      • 双机热备
      • 大屏互动
      • 基于Nginx主备模式的双机热备
        • 操作步骤
          • 部署两个IoTCenter平台
          • 安装Nginx
          • 配置Nginx实现主备模式
  • 附录

基于Nginx主备模式的双机热备

本节将学习如何使用Nginx实现主备模式的双机热备,当主机出现异常挂掉时备机会接管服务

# 操作步骤

注意

  1. 两个IoTCenter平台的License(授权文件)必须相同。
  2. 两个IoTCenter平台必须使用同时一个数据库。
  3. 两个IoTCenter平台都必须在应用商店中安装双机热备扩展插件

# 部署两个IoTCenter平台

操作步骤
  1. 参考平台安装部署两套IoTCenter

  2. 应用商店装安装双机热备扩展插件,安装完成后重启平台

  1. 配置双机热备扩展插件 参数说明: 驱动文件:GWBackUpCore.STD.dll 功能名称:主备模式(可自定义) 功能类型:功能类型 参数:备机IP:备机端口/主机端口号/MS/主机IP 示例:192.168.110.8:8015/8016/MS/192.168.110.79(备机端口/主机端口可参考示例内容) 是否启用:是 参考上述内容后重启平台。

效果如下 主机:

备机:

# 安装Nginx

以下是针对不同操作系统的Nginx安装教程,涵盖Linux(Ubuntu/CentOS)、macOS和Windows环境,包含详细步骤和验证方法:

# 一、Ubuntu 安装Nginx

操作步骤
  1. 更新包管理器:
    sudo apt update
    
  2. 安装Nginx:
    sudo apt install nginx -y
    
  3. 启动并设置开机自启:
    sudo systemctl start nginx
    sudo systemctl enable nginx
    
  4. 验证安装:
    • 检查服务状态:
      sudo systemctl status nginx
      
    • 访问默认页面:浏览器打开 http://localhost 或 http://服务器IP。

# 注意事项:

  • 防火墙需开放80/443端口:
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw reload
    

# 二、CentOS 安装Nginx

操作步骤
  1. 更新包管理器:
    sudo yum update -y
    
  2. 安装Nginx:
    sudo yum install nginx -y
    
  3. 启动并设置开机自启:
    sudo systemctl start nginx
    sudo systemctl enable nginx
    
  4. 验证安装:
    • 检查服务状态:
      sudo systemctl status nginx
      
    • 访问默认页面:浏览器打开 http://localhost。

# 注意事项:

  • 开放防火墙端口:
    sudo firewall-cmd --permanent --add-service=http
    sudo firewall-cmd --permanent --add-service=https
    sudo firewall-cmd --reload
    

# 三、macOS 安装Nginx(Homebrew)

操作步骤
  1. 安装Homebrew(如未安装):
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 安装Nginx:
    brew install nginx
    
  3. 启动服务:
    brew services start nginx
    
  4. 验证安装:
    • 访问默认页面:浏览器打开 http://localhost。
    • 检查配置文件路径:/usr/local/etc/nginx/nginx.conf。

# 注意事项:

  • 停止服务:

     brew services stop nginx
    

# 四、Windows安装Nginx

操作步骤
  1. 下载Nginx:
    • 访问官网 https://nginx.org/en/download.html,下载最新稳定版(如nginx-1.25.3.zip)。
  2. 解压文件:
    • 解压到简单路径(如C:\nginx)。
  3. 启动Nginx:
    • 双击nginx.exe或通过命令提示符运行:
      start nginx
      
  4. 验证安装:
    • 访问默认页面:浏览器打开 http://localhost。
    • 检查进程:任务管理器中查看nginx.exe是否运行。

# 注意事项:

  • 配置文件路径:C:\nginx\conf\nginx.conf。

     nginx -s stop
    

# 五、通用验证命令

  1. 检查Nginx版本:
    nginx -v
    
  2. 测试配置文件语法:
    nginx -t
    
  3. 查看进程:
    ps -ef | grep nginx
    

# 六、常见问题解决

  • 端口被占用:
    • Linux/macOS:sudo lsof -i :80 或 sudo netstat -tuln | grep :80。
    • Windows:netstat -ano | findstr :80。
  • 权限问题:确保以管理员/root权限执行命令。

# 配置Nginx实现主备模式

配置核心流程
  1. Nginx主备配置(关键修改项)
events {
    worker_connections 1024;  # 单worker进程最大连接数
}

http {
    upstream grpc_backend {
        # 主节点配置(必须保证在线)
        server 192.168.110.8:4001;  
        
        # 备节点配置(自动接管主节点故障)
        server 192.168.110.79:4000 backup;  
        
        keepalive 32;  # 复用32个长连接到上游服务
    }

    server {
        listen 5000 http2;  # 启用HTTP/2协议监听
        server_name 192.168.110.79;  # 绑定服务器IP

        location / {
            grpc_pass grpc://grpc_backend;  # gRPC流量转发至上游集群
            grpc_set_header Host $host;    # 透传客户端Host头信息
            
            # 超时控制(建议与业务长连接时长匹配)
            grpc_read_timeout 300s;   # 等待上游响应最大时长
            grpc_send_timeout 300s;   # 发送请求到上游最大时长
        }
    }
}
  1. IoTCenter集群配置调整 步骤1:启用多实例部署模式
    修改配置文件 ./data/AlarmCenter/AlarmCenterProperties.xml
<!-- 将单实例启动模式改为集群模式 -->
<SingleAppStart>false</SingleAppStart>

步骤2:配置Web服务地址
修改文件 ./IoTCenterWeb/publish/appsettings.json

{
  "Address": {
    "Address": "http://192.168.110.79:5000/"  // 对接Nginx监听地址
  }
}
  1. 服务启动顺序 启动主备节点服务(确保双机在线)
    # 主节点执行
    ./bin/GWHost1.exe
    
    # 备节点执行(需与主节点保持配置同步)
    ./bin/GWHost1.exe
    

启动Web服务能正常访问则表示配置成功

./IoTCenterWeb/publish/IoTCenterWebApi.exe

说明

当主机服务192.168.110.8:4001出现异常挂掉时会自动启动备机服务。

上次更新: 2025/8/28 18:10:25

← 大屏互动 MODBUS→

目录
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式