文档

NLB快速实现IPv4服务的负载均衡

更新时间:

阿里云网络型负载均衡NLB(Network Load Balancer)支持TCP、UDP和TCPSSL协议,提供了强大的四层负载均衡能力。如果您需要快速创建一个NLB实例,并将来自客户端的访问请求转发至后端服务器,请参考本文操作实现IPv4服务的负载均衡。

操作流程

nlb-produce

  1. 准备工作

    搭建负载均衡服务前,您需要根据业务需求规划NLB实例的地域,创建专有网络VPC(Virtual Private Cloud)和云服务器ECS(Elastic Compute Service)实例等。

  2. 步骤一:创建NLB实例

    使用负载均衡服务时,您需要先创建一个NLB实例,每一个NLB实例代表一个负载均衡服务实体,用于接收来自客户端的请求,并将请求分发至后端服务器。

  3. 步骤二:创建服务器组

    您需要创建服务器组并添加后端服务器来接收NLB转发的客户端请求。

  4. 步骤三:配置监听

    您需要为实例配置监听。监听负责检查连接请求,并根据调度算法将客户端请求分发至后端服务器。

  5. (可选)步骤四:设置域名解析

    NLB支持将您拥有的常用域名通过CNAME方式解析到NLB实例的公网服务域名上,使您可以更加方便地访问各种网络资源。

  6. 步骤五:访问测试

    测试后端服务器是否可以正常接收和处理NLB监听转发的请求。

准备工作

您需要根据业务需求规划NLB实例的地域,创建VPC和后端服务器ECS实例等。

  • 您已规划NLB实例的地域。请确保ECS实例的地域和NLB实例的地域相同,并且ECS实例与NLB实例属于同一个VPC。此外,建议您将ECS实例部署在不同的可用区内,提高业务的可用性。

  • 您已创建VPC。具体操作,请参见创建专有网络

    创建NLB实例前,请确保实例所选可用区的交换机中预留了足够的可用IP。创建新实例时会从每个指定的交换机中扣取3个IP地址,包含2个Local IP(用于与后端服务器交互并进行健康检查)和一个VIP(用于对外提供服务,创建后IP不会变化),如果IP不足会出现报错并且无法创建实例。

    说明

    为确保NLB各项弹性能力可以使用,建议您在NLB实例所在的每个交换机内预留至少8个IP地址。

  • 您已在VPC中创建3台ECS实例。ECS01实例用于访问NLB实例。ECS02和ECS03实例作为NLB实例的后端服务器,且ECS02和ECS03实例中部署了应用服务。

步骤一:创建NLB实例

  1. 登录网络型负载均衡NLB控制台
  2. 在顶部菜单栏,选择NLB实例所属的地域。

  3. 实例页面,单击创建网络型负载均衡

  4. 网络型负载均衡(按量付费)购买页面,完成以下配置。

    配置

    说明

    地域

    选择实例所属的地域。

    实例网络类型

    选择实例网络类型,系统会根据您的选择分配私网或公网服务地址。

    • 私网:每个可用区提供一个私网IP,只能通过阿里云内部网络访问NLB,无法从互联网访问。

    • 公网:每个可用区提供一个公网IP和一个私网IP。公网NLB默认通过弹性公网IP(Elastic IP Address,简称EIP)提供公网能力,选择公网将会收取弹性公网IP实例费、带宽或流量费用。

      • 弹性公网IP对外提供服务,支持通过互联网访问NLB

      • 私网IP,支持云上VPC内的ECS访问NLB

    本文选择公网

    VPC

    选择实例所属的VPC。

    可用区

    1. NLB支持多可用区部署,若当前地域支持2个及2个以上的可用区,为保障业务高可用,请至少选择2个可用区,且NLB不会额外收取可用区的费用。

    2. 分别在所选可用区内选择交换机,如果可用区下无交换机,请根据控制台提示创建交换机。

    3. 可选:实例网络类型选择公网时,需分别在所选可用区内选择EIP。

      • 如果可用区下无EIP,可保持默认选项自动分配公网IP:系统将帮您自动创建按量付费(按使用流量计费)的BGP多线默认安全防护EIP,并绑定至NLB实例上。

      • 选择已有的EIP:您可以指定已创建的EIP并绑定至新购的NLB实例上。

        重要
        • 仅可绑定暂未加入共享带宽的按量付费(按使用流量计费)的已购EIP。

        • 同一个NLB实例不同可用区分配的EIP类型需保持一致。

    协议版本

    选择实例的协议版本。

    • IPv4:表示NLB实例仅支持客户端使用IPv4地址访问。

    • 双栈:表示NLB实例支持客户端同时使用IPv4和IPv6地址访问。

    本文选择IPv4

    加入共享带宽

    选择是否要加入共享带宽。如选中加入共享带宽,则需选择共享带宽包,如果没有共享带宽包可选择,可单击购买共享带宽包并完成购买,然后返回NLB购买页面单击刷新图标,即可选择共享带宽包。

    建议您购买后付费共享带宽,关于如何购买共享带宽,请参见创建共享带宽实例

    说明

    该参数仅在实例网络类型公网时生效。

    公网计费方式

    公网计费方式默认选项为按流量计费:带宽峰值不作为业务承诺指标,仅作为参考值和带宽上限峰值。当出现资源争抢时,带宽峰值可能会受到限制。

    说明

    该参数仅在实例网络类型公网,且未选择加入共享带宽时有效。

    实例名称

    自定义实例名称。

    资源组

    选择所属的资源组。

    服务关联角色

    首次创建NLB实例时,需要单击创建服务关联角色关联服务角色。

  5. 单击立即购买,然后根据控制台提示完成实例购买。

  6. 返回实例页面,选择对应的地域即可看到新创建的实例。

步骤二:创建服务器组

  1. 在左侧导航栏,选择网络型负载均衡 NLB > 服务器组

  2. 服务器组页面,单击创建服务器组

  3. 创建服务器组对话框中,完成以下配置,然后单击创建

    配置

    说明

    服务器组类型

    选择一种服务器组类型。

    • 服务器类型:支持添加ECS、ENI、ECI类型的后端服务器。

    • IP类型:支持添加IP类型的后端服务器。

    本文选择服务器类型

    服务器组名称

    输入服务器组名称。

    VPC

    从VPC下拉列表中选择一个VPC,只有该VPC下的服务器可以加入到该服务器组。

    选择后端协议

    选择一种后端协议。本文选择TCP

    选择调度算法

    选择一种调度算法。本文选择加权轮询

    选择资源组

    选择归属的资源组。

    标签

    设置标签键标签值

    开启IPv6挂载

    开启或关闭IPv6挂载功能。

    • 开启IPv6挂载功能后,服务器组支持挂载IPv4、IPv6类型的后端服务器。

    • 不开启IPv6挂载功能时,服务器组仅支持挂载IPv4类型的后端服务器。

    说明

    当服务器组选择的VPC未开启IPv6功能时,默认不开启IPv6挂载功能。

    本文保持默认配置,即关闭IPv6挂载。

    开启连接优雅中断

    开启或关闭连接优雅中断。启用连接优雅中断后,您可以在移除后端服务器或者健康检查失败后,使现有连接在一定时间内正常传输。

    本文保持默认配置,即关闭连接优雅中断。

    开启客户端地址保持

    开启或关闭客户端地址保持。开启客户端地址保持后,后端服务器可以获取客户端IP地址。本文保持默认配置。

    说明

    IP类型的服务器组不支持自动携带客户端源地址,请在监听中搭配ProxyProtocol实现源地址获取。

    开启全端口转发

    开启或关闭全端口转发。开启后添加后端服务器无需指定端口,NLB将按照前端请求端口转发流量至后端服务器。

    本文保持默认配置,即关闭全端口转发。

    说明

    当您的监听开启全端口功能时,后端服务器组需开启该功能。

    配置健康检查

    开启或关闭健康检查。

    本文保持默认配置,即开启健康检查。

    健康检查配置

    本文保持默认配置。

  4. 服务器组创建成功弹框中单击添加后端服务器

  5. 后端服务器页签单击添加后端服务器

  6. 添加后端服务器面板,选择已创建的ECS02和ECS03实例,然后单击下一步

  7. 为已添加的服务器设置端口和权重,然后单击确定

  8. 返回服务器组页面,查看完成配置的服务器组。

步骤三:配置监听

  1. 在左侧导航栏,选择网络型负载均衡 NLB > 实例

  2. 实例页面,单击步骤一创建的实例ID。

  3. 单击监听页签,在监听页签单击快速创建监听

  4. 快速创建监听对话框中,配置以下参数,然后单击确定

    监听配置

    说明

    选择监听协议

    选择监听的协议类型。本文选择TCP

    监听端口

    设置前端协议端口,即用来接收请求并向后端服务器进行请求转发的监听端口。

    您可以直接单击常用监听端口快捷填写,或者输入端口。监听端口范围:1~65535。

    本文输入80

    转发的后端服务器组

    选择服务器类型服务器类型下的后端服务器组。

    本文选择步骤二创建的后端服务器组。

(可选)步骤四:设置域名解析

  1. 在左侧导航栏,选择网络型负载均衡 NLB > 实例

  2. 实例页面,复制已创建的NLB实例的DNS名称。

  3. 执行以下步骤添加CNAME解析记录。

    1. 登录域名解析控制台

    2. 域名解析页面单击添加域名

    3. 添加域名对话框中输入您的主机域名,然后单击确认

      重要

      您的主机域名需已完成TXT记录验证。

    4. 在目标域名的操作列单击解析设置

    5. 解析设置页面,单击添加记录

    6. 添加记录面板,配置以下信息完成CNAME解析配置,然后单击确认

      配置

      说明

      记录类型

      在下拉列表中选择CNAME

      主机记录

      您的域名的前缀。本文输入@

      解析请求来源

      选择默认。

      记录值

      输入域名对应的CNAME地址,即您复制的NLB实例的DNS名称。

      TTL

      全称Time To Live,表示DNS记录在DNS服务器上的缓存时间,本文使用默认值。

      说明
      • 新增CNAME记录实时生效,修改CNAME记录取决于本地DNS缓存的解析记录的TTL到期时间,一般默认为10分钟。

      • 添加时如遇添加冲突,请换一个解析域名。更多信息,请参见解析记录互斥规则

步骤五:访问测试

本文列出了以下两种方法验证NLB是否可以将请求转发至后端服务器。

测试方法1

当您为NLB设置域名解析后,您可以在浏览器中输入步骤四解析的域名,测试NLB是否将请求转发至后端服务器。关于CNAME解析验证的更多信息,请参见解析生效测试方法

在浏览器中输入域名,如下图所示,表示NLB可以将请求转发至后端服务器。nlb1

测试方法2

  1. 登录NLB所在VPC中的ECS01实例。具体操作,请参见ECS远程连接操作指南

  2. 执行telnet DNS名称 监听端口命令,测试VPC内的ECS01实例是否能通过NLB访问后端挂载的ECS02。

    telnet nlb-4vg3hnps6q********.cn-hangzhou.nlb.aliyuncs.com 80

    收到如下所示的回复报文,则表示NLB可以将请求转发至后端服务器。nlb_test

相关文档

  • 本页导读 (1)
文档反馈