You need to enable JavaScript to run this app.
文档中心
负载均衡

负载均衡

复制全文
下载 pdf
最佳实践
全端口监听示例
复制全文
下载 pdf
全端口监听示例
背景​
在网络直播、视频会议、在线游戏等场景中,常需启用多个端口。以在线游戏为例,玩家移动、聊天、战斗等不同功能通常通过独立端口传输数据,以保障流畅运行、及时交互与精准对战。​
若逐个端口创建监听器,配置复杂且维护困难,可通过全端口监听功能监听端口段(如80-90),简化用户配置,便于后续维护。​
准备工作​
操作步骤​
说明​
以下步骤中仅介绍本文配置所需的参数,其他未介绍的参数保持默认值即可。如需了解更多参数,请参见用户指南。​
步骤一:搭建后端服务​
后端服务器均部署如下服务,用于验证全端口功能。​
  1. 远程登录云服务器。​
  1. 执行vim server.sh命令,创建后端服务脚本文件。​
  1. 按i键,输入如下内容:​
  • ​
    #!/bin/bash​
    ​
    # 安装Nginx ​
    yum install -y nginx || { echo "Error: Failed to install Nginx"; exit 1; }​
    ​
    # 获取服务器IP地址 ​
    SERVER_IP=$(hostname -I | awk '{print $1}') || SERVER_IP="Unknown"​
    ​
    # 创建目录 ​
    mkdir -p /etc/nginx/conf.d /usr/share/nginx/html​
    ​
    # 生成配置和测试​
    for port in $(seq 80 90); do​
    # 创建HTML文件​
    echo "Hello World! Server IP is ${SERVER_IP}, server port is ${port}." > /usr/share/nginx/html/index_app${port}.html​
    # 创建Nginx配置​
    cat > /etc/nginx/conf.d/app_${port}.conf <<EOF​
    server {​
    listen ${port};​
    location / {​
    root /usr/share/nginx/html;​
    index index_app${port}.html;​
    }​
    }​
    EOF​
    done​
    ​
    # 测试配置并启动​
    nginx -t || { echo "Error: Nginx configuration test failed"; exit 1; }​
    systemctl start nginx || { echo "Error: Failed to start Nginx"; exit 1; }​
    ​
    # 测试访问​
    echo "Testing connections to each port:"​
    for port in $(seq 80 90); do​
    echo "Accessing http://localhost:${port}"​
    curl -s http://localhost:${port} || echo "Failed to access port ${port}"​
    echo​
    done​
    ​
    echo "Nginx has been successfully configured to listen on ports 80 to 90."​
    ​
  • ​
  1. 按esc键退出编辑模式,然后按:wq保存修改并退出。​
  1. 执行sudo sh server.sh。​
步骤二:创建全端口转发服务器组​
  1. 登录NLB控制台。​
  1. 在左侧导航树,选择服务器组。​
  1. 在顶部导航栏,选择目标项目和地域。​
  1. 单击创建服务器组按钮,参考下表配置服务器组的基本信息。​
  • 基本信息​
  • ​
    参数​
    说明​
    取值示例​
    名称​
    输入服务器组的名称。​
    rsp01​
    服务器组类型​
    选择服务器组的类型。​
    • 服务器类型:只能添加与服务器组同VPC内的云服务器实例或辅助网卡作为后端服务器。​
    • IP类型:只能添加IP地址作为后端服务器。只要网络可达,可以添加其他VPC或者IDC内的IP地址作为后端服务器。​
    服务器类型​
    IP版本​
    后端服务器私网IP地址的协议类型。​
    IPv4​
    私有网络​
    选择服务器组所属的私有网络,需要与NLB实例所属VPC保持一致。​
    VPC-X​
    后端协议​
    选择访问请求从NLB实例转发至后端服务器的协议。​
    • TCP​
    • UDP​
    TCP​
    调度算法​
    选择服务器组转发请求遵循的规则。​
    加权轮询(WRR)​
    全端口转发​
    开启全端口转发。​
    开启​
    ​
  • 开启健康检查,健康检查端口指定为80,其余参数保持默认值。​
  1. 单击确定按钮,完成服务器组的创建。​
  1. 单击目标服务器组右侧的··· > 添加服务器按钮。​
  1. 单击添加服务器按钮,选择已创建的云服务器实例。​
  1. 单击下一步按钮,为已添加的后端服务器配置端口和权重。​
  • ​
    参数​
    说明​
    取值示例​
    端口​
    服务器组开启全端口转发时,后端服务器默认使用监听端口接收并处理流量,不可添加或指定端口。​
    -​
    权重​
    后端服务器收到请求的概率(概率为该服务器权重/组中所有服务器的总权重)。​
    100​
    ​
  1. 单击确定按钮,完成操作。​
步骤三:创建全端口监听器​
  1. 登录NLB控制台。​
  1. 在顶部导航栏,选择目标项目和地域。​
  1. 单击目标NLB实例右侧的配置监听器按钮​
  1. 单击添加监听器按钮,参考下表配置相关参数。​
  • ​
    参数​
    说明​
    取值示例​
    监听器名称​
    输入监听器的名称。不填则默认为“协议-端口” ,如“TCP-80”。​
    listener01​
    监听协议​
    选择监听的协议类型。​
    • TCP​
    • UDP​
    TCP​
    监听端口​
    本文选择全端口监听,输入监听的端口段。​
    80-90​
    超时时间​
    设置超时时间。若连接在超时时间内没有数据传输,将自动关闭。取值范围为10~900秒,默认为900秒。​
    900秒​
    ​
  1. 单击下一步按钮,选择上文创建的服务器组。​
  1. 单击下一步按钮,确认配置信息。​
  1. 单击确定按钮,完成操作。​
步骤四:配置安全组和网络ACL​
  • NLB实例:需要放通如下流量。​
  • 客户端访问请求​
  • 转发访问请求​
  • 健康检查​
  • 系统探测NLB私网IP地址可用性​
  • 后端服务器:需要放通如下流量:​
  • NLB转发的访问请求​
  • 健康检查​
步骤五:自有域名解析至NLB域名​
火山引擎不允许用户直接使用NLB服务提供的默认域名进行公网访问。若需通过NLB实例向公网提供服务,请使用自有域名CNAME解析到NLB域名。若无自有域名,请参见域名服务。​
说明​
本文以在火山引擎 DNS 服务中配置解析记录为例,如果您使用其他平台管理业务域名,请在对应的平台中配置解析记录。​
  1. 参考添加CNAME记录将您的自有域名解析至NLB实例的域名,并验证配置是否生效。参数说明如下表所示。​
  • ​
    参数​
    描述​
    域名​
    设置为您自有域名的主机记录(域名前缀)。例如:www.example.com。​
    记录类型​
    设置为 CNAME。​
    记录值​
    设置为 NLB 实例的域名,本文中为 nlb-2fe5af0pxlvy859gp68ag****.cn-guangzhou.nlb.volces.com。​
    说明​
    上表中未介绍的参数请保持默认值。​
    ​
    ​
验证​
  1. 打开本地电脑浏览器。​
  1. 输入http://您的自有域名:端口 (如http://www.example.com:88)。​
  1. 返回如下信息,则配置成功。​
  • Hello World! Server IP is 192.168.XX.118, server port is 88.​
​
最近更新时间:2025.07.09 17:44:55
这个页面对您有帮助吗?
有用
有用
无用
无用