Which solution will meet these requirements?
Make the configuration changes for the application. Use AWS CodeDeploy to create a deployment configuration. Specify an in-place deployment to deploy the changes.
Bootstrap the application to use the AWS Cloud Development Kit (AWS CDK) and make the configuration changes. Specify the ECSCanary10Percent15Minutes launch type in the properties section of the ECS resource. Deploy the application by using the AWS CDK to implement the changes.
Install the AWS AppConfig agent on Amazon ECS. Configure an IAM role with access to AWS AppConfig. Make the deployment changes by using AWS AppConfig. Specify Canary10Percent20Minutes as the deployment strategy.
Create an AWS Lambda function to make the configuration changes. Create an Amazon CloudWatch alarm that monitors the Lambda function every 5 minutes to check if the Lambda function has been updated. When the Lambda function is updated, deploy the changes by using AWS CodeDeploy.
Explanations:
While AWS CodeDeploy can be used for application deployment, an in-place deployment could cause downtime if the application needs to restart to pick up new configuration changes. This option does not ensure zero-downtime during configuration changes.
The AWS Cloud Development Kit (CDK) can facilitate infrastructure as code, but specifying the ECSCanary10Percent15Minutes launch type pertains more to deployment strategy rather than directly addressing dynamic configuration changes. This solution does not inherently support automatic, zero-downtime updates for changing application parameters.
AWS AppConfig is designed for managing application configurations dynamically and allows for deployment strategies such as Canary deployments. By using the AppConfig agent, the application can fetch updated configuration without downtime, ensuring that changes to connection limits and transactions per second can be made smoothly and automatically.
While a Lambda function can be used to make configuration changes, relying on a CloudWatch alarm to trigger updates is not an effective strategy for dynamically managing application parameters. This method could introduce complexity and potential delays, and it does not provide a built-in zero-downtime update mechanism compared to using AWS AppConfig.