什么是 Amazon AppConfig? - Amazon AppConfig
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

什么是 Amazon AppConfig?

使用Amazon AppConfig,具备以下功能:Amazon Systems Manager以创建、管理以及快速部署应用程序配置。配置 是一组影响应用程序行为的设置。您可以将 Amazon AppConfig 与 Amazon Elastic Compute Cloud (Amazon EC2) 实例上托管的应用程序、Amazon Lambda、容器、移动应用程序或 IoT 设备结合使用。查看可以使用以下方法管理的配置类型的示例:Amazon AppConfig请参阅示例配置.

通过简化任务Amazon AppConfig

Amazon AppConfig有助于简化以下任务:

  • 配置

    从 Amazon Simple Storage Service (Amazon S3) 获取配置,Amazon AppConfig托管配置、参数存储、Systems Manager 文档存储区。使用Amazon CodePipeline集成以从 Bitbucket Pipeline 中获取配置,GitHub, 和Amazon CodeCommit.

  • 验证

    在部署应用程序配置时,简单的拼写错误可能导致意外中断。防止生产系统中的错误Amazon AppConfig验证程序。Amazon AppConfig验证器使用 JSON 模式提供语法检查或使用Amazon Lambda函数可确保您的配置按预期进行部署。只有在配置数据有效时,才能执行配置部署。

  • 部署并监控

    定义部署标准和速率控制,以确定目标如何检索新配置。使用Amazon AppConfig用于设置部署速度、部署时间和烘焙时间的部署策略。监控每个部署以主动捕获任何错误Amazon AppConfig与 Amazon 集成CloudWatch. 如果Amazon AppConfig遇到错误时,系统将回滚部署以最大限度减少对应用程序用户的影响。

Amazon AppConfig 使用案例

Amazon AppConfig您可以在以下使用案例中帮助您:

  • 应用程序优— 谨慎地对应用程序进行更改以通过生产流量测试这些更改。

  • 功能切换— 启用需要及时部署的新功能,例如产品发布或公告。

  • 允许列表允许高级订户访问付费内容。

  • 运营问题减轻依赖项或其他外部因素影响系统时应用程序上的压力。

使用 Amazon AppConfig 的好处

Amazon AppConfig为您的组织提供了以下好处:

  • 减少配置更改中的错误

    Amazon AppConfig 允许您创建规则以验证配置,从而减少应用程序停机时间。无法部署无效的配置。Amazon AppConfig提供了以下两个方法以验证配置:

    • 对于语法验证,您可以使用 JSON 架构。Amazon AppConfig 使用 JSON 架构验证配置,以确保配置更改符合应用程序要求。

    • 对于语义验证,您可以调用 Amazon Lambda 函数以在部署之前运行配置。

  • 快速在一组目标中部署更改

    Amazon AppConfig通过从一个集中位置部署配置更改,简化了批量管理应用程序的过程。Amazon AppConfig支持 Systems Manager Parameter Store、Systems Manager (SSM) 文档和 Amazon S3 中存储的配置。您可以将 Amazon AppConfig 与 EC2 实例上托管的应用程序、Amazon Lambda、容器、移动应用程序或 IoT 设备一起使用。

    目标不需要配置 Systems Manager SSM 代理,也不需要配置Amazon Identity and Access ManagementSystems Manager 其他功能要求的 (IAM) 实例配置文件。这意味着,Amazon AppConfig 适用于非托管实例。

  • 更新应用程序而不会发生中断

    Amazon AppConfig 在运行时将配置更改部署到目标,而无需执行繁重的生成过程或停止使用目标。

  • 控制在应用程序中部署更改

    在将配置更改部署到目标时,Amazon AppConfig允许您使用部署策略最大限度降低风险。您可以使用部署策略的速率控制,以确定希望应用程序目标检索配置更改的速度。

开始使用 Amazon AppConfig

以下资源可以帮助您直接使用 Amazon AppConfig。

视频:Amazon AppConfig概述

查看视频介绍Amazon AppConfig. (持续时间:9:12)

查看更多Amazon有关的视频Amazon Web ServicesYouTubeChannel.

以下博客可以帮助您了解有关的更多信息Amazon AppConfig以及它的能力:

Amazon AppConfig 的工作原理

在较高层面,可通过三个过程使用Amazon AppConfig:

  1. 配置 Amazon AppConfig以与应用程序一起使用

  2. 启用允许应用程序代码定期检查并从检索配置数据Amazon AppConfig.

  3. 部署新配置或更新的配置。

以下部分介绍了每个步骤。

配置 Amazon AppConfig 以与应用程序一起使用

配置Amazon AppConfig要与应用程序一起使用,您需要设置三种类型的资源,如下表所述。

资源 详细信息

应用程序

InAmazon AppConfig,应用程序只是像文件夹一样的组织结构。这种组织结构与某些可执行代码单元有关系。例如,您可以创建一个名为的应用程序。MyMobile用于组织和管理用户安装的移动应用程序的配置数据的应用程序。

Environment(环境)

对于每个应用程序,您可以定义一个或多个环境。环境是 Amazon AppConfig 应用程序的逻辑部署组,例如 BetaProduction 环境中的应用程序。您也可以为应用程序子组件定义环境,例如应用程序的 WebMobileBack-end 组件。您可以配置亚马逊CloudWatch为每个环境提供警报。系统在部署配置期间监控警报。如果触发警报,系统将回滚配置。

配置文件

配置文件 使 Amazon AppConfig 能够访问位于其存储位置中的配置。您可以按以下格式和位置存储配置:

  • Amazon AppConfig 托管配置存储中的 YAML、JSON 或文本文档

  • Amazon S3 存储桶中的对象

  • Systems Manager 文档存储中的文档

  • Parameter Store 中的参数

配置文件还可能包含可选的验证程序,以确保配置数据在语法和语义上正确无误。Amazon AppConfig在开始部署时,使用验证程序执行检查。在对配置目标进行任何更改之前,如果检测到任何错误,部署将会停止。

允许应用程序代码检查并检索配置数据

您的应用程序首先使用Amazon AppConfig数据StartConfigurationSessionAPI 操作。然后你的会话的客户端定期打电话GetLatestConfiguration以检查和检索可用的最新数据。

打电话时StartConfigurationSession,代码将发送以下信息:

  • 的标识符(ID 或名称)Amazon AppConfig会话跟踪的应用程序、环境以及配置文件。

  • (可选)会话客户端在调用之间必须等待的最短时间GetLatestConfiguration.

作为回应,Amazon AppConfig提供了InitialConfigurationToken交给会话的客户端并在第一次调用时使用GetLatestConfiguration对于那个会议。

打电话时GetLatestConfiguration,你的客户端代码发送最新的ConfigurationToken它拥有并在响应中获得的价值:

  • NextPollConfigurationToken: 该ConfigurationToken下次调用时要使用的值GetLatestConfiguration.

  • NextPollIntervalInSeconds:客户在下次打电话之前应等待的持续时间GetLatestConfiguration. 此持续时间可能随会话的过程而有所不同,因此应该使用它而不是在StartConfigurationSession调用。

  • 配置:用于会话的最新数据。如果客户端已经有最新版本的配置,则可能为空。

有关详细信息以及查看示例Amazon CLI显示了如何使用检索配置的命令Amazon AppConfig数据StartConfigurationSessionGetLatestConfigurationAPI 操作,请参阅接收配置.

部署新配置或更新的配置

Amazon AppConfig 允许您按最适合应用程序使用案例的方式部署配置。您可以在几秒钟内部署更改,也可以缓慢部署更改以评估更改的影响。帮助您控制部署的 Amazon AppConfig 资源称为部署策略。部署策略包含以下信息:

您可以使用涵盖常见方案的内置部署策略,也可以创建自己的策略。在创建或选择部署策略后,您可以开始部署。启动部署时,将调用StartDeploymentAPI 操作。该调用包括应用程序、环境和配置文件的 ID 以及(可选)要部署的配置数据版本。该调用还包括要使用的部署策略的 ID,该策略确定如何部署配置数据。

注意

有关的信息Amazon AppConfig请参阅特定于语言的 SDK,请参阅Amazon AppConfig软件开发工具包.

Amazon AppConfig 定价

使用需支付费用Amazon AppConfig. 有关更多信息,请参阅 Amazon Systems Manager 定价

Amazon AppConfig 配额

有关的信息Amazon AppConfig终端节点和服务配额以及其他 Systems Manager 配额位于Amazon Web Services 一般参考.

注意

有关存储 Amazon AppConfig 配置的服务的配额的信息,请参阅 关于配置存储配额和限制