A software development company is designing a new cloud-native application and establishing its deployment and operating procedures on AWS. The company has the following technical requirements:
1. The entire multi-tier application infrastructure must be defined as code in a single YAML template to allow for automated, repeatable deployments across different environments.
2. The application code (written in Python) running on an Amazon EC2 instance must programmatically and securely access files in an Amazon S3 bucket without using permanent, hardcoded access keys.
Which combination of AWS tools, services, or features is most appropriate to meet these requirements?
- AWS CloudFormation to deploy the infrastructure templates, and the AWS SDK within the Python code while assigning an IAM Role to the EC2 instanceCevap
- BAWS Elastic Beanstalk to deploy the infrastructure templates, and the AWS Command Line Interface (CLI) called from within the Python code using embedded AWS Account Root User access keys
- CAWS CloudFormation to deploy the infrastructure templates, and the AWS SDK within the Python code while hardcoding an IAM User's permanent access keys in the application configuration
- DAWS Elastic Beanstalk to deploy the infrastructure templates, and the AWS SDK within the Python code while assigning an IAM Role to the EC2 instance
Cevap
Use AWS CloudFormation to deploy the infrastructure templates, and the AWS SDK within the Python code while assigning an IAM Role to the EC2 instance.
The correct option correctly pairs AWS CloudFormation (the standard declarative service for Infrastructure as Code using templates) with the AWS SDK (the primary tool for programmatic integration in application code) and assigns an IAM Role to the EC2 instance to dynamically supply secure, temporary credentials.
Adım Adım Çözüm
Anahtar Kavram
Methods of Deploying and Operating in AWS
Tahmini Süre:2m 0s