As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Etapa 1: crie um bucket do Amazon S3
Importante
O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no AWS re:POST
Primeiro, é necessário criar um bucket do Amazon S3. Você pode fazer isso diretamente usando a API, a CLI ou o console do Amazon S3. Porém, uma maneira mais simples de criar recursos normalmente é usar um modelo do AWS CloudFormation . O modelo a seguir cria um bucket do Amazon S3 para este exemplo e configura o perfil de instância com um perfil do IAM que concede acesso irrestrito ao bucket. Em seguida, você pode usar uma camada para anexar o perfil da instância às instâncias do servidor de aplicativos da pilha, o que permite que o aplicativo acesse o bucket, conforme descrito mais adiante. A utilidade de perfis de instância não fica limitada ao Amazon S3. Eles são valiosos para integrar uma variedade de serviços da 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" } } } }
Várias coisas acontecem quando você inicia o modelo:
-
O recurso
AWS::S3::Bucket
cria um bucket do Amazon S3. -
O recurso
AWS::IAM::InstanceProfile
cria um perfil de instância que será atribuído à instâncias do servidor de aplicativos. -
O recurso
AWS::IAM::Role
cria a função do perfil de instância. -
O recurso
AWS::IAM::Policy
define as permissões do perfil para conceder acesso irrestrito aos buckets do Amazon S3. -
A seção
Outputs
exibirá os nomes do bucket e do perfil de instância no console do AWS CloudFormation depois que você iniciar o modelo.Você precisará desses valores para configurar sua pilha e aplicativo.
Para obter mais informações sobre como criar AWS CloudFormation modelos, consulte Learn Template Basics.
Criar o bucket do Amazon S3
-
Copie o modelo de exemplo para um arquivo de texto no sistema.
Este exemplo pressupõe que o arquivo é chamado
appserver.template
. -
Abra o console do AWS CloudFormation
e selecione Create Stack (Criar pilha). -
Na caixa Stack Name, insira o nome da pilha.
Este exemplo pressupõe que o nome é
AppServer
. -
Selecione Upload template file (Carregar arquivo de modelo), selecione Browse (Navegar), selecione o arquivo
appserver.template
que você criou na etapa 1 e, em seguida, selecione Next Step (Próxima etapa). -
Na página Specify Parameters (Especificar parâmetros), selecione I acknowledge that this template may create IAM resources (Estou ciente de que esse modelo pode criar recursos do IAM) e, em seguida, selecione Next Step (Próxima etapa) em todas as páginas do assistente até chegar à página final. Escolha Criar.
-
Depois que a AppServerpilha atingir o status CREATE_COMPLETE, selecione-a e escolha a guia Saídas.
Talvez você precise atualizar algumas vezes para atualizar o status.
-
Na guia Saídas, BucketNameregistre os InstanceProfileNamevalores e para uso posterior.
nota
AWS CloudFormation usa o termo pilha para se referir à coleção de recursos que são criados a partir de um modelo; não é o mesmo que uma pilha de AWS OpsWorks pilhas.