更新时间:2025-06-25 GMT+08:00
分享

配置函数的网络环境

本章节介绍如何通过函数工作流控制台,配置函数访问公网或访问VPC内资源。

操作场景

函数的网络访问能力如表1所示,可根据业务需求配置。

表1 网络配置说明

网络配置

说明

函数访问公网

函数访问公网的配置方式有以下两种:

  • 使用默认网卡:函数创建成功后,无需手动配置即可使用默认网卡访问公网。
  • 配置VPC内固定公网IP:通过手动配置函数访问VPC,并在VPC内配置公网NAT网关绑定EIP,分配独占公网访问带宽,以实现公网访问。

函数访问VPC

函数访问VPC的配置方式有以下两种:

  • 允许函数访问VPC内资源:函数可访问所选VPC内的资源,默认禁用公网访问权限。若需访问公网,请参考配置VPC内固定公网IP的方式开放公网访问。
  • 仅允许指定的VPC调用函数:函数仅接受所选VPC的调用请求,禁止通过公网调用。

约束与限制

  • 在一个账号下所有的函数最多能绑定4个不同的子网。
  • 开启“函数访问VPC内资源”时,函数将禁用默认网卡并使用VPC绑定的网卡,是否允许公网访问由配置的VPC决定,开关“函数访问公网”将不生效。

配置函数访问公网

配置函数访问公网有以下两种方式:

函数创建成功后,“函数访问公网”功能默认开启,无需手动配置即可使用默认网卡访问公网,允许函数访问公网上的服务。

其公网访问带宽为用户间共享,不保证可靠性,适用于测试场景,生产环境建议配置VPC内固定公网IP

在生产环境中如需配置函数访问公网,以及在函数访问公网服务时需要固定公网出口IP的场景(例如被访问服务需要白名单验证),可通过在VPC内配置公网NAT网关绑定EIP的方式实现。开启是否允许公网访问将由配置的VPC决定,开关“允许函数访问公网”将不再生效

前提条件

  1. 已创建虚拟私有云和子网,请参见创建虚拟私有云基本信息及默认子网
  2. 已申请弹性公网IP,请参见申请弹性公网IP
  3. 配置函数访问VPC

创建公网NAT网关步骤:

  1. 在服务控制台左侧导航栏,选择“ 网络> NAT网关”进入NAT网关控制台,单击“购买公网NAT网关”。
  2. 在公网NAT网关购买页面,参考购买公网NAT网关输入相关信息,确认规格信息后提交,完成购买。
  3. 购买完成后,单击公网NAT网关名称进入详情页面,选择“添加SNAT规则”,单击“确定”完成配置。

配置函数访问VPC

FunctionGraph支持函数访问自行创建的VPC内资源,或配置其他用户共享的VPC子网,共享VPC的相关介绍请参考共享VPC

在函数工作流控制台中,配置函数访问VPC有以下两种选项:

  • 允许函数访问VPC内资源:允许函数访问所选VPC内的资源,不再具有默认的公网访问权限。如需访问公网,请先开启此功能,再参见配置VPC内固定公网IP进行公网访问配置。
  • 仅允许指定的VPC调用函数:仅允许通过指定的VPC调用函数,并禁止通过公网调用。此配置适用于需严格控制函数调用来源的场景,确保函数只能通过特定网络环境访问。

前提条件

需在默认“default”安全组中配置如下要求的入方向规则和出方向规则,添加规则详情请参见添加安全组规则
  • 入方向规则:配置“策略”为“允许”、“协议端口”为“ICMP”、“源地址”设置的最小范围为函数所选VPC网段的规则。
    例如图1所示,函数的VPC网段为192.168.x.x/24,安全组的入方向需增加一个规则:“策略”选择“允许”、“协议端口”选择“ICMP”、“源地址”设置最小范围的网段为192.168.x.x/24。
    图1 入方向规则
  • 出方向规则:配置“策略”为“允许”的相关业务端口规则。

步骤一:配置函数的委托权限

函数使用VPC访问能力时,必须为函数配置VPC管理权限的委托,配置委托权限的操作步骤请参见配置委托权限。以下为涉及的委托权限:

  • VPC Administrator:使用VPC功能需要为函数配置“VPC Administrator”委托权限,或参见表2创建自定义策略授予访问VPC需要配置的最小权限,确保函数能操作相关云服务。
    表2 最小授权项配置

    权限

    授权项

    删除端口

    vpc:ports:delete

    查询端口

    vpc:ports:get

    创建端口

    vpc:ports:create

    查询VPC

    vpc:vpcs:get

    查询子网

    vpc:subnets:get

  • DNS ReadOnlyAccess:如VPC中配置了内网域名,需要为函数配置“DNS ReadOnlyAccess”委托权限以解析内网域名。

步骤二:开启函数访问VPC内资源

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择待配置的函数,单击函数名称进入函数详情页。
  3. 选择“设置 > 网络设置”,如图2所示,开启“函数访问VPC内资源”,并参考表3配置参数。

    开启时,函数将使用配置的VPC所绑定的网卡进行网络访问,同时禁用函数工作流的默认网卡。
    图2 配置VPC
    表3 网络配置参数说明

    参数

    说明

    VPC

    必选参数。

    选择需要访问的虚拟私有云VPC。创建虚拟私有云VPC和子网请参见创建虚拟私有云基本信息及默认子网

    子网

    必选参数。

    选择VPC下的子网。

    域名

    可选参数。

    如果函数需要通过内网域名访问VPC内的服务,可配置和VPC绑定的域名,复选框中域名可以配置多个。

    以下为与配置域名相关的操作,请根据业务需求参考使用:

    VPC对等连接网段

    可选参数。

    您可以声明函数代码中使用到的VPC网段,用以检测是否与服务使用的VPC网段冲突。

    开启IPv6

    可选参数。当前仅“华东二”区域支持函数VPC配置开启IPv6。

    在创建虚拟私有云VPC时,确保默认子网配置中支持开启IPv6,此处将自动开启,具体详情请参见创建虚拟私有云和子网

    开启IPv6功能后,将自动为子网分配IPv6网段,暂不支持自定义设置IPv6网段。该功能一旦开启,将不能关闭,更多介绍请参见IPv6网络

共享VPC

共享VPC是基于资源访问管理(Resource Access Manager,简称RAM)服务的机制,VPC的所有者可以将VPC内的子网共享给其他账号使用,实现网络资源跨租户共享。有关VPC子网共享的更多信息,请参见《虚拟私有云用户指南》的“共享VPC”相关内容。

在函数中可以配置其他用户共享的子网,从而能够在函数中访问该子网下的资源。如需在函数中访问其他用户共享给您的子网,请先确保该子网的拥有者已经为您配置了子网共享,配置步骤请参考VPC子网共享给其他账号。成功配置子网共享后,参考配置函数访问VPC,在函数的网络配置中选择共享的子网即可。如果后续VPC子网拥有者取消了共享,将无法在函数中访问该子网。

相关文档