配置 Amazon AppConfig 代理 Lambda 扩展 - Amazon AppConfig
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

配置 Amazon AppConfig 代理 Lambda 扩展

您可以通过更改以下 Amazon Lambda 环境变量配置扩展。有关更多信息,请参阅《Amazon Lambda 开发者指南》中的使用 Amazon Lambda 环境变量

预取配置数据

环境变量 AWS_APPCONFIG_EXTENSION_PREFETCH_LIST 可以改善函数的启动时间。初始化 Amazon AppConfig 代理 Lambda 扩展时,它会在 Lambda 开始初始化函数和调用处理程序之前从 Amazon AppConfig 检索指定的配置。在某些情况下,在函数请求配置数据之前,配置数据已在本地缓存中可用。

要使用预取功能,请将环境变量的值设置为与配置数据对应的路径。例如,如果您的配置对应于分别名为 “my_application”、“my_environmention” 和 “my_configuration_data” 的应用程序、环境和配置文件,则路径将为 /applications/my_application/environments/my_environment/configurations/my_configuration_data。您可以通过以逗号分隔的列表列出多个配置项目来指定这些配置项目(如果资源名称中包含逗号,请使用资源的 ID 值而不是其名称)。

从其他账户访问配置数据

Amazon AppConfig 代理 Lambda 扩展可通过指定向数据授予权限的 IAM 角色,从其他账户检索配置数据。要设置此策略,请按照下列步骤操作:

  1. 在使用 Amazon AppConfig 管理配置数据的账户中,创建一个具有信任策略的角色,该策略授予运行 Lambda 函数的账户访问 appconfig:StartConfigurationSessionappconfig:GetLatestConfiguration 操作以及与 Amazon AppConfig 配置资源对应的部分或完整 ARN。

  2. 在运行 Lambda 函数的账户中,使用在步骤 1 中创建的角色的 ARN 将 AWS_APPCONFIG_EXTENSION_ROLE_ARN 环境变量添加到 Lambda 函数中。

  3. (可选)如果需要,可使用 AWS_APPCONFIG_EXTENSION_ROLE_EXTERNAL_ID 环境变量指定外部 ID。同样,可使用 AWS_APPCONFIG_EXTENSION_ROLE_SESSION_NAME 环境变量配置会话名称。

注意

请注意以下信息。

  • Amazon AppConfig 代理 Lambda 扩展只能从一个账户检索数据。如果您指定 IAM 角色,则扩展将无法从运行 Lambda 函数的账户中检索配置数据。

  • 使用 Amazon CloudWatch Logs Amazon Lambda 记录关于 Amazon AppConfig 代理 Lambda 扩展和 Lambda 函数的信息。

环境变量 详细信息 默认值

AWS_APPCONFIG_EXTENSION_HTTP_PORT

此环境变量用于指定运行托管扩展的本地 HTTP 服务器的端口。

2772

AWS_APPCONFIG_EXTENSION_LOG_LEVEL

此环境变量指定了将哪些特定于 Amazon AppConfig 扩展的日志发送到 Amazon CloudWatch Logs 以用于某个函数。不区分大小写的有效值包括 debuginfowarnerrornone。调试包括有关扩展的详细信息,包括计时信息。

info

AWS_APPCONFIG_EXTENSION_MAX_CONNECTIONS

此环境变量配置扩展用于从 Amazon AppConfig 检索配置的最大连接数。

3

AWS_APPCONFIG_EXTENSION_POLL_INTERVAL_SECONDS

此环境变量控制扩展轮询 Amazon AppConfig 更新配置的频率(以秒为单位)。

45

AWS_APPCONFIG_EXTENSION_POLL_TIMEOUT_MILLIS

此环境变量控制扩展在刷新缓存中的数据时等待 Amazon AppConfig 响应的最大时间(以毫秒为单位)。如果 Amazon AppConfig 在指定的时间内未响应,则扩展会跳过此轮询间隔,并返回之前更新的缓存数据。

3000

AWS_APPCONFIG_EXTENSION_PREFETCH_LIST

此环境变量用于指定在函数初始化和处理程序运行之前,扩展开始检索的配置数据。它可以大大缩短函数的冷启动时间。

AWS_APPCONFIG_EXTENSION_PROXY_HEADERS 此环境变量用于指定 AWS_APPCONFIG_EXTENSION_PROXY_URL 环境变量中引用的代理所需的标头。其值是以逗号分隔的标头列表。每个标头使用以下形式:
"header: value"
AWS_APPCONFIG_EXTENSION_PROXY_URL 此环境变量指定用于从 Amazon AppConfig 扩展到 Amazon Web Services 服务 的连接的代理 URL 。支持 HTTPSHTTP URL。
AWS_APPCONFIG_EXTENSION_ROLE_ARN 此环境变量指定与 Amazon AppConfig 扩展应代入的角色相对应的 IAM 角色 ARN,以检索配置。
AWS_APPCONFIG_EXTENSION_ROLE_EXTERNAL_ID 此环境变量指定要与代入角色 ARN 结合使用的外部 ID。
AWS_APPCONFIG_EXTENSION_ROLE_SESSION_NAME 此环境变量指定要与代入的 IAM 角色的凭证关联的会话名称。
AWS_APPCONFIG_EXTENSION_SERVICE_REGION 此环境变量指定扩展应用于调用 Amazon AppConfig 服务的备用区域。如果未定义,则扩展将使用当前区域中的终端节点。

AWS_APPCONFIG_EXTENSION_MANIFEST

此环境变量配置 Amazon AppConfig 代理来利用其它每配置功能,如多账户检索将配置保存到磁盘。可以输入以下值之一:

  • "app:env:manifest-config"

  • "file:/fully/qualified/path/to/manifest.json"

有关使用这些功能的更多信息,请参阅 使用清单启用其它检索功能

true

AWS_APPCONFIG_EXTENSION_WAIT_ON_MANIFEST

此环境变量配置 Amazon AppConfig 代理,使其在完成启动之前等待清单处理完毕。

true