Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Fase 1: creare un bucket Amazon S3
Importante
Il AWS OpsWorks Stacks servizio ha raggiunto la fine del ciclo di vita il 26 maggio 2024 ed è stato disabilitato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il AWS Support Team su AWS re:post
È innanzitutto necessario creare un bucket Amazon S3. Puoi farlo direttamente utilizzando la console, l'API o la CLI di Amazon S3, ma un modo più semplice per creare risorse è spesso quello di utilizzare un modello. AWS CloudFormation Il seguente modello crea un bucket Amazon S3 per questo esempio e configura il profilo dell'istanza con un ruolo IAM che garantisce l'accesso illimitato al bucket. Puoi quindi utilizzare un'impostazione del livello per collegare il profilo dell'istanza alle istanze del server applicazioni dello stack, perché l'applicazione possa accedere al bucket, come descritto di seguito. L'utilità dei profili di istanza non si limita ad Amazon S3; sono utili per integrare una varietà di servizi 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" } } } }
Quando avvii il modello, si verificano diverse situazioni:
-
La
AWS::S3::Bucket
risorsa crea un bucket Amazon S3. -
La risorsa
AWS::IAM::InstanceProfile
crea un profilo dell'istanza che verrà assegnato alle istanze del server applicazioni. -
La risorsa
AWS::IAM::Role
crea il ruolo del profilo dell'istanza. -
La
AWS::IAM::Policy
risorsa imposta le autorizzazioni del ruolo per consentire l'accesso illimitato ai bucket Amazon S3. -
La sezione
Outputs
visualizza i nomi del bucket e del profilo dell'istanza nella console AWS CloudFormation dopo l'avvio del modello.Questi valori ti serviranno per configurare lo stack e l'app.
Per creare il bucket Amazon S3
-
Copiare il modello di esempio in un file di testo nel sistema.
Questo esempio presuppone che il nome del file sia
appserver.template
. -
Apri la console AWS CloudFormation
e scegli Create Stack (Crea stack). -
Nella casella Stack Name (Nome stack) immettere il nome dello stack.
Questo esempio presuppone che il nome del file sia
AppServer
. -
Scegliere Upload template file (Carica file modello), Browse (Sfoglia), selezionare il file
appserver.template
creato nella fase 1 quindi scegliere Next Step (Fase successiva). -
Nella pagina Specify Parameters (Specifica parametri) selezionare I acknowledge that this template may create IAM resources (Sono consapevole che questo modello può creare risorse IAM) e quindi scegliere Next Step (Fase successiva) in ogni pagina della procedura guidata, fino a raggiungere la fine. Scegli Crea.
-
Dopo che lo AppServerstack ha raggiunto lo stato CREATE_COMPLETE, selezionalo e scegli la scheda Output.
Potrebbe essere necessario aggiornare più volte per aggiornare lo stato.
-
Nella scheda Outputs, registra i valori and per un uso successivo. BucketNameInstanceProfileName
Nota
AWS CloudFormation utilizza il termine stack per riferirsi alla raccolta di risorse create da un modello; non è lo stesso di uno AWS OpsWorks stack Stacks.