创建应用程序负载均衡器

您可以创建 IBM Cloud® Application Load Balancer for VPC (ALB),在多个实例之间分配入站流量。 您可以将 ALB 与虚拟服务器实例、裸机服务器实例以及具有负载平衡器可访问 IP 地址的其他设备一起使用,例如通过 IBM Cloud Direct Link 连接的 Power Systems™ Virtual Server 实例。

在控制台中创建应用程序负载平衡器

要创建 ALB:

  1. 在浏览器中打开 IBM Cloud 控制台,并登录您的账户。

  2. 选择导航菜单 菜单图标,然后单击基础架构 VPC 图标 > 网络 > 负载平衡器

  3. 在“VPC 负载均衡器”页面上,单击 “创建”

  4. 在“负载均衡器类型”中,选择 “应用程序负载均衡器(ALB)”磁贴。

  5. 在“位置”部分,如有必要,请编辑以下字段。

    • 区域: 指示要在其中创建负载均衡器的区域。
  6. 在“详细信息”部分,请填写以下信息:

    • 名称:为负载均衡器输入名称,例如 my-load-balancer

    • 资源组:为负载均衡器选择资源组。

    • 标签:(可选)添加标签,以便整理和查找您的资源。 以后可以添加更多标记。 有关更多信息,请参阅使用标记

    • 访问管理标记: (可选) 向资源添加访问管理标记以帮助组织访问控制关系。 访问管理标记唯一受支持的格式为 key:value。 有关更多信息,请参阅 使用标记控制对资源的访问

    • 虚拟私有云:选择您的 VPC。

    • 子网:选择要在其中创建负载均衡器的子网。 要最大限度提高应用程序的可用性,请选择不同专区中的子网。

      每个 ALB 不能分配超过 15 个子网。

    • 类型: 选择负载均衡器类型。

      • 公共负载均衡器拥有一个公共 IP 地址,这意味着它可以通过互联网转发来自客户端的请求。
      • 私有负载均衡器拥有一个私有 IP 地址,这意味着只有位于同一区域和同一 VPC 内的内部客户端才能访问它。
    • DNS 类型:请选择 “公共” 或“私有”。 私有 DNS 区域仅可在 IBM Cloud 上解析,且仅限于账户中明确允许的网络或具有跨账户访问权限的网络。

      对于专用类型,单击“绑定”输入 DNS 实例和区域信息,然后单击“绑定”。

  7. 在后端池部分,单击创建并指定以下信息以创建后端池。 可以创建一个或多个池。

    • 名称:为池输入名称,例如 my-pool
    • 池协议:为该池中的实例选择协议。 池协议必须与其监听器协议兼容。 对于 HTTP 或 HTTPS 监听器,请使用 HTTP 作为池协议。 对于 TCP 监听器,使用 TCP 作为池协议。
    • 会话粘性:选择是否用户会话期间的所有请求都发送到同一实例。
    • 代理协议:选择 “已禁用” (默认)、“版本 1”或 “版本 2” (代理协议头部的版本)。 代理协议会在发送到后端池的 TCP、HTTP 和 HTTPS 数据包中添加一个代理协议头。 此设置可使后端服务器获取负载均衡器在代理协议头中设置的客户端 IP 和端口信息。
    • 方法:选择希望负载均衡器如何在池中的各实例之间分配流量:
      • 最少连接数:将请求转发到当前时间具有最少连接数的实例。
      • 循环法:依次将请求转发给每个实例。 所有实例收到的客户机连接数大致相等。
      • 加权循环法:根据每个实例分配的权重,按比例将请求转发到每个实例。 例如,您有实例 A,B 和 C,它们的权重设置为 606030。 实例 A 和 B 接收的连接数相等,实例 C 接收的连接数为连接数的一半。
    • 健康检查:配置负载均衡器检查实例健康状况的方式。
      • 健康检查路径:只有当选择“HTTP”作为健康检查协议时,健康检查路径才适用。 健康检查路径指定了负载均衡器用于向池中的实例发送 HTTP 健康检查请求所使用的 URL。 缺省情况下,运行状况检查会发送到根路径 (/)。
      • 健康检查协议:负载均衡器用于向池中的实例发送健康检查消息的协议。
      • 健康端口(可选):发送健康检查请求的端口。 默认情况下,健康检查会通过与向实例发送流量相同的端口进行。
      • 间隔(秒):两次连续健康检查尝试之间的间隔时间(以秒为单位)。 默认情况下,每5秒发送一次健康检查。
      • 超时(秒):系统等待健康检查请求响应的最长时间。 默认情况下,负载均衡器会等待 2 秒以获取响应。
      • 最大重试次数:负载均衡器在将实例判定为不可用之前,最多会进行多少次健康检查。 缺省情况下,两次运行状况检查失败后,即不会再认为实例运行状况正常。
  8. (可选)选择 “请求设置”以自定义健康检查请求的值。 如果未指定任何值,则使用默认设置。

    • 请求方法:请选择以下其中一种:GETPOST。 您可以为这两种方法自定义请求头。 在使用 POST 方法时,您可以选择自定义请求正文。
    • 请求正文:包含用于健康检查的 HTTP 请求正文。 如果未指定,健康检查请求将不包含请求正文。
    • 主机头:包含主机头,以确保请求使用 HTTP/1.1 协议。 否则,系统将默认使用 HTTP/1.0。
    • 添加其他请求头:添加一个或多个额外的请求头。
    • 标头名称:对于 GET 请求方法,请从以下选项中选择一个:content-typeacceptauthorizationcookieoriginreferreruser-agent。 对于 POST 的请求方法,请选择以下其中一种:content-typecontent-lengthapplication-jsonaccept-encoding
    • :输入与指定的“标题”名称相对应的值。

    对于私有路径网络负载均衡器(PPNLB),存在一个已知问题:GET API 响应中未返回健康检查请求和响应字段。

  9. (可选)选择 “响应设置”以自定义健康检查的响应值。 如果未指定任何值,则使用默认设置。

    • 响应正文:输入响应正文内容。

    • 响应代码:您可以在 100-599 的范围内指定多个以逗号分隔的值。 要指定一个范围,请使用 XX。 例如,2XX 适用于 200-299。

      HTTP 以明文形式发送数据,这种数据可能被截获,因此被认为是不安全的。建议使用 https 作为协议,而不是 http。 更多详情,请参阅《 为什么 HTTP 并不安全? 》。

      尽管负载均衡器会停止将连接发送到状态异常的实例,但它仍会继续监控这些实例的状态,并在发现它们恢复正常(即连续两次通过健康检查)后恢复使用这些实例。

      如果池中的实例状态异常,而您认为应用程序运行正常,请仔细检查健康检查协议和健康检查路径的值。 此外,请检查附加到实例上的所有安全组,以确保其规则允许负载均衡器与实例之间的流量通过。

  10. 单击 创建 以创建后端池。

    您可以在创建后端池后连接服务器实例。

  11. 要将服务器实例添加到新池,请单击表的 服务器实例 列中的 连接服务器

    • 要将 VPC 设备 (例如,虚拟服务器实例和裸机服务器) 添加到池中,请选择 VPC 设备 选项卡。 为每个实例指定以下信息:

      • 选择要从中选择实例的一个或多个子网。

      • 选择实例。 如果一个实例有多个接口,请确保选择正确的 IP 地址。

      • 指定用于向实例发送流量的端口。

      • 如果池使用加权循环法,请为每个实例分配权重。

        将权重设置为 0 意味着不会将新的连接转发到该实例,但在当前连接处于活动状态期间,现有流量仍将继续流经该实例。 使用权重 0 有助于让实例平稳下线,并将其从服务轮转中移除。

      • 单击 配置端口和权重,然后指定将流量发送到实例的端口。

    • 要将其他服务器实例 (例如 IBM Power Systems Virtual Server中包含的服务器) 连接到后端池,请选择 其他 选项卡,然后单击 添加更多。 为每个实例指定以下信息:

      • 指定设备的专用 IP 地址。

      • 指定用于向实例发送流量的端口。

      • 如果池使用加权循环法,请为每个实例分配权重。

        将权重设置为 0 意味着不会将新的连接转发到该实例,但在当前连接处于活动状态期间,现有流量仍将继续流经该实例。 使用权重 0 有助于让实例平稳下线,并将其从服务轮转中移除。

    • 单击 连接 以将服务器实例连接到后端池。

  12. 在“前端侦听器”部分中,单击 创建侦听器 并指定以下信息以创建侦听器。 可以创建一个或多个侦听器。

    • 协议:用于接收入局请求的协议。
    • 代理协议: 选择是否允许前端侦听器接受代理协议流量。
    • 端口:接收请求的侦听端口。
    • 后端池:此监听器将流量转发到的默认后端池。
    • 最大连接数(可选):侦听器允许的最大并发连接数。
    • IAM授权:如果 HTTPS 是此侦听器的选定协议,则必须指定您的IAM授权,可以是实例授权,也可以是CRN授权。
    • Secrets Manager:如果 HTTPS 是此侦听器的选定协议,则必须选择或创建一个密钥管理器。
    • SSL 证书:如果为此侦听器选择的协议是 HTTPS,那么必须选择 SSL 证书。 请确保负载均衡器已获得访问 SSL 证书的授权。
    • 超时 (秒) (可选): 最大超时,在此超时之后,如果在空闲超时时间段过去之前未发送或接收任何数据,那么负载均衡器将关闭连接。 最小和最大超时值分别为 50 秒和 2 小时。 这些值同时适用于客户端和服务器。 要将超时限制增加到 2 小时以上,请 创建一个支持案例,提供所需超时值的业务要求。
  13. 单击 创建 以创建前端侦听器。

  14. 在“安全组”部分中,选择要附加到负载均衡器的安全组,或者单击 创建 以创建要附加到 ALB 的新安全组。

    确保安全组允许负载均衡流量 (侦听器,后端和运行状况检查端口)。 如果未指定安全组,那么将改为连接 VPC 中的缺省安全组。

  15. 创建池和侦听器完成后,单击创建负载均衡器

  16. 要查看现有负载均衡器的详细信息,请单击负载均衡器页面上负载均衡器的名称。

  17. 您也可以为现有的任何池创建备份。 这样,如果某个成员出现故障,备份池就可以管理流量。 为此,您必须创建一个故障安全策略:

    • 只有应用程序负载平衡器才允许将多个池与单个监听器关联。

    • 确保负载平衡器中已存在至少一个池。

      监听器是负载平衡器中的父资源。 您可以直接(通过将其设置为 default_pool )或间接(通过另一个池的 failsafe_policy.target )将池与监听器关联起来。 间接引用的池必须已链接到监听器。

    • 负载均衡器的状态变为 “活动” 后,选择 “后端池”选项卡

    • 在泳池列表页面中,点击“编辑”,然后指定以下信息:

      • 操作:选择转发以配置故障安全策略。 当成员出现故障时,它会将流量转发到备份池,并使目标部分处于活动状态。
      • 目标:从兼容池列表中选择一个池作为备份池。
  18. 如果您想将流量从 HTTP 监听器重定向到 HTTPS 监听器,您可以创建一个 HTTP 监听器,并设置 HTTPS 重定向。

    在此处定义的层 7 负载均衡策略覆盖设置。 此外,请注意,在创建带有 HTTPS 重定向的新 HTTP 监听器之前,必须已存在一个 HTTPS 监听器。

    为此,请执行以下操作:

    • 负载均衡器的状态更改为 活动后,单击 前端侦听器 选项卡。
    • 在侦听器列表页面中,单击 创建,然后指定以下信息:
      • 协议:选择 HTTP 作为协议。
      • 端口:选择用于接收请求的监听端口。
      • 最大连接数 (可选):定义监听器允许的最大并发连接数。
      • HTTPS 重定向:点击切换按钮启用 重定向配置,然后指定以下 重定向设置:HTTPS HTTPS
        • HTTPS 监听器:目标 HTTPS 监听器,当前 HTTP 监听器的传入流量将被重定向到该监听器。 请注意,您只能看到 HTTPS 监听器的列表,其 accept_proxy_protocol 值与 HTTP 监听器相同。
        • 重定向URI (可选):请求重定向到的 URL。
        • 状态码: 负载均衡器返回的响应的状态码。
  19. 如果您想根据特定条件为 HTTP 或 HTTPS 前端侦听器重定向、转发或拒绝特定的传入流量,请配置第7层策略。

    • 负载均衡器的状态更改为 活动后,单击导航中的 前端侦听器,然后单击您创建的侦听器的 策略 列中的值。
    • 在“策略”页面上,单击 添加策略 并指定以下信息以创建策略。 您可以创建多个策略。
      • 名称:输入策略的名称,例如“my-policy”。 名称在侦听器中必须唯一。
      • 操作: 策略的所有规则匹配时要执行的操作。 您可以使用403响应拒绝请求,将请求重定向到配置的 URL 和响应代码,将流量从 HTTP 监听器重定向到 HTTPS 监听器,或将请求转发到特定的后端池。 如果入局请求与任何策略的规则都不匹配,那么会将该请求转发到侦听器的缺省后端池。
      • 优先级: 在每种操作类型中,将按优先级升序对策略进行求值。 无论优先级如何,系统总是优先评估用于拒绝流量的策略。 接下来将评估用于重定向流量的策略,然后评估用于转发流量的策略。
      • 重定向:如果操作设置为“重定向”,则此处指定请求将被重定向到的 URL。 您必须提供一个完整的 URL 或URI的参数。 使用 URL 时,所有传入流量都会重定向到该 URL。 使用 URI 参数时,可通过使用参数的传入值来保留传入流量请求的值。 这包括协议、端口、主机、路径和查询。 URI 参数的默认值等于其原始输入值。 要保留输入的值,请将它们作为 {protocol}{port}{host}{path}{query} 提供。 例如,如果传入请求的主机是 ibm.com,那么默认值就是 {host},等于传入的 ibm.com 值。
      • 状态码:如果操作设置为“重定向”,则为负载均衡器返回的响应的状态码。
      • 转发:如果操作设置为“转发到池”,则指请求被转发到的后端虚拟服务器实例池。
    • 在“策略”页面,您还可以创建一个 HTTPS 重定向策略,配置如下:
      • 名称:输入策略的名称,例如“my-policy”。 名称在侦听器中必须唯一。
      • 操作:选择重定向到 HTTPS 选项。
      • HTTPS 监听器:目标 HTTPS 监听器,当前 HTTP 监听器的流量将被重定向到该监听器。 请注意,您只能看到 HTTPS 监听器的列表,其 accept_proxy_proxy 值与 HTTP 监听器相同。
      • 重定向URI (可选):请求重定向到的 URL。
      • 状态码: 负载均衡器返回的响应的状态码。
    • 在“策略”页面上,单击策略的 添加规则。 如果策略存在规则,请单击 规则 列中的值以添加更多规则。
    • 在“规则”窗口中,单击 添加规则 并指定以下信息以创建规则。 如果为策略创建多个规则,那么仅当策略的所有规则都匹配时,才会应用该策略。
      • 条件:指定用于评估规则的条件。
      • 类型:规则评估的信息类型:请求源自的主机名称、HTTP 报头字段或 URL 中的路径。
      • :待匹配的值。
      • 关键:如果规则类型为“报头”,则需评估 HTTP 报头字段的名称。 例如,要匹配 HTTP 标头中的cookie,请在键中输入 Cookie

从 CLI 创建应用程序负载均衡器

以下示例演示了如何使用命令行界面(CLI)创建应用负载均衡( Application Load Balancer for VPC,ALB)。 在本例中,它位于运行 TCP 服务器的一个 VPC 虚拟服务器实例(ID 0716_6acdd058-4607-4463-af08-d4999d983945 )前面,该服务器通过 9090 端口监听。 负载平衡器有一个前端监听器,允许安全访问 TCP 服务器。

要从 CLI 创建应用程序负载均衡器,请执行以下步骤:

  1. 设置 CLI 环境

  2. 使用终端通过 CLI 登录到您的帐户。 输入密码后,系统会提示您要使用的帐户和区域:

    ibmcloud login --sso
    
  3. 创建负载均衡器:

    ibmcloud is load-balancer-create alb-test public --subnet 0896-b1f24514-89dc-4afd-b0e2-5489a43cf45c --family application
    

    样本输出:

    ibmcloud is load-balancer-create my-lb public --subnet my-subnet
    Creating load balancer my-lb under account vpcdemo as user test@ibm.com..
    
    ID                                 r026-ec6717fa-aa6c-46c4-94ff-4ccd193ee423   
    Name                               my-lb   
    CRN                                crn:v1:bluemix:public:is:au-syd:a/7f75c7b025e54bc5635f754b2f888665::load-balancer:r026-ec6717fa-aa6c-46c4-94ff-4ccd193ee423   
    Family                             application   
    Host name                          ec6717fa-au-syd.lb.appdomain.cloud   
    Subnets                            ID                                          Name      
                                    02h7-16f74a61-b586-4143-92df-dbc4a047bd5c   my-subnet      
    
    Public IPs                            
    Private IPs                           
    Provision status                   create_pending   
    Operating status                   offline   
    Is public                          true   
    Is private path                    false   
    Listeners                             
    Pools                              ID   Name      
    
    Resource group                     ID                                 Name      
                                    bdd96715c2a44f2bb60df4ff14a543f5   -      
    
    Created                            2026-05-26T14:47:06+05:30   
    Availability                       subnet   
    Instance Group Supported           true   
    SourceIP Session Supported         true   
    Security groups supported          true   
    UDP Supported                      false   
    Failsafe policy actions            fail,drop,forward   
    Access mode                        public   
    Advanced Health Checks Supported   true   
    FQDN Pool Members Supported        true     
    
  4. 创建一个池:

    ibmcloud is load-balancer-pool-create alb-pool r134-1b3d2967-d395-4023-8705-829454081e23  weighted_round_robin tcp 10  --failsafe-policy-action forward --failsafe-policy-target pool2
    

    样本输出:

    Creating pool alb-pool of load balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776  under account IBM Cloud Network Services as user test@ibm.com...
    
    ID                         r006-3b66d605-6aa5-4166-9f66-b16054da3cb0
    Name                       alb-pool
    Protocol                   tcp
    Algorithm                  weighted_round_robin
    Instance group             ID   Name
                               -    -
    
    Health monitor             Type   Port   Health monitor URL   Delay   Retries   Timeout
                               http   8080   /                    10      2         5
    
    Failsafe policy            Action    Target ID                                   Target name   Healthy Member Threshold Count
                               forward   r006-815e16e7-8729-4d9e-9203-936a6b615ee1   pool2         0
    
    Session persistence type   source_ip
    Members
    Provision status           active
    Created                    2020-08-27T14:45:42.038-05:00
    
  5. 创建成员:

    ibmcloud is load-balancer-pool-member-create r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 9090 0716_6acdd058-4607-4463-af08-d4999d983945 --weight 70
    

    样本输出:

    Creating member of pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 under account IBM Cloud Network Services as user test@ibm.com...
    
    ID                 r006-61f8b000-a90d-4abe-909e-c507dffec565
    Port               9090
    Target             0716_6acdd058-4607-4463-af08-d4999d983945
    Weight             70
    Health             unknown
    Created            2020-08-27T14:59:55.446-05:00
    Provision status   create_pending
    
  6. 创建侦听器:

    $ibmcloud is load-balancer-listener-create r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 7070 tcp --default-pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 -idle-connection-timeout 30
    

    样本输出:

    $ibmcloud is load-balancer-listener-create r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 7070 tcp --default-pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 -idle-connection-timeout 30
    
    Sample output:
    Creating listener of load balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 under account IBM Cloud Network Services as user test@ibm.com...
    ID                      r006-2847a948-f9b6-4fc1-91c6-f1c49dac3eba
    Certificate instance    -
    Connection limit        -
    Idle connection timeout 30
    Port                    7070
    Protocol                tcp
    Default pool            r006-3b66d605-6aa5-4166-9f66-b16054da3cb0
    Provision status        create_pending
    Created                 2020-08-27T15:16:08.643-05:00
    

    有关更多选项,请参阅 负载平衡器 VPC CLI 参考

  7. 制定政策:

    ibmcloud is load-balancer-listener-policy-create 72251a2e-d6c5-42b4-97b0-b5f8e8d1f479 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 --action redirect --priority 2 --target-http-status-code 301 --target-url "https://{host}:443/{path}"
    

    样本输出:

    Creating policy of load balancer listener 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 under account IBM Cloud Network Services as user test@ibm.com...
    
    ID                      r006-4847a949-f9b6-4fc1-71c6-d1c49dac3ebc
    Action                  redirect
    Priority                2
    Http status code        301
    Target Url              https://{host}:443/{path}
    Provision status        create_pending
    Created                 2024-04-23T15:16:08.643-05:00
    
  8. 获取有关负载均衡器的详细信息:

    ibmcloud is load-balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776
    

    样本输出:

    Getting load balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 under account IBM Cloud Network Services as user test@ibm.com...
    
    ID                 r006-99b5ab45-6357-42db-8b32-5d2c8aa62776
    Name               alb-test
    CRN                crn:v1:public:is:us-south-1:a/123456::load-balancer:r006-99b5ab45-6357-42db-8b32-5d2c8aa62776
    Family             Application
    Host name          99b5ab45-us-south.lb.test.appdomain.cloud
    Subnets            ID                                          Name
                       0896-b1f24514-89dc-4afd-b0e2-5489a43cf45c   alb-subnet
    
    Public IPs         150.238.50.78, 150.238.54.95
    Private IPs        10.240.0.58, 10.240.0.59
    Provision status   active
    Operating status   online
    Is public          true
    Listeners          r006-2847a948-f9b6-4fc1-91c6-f1c49dac3eba
    Pools              ID                                          Name
                       r006-3b66d605-6aa5-4166-9f66-b16054da3cb0   alb-pool
    
    Resource group     ID                                 Name
                       3021f90279574ce287dd5fba82c08899   Default
    
    Created            2020-08-27T14:34:34.732-05:00
    

使用 API 创建应用程序负载均衡器

以下示例说明如何使用 API 在运行在端口 80 上侦听的 Web 应用程序的两个 VPC 虚拟服务器实例 (192.168.100.5192.168.100.6) 之前创建应用程序负载均衡器。 负载均衡器有一个前端监听器,可通过 HTTPS 安全地访问该 Web 应用程序。

此示例跳过使用 API 来供应 VPC,子网和实例的 先决条件步骤

要使用 API 创建应用程序负载均衡器,请执行以下步骤:

  1. 设置 API 环境

  2. 将以下值存储在要在 API 命令中使用的变量中:

    • ResourceGroupId-首先,获取资源组,然后填充变量:
    export ResourceGroupId=<your_resourcegroup_id>
    

    您还可以使用 IBM Cloud 控制台查找资源组 ID。 在浏览器中打开 IBM Cloud 控制台,并登录您的账户。 选择管理 > 帐户 > 资源组

  3. 使用以下示例代码创建一个带有监听器、池和附加服务器实例(池成员)的负载平衡器:

    curl -H "Authorization: Bearer $iam_token" -X POST
    "$vpc_api_endpoint/v1/load_balancers?version=$api_version&generation=2" \
      -d @alb_create_payload.json
      Where alb_create_payload.json has the following content:
      '{
          "name": "example-balancer",
          "is_public": true,
          "listeners": [
              {
                  "certificate_instance": {
                      "crn": "crn:v1:bluemix:public:cloudcerts:us-south:a/123456:b8877ea4-b8eg-467e-912a-da1eb7f031cg:certificate:43219c4c97d013fb2a95b21dddde1234"
                  },
                  "port": 443,
                  "protocol": "https",
                  "idle_connection_timeout" : 80,
                  "default_pool": {
                      "name": "example-pool"
                  }
              }
          ],
          "pools": [
              {
                  "algorithm": "round_robin",
                  "health_monitor": {
                      "delay": 5,
                      "max_retries": 2,
                      "timeout": 2,
                      "type": "tcp",
                      "url_path": "/"
                  },
                  "name": "example-pool",
                  "protocol": "tcp",
                  "session_persistence": {
                      "cookie_name": "string",
                      "type": "source_ip"
                  },
                  "members": [
                      {
                          "port": 80,
                          "target": {
                              "address": "192.168.100.5"
                          },
                          "weight": 50
                      },
                      {
                          "port": 80,
                          "target": {
                              "address": "192.168.100.6"
                          },
                          "weight": 50
                      }
                  ]
              }
          ],
          "subnets": [
              {
                  "id": "7ec87131-1c7e-4990-b4f0-a26f2e61f98e"
              }
          ]
          }'
    

    有关更多选项,请参阅 负载平衡器 VPC API 参考

    样本输出:

    {
        "created_at": "2018-07-12T23:17:07.5985381Z",
        "crn": "crn:v1:bluemix:public:is:us-south:a/123456::load-balancer:dd754295-e9e0-4c9d-bf6c-58fbc59e5727",
        "hostname": "ac34687d.lb.appdomain.cloud",
        "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727",
        "id": "0738-dd754295-e9e0-4c9d-bf6c-58fbc59e5727",
        "is_public": true,
        "profile": {
            "name": "network-fixed"
        },
        "listeners": [
            {
                "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004",
                "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/listeners/70294e14-4e61-11e8-bcf4-0242ac110004"
            }
        ],
        "name": "example-balancer",
        "operating_status": "offline",
        "pools": [
            {
                "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004",
                "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/pools/70294e14-4e61-11e8-bcf4-0242ac110004",
                "name": "example-pool"
            }
        ],
        "provisioning_status": "create_pending",
        "resource_group": {
            "id": "56969d60-43e9-465c-883c-b9f7363e78e8"
        },
        "subnets": [
            {
                "id": "0738-7ec86020-1c6e-4889-b3f0-a15f2e50f87e",
                "href": "https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e",
                "name": "example-subnet"
            }
        ]
    }
    

    保存要在后续步骤中使用的负载均衡器的标识。 例如,将其保存在变量 lbid 中。

    lbid=0738-dd754295-e9e0-4c9d-bf6c-58fbc59e5727
    
  4. 获取有关负载均衡器的详细信息

    curl -H "Authorization: Bearer $iam_token" -X GET "$vpc_api_endpoint/v1/load_balancers/$lbid?version=$api_version&generation=2"
    

    请留出一些时间等待供应。 当负载均衡器准备就绪时,其状态将设置为“online”和“active”,如下例所示:

    {
      "id": "0738-dd754295-e9e0-4c9d-bf6c-58fbc59e5727",
      "crn": "crn:v1:bluemix:public:is:us-south:a/123456::load-balancer:dd754295-e9e0-4c9d-bf6c-58fbc59e5727",
      "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727",
      "name": "example-balancer",
      "created_at": "2018-07-13T22:22:24.489Z",
      "hostname": "dd754295-e9e0-4c9d-bf6c-58fbc59e5727.lb.appdomain.cloud",
      "is_public": true,
      "profile": {
            "name": "network-fixed"
      },
      "listeners": [
        {
          "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004",
           "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/listeners/70294e14-4e61-11e8-bcf4-0242ac110004"
        }
      ],
      "operating_status": "online",
      "pools": [
        {
          "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004",
          "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/pools/70294e14-4e61-11e8-bcf4-0242ac110004",
          "name": "example-pool"
        }
      ],
      "private_ips": [
        {
          "address": "192.168.10.5"
        },
        {
          "address": "192.168.10.6"
        }
      ],
      "provisioning_status": "active",
      "public_ips": [
        {
            "address": "169.11.111.115"
        },
        {
            "address": "169.11.111.116"
        }
      ],
      "resource_group": {
        "id": "0738-56969d60-43e9-465c-883c-b9f7363e78e8"
      },
      "subnets": [
        {
          "id": "0738-7ec86020-1c6e-4889-b3f0-a15f2e50f87e",
          "href": "https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e",
          "name": "example-subnet"
        }
      ]
    }