Paso 1: Crear un bucket de Amazon S3 - AWS OpsWorks

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.

Paso 1: Crear un bucket de Amazon S3

importante

El AWS OpsWorks Stacks servicio llegó al final de su vida útil el 26 de mayo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en AWS Re:post o a través de Premium AWS Support.

En primer lugar, debe crear un bucket de Amazon S3. Puede hacerlo directamente mediante la consola, la API o la CLI de Amazon S3, pero a menudo es más sencillo crear recursos utilizando una plantilla de AWS CloudFormation . La siguiente plantilla crea un bucket de Amazon S3 para este ejemplo y configura un perfil de instancia con un rol de IAM que concede acceso no restringido al bucket. A continuación, podrá utilizar una opción de capa para adjuntar el perfil de instancia a las instancias del servidor de aplicaciones de la pila, que permita a las aplicaciones obtener acceso al bucket, tal y como se describe más adelante. La utilidad de los perfiles de instancia no se limita a Amazon S3; son muy útiles para integrar una amplia variedad de servicios de AWS.

{ "AWSTemplateFormatVersion" : "2010-09-09", "Resources" : { "AppServerRootRole": { "Type": "AWS::IAM::Role", "Properties": { "AssumeRolePolicyDocument": { "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ec2.amazonaws.com" ] }, "Action": [ "sts:AssumeRole" ] } ] }, "Path": "/" } }, "AppServerRolePolicies": { "Type": "AWS::IAM::Policy", "Properties": { "PolicyName": "AppServerS3Perms", "PolicyDocument": { "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": { "Fn::Join" : ["", [ "arn:aws:s3:::", { "Ref" : "AppBucket" } , "/*" ] ] } } ] }, "Roles": [ { "Ref": "AppServerRootRole" } ] } }, "AppServerInstanceProfile": { "Type": "AWS::IAM::InstanceProfile", "Properties": { "Path": "/", "Roles": [ { "Ref": "AppServerRootRole" } ] } }, "AppBucket" : { "Type" : "AWS::S3::Bucket" } }, "Outputs" : { "BucketName" : { "Value" : { "Ref" : "AppBucket" } }, "InstanceProfileName" : { "Value" : { "Ref" : "AppServerInstanceProfile" } } } }

Cuando se lanza la plantilla suceden varias cosas:

  • El recurso AWS::S3::Bucket crea un bucket de Amazon S3.

  • El recurso AWS::IAM::InstanceProfile crea un perfil de instancia que se asignará a las instancias del servidor de aplicaciones.

  • El recurso AWS::IAM::Role crea el rol del perfil de instancia.

  • El recurso AWS::IAM::Policy establece los permisos del rol para permitir acceso no restringido a buckets de Amazon S3.

  • La sección Outputs muestra el bucket y los nombres de los perfiles de instancia en la consola de AWS CloudFormation después de haber lanzado la plantilla.

    Necesitará estos valores para configurar la pila y la aplicación.

Para obtener más información sobre cómo crear AWS CloudFormation plantillas, consulta Aprende los conceptos básicos de las plantillas.

Para crear un bucket de Amazon S3
  1. Copie la plantilla de muestra en un archivo de texto en el sistema.

    Este ejemplo asume que el archivo se llama appserver.template.

  2. Abra la consola de AWS CloudFormation y elija Create Stack (Crear pila).

  3. En el cuadro Stack name (Nombre de pila), escriba el nombre de la pila.

    Este ejemplo asume que el archivo se llama AppServer.

  4. Elija Upload template file (Cargar archivo de plantilla), elija Browse (Examinar), seleccione el archivo appserver.template que creó en el paso 1 y, a continuación, elija Next step (Paso siguiente).

  5. En la página Specify Parameters (Especificar parámetros), seleccione I acknowledge that this template may create IAM resources (Acepto que esta plantilla pueda crear recursos de IAM) y, a continuación, elija Next step (Paso siguiente) en cada página del asistente hasta el final. Seleccione Crear.

  6. Cuando la AppServerpila alcance el estado CREATE_COMPLETE, selecciónela y elija la pestaña Salidas.

    Es posible que necesite actualizar varias veces el estado.

  7. En la pestaña Salidas, registre los InstanceProfileNamevalores BucketNamey para usarlos más adelante.

nota

AWS CloudFormation utiliza el término pila para referirse al conjunto de recursos que se crean a partir de una plantilla; no es lo mismo que una pila de AWS OpsWorks pilas.