

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

# 教程：创建 AWS AppConfig 用作部署提供者的管道
<a name="tutorials-AppConfig"></a>

在本教程中，您将配置一个管道，该管道在部署阶段 AWS AppConfig 用作部署操作提供者，持续提供配置文件。

**重要**  
作为创建管道的一部分，客户提供的 S3 工件存储桶将 CodePipeline 用于项目。（这与用于 S3 源操作的存储桶不同。） 如果 S3 工件存储桶与您的管道账户位于不同的账户中，请确保 S3 工件存储桶归其所有 AWS 账户 ，该存储桶是安全且可靠的。

**Topics**
+ [先决条件](#tutorials-AppConfig-prereq)
+ [第 1 步：创建您的 AWS AppConfig 资源](#tutorials-AppConfig-application)
+ [步骤 2：将文件上传到 S3 源桶](#tutorials-AppConfig-bucket)
+ [步骤 3：创建管道](#tutorials-AppConfig-pipeline)
+ [步骤 4：对任何源文件进行更改并验证部署](#tutorials-AppConfig-verify)

## 先决条件
<a name="tutorials-AppConfig-prereq"></a>

在开始本教程之前，您必须完成以下步骤：
+ 本例将 S3 源用于您的管道。创建或使用已启用版本控制的 Amazon S3 桶。按照[步骤 1：为您的应用程序创建一个 S3 源存储桶](tutorials-simple-s3.md#s3-create-s3-bucket)中的说明创建 S3 存储桶。

## 第 1 步：创建您的 AWS AppConfig 资源
<a name="tutorials-AppConfig-application"></a>

在本节中，您将创建以下资源：
+ 中的*应用程序* AWS AppConfig 是一个逻辑代码单元，可为您的客户提供功能。
+ 中的*环境* AWS AppConfig 是由 AppConfig 目标组成的逻辑部署组，例如测试版或生产环境中的应用程序。
+ *配置文件*是一组影响应用程序行为的设置。配置文件使您 AWS AppConfig 能够在其存储位置访问您的配置。
+ （可选）中的*部署策略* AWS AppConfig 定义了配置部署的行为，例如在部署期间的任何给定时间应收到新部署配置的客户端的百分比。

**创建应用程序、环境、配置文件和部署策略**

1. 登录到 AWS 管理控制台。

1. 使用以下主题中的步骤在中创建您的资源 AWS AppConfig。
   + [创建应用程序](https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-application.html)。
   + [创建一个环境](https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-environment.html)。
   + [创建 AWS CodePipeline 配置文件](https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-configuration-and-profile.html)。
   + （可选）[选择预定义的部署策略或创建自己的部署策略](https://docs.aws.amazon.com/systems-manager/latest/userguide/appconfig-creating-deployment-strategy.html)。

## 步骤 2：将文件上传到 S3 源桶
<a name="tutorials-AppConfig-bucket"></a>

在本节中，创建一个或多个配置文件。然后将源文件压缩并推送到管道用于源阶段的桶。

**创建配置文件**

1. 在每个区域中为每个配置创建一个 `configuration.json` 文件。包括以下内容：

   ```
   Hello World!
   ```

1. 使用以下步骤压缩和上传配置文件。

**压缩和上传源文件**

1. 创建包含文件的 .zip 文件并将文件命名为 .zip 文件 `configuration-files.zip`。例如，您的 .zip 文件可以使用以下结构：

   ```
   .
   └── appconfig-configurations
       └── MyConfigurations
           ├── us-east-1
           │   └── configuration.json
           └── us-west-2
               └── configuration.json
   ```

1. 在桶的 Amazon S3 控制台中，选择**上传**，然后按照说明上传 .zip 文件。

## 步骤 3：创建管道
<a name="tutorials-AppConfig-pipeline"></a>

在此部分中，您将使用以下操作创建管道：
+ 一个具有 Amazon S3 操作的源阶段，其中源构件是用于配置的文件。
+ 包含部署操作的 AppConfig 部署阶段。

**使用向导创建管道**

1. 登录 AWS 管理控制台 并打开 CodePipeline 控制台，[网址为 http://console.aws.amazon。 com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home)。

1. 在**欢迎**页面、**入门**页面或**管道**页面上，选择**创建管道**。

1. 在**步骤 1：选择创建选项**页面上的**创建选项**下，选择**构建自定义管道**选项。选择**下一步**。

1. 在**步骤 2：选择管道设置**的**管道名称**中，输入 **MyAppConfigPipeline**。

1. CodePipeline 提供 V1 和 V2 类型的管道，它们的特性和价格各不相同。在控制台中，您只能选择 V2 类型。有关更多信息，请参阅[管道类型](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipeline-types-planning.html?icmpid=docs_acp_help_panel)。有关定价的信息 CodePipeline，请参阅[定价](https://aws.amazon.com/codepipeline/pricing/)。

1. 在**服务角色**中，选择**新建服务角色** CodePipeline 以允许在 IAM 中创建服务角色。

1. 将**高级设置**中的各项设置保留为默认值，然后选择**下一步**。

1. 在**步骤 3：添加源阶段**的**源提供程序**中，选择 **Amazon S3**。在**桶**中，选择 S3 源桶的名称。

   在 **S3 对象键**中，输入您的 .zip 文件：`configuration-files.zip`。

   选择**下一步**。

1. 在**步骤 4：添加构建阶段**中，选择**跳过构建阶段**，并通过再次选择**跳过**接受警告消息。

   选择**下一步**。

1. 在**步骤 5：添加测试阶段**中，选择**跳过测试阶段**，并通过再次选择**跳过**接受警告消息。

   选择**下一步**。

1. 在**步骤 6：添加部署阶段**中：

   1. 在**部署提供程序**中，选择**AWS AppConfig**。

   1. 在**应用程序**中，选择您在中创建的应用程序的名称 AWS AppConfig。该字段显示应用程序的 ID。

   1. 在**环境**中，选择您在中创建的环境的名称 AWS AppConfig。该字段显示您的环境的 ID。

   1. 在**配置配置文件**中，选择您在中创建的配置文件的名称 AWS AppConfig。该字段显示您的配置文件的 ID。

   1. 在**部署策略**中，选择部署策略的名称。这可以是您在中创建的部署策略， AppConfig 也可以是您从中预定义的部署策略中选择的策略 AppConfig。该字段显示您的部署策略的 ID。

   1. 在**输入构件配置路径**中，输入文件路径。确保您的输入构件配置路径与 S3 桶 .zip 文件中的目录结构相匹配。在此示例中，输入以下文件路径：`appconfig-configurations/MyConfigurations/us-west-2/configuration.json`。

   1. 选择**下一步**。

1. 在**步骤 7：查看**中，查看信息，然后选择**创建管道**。

## 步骤 4：对任何源文件进行更改并验证部署
<a name="tutorials-AppConfig-verify"></a>

对源文件进行更改，然后将更改上传到桶。这将触发您的管道运行。通过查看版本来验证您的配置是否可用。