Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
CloudFormation Ejemplos de ingesta: aplicación web de 3 niveles
Ingiera una CloudFormation plantilla para una aplicación web estándar de 3 niveles.
Esto incluye un Application Load Balancer, un grupo objetivo de Application Load Balancer, un grupo Auto Scaling, una plantilla de lanzamiento de grupos de Auto Scaling, Amazon Relational Database Service (RDS para SQL Server) con una base de datos MySQL, un almacén de parámetros SSM y AWS Secrets Manager. AWS Dedique entre 30 y 60 minutos a repasar este ejemplo.
Requisitos previos
Cree un secreto que contenga un nombre de usuario y una contraseña con los valores correspondientes mediante el AWS Secrets Manager. Puedes consultar este ejemplo de plantilla JSON (archivo zip) que contiene el nombre
ams-shared/myapp/dev/dbsecretssecreto y sustituirlo por tu nombre secreto. Para obtener información sobre el uso de AWS Secrets Manager con AMS, consulteUso de AWS Secrets Manager con los recursos de AMS.Configure los parámetros necesarios en el almacén de parámetros (PS) del AWS SSM. En este ejemplo, las
VPCIdsubredes públicas y privadas se almacenan en el SSM PS en rutas como/app/DemoApp/PublicSubnet1a,PublicSubnet1c,PrivateSubnet1ay.Subnet-IdPrivateSubnet1cVPCCidrActualice las rutas y los nombres y valores de los parámetros según sus necesidades.Cree un rol de EC2 instancia de Amazon de IAM con permisos de lectura para las rutas de AWS Secrets Manager y SSM Parameter Store (el rol de IAM creado y utilizado en estos ejemplos es).
customer-ec2_secrets_manager_instance_profileSi crea políticas estándar de IAM, como el rol de perfil de instancia, el nombre del rol debe empezar por.customer-Para crear un nuevo rol de IAM (puede darle un nombre o cualquier otro nombre)customer-ec2_secrets_manager_instance_profile, utilice el tipo de cambio AMS Management | Applications | IAM instance profile | Create (ct-0ixp4ch2tiu04) CT y adjunte las políticas necesarias. Puede revisar las políticas estándar de IAM de AMScustomer_secrets_manager_policyycustomer_systemsmanager_parameterstore_policy, en la consola de IAM, utilizarlas tal cual o como referencia. AWS
Ingiera una CloudFormation plantilla para una aplicación web estándar de 3 niveles
Cargue la plantilla CloudFormation JSON de ejemplo adjunta en forma de archivo zip, en tres tier-cfn-ingest archivos.zip, en un bucket de S3 y genere una URL de S3 firmada para utilizarla en el RFC de CFN Ingest. Para obtener más información, consulte presign. La plantilla CFN también se puede incluir copy/pasted en el RFC de CFN Ingest cuando se envía el RFC a través de la consola AMS.
Cree un CloudFormation RFC de ingesta (implementación | Ingestión | Apila a partir de CloudFormation plantilla | Crear (ct-36cn2avfrrj9v)), ya sea mediante la consola AMS o la AMS CLI. El proceso de automatización CloudFormation de la ingesta valida la CloudFormation plantilla para garantizar que cuente con recursos válidos compatibles con AMS y cumpla con los estándares de seguridad.
Mediante la consola: para el tipo de cambio, seleccione Implementación -> Ingestión -> Apilar desde CloudFormation plantilla -> Crear y, a continuación, añada los siguientes parámetros como ejemplo (tenga en cuenta que el valor predeterminado de Multi es false): AZDatabase
CloudFormationTemplateS3Endpoint: "https://s3-ap-southeast-2.amazonaws.com/amzn-s3-demo-bucket/3-tier-cfn-ingest.json?AWSAccessKeyId=#{S3_ACCESS_KEY_ID}&Expires=#{EXPIRE_DATE}&Signature=#{SIGNATURE}" VpcId: "VPC_ID" TimeoutInMinutes:120IAMEC2InstanceProfile: "customer_ec2_secrets_manager_instance_profile" MultiAZDatabase: "true" WebServerCapacity: "2"Uso del AWS CLI - Para obtener más información sobre cómo crear RFCs con el AWS CLI, consulte Creación RFCs. Por ejemplo, ejecute el siguiente comando:
aws --profile=saml amscm create-rfc --change-type-id ct-36cn2avfrrj9v --change-type-version "2.0" --title "TEST_CFN_INGEST" --execution-parameters "{\"CloudFormationTemplateS3Endpoint\":\"https://s3-ap-southeast-2.amazonaws.com/my-bucket/3-tier-cfn-ingest.json?AWSAccessKeyId=#{S3_ACCESS_KEY_ID}&Expires=#{EXPIRE_DATE}&Signature=#{SIGNATURE}\",\"TimeoutInMinutes\":120,\"Description\":\"TEST\",\”VpcId”\”:\”VPC_ID\”,\"Name\":\"MY_TEST\",\"Tags\":[{\"Key\":\"env\",\"Value\":\"test\"}],\"Parameters\":[{\"Name\":\"IAMEC2InstanceProfile\",\"Value\":\"customer_ec2_secrets_manager_instance_profile\"},{\"Name\":\"MultiAZDatabase\",\"Value\":\"true\"},{\"Name\":\"VpcId\",\"Value\":\"VPC_ID\"},{\"Name\":\"WebServerCapacity\",\"Value\":\"2\"}]}" --endpoint-urlhttps://amscm.us-east-1.amazonaws.com/operational/--no-verify-ssl
Busque la URL de Application Load Balancer en el resultado de la ejecución de la AWS CloudFormation RFC para acceder al sitio web. Para obtener información sobre cómo acceder a los recursos, consulta Acceder a las instancias.