基于EIP配置SAE实例公网访问和访问公网的能力

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

如果您为SAE应用的每个实例都绑定一个EIP,这些实例将会同时具备出、入公网的能力。本文介绍如何在SAE控制台绑定或解绑弹性公网IP(Elastic IP Address,简称EIP),以及如何查看应用事件。

前提条件

背景信息

公网访问方案

公网访问VPC内SAE上的应用包括以下两种方案。
  • 方案1:NAT网关+EIP

    利用SNAT的功能,为VPC内所有无公网IP的应用实例提供访问公网的代理服务。1个VPC内有多个应用需要出公网,只需配1个EIP即可满足该目的。具体操作,请参见配置NAT网关使SAE应用能访问公网。适用场景如下。

    • 应用有设置自动弹性伸缩策略的需求,且每个实例都需要绑定EIP。
    • 需要固定出口公网IP,例如需要把出口公网白名单设置在微信小程序中。
  • 方案2:应用实例绑定EIP

    VPC内有多个应用需要出公网,每个应用至少需要一个实例绑定EIP。VPC内的实例数不超过20个时,比NAT成本更低。创建或部署应用时,自动为该应用的每个实例绑定一个EIP。适用场景如下。

    • 应用访问公网(出口流量):适用于SAE服务出公网访问外部服务。接受EIP可变,无设置自动弹性策略的需求。
    • 应用被公网访问(入口流量):适用于客户端通过连接每个实例的EIP作为入口,访问该应用。但由于SAE部署更新时会使用新的EIP,不适用于外部服务需通过固定的IP地址访问SAE服务的情况。
说明 当您购买EIP后,通过方案2创建或部署应用时,SAE会自动为有EIP需求的应用的每个实例绑定一个EIP。但在绑定EIP后,虽然能创建自动弹性策略,但该策略无法开启并使用。如果应用需要同时使用自动弹性能力和访问公网,建议使用方案1。

计费说明

除购买EIP会产生费用外,SAE不会产生额外费用。更多信息,请参见EIP计费概述SAE计费概述

注意事项

  • 部署应用时绑定EIP,SAE会先创建新的实例,再释放原先的实例,此时原来的EIP没有被释放,您需要额外准备相应数量的EIP。
  • 绑定成功后,您需要查看安全组,确认是否开通端口白名单。更多信息,请参见添加安全组规则

在创建应用过程中配置EIP

  1. 登录SAE控制台
  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击创建应用

  3. 应用基本信息配置向导,配置相关信息,然后单击下一步:应用部署配置
  4. 应用部署配置配置向导,选择技术栈语言应用部署方式,配置相关信息。
    1. 展开应用出/入公网访问设置区域,打开方案2. 绑定弹性公网IP开关。
      如果您在创建应用时未开启该功能,此后手动扩缩的应用实例默认不会绑定EIP,您需要在部署应用时配置。bt_bind_EIP
    2. 单击下一步:确认规格
  5. 确认规格配置向导,查看您所创建应用的详细信息以及配置费用情况,并单击确认创建
    页面会跳转至创建完成配置向导,您可以单击应用详情页进入基本信息页面。
  6. 结果验证。
    在左侧导航栏,单击基本信息,然后在基本信息页面,单击实例部署信息页签,在默认分组区域内查看实例的IP地址sc_view_pod_IP

在部署应用过程中配置EIP

警告 重新部署应用后,该应用将会被重启。为避免业务中断等不可预知的错误,请在业务低峰期执行部署操作。

更新应用配置的路径因实例数的不同而不同。本文以实例数大于等于1为例,介绍如何配置目标功能。当实例数等于0时的操作路径,请参见更新应用

  1. 登录SAE控制台
  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。
  3. 基本信息页面右上角,单击部署应用
  4. 部署应用页面,展开应用出/入公网访问设置区域,配置相关信息。bt_bind_EIP
    部署方式由应用首次部署方式决定,请根据所需的部署方式设置参数。
    配置EIP时,存在以下场景。
    • 场景1:未配置或未开启弹性伸缩策略时。
      • 绑定EIP。

        打开方案2. 绑定弹性公网IP文本框内的开关。

      • 解绑EIP。
        1. 关闭方案2. 绑定弹性公网IP文本框内的开关。
        2. 在弹出的解绑弹性公网IP对话框,单击确认
    • 场景2:开启弹性伸缩策略时。
      1. 部署应用后恢复自动弹性方式区域,选择人工启用恢复
        说明 如果您在部署应用时选择系统自动恢复,该应用将无法绑定EIP。
      2. 绑定或解绑EIP。
        • 绑定EIP。

          打开方案2. 绑定弹性公网IP文本框内的开关。

        • 解绑EIP。
          1. 关闭方案2. 绑定弹性公网IP文本框内的开关。
          2. 在弹出的解绑弹性公网IP对话框,单击确认
        说明 应用在绑定EIP后,SAE会停用已开启的弹性策略,且无法启用自动弹性功能。如果应用需要同时使用弹性能力和出公网,建议您使用NAT网关+EIP的方式。具体操作,请参见配置NAT网关使SAE应用能访问公网
  5. 配置完成后,单击确认
  6. 结果验证。
    在左侧导航栏,单击基本信息,然后在基本信息页面,单击实例部署信息页签,在默认分组区域内查看实例的IP地址sc_view_pod_IP

在回滚应用过程中配置EIP

如果您需要回退的应用历史版本绑定了EIP,且回退历史版本前应用已开启弹性伸缩策略,操作步骤如下。

  1. 登录SAE控制台
  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。
  3. 基本信息页面右上角,单击回退历史版本
  4. 回退历史版本页面,配置相关信息。
    1. 请选择历史版本表格,选择所需的版本。
      说明 本步骤中所选的应用历史版本已绑定EIP。
    2. 可选:部署应用后恢复自动弹性方式区域,选择人工启用恢复
      • 如果您在回退历史版本前,未开启弹性伸缩策略,则操作时无此步骤。
      • 如果您选择系统自动恢复,系统会显示如下信息,表示应用绑定EIP后,无法继续启用自动弹性功能。m_auto_scaling_cannot_open
    3. 选中选择分批/灰度策略复选框,配置发布策略。
    4. 单击确定
  5. 结果验证。
    在左侧导航栏,单击基本信息,然后在基本信息页面,单击实例部署信息页签,在默认分组区域内查看实例的IP地址sc_view_pod_IP

在手动扩缩容过程中配置EIP

  1. 登录SAE控制台
  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。
  3. 基本信息页面右上角,单击手动扩缩
  4. 应用扩缩对话框,配置相关信息。
    应用扩缩时,存在以下场景。更多信息,请参见手动扩缩
    • 场景1:扩缩容前未部署或未开启弹性伸缩策略。

      滑动指针设置应用目标实例数

      sc_pod_scaling_without_opening_autoscaling
    • 场景2:扩缩容前已部署并开启弹性伸缩策略。
      1. 滑动指针设置应用目标实例数
      2. 选择人工启用恢复
      sc_pod_scaling_with_opening_autoscaling.png
      说明 如果您在部署应用时选择系统自动恢复,该应用将无法绑定EIP。
  5. 单击确定
  6. 绑定或解绑EIP。
    具体操作,请参见在部署应用过程中配置EIP
  7. 结果验证。
    在左侧导航栏,单击基本信息,然后在基本信息页面,单击实例部署信息页签,在默认分组区域内查看实例的IP地址sc_view_pod_IP

查看应用事件

您可以在应用事件页面,查看应用实例的报错信息。

  1. 登录SAE控制台
  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。
  3. 在左侧导航栏,单击应用事件,从全部来源类型下拉列表选择应用实例(Pod),从全部事件等级下拉列表选择Warning,在页面下方查看应用实例的详细报错信息。
    根据事件原因,排查故障。
    • EipNotEnough:表示现有的EIP不足,需要申请相应数量的EIP或对应用进行缩容。具体操作,请参见申请EIP手动扩缩
    • EipNotReady:表示绑定或解绑EIP失败,请加入钉群(钉群号:32874633),联系产品技术专家进行咨询。
    sc_view_application_event.png