创建部署策略 - AWS AppConfig

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

创建部署策略

如果您不想使用其中一种预定义的部署策略,则可以创建自己的部署策略。您最多可以创建 20 个部署策略。在部署配置时,您可以选择最适合应用程序和环境的部署策略。

创建 AWS AppConfig 部署策略(控制台)

使用以下过程通过 AWS Systems Manager 控制台创建 AWS AppConfig 部署策略。

创建部署策略
  1. https://console.aws.amazon.com/systems-manager/appconfig/上打开 AWS Systems Manager 控制台。

  2. 在导航窗格中,选择部署策略,然后选择创建部署策略

  3. 对于 Name (名称),请输入部署策略的名称。

  4. 对于 Description (描述),请输入有关部署策略的信息。

  5. 对于 Deployment type (部署类型),选择类型。

  6. 对于 Step percentage (步骤百分比),请选择在部署的每个步骤中作为目标的调用方百分比。

  7. 对于 Deployment time (部署时间),请输入部署的总持续时间(以分钟或小时为单位)。

  8. Bake time 中,输入在继续部署的下一步或考虑完成部署之前,监控 Amazon CloudWatch 警报的总时间(以分钟或小时为单位)。

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

  10. 选择 Create deployment strategy (创建部署策略)

重要

如果您为创建了配置文件 AWS CodePipeline,则必须在中创建指定 CodePipeline AWS AppConfig 为部署提供者的管道。您不需要执行 部署配置。但是,您必须配置客户端以接收应用程序配置更新,如 通过直接调用来检索配置 APIs 中所述。有关创建指定 AWS AppConfig 为部署提供者的管道的信息,请参阅《AWS CodePipeline 用户指南》中的教程:创建 AWS AppConfig 用作部署提供者的管道

继续执行部署配置

创建 AWS AppConfig 部署策略(命令行)

以下过程介绍如何使用 AWS CLI (在 Linux 或 Windows 上)或 AWS Tools for PowerShell 如何创建 AWS AppConfig 部署策略。

分步创建部署策略
  1. 打开 AWS CLI.

  2. 运行以下命令,创建部署策略。

    Linux
    aws appconfig create-deployment-strategy \ --name A_name_for_the_deployment_strategy \ --description A_description_of_the_deployment_strategy \ --deployment-duration-in-minutes Total_amount_of_time_for_a_deployment_to_last \ --final-bake-time-in-minutes Amount_of_time_AWS AppConfig_monitors_for_alarms_before_considering_the_deployment_to_be_complete \ --growth-factor The_percentage_of_targets_to_receive_a_deployed_configuration_during_each_interval \ --growth-type The_linear_or_exponential_algorithm_used_to_define_how_percentage_grows_over_time \ --replicate-to To_save_the_deployment_strategy_to_a_Systems_Manager_(SSM)_document \ --tags User_defined_key_value_pair_metadata_of_the_deployment_strategy
    Windows
    aws appconfig create-deployment-strategy ^ --name A_name_for_the_deployment_strategy ^ --description A_description_of_the_deployment_strategy ^ --deployment-duration-in-minutes Total_amount_of_time_for_a_deployment_to_last ^ --final-bake-time-in-minutes Amount_of_time_AWS AppConfig_monitors_for_alarms_before_considering_the_deployment_to_be_complete ^ --growth-factor The_percentage_of_targets_to_receive_a_deployed_configuration_during_each_interval ^ --growth-type The_linear_or_exponential_algorithm_used_to_define_how_percentage_grows_over_time ^ --name A_name_for_the_deployment_strategy ^ --replicate-to To_save_the_deployment_strategy_to_a_Systems_Manager_(SSM)_document ^ --tags User_defined_key_value_pair_metadata_of_the_deployment_strategy
    PowerShell
    New-APPCDeploymentStrategy ` --Name A_name_for_the_deployment_strategy ` --Description A_description_of_the_deployment_strategy ` --DeploymentDurationInMinutes Total_amount_of_time_for_a_deployment_to_last ` --FinalBakeTimeInMinutes Amount_of_time_AWS AppConfig_monitors_for_alarms_before_considering_the_deployment_to_be_complete ` --GrowthFactor The_percentage_of_targets_to_receive_a_deployed_configuration_during_each_interval ` --GrowthType The_linear_or_exponential_algorithm_used_to_define_how_percentage_grows_over_time ` --ReplicateTo To_save_the_deployment_strategy_to_a_Systems_Manager_(SSM)_document ` --Tag Hashtable_type_User_defined_key_value_pair_metadata_of_the_deployment_strategy

    系统将返回类似于以下内容的信息。

    Linux
    {
       "Id": "Id of the deployment strategy",
       "Name": "Name of the deployment strategy",
       "Description": "Description of the deployment strategy",
       "DeploymentDurationInMinutes": "Total amount of time the deployment lasted",
       "GrowthType": "The linear or exponential algorithm used to define how percentage grew over time",
       "GrowthFactor": "The percentage of targets that received a deployed configuration during each interval",  
       "FinalBakeTimeInMinutes": "The amount of time AWS AppConfig monitored for alarms before considering the deployment to be complete",
       "ReplicateTo": "The Systems Manager (SSM) document where the deployment strategy is saved"
    }
    Windows
    {
       "Id": "Id of the deployment strategy",
       "Name": "Name of the deployment strategy",
       "Description": "Description of the deployment strategy",
       "DeploymentDurationInMinutes": "Total amount of time the deployment lasted",
       "GrowthType": "The linear or exponential algorithm used to define how percentage grew over time",
       "GrowthFactor": "The percentage of targets that received a deployed configuration during each interval",  
       "FinalBakeTimeInMinutes": "The amount of time AWS AppConfig monitored for alarms before considering the deployment to be complete",
       "ReplicateTo": "The Systems Manager (SSM) document where the deployment strategy is saved"
    }
    PowerShell
    ContentLength               : Runtime of the command
    DeploymentDurationInMinutes : Total amount of time the deployment lasted
    Description                 : Description of the deployment strategy
    FinalBakeTimeInMinutes      : The amount of time AWS AppConfig monitored for alarms before considering the deployment to be complete
    GrowthFactor                : The percentage of targets that received a deployed configuration during each interval
    GrowthType                  : The linear or exponential algorithm used to define how percentage grew over time
    HttpStatusCode              : HTTP Status of the runtime
    Id                          : The deployment strategy ID
    Name                        : Name of the deployment strategy
    ReplicateTo                 : The Systems Manager (SSM) document where the deployment strategy is saved
    ResponseMetadata            : Runtime Metadata