全部产品
Search
文档中心

弹性伸缩:为伸缩组添加和移除负载均衡实例

更新时间:Sep 24, 2024

伸缩组支持关联负载均衡实例,通过负载均衡实例将访问流量分发到伸缩组内的多个实例中,可以有效增强伸缩组的服务能力。您可以通过在弹性伸缩控制台操作或者调用API参数(例如AttachLoadBalancers和DetachLoadBalancers)来实现为伸缩组添加和移除负载均衡实例。

背景信息

本文主要以传统型负载均衡CLB(原SLB)为例进行说明。伸缩组关联负载均衡实例后,无论是伸缩组自动创建实例,还是您向伸缩组手动添加实例,实例都会自动添加到负载均衡实例的后端服务器。负载均衡实例会根据流量分发、健康检查等策略灵活使用伸缩组内的实例资源,在资源弹性的基础上大幅提高资源可用性。更多信息,请参见负载均衡简介

负载均衡简介

负载均衡SLB(Server Load Balancer)是一种对流量进行按需分发的服务,通过将流量分发到不同的后端服务器来扩展应用系统的吞吐能力,可以消除系统中的单点故障,提升应用系统的可用性。更多信息,请参见负载均衡SLB产品家族介绍

阿里云负载均衡SLB分为应用型负载均衡ALB(Application Load Balancer)网络型负载均衡NLB(Network Load Balancer)传统型负载均衡CLB(Classic Load Balancer)三种类型。

类型

说明

相关文档

ALB

专门面向七层,提供强大的七层业务处理性能,同时提供基于内容的高级路由特性。

什么是应用型负载均衡ALB

NLB

面向万物互联时代推出的新一代四层负载均衡,支持超高性能和自动弹性能力,单实例可以达到1亿并发连接,帮您轻松应对高并发业务。

什么是网络型负载均衡NLB

CLB(原SLB)

支持TCP、UDP、HTTP和HTTPS协议,具备良好的四层和基础的七层处理能力。通过设置虚拟服务地址,将添加的同一地域的多个实例虚拟成一个高性能、高可用的应用服务池。

什么是传统型负载均衡CLB

以传统型负载均衡CLB(原SLB)为例进行说明,该负载均衡服务通过组合负载均衡CLB实例、监听和后端服务器,提供流量分发控制服务。主要由以下三个部分组成:

说明

应用型负载均衡ALB主要由负载均衡ALB实例、监听(负载均衡的最小业务单元)、服务器组(即一个包含多个后端服务器的逻辑组)三部分组成,更多信息,请参见ALB服务器组概述

功能

说明

相关文档

负载均衡CLB实例(Classic Load Balancer Instances)

是一个运行的负载均衡服务实体,用来接收流量并将其分配给后端服务器。

说明

加入传统型负载均衡CLB(原SLB)的实例权重默认为50,您可以根据需要在对应负载均衡实例中调整权重,具体操作,请参见在默认服务器组添加和管理后端服务器

CLB实例概述

监听(Listeners)

用来检查客户端请求并将请求转发给后端服务器,会对后端服务器进行健康检查。

CLB监听概述

后端服务器(Backend Servers)

是一组接收前端请求的实例。您可以单独添加实例到后端服务器池,也可以通过虚拟服务器组或主备服务器组来批量添加和管理。

后端服务器概述

注意事项

以传统型负载均衡CLB(原SLB)为例进行说明,下文中的负载均衡均指负载均衡CLB(原SLB)。

  • 伸缩组关联负载均衡或负载均衡服务器组后,您需要注意以下事项:

    • 如果负载均衡或负载均衡服务器组被删除(不存在),则伸缩组扩缩容时会显示扩缩容失败。

    • 弹性伸缩会定期扫描伸缩组是否存在关联的负载均衡或负载均衡服务器组,如果检测到负载均衡或负载均衡服务器组被删除(不存在),则系统会自动解绑伸缩组与该负载均衡或负载均衡服务器组(不存在)的关联关系。

      重要

      系统自动解绑与负载均衡(不存在)或负载均衡服务器组(不存在)的关联关系后,伸缩组再次扩缩容时,不会出现因该已解绑的负载均衡或该已解绑的负载均衡服务器组而导致扩缩容失败的情况。

  • 伸缩组添加或移除负载均衡实例时,您需要注意以下事项:

    添加负载均衡实例

    伸缩组中添加负载均衡实例时,需注意:

    • 如果API AttachLoadBalancers中的请求参数ForceAttachfalse,则将负载均衡实例添加到伸缩组时,系统不会将当前伸缩组中已有的实例添加为负载均衡实例的后端服务器。

    • 如果API AttachLoadBalancers中的请求参数ForceAttachtrue,则将负载均衡实例添加到伸缩组时,系统会将当前伸缩组中已有的实例全部添加为负载均衡实例的后端服务器。

    • 调用弹性伸缩的AttachLoadBalancers接口最多支持一次添加5个负载均衡实例到伸缩组。

    • 如果负载均衡实例已添加至伸缩组,而您需要将伸缩组中全部实例添加为该负载均衡实例的后端服务器,您可以再次将该负载均衡实例添加到伸缩组,并选择ForceAttachtrue状态。

    • 将负载均衡实例添加到伸缩组时,负载均衡实例需满足如下限制:

      • 您必须持有一个或多个处于运行中状态的负载均衡实例。具体操作,请参见创建和管理CLB实例

      • 负载均衡实例和伸缩组必须位于同一地域。

      • 负载均衡实例必须至少配置一个监听并开启健康检查功能。更多信息,请参见CLB监听概述配置和管理CLB健康检查

      • 如果负载均衡实例与伸缩组都为专有网络类型时,则必须处于相同的专有网络下。

      • 当伸缩组为专有网络类型,而负载均衡实例为经典网络类型时,如果负载均衡实例的后端服务器中包含专有网络实例,则该实例必须与伸缩组处于相同的专有网络下。

        说明

        除以上情况外,伸缩组在关联负载均衡实例时不限制彼此的网络类型。

      • 伸缩组中附加的负载均衡实例个数必须少于伸缩组的配额。

    移除负载均衡实例

    从伸缩组中移除负载均衡实例时,需注意:

    • 如果API DetachLoadBalancers中的请求参数ForceAttachfalse,从伸缩组中移除负载均衡实例时,系统不会从负载均衡实例后端服务器上移除与伸缩组关联的实例。

    • 如果API DetachLoadBalancers中的请求参数ForceAttachtrue,从伸缩组中移除负载均衡实例时,系统会将负载均衡实例后端服务器上与伸缩组关联的实例移除。

    • 调用弹性伸缩的DetachLoadBalancers接口最多支持一次从伸缩组移除5个负载均衡实例。

    • 如果移除伸缩组的负载均衡实例时,您需要确认该负载均衡实例不再向伸缩组内实例分发请求,避免造成服务请求丢失的情况。

操作步骤

您可以通过弹性伸缩控制台或者调用API的两种方式来为伸缩组添加和移除负载均衡实例,而采用API方式时,您无需提前考虑您的业务需求和所需负载均衡实例数量,将负载均衡实例与伸缩组的耦合程度降低,更加灵活地增强伸缩组的服务能力。

API方式

  • 调用API AttachLoadBalancers可实现添加一个或多个负载均衡实例的功能,更多信息,请参见AttachLoadBalancers。您也可以调用API AttachVServerGroups添加负载均衡实例下的一个或者多个虚拟服务器组。更多信息,请参见AttachVServerGroups

  • 调用API DetachLoadBalancers可实现移除一个或多个负载均衡实例的功能,更多信息,请参见DetachLoadBalancers。您也可以调用API DetachVServerGroups移除一个或者多个虚拟服务器组。更多信息,请参见DetachVServerGroups

说明

您也可以通过调用API参数为伸缩组添加或者移除应用型负载均衡ALB服务器组,更多信息,请参见AttachAlbServerGroupsDetachAlbServerGroups

控制台方式

  1. 登录弹性伸缩控制台

  2. 在左侧导航栏中,单击伸缩组管理

  3. 在顶部菜单栏处,选择地域。

  4. 进入伸缩组关联负载均衡的页面。

    • 创建伸缩组时关联负载均衡

      本步骤重点介绍关联传统型负载均衡CLB(原SLB)相关的操作,如需了解其他配置,请参见配置伸缩组

      1. 单击创建伸缩组

      2. 选择网络类型专有网络经典网络

      3. 配置关联传统型负载均衡CLB(原SLB)

        说明

        如果网络类型专有网络时,在创建伸缩组页面的专有网络参数后,先选择一个专有网络,然后配置关联负载均衡ALB、NLB服务器组

        1. 选择传统型负载均衡CLB(原SLB)实例。

          一个伸缩组支持关联的传统型负载均衡CLB(原SLB)实例和虚拟服务器组数量有限,您可以前往配额中心,查看或手动申请提升配额值。如果没有出现可选的传统型负载均衡CLB(原SLB)实例,请检查您的传统型负载均衡CLB(原SLB)实例是否满足注意事项中的相关限制。

        2. 选择负载均衡CLB(原SLB)实例的后端服务器组。

          伸缩组支持选择默认服务器组和虚拟服务器组。更多信息,请参见后端服务器概述

          服务器组

          说明

          默认服务器组

          用于接收前端请求的实例。如果监听没有设置虚拟服务器组或主备服务器组,默认将请求转发至默认服务器组中的实例。

          虚拟服务器组

          用于将不同的请求转发到不同的后端服务器上,或通过域名和URL进行请求转发。

          伸缩组关联负载均衡CLB(原SLB)实例后,您可以根据需要在创建伸缩组时指定实例加入负载均衡后端服务器分组时的权重,也可以在创建伸缩配置时设置负载均衡权重参数来指定实例加入负载均衡后端服务器分组时的权重。

          • 场景1:创建伸缩组时,您可以指定实例加入负载均衡后端服务器分组时的权重。后端服务器权重

            重要

            如果伸缩组的组内实例配置信息来源选择启动模板方式,由于您无需再创建伸缩配置,您只能在创建伸缩组时指定实例加入负载均衡后端服务器分组时的权重。

          • 场景2:在创建伸缩配置时,您可以设置负载均衡权重参数来指定实例加入负载均衡后端服务器分组时的权重。负载均衡权重

          不同场景(场景1场景2)下指定实例加入负载均衡后端服务器分组时的权重,对弹性伸缩的影响如下所示:

          • 如果场景1场景2下都指定了实例加入负载均衡后端服务器分组时的权重,则弹性伸缩使用场景1中设置的权重而忽略场景二中设置的权重。

          • 如果仅在场景2下指定负载均衡权重,则弹性伸缩使用场景2中设置的权重。

          • 如果场景1场景2下都未指定实例加入负载均衡后端服务器分组时的权重,则弹性伸缩默认权重值为50。

      4. 根据需要配置其余选项。

      5. 配置创建完成后,单击确认

    • 修改伸缩组中关联的负载均衡

      本步骤重点介绍修改关联的传统型负载均衡CLB(原SLB)相关的操作,如需了解其他配置的修改,请参见修改伸缩组

      1. 找到待操作的伸缩组,单击对应操作列下的修改

      2. 根据实际业务情况选择是否选中挂载或卸载负载均衡时,将伸缩组现有的实例加入或移出负载均衡机器分组(只针对本次挂载或卸载的负载均衡实例)

        说明

        如果在创建伸缩组时关联了应用型负载均衡ALB服务器组,则在修改伸缩组页面,您也可以根据需要选择是否挂载或卸载服务器组时,将伸缩组现有的实例加入或移出服务器组机器分组(只针对本次挂载或卸载的ALB服务器组)。服务器组实例挂载到伸缩组的同时,会将伸缩组内已有的实例加入到指定的服务器组中;服务器组实例从伸缩组卸载时,会将伸缩组内已有的实例从指定的服务器组中移出。

        • 选中:自动在本次挂载的负载均衡服务器组中添加伸缩组现有的实例,或者自动在本次卸载的负载均衡服务器组中移出伸缩组现有的实例。

        • 不选中:本次挂载或卸载的负载均衡服务器组不发生变化,维持原样。

      3. 根据实际业务情况选择是否选中异步卸载或挂载默认服务器组

        • 选中:每一次单独挂载或卸载负载均衡默认服务器组时,都会生成一个伸缩活动。仅支持单独挂载或单独卸载负载均衡默认服务器组,如果挂载和卸载负载均衡默认服务器组同时进行时此选项将会无效)。

        • 不选中:每一次单独挂载或卸载负载均衡默认服务器组时,不会生成一个伸缩活动。

      4. 可选:根据实际业务情况修改实例加入负载均衡后端服务器分组时的权重。

        如果您在创建伸缩组时关联负载均衡CLB(原SLB)实例,并设置了实例加入负载均衡后端服务器分组时的权重,则您可以根据需要修改该权重。

      5. 根据需要修改其余配置选项。

      6. 配置修改完成后,单击确认

相关文档

伸缩组关联RDS数据库实例后,加入伸缩组的ECS实例的内网IP会自动加入RDS数据库实例的访问白名单,允许ECS实例和RDS数据库实例内网通信。具体操作,请参见为伸缩组添加和移除RDS实例