步骤 3 创建配置和配置文件 - AWS AppConfig
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

步骤 3 创建配置和配置文件

配置 是一组影响应用程序行为的设置。例如,您可以创建和部署配置,这些配置谨慎地引入对应用程序的更改,或者启用要求及时部署的新功能(如产品发布或公告)。以下是访问列表配置的一个非常简单的示例。

{ "AccessList": [ { "user_name": "Mateo_Jackson" }, { "user_name": "Jane_Doe" } ] }

A 配置文件 启用 AWS AppConfig 从源位置访问配置。您可以按以下格式和位置存储配置:

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

  • Amazon Simple Storage Service (Amazon S3) 存储桶中的对象

  • Systems Manager 文档存储中的文档

  • Parameter Store 中的参数

  • 任何 集成源操作 支持者 AWS CodePipeline

配置文件包含以下信息。

  • 存储配置的URI位置。

  • 提供对配置的访问权限的 AWS Identity and Access Management (IAM) 角色。

  • 配置数据的验证程序。您可以使用 JSON 架构或 AWS Lambda 函数验证配置文件。配置文件最多可以具有两个验证程序。

对于存储在 AWS AppConfig 托管配置存储或 SSM 文档中的配置,您可以在创建配置文件时使用 Systems Manager 控制台创建配置。本主题稍后介绍了该过程。

对于存储在 SSM 参数或 S3 中的配置,您必须先创建参数或对象,然后将其添加到 Parameter Store 或 S3。创建参数或对象后,您可以使用本主题中的过程创建配置文件。有关在中创建参数的信息 Parameter Store,参见 创建系统管理器参数AWS Systems Manager 用户指南.

关于配置存储配额和限制

AWS AppConfig 支持的配置存储具有以下配额和限制。

AWS AppConfig 托管配置存储 S3 Parameter Store 文档存储 AWS CodePipeline

配置大小限制

64 KB

1MB

由 AWS AppConfig 而不是 S3 强制实施

4 KB(免费套餐)/8 KB(高级参数)

64 KB

1MB

执行人 AWS AppConfig,不是 CodePipeline

资源存储限制

1GB

无限制。

10000 个参数(免费套餐)/100000 个参数(高级参数)

500 个文档

受每个应用程序的配置文件数量限制(每个应用程序的100个配置文件)

服务器端加密

AWS CloudFormation .support

不用于创建或更新数据

验证创建或更新 API 操作

不支持

不支持

支持正则表达式

所有放置和更新 API 操作都需要 JSON 架构

不支持

定价

免费

参见 Amazon S3 定价

参见 AWS Systems Manager 定价

免费

参见 AWS CodePipeline 定价

关于 AWS AppConfig 托管配置存储

AWS AppConfig 包括内部或托管配置存储。配置必须为 64 KB 或更小。与其他配置存储选项相比,AWS AppConfig 托管配置存储提供了以下好处。

  • 您无需设置和配置其他服务,如 Amazon Simple Storage Service (Amazon S3) 或 Parameter Store。

  • 您无需配置 AWS Identity and Access Management (IAM) 权限即可使用配置存储。

  • 您可以按 YAML、JSON 或文本文档格式存储配置。

  • 使用存储不产生任何费用。

  • 您可以创建配置并在创建配置文件时将其添加到存储。

创建配置和配置文件

使用以下过程通过 AWS Systems Manager 控制台创建 AWS AppConfig 配置文件和(可选)配置。

开始前的准备工作

在完成本节中的过程之前,请阅读以下相关内容。

  • 以下过程要求您指定 IAM 服务角色,以便 AWS AppConfig 能够访问您选择的配置存储中的配置数据。如果您使用 AWS AppConfig 托管配置存储,则不需要此角色。如果您选择 S3、Parameter Store 或 Systems Manager 文档存储,则必须选择现有 IAM 角色,或选择让系统自动为您创建角色的选项。有关该角色的更多信息,请参阅 关于配置文件 IAM 角色

  • 如果要为 S3 中存储的配置创建配置文件,则必须配置权限。有关使用 S3 作为配置存储的权限和其他要求的更多信息,请参阅 关于存储在 Amazon S3 中的配置

  • 如果您要使用验证程序,请查看使用验证程序的详细信息和要求。有关更多信息,请参阅 关于验证程序。)

创建配置文件

  1. Open the AWS Systems Manager console at https://console.amazonaws.cn/systems-manager/appconfig/.

  2. Applications (应用程序) 选项卡上,选择您在 Create an AWS AppConfig configuration (创建 AppConfig 配置) 中创建的应用程序,然后选择 Configuration profiles (配置文件) 选项卡。

  3. 选择 Create configuration profile (创建配置文件)

  4. 对于 Name (名称),请输入配置文件的名称。

  5. 对于 Description (描述),请输入有关配置文件的信息。

  6. Tags (标签) 部分中,输入一个键和可选的值。您最多可以为一个资源指定 50 个标签。

  7. Select configuration source (选择配置源) 页面上,选择一个选项。

    
                            选择AWSAppConfig配置源
    • 如果您选择了 AWS AppConfig hosted configuration (AWS AppConfig 托管配置),请选择 YAMLJSONText (文本),然后在字段中输入您的配置。选择 Next (下一步),然后转到此过程中的步骤 10。

    • 如果您选择了 Amazon S3 object (Amazon S3 对象),则输入对象 URI。选择 Next (下一步)

    • 如果您选择了 AWS Systems Manager parameter (AWS Systems Manager 参数),则从列表中选择参数的名称。选择 Next (下一步)

    • 如果您选择 AWS CodePipeline,然后选择 下一步 并转到本程序中的步骤10。

    • 如果您选择了 AWS Systems Manager Document (AWS Systems Manager 文档),请完成以下步骤。

    1. 文件源 部分,选择 已保存文档新文档.

    2. 如果选择 Saved document (已保存的文档),则从列表中选择 SSM 文档。如果选择 New document (新文档),则会显示 Details (详细信息)Content (内容) 部分。

    3. Details (详细信息) 部分中,输入新应用程序配置的名称。

    4. 对于 Application configuration schema (应用程序配置架构) 部分,使用列表选择 JSON 架构或选择 Create schema (创建架构)。如果选择 Create schema (创建架构),Systems Manager 将打开 Create schema (创建架构) 页面。在 Content (内容) 部分中输入架构详细信息,然后选择 Create schema (创建架构)

      
                                    输入 AWS AppConfig 配置
    5. 对于 Application configuration schema version (应用程序配置架构版本),从列表中选择版本,或选择 Update schema (更新架构) 以编辑架构并创建新版本。

    6. Content (内容) 部分中,选择 YAMLJSON,然后在字段中输入配置数据。

      
                                    在 AWS AppConfig 配置文件中输入配置数据
    7. 选择 Next (下一步)

  8. Service role (服务角色) 部分中,选择 New service role (新服务角色) 以让 AWS AppConfig 创建提供配置数据访问权限的 IAM 角色。AWS AppConfig 根据您以前输入的名称自动填充 Role name (角色名称) 字段。或者,要选择已位于 IAM 中的角色,请选择 Existing service role (现有服务角色)。使用 Role ARN (角色 ARN) 列表选择角色。

  9. Add validators (添加验证程序) 页面上,选择 JSON Schema (JSON 架构)AWS Lambda。如果选择 JSON Schema (JSON 架构),请在字段中输入 JSON 架构。如果您选择 AWS Lambda,请从列表中选择函数 Amazon 资源名称 (ARN) 和版本。

    
                            将验证程序添加到 AWS AppConfig 配置
    重要

    在可以将配置添加到系统之前,SSM 文档中存储的配置数据必须对照关联的 JSON 架构进行验证。SSM 参数不需要验证方法,但我们建议您通过使用 AWS Lambda 为新的或更新的 SSM 参数配置创建验证检查。

  10. 选择 Create configuration profile (创建配置文件)

重要

如果您为 AWS CodePipeline,在创建部署策略后,如下一节所述,您必须在 CodePipeline 指定 AWS AppConfig 作为 部署提供商. 有关创建指定管道的信息 AWS AppConfig 作为部署提供商,请参阅 教程: 创建使用的管道 AWS AppConfig 作为部署提供商AWS CodePipeline 用户指南.

继续执行步骤 4. 创建部署策略