

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à.

# Gestione
<a name="management-pattern-list"></a>

**Topics**
+ [Gestione dei costi](costmanagement-pattern-list.md)
+ [Informatica per l'utente finale](endusercomputing-pattern-list.md)
+ [High Performance Computing](highperformancecomputing-pattern-list.md)
+ [Cloud ibrido](hybrid-pattern-list.md)
+ [Gestione e governance](governance-pattern-list.md)
+ [Messaggi e comunicazioni](messagingandcommunications-pattern-list.md)
+ [Strategia multi-account](multiaccountstrategy-pattern-list.md)

# Gestione dei costi
<a name="costmanagement-pattern-list"></a>

**Topics**
+ [Crea report dettagliati su costi e utilizzo per i lavori AWS Glue utilizzando AWS Cost Explorer](create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer.md)
+ [Crea report dettagliati su costi e utilizzo per i cluster Amazon EMR utilizzando AWS Cost Explorer](create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer.md)
+ [Altri modelli](costmanagement-more-patterns-pattern-list.md)

# Crea report dettagliati su costi e utilizzo per i lavori AWS Glue utilizzando AWS Cost Explorer
<a name="create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer"></a>

*Parijat Bhide e Aromal Raj Jayarajan, Amazon Web Services*

## Riepilogo
<a name="create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer-summary"></a>

Questo modello mostra come tenere traccia dei costi di utilizzo dei processi di integrazione dei dati di AWS Glue configurando tag di [allocazione dei costi definiti dall'utente](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/custom-tags.html). Puoi utilizzare questi tag per creare report dettagliati su costi e utilizzo in AWS Cost Explorer per lavori su più dimensioni. Ad esempio, puoi tenere traccia dei costi di utilizzo a livello di team, progetto o centro di costo.

## Prerequisiti e limitazioni
<a name="create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo
+ Uno o più [job AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/how-it-works.html) con tag definiti dall'utente attivati

## Architecture
<a name="create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer-architecture"></a>

**Stack tecnologico Target**
+ AWS Glue
+ AWS Cost Explorer

Il diagramma seguente mostra come applicare tag per tenere traccia dei costi di utilizzo per i lavori AWS Glue.

![\[Creazione e applicazione di tag nei job AWS Glue per tenere traccia dei costi di utilizzo in AWS Cost Explorer.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/e0ae6643-713d-423a-9013-b41b30638053/images/f2b74ef1-494d-439b-9aec-5a9d601126a6.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Un ingegnere dei dati o un amministratore AWS crea tag di allocazione dei costi definiti dall'utente per i job AWS Glue.

1. Un amministratore AWS attiva i tag.

1. I tag inviano i metadati ad AWS Cost Explorer.

## Tools (Strumenti)
<a name="create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer-tools"></a>
+ [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html) è un servizio di estrazione, trasformazione e caricamento (ETL) completamente gestito. Ti aiuta a classificare, pulire, arricchire e spostare i dati in modo affidabile tra archivi di dati e flussi di dati.
+ [AWS Cost Explorer](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ce-what-is.html) ti aiuta a visualizzare e analizzare i costi e l'utilizzo di AWS.

## Epiche
<a name="create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer-epics"></a>

### Crea e attiva tag per i tuoi lavori AWS Glue
<a name="create-and-activate-tags-for-your-aws-glue-jobs"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea tag di allocazione dei costi definiti dall'utente per i tuoi job AWS Glue. | **Per aggiungere tag a un job AWS Glue esistente**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer.html)**Per aggiungere tag a un nuovo lavoro AWS Glue**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer.html)Per ulteriori informazioni, consulta i [tag AWS in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html) nella *AWS Glue Developer Guide.* | Ingegnere dei dati | 
| Attiva i tag di allocazione dei costi definiti dall'utente. | Segui le istruzioni in [Attivazione dei tag di allocazione dei costi definiti dall'utente](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activating-tags.html) nella *AWS Billing* User Guide. | Amministratore AWS | 

### Crea report su costi e utilizzo per i tuoi lavori in AWS Glue
<a name="create-cost-and-usage-reports-for-your-aws-glue-jobs"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea report sui costi e sull'utilizzo per i tuoi lavori AWS Glue utilizzando i filtri di tag in AWS Cost Explorer. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-detailed-cost-and-usage-reports-for-aws-glue-jobs-by-using-aws-cost-explorer.html)Per ulteriori informazioni, consulta [Exploring your data using Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-exploring-data.html) nella *AWS Cost Management User Guide*. | AWS generale, amministratore AWS | 

# Crea report dettagliati su costi e utilizzo per i cluster Amazon EMR utilizzando AWS Cost Explorer
<a name="create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer"></a>

*Parijat Bhide e Aromal Raj Jayarajan, Amazon Web Services*

## Riepilogo
<a name="create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer-summary"></a>

Questo modello mostra come tenere traccia dei costi di utilizzo dei cluster Amazon EMR configurando tag di allocazione dei costi [definiti dall'utente](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/custom-tags.html). Puoi utilizzare questi tag per creare report dettagliati su costi e utilizzo in AWS Cost Explorer per cluster su più dimensioni. Ad esempio, puoi tenere traccia dei costi di utilizzo a livello di team, progetto o centro di costo.

## Prerequisiti e limitazioni
<a name="create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo
+ Uno o più [cluster EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-gs.html) con tag definiti dall'utente attivati

## Architecture
<a name="create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer-architecture"></a>

**Stack tecnologico Target**
+ Amazon EMR
+ AWS Cost Explorer

**Architettura di destinazione**

Il diagramma seguente mostra come applicare tag per tenere traccia dei costi di utilizzo per cluster Amazon EMR specifici.

![\[Utilizzo di tag di allocazione dei costi per i cluster Amazon EMR.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/3e470077-e3b1-43cf-8cb9-0895fe39e664/images/fb6b78cb-47bb-4ba1-848a-98dba02bdbb2.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Un ingegnere dei dati o un amministratore AWS crea tag di allocazione dei costi definiti dall'utente per i cluster Amazon EMR.

1. Un amministratore AWS attiva i tag.

1. I tag inviano i metadati ad AWS Cost Explorer.

## Tools (Strumenti)
<a name="create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer-tools"></a>

**Strumenti**
+ [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) è una piattaforma di cluster gestita che semplifica l'esecuzione di framework di big data su AWS per elaborare e analizzare grandi quantità di dati.
+ [AWS Cost Explorer](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ce-what-is.html) ti aiuta a visualizzare e analizzare i costi e l'utilizzo di AWS.

## Epiche
<a name="create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer-epics"></a>

### Crea e attiva tag per i tuoi cluster Amazon EMR
<a name="create-and-activate-tags-for-your-amazon-emr-clusters"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea tag di allocazione dei costi definiti dall'utente per i tuoi cluster Amazon EMR. | **Per aggiungere tag a un cluster Amazon EMR esistente**Segui le istruzioni in [Aggiungere tag a un cluster esistente](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags-add.html) nella *Amazon EMR Management* Guide.**Per aggiungere tag a un nuovo cluster Amazon EMR**Segui le istruzioni in [Aggiungere tag a un nuovo cluster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags-add-new.html) nella *Amazon EMR Management* Guide.Per ulteriori informazioni su come configurare un cluster Amazon EMR, consulta [Pianificare e configurare i cluster](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan.html) nella Amazon *EMR* Management Guide. | Ingegnere dei dati | 
| Attiva i tag di allocazione dei costi definiti dall'utente. | Segui le istruzioni in [Attivazione dei tag di allocazione dei costi definiti dall'utente](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activating-tags.html) nella *AWS Billing* User Guide. | Amministratore AWS | 

### Crea report su costi e utilizzo per i tuoi cluster Amazon EMR
<a name="create-cost-and-usage-reports-for-your-amazon-emr-clusters"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea report su costi e utilizzo per i tuoi cluster Amazon EMR utilizzando i filtri di tag in AWS Cost Explorer. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-detailed-cost-and-usage-reports-for-amazon-emr-clusters-by-using-aws-cost-explorer.html)Per ulteriori informazioni, consulta [Exploring your data using Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-exploring-data.html) nella *AWS Cost Management User Guide*. | AWS generale, amministratore AWS | 

# Altri modelli
<a name="costmanagement-more-patterns-pattern-list"></a>

**Topics**
+ [Automatizza le operazioni AWS dell'infrastruttura utilizzando Amazon Bedrock](automate-aws-infrastructure-operations-by-using-amazon-bedrock.md)
+ [Inventaria automaticamente AWS le risorse su più account e regioni](automate-aws-resource-inventory.md)
+ [Automatizza la creazione di risorse Amazon WorkSpaces Applications utilizzando AWS CloudFormation](automate-the-creation-of-appstream-2-0-resources-using-aws-cloudformation.md)
+ [Archivia automaticamente gli elementi su Amazon S3 utilizzando DynamoDB TTL](automatically-archive-items-to-amazon-s3-using-dynamodb-ttl.md)
+ [Arresta e avvia automaticamente un'istanza database Amazon RDS utilizzando AWS Systems Manager Maintenance Windows](automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.md)
+ [Crea report dettagliati su costi e utilizzo per Amazon RDS e Amazon Aurora](create-detailed-cost-and-usage-reports-for-amazon-rds-and-amazon-aurora.md)
+ [Stima dei costi di storage per una tabella Amazon DynamoDB](estimate-storage-costs-for-an-amazon-dynamodb-table.md)
+ [Stima del costo di una tabella DynamoDB per la capacità su richiesta](estimate-the-cost-of-a-dynamodb-table-for-on-demand-capacity.md)
+ [Configura la scalabilità automatica basata sugli eventi in Amazon EKS utilizzando Amazon EKS Pod Identity e KEDA](event-driven-auto-scaling-with-eks-pod-identity-and-keda.md)
+ [Coordina la dipendenza dalle risorse e l'esecuzione delle attività utilizzando il costrutto AWS Fargate WaitCondition hook](use-the-aws-fargate-waitcondition-hook-construct.md)

# Informatica per l'utente finale
<a name="endusercomputing-pattern-list"></a>

**Topics**
+ [Implementa l'autenticazione SAML 2.0 per Amazon WorkSpaces utilizzando Auth0 e AWS Managed Microsoft AD](implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad.md)
+ [Altri modelli](endusercomputing-more-patterns-pattern-list.md)

# Implementa l'autenticazione SAML 2.0 per Amazon WorkSpaces utilizzando Auth0 e AWS Managed Microsoft AD
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad"></a>

*Siva Vinnakota e Shantanu Padhye, Amazon Web Services*

## Riepilogo
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-summary"></a>

Questo modello esplora come integrare Auth0 AWS Directory Service for Microsoft Active Directory per creare una solida soluzione di autenticazione SAML 2.0 per il tuo ambiente Amazon. WorkSpaces Spiega come stabilire una federazione tra questi sistemi Servizi AWS per abilitare funzionalità avanzate come l'autenticazione a più fattori (MFA) e i flussi di accesso personalizzati, preservando al contempo l'accesso al desktop senza interruzioni. AWS Managed Microsoft AD Che tu gestisca solo una manciata di utenti o migliaia, questa integrazione aiuta a fornire flessibilità e sicurezza alla tua organizzazione. Questo modello fornisce i passaggi per il processo di configurazione in modo da poter implementare questa soluzione nel proprio ambiente.

## Prerequisiti e limitazioni
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-prereqs"></a>

**Prerequisiti**
+ Un attivo Account AWS
+ AWS Managed Microsoft AD
+ Un desktop fornito in Amazon WorkSpaces Personal associato a AWS Managed Microsoft AD
+ Un'istanza Amazon Elastic Compute Cloud (Amazon EC2)
+ Un account Auth0

**Limitazioni**

Alcuni Servizi AWS non sono disponibili in tutti Regioni AWS. Per la disponibilità per regione, vedi [Servizi AWS per regione](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Per endpoint specifici, consulta la pagina [Endpoint e quote del servizio](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) e scegli il link relativo al servizio.

## Architecture
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-architecture"></a>

Il processo di autenticazione SAML 2.0 per un'applicazione WorkSpaces client consiste in cinque passaggi illustrati nel diagramma seguente. Questi passaggi rappresentano un tipico flusso di lavoro per l'accesso. È possibile utilizzare questo approccio distribuito all'autenticazione dopo aver seguito le istruzioni riportate in questo schema, per fornire un metodo strutturato e sicuro per l'accesso degli utenti.

![\[Flusso di lavoro per il processo di autenticazione SAML 2.0 per un'applicazione WorkSpaces client.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/5a0f227c-c111-495b-9fde-98ae7832bb10/images/957b2a11-e898-4c4f-ae4e-c2e85bfa93a0.png)


 Flusso di lavoro:

1. **Registrazione**. L'utente avvia l'applicazione client WorkSpaces e inserisce il codice di WorkSpaces registrazione per la propria directory abilitata per SAML WorkSpaces . WorkSpaces restituisce l'URL del provider di identità (IdP) Auth0 all'applicazione client.

1. **Accedi.**Il WorkSpaces client reindirizza al browser Web dell'utente utilizzando l'URL Auth0.  L'utente si autentica con nome utente e password. Auth0 restituisce un'asserzione SAML al browser del client. L'asserzione SAML è un token crittografato che afferma l'identità dell'utente.

1. **Autenticazione.** Il browser del client pubblica l'asserzione SAML sull' Accedi ad AWS endpoint per convalidarla. Accedi ad AWS consente al chiamante di assumere un AWS Identity and Access Management ruolo (IAM). Ciò restituisce un token che contiene credenziali temporanee per il ruolo IAM.

1. **WorkSpaces accesso**. Il WorkSpaces client presenta il token all'endpoint del WorkSpaces servizio. WorkSpaces scambia il token con un token di sessione e restituisce il token di sessione al WorkSpaces client con un URL di accesso. Quando il WorkSpaces client carica la pagina di accesso, il valore del nome utente viene compilato con il `NameId` valore passato nella risposta SAML.

1. **Streaming.** L'utente inserisce la propria password e si autentica nella WorkSpaces directory. Dopo l'autenticazione, WorkSpaces restituisce un token al client. Il client reindirizza nuovamente al WorkSpaces servizio e presenta il token. Questo negozia una sessione di streaming tra il WorkSpaces client e il. WorkSpace

**Nota**  
Per configurare un'esperienza Single Sign-On senza interruzioni che non richieda la richiesta di una password, consulta le sezioni Autenticazione [basata su certificati](https://docs.aws.amazon.com/workspaces/latest/adminguide/certificate-based-authentication.html) e Personale nella documentazione. WorkSpaces WorkSpaces 

## Tools (Strumenti)
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-tools"></a>

**Servizi AWS**
+ [Amazon WorkSpaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) è un servizio di infrastruttura desktop virtuale (VDI) completamente gestito che fornisce agli utenti desktop basati sul cloud senza dover procurarsi e distribuire hardware o installare software complessi.
+ [AWS Directory Service for Microsoft Active Directory](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html)consente ai carichi di lavoro e alle risorse compatibili con le directory di AWS utilizzare Microsoft Active Directory in. Cloud AWS

**Altri strumenti**
+ [Auth0](https://auth0.com/) è una piattaforma di autenticazione e autorizzazione che ti aiuta a gestire l'accesso alle tue applicazioni.

## Epiche
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-epics"></a>

### Configura il connettore LDAP di Active Directory in Auth0
<a name="configure-the-active-directory-ldap-connector-in-auth0"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa il connettore LDAP di Active Directory in Auth0 con. AWS Managed Microsoft AD | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad.html) | Amministratore del cloud, architetto del cloud | 
| Crea un'applicazione in Auth0 per generare il file manifest dei metadati SAML. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad.html) | Amministratore del cloud, architetto del cloud | 

### Configura IdP, ruolo e policy per SAML 2.0 in IAM
<a name="set-up-idp-role-and-policy-for-saml-2-0-in-iam"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un IdP SAML 2.0 in IAM. | Per configurare SAML 2.0 come IdP, segui i passaggi descritti [in Creare un provider di identità SAML in IAM nella](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html) documentazione IAM. | Amministratore cloud | 
| Crea un ruolo e una policy IAM per la federazione SAML 2.0. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad.html) | Amministratore cloud | 

### Configura le asserzioni in Auth0
<a name="configure-assertions-in-auth0"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura le asserzioni Auth0 e SAML. | Puoi utilizzare le azioni Auth0 per configurare le asserzioni nelle risposte SAML 2.0. Un'asserzione SAML è un token crittografato che afferma l'identità dell'utente.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad.html)Questo completa la configurazione dell'autenticazione SAML 2.0 per i desktop WorkSpaces personali. La sezione [Architettura](#implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-architecture) illustra il processo di autenticazione dopo la configurazione. | Amministratore cloud | 

## risoluzione dei problemi
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Problemi di autenticazione SAML 2.0 in WorkSpaces** ** | Se riscontri problemi durante l'implementazione dell'autenticazione SAML 2.0 for WorkSpaces Personal, segui i passaggi e i link descritti nell'[articolo di AWS re:POST](https://repost.aws/knowledge-center/workspaces-saml-authentication-issues) sulla risoluzione dei problemi di autenticazione SAML 2.0.Per ulteriori informazioni sull'analisi degli errori SAML 2.0 durante l'accesso, consulta: WorkSpaces[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad.html) | 

## Risorse correlate
<a name="implement-saml-authentication-for-amazon-workspaces-by-using-auth0-and-aws-managed-microsoft-ad-resources"></a>
+ [Configura SAML 2.0 for WorkSpaces Personal (documentazione](https://docs.aws.amazon.com/workspaces/latest/adminguide/setting-up-saml.html)) WorkSpaces 
+ [Documentazione Auth0](https://auth0.com/docs)

# Altri modelli
<a name="endusercomputing-more-patterns-pattern-list"></a>

**Topics**
+ [Automatizza la creazione di risorse Amazon WorkSpaces Applications utilizzando AWS CloudFormation](automate-the-creation-of-appstream-2-0-resources-using-aws-cloudformation.md)
+ [Migliora la qualità delle chiamate sulle postazioni di lavoro degli agenti nei contact center Amazon Connect](improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.md)
+ [Esegui le attività di AWS Systems Manager Automation in modo sincrono da AWS Step Functions](run-aws-systems-manager-automation-tasks-synchronously-from-aws-step-functions.md)

# High Performance Computing
<a name="highperformancecomputing-pattern-list"></a>

**Topics**
+ [Implementa un file system Lustre per l'elaborazione dei dati ad alte prestazioni utilizzando Terraform e DRA](deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra.md)
+ [Configura una dashboard di monitoraggio Grafana per AWS ParallelCluster](set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.md)
+ [Altri modelli](highperformancecomputing-more-patterns-pattern-list.md)

# Implementa un file system Lustre per l'elaborazione dei dati ad alte prestazioni utilizzando Terraform e DRA
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra"></a>

*Arun Bagal e Ishwar Chauthaiwale, Amazon Web Services*

## Riepilogo
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-summary"></a>

Questo modello implementa automaticamente un file system Lustre AWS e lo integra con Amazon Elastic Compute Cloud (Amazon) EC2 e Amazon Simple Storage Service (Amazon S3).

Questa soluzione consente di configurare rapidamente un ambiente di elaborazione ad alte prestazioni (HPC) con storage integrato, risorse di elaborazione e accesso ai dati Amazon S3. Combina le funzionalità di storage di Lustre con le opzioni di elaborazione flessibili fornite da Amazon EC2 e lo storage di oggetti scalabile di Amazon S3, in modo da poter affrontare carichi di lavoro ad alta intensità di dati in machine learning, HPC e analisi dei big data.

Il modello utilizza un modulo HashiCorp Terraform e Amazon FSx for Lustre per semplificare il seguente processo:
+ Fornitura di un file system Lustre
+ Creazione di un'associazione di repository di dati (DRA) tra FSx for Lustre e un bucket S3 per collegare il file system Lustre agli oggetti Amazon S3
+ Creazione di un'istanza EC2 
+ Montaggio del file system Lustre con il DRA collegato ad Amazon S3 sull'istanza EC2 

I vantaggi di questa soluzione includono:
+ Design modulare. È possibile gestire e aggiornare facilmente i singoli componenti di questa soluzione.
+ Scalabilità. È possibile implementare rapidamente ambienti coerenti tra Account AWS le nostre regioni.
+ Flessibilità. È possibile personalizzare l'implementazione in base alle proprie esigenze specifiche.
+ Le migliori pratiche. Questo modello utilizza moduli preconfigurati che seguono le AWS migliori pratiche.

Per ulteriori informazioni sui file system Lustre, consultate il sito Web [Lustre](https://www.lustre.org/).

## Prerequisiti e limitazioni
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-prereqs"></a>

**Prerequisiti**
+ Un attivo Account AWS
+ Una politica di privilegi minimi AWS Identity and Access Management (IAM) (vedi [istruzioni](https://aws.amazon.com/blogs/security/techniques-for-writing-least-privilege-iam-policies/))

**Limitazioni**

FSx for Lustre limita il file system Lustre a una singola zona di disponibilità, il che potrebbe essere un problema se si hanno requisiti di elevata disponibilità. Se la zona di disponibilità che contiene il file system si guasta, l'accesso al file system viene perso fino al ripristino. Per ottenere un'elevata disponibilità, puoi utilizzare DRA per collegare il file system Lustre ad Amazon S3 e trasferire dati tra zone di disponibilità.

**Versioni del prodotto**
+ [Terraform versione 1.9.3 o successiva](https://developer.hashicorp.com/terraform/install?product_intent=terraform)
+ [HashiCorp AWS Provider versione 4.0.0 o successiva](https://registry.terraform.io/providers/hashicorp/aws/latest)

## Architecture
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-architecture"></a>

Il diagramma seguente mostra l'architettura di FSx for Lustre e quella complementare in. Servizi AWS Cloud AWS

![\[FSx per la distribuzione di Lustre con AWS KMS, Amazon EC2, Amazon Logs e CloudWatch Amazon S3.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/51d38589-e752-42cd-9f46-59c3c8d0bfd3/images/c1c21952-fd6f-4b1d-9bf8-09b2f4f4459f.png)


L'architettura include quanto segue:
+ Un bucket S3 viene utilizzato come posizione di archiviazione durevole, scalabile ed economica per i dati. L'integrazione tra FSx for Lustre e Amazon S3 fornisce un file system ad alte prestazioni perfettamente collegato ad Amazon S3.
+ FSx for Lustre esegue e gestisce il file system Lustre.
+ Amazon CloudWatch Logs raccoglie e monitora i dati di log dal file system. Questi log forniscono informazioni dettagliate sulle prestazioni, sullo stato e sull'attività del file system Lustre.
+ Amazon EC2 viene utilizzato per accedere ai file system Lustre utilizzando il client Lustre open source. EC2 le istanze possono accedere ai file system da altre zone di disponibilità all'interno dello stesso cloud privato virtuale (VPC). La configurazione di rete consente l'accesso attraverso sottoreti all'interno del VPC. Dopo aver montato il file system Lustre sull'istanza, puoi lavorare con i relativi file e directory proprio come faresti con un file system locale.
+ AWS Key Management Service (AWS KMS) migliora la sicurezza del file system fornendo la crittografia dei dati inattivi.

**Automazione e scalabilità**

Terraform semplifica l'implementazione, la gestione e la scalabilità dei file system Lustre in più ambienti. In FSx Lustre, un singolo file system ha limiti di dimensione, quindi potrebbe essere necessario ridimensionarlo orizzontalmente creando più file system. Puoi utilizzare Terraform per fornire più file system Lustre in base alle tue esigenze di carico di lavoro.

## Tools (Strumenti)
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-tools"></a>

**Servizi AWS**
+ [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) ti aiuta a centralizzare i log di tutti i tuoi sistemi e applicazioni, Servizi AWS così puoi monitorarli e archiviarli in modo sicuro.
+ [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html) fornisce capacità di elaborazione scalabile in. Cloud AWS Puoi avviare tutti i server virtuali di cui hai bisogno e dimensionarli rapidamente.
+ [Amazon FSx for Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/what-is.html) semplifica ed economica l'avvio, l'esecuzione e la scalabilità di un file system Lustre ad alte prestazioni.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) ti aiuta a creare e controllare chiavi crittografiche per proteggere i tuoi dati.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) è un servizio di archiviazione degli oggetti basato sul cloud che consente di archiviare, proteggere e recuperare qualsiasi quantità di dati.

**Archivio di codice**

Il codice per questo modello è disponibile nel [file system GitHub Provision FSx for Lustre utilizzando il repository Terraform](https://github.com/aws-samples/provision-fsx-lustre-with-terraform).

## Best practice
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-best-practices"></a>
+ Le seguenti variabili definiscono il file system Lustre. Assicurati di configurarle correttamente in base al tuo ambiente, come indicato nella sezione [Epics](#deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-epics).
  + `storage_capacity`— La capacità di archiviazione del file system Lustre, in. GiBs L'impostazione minima e predefinita è 1200 GiB.
  + `deployment_type`— Il tipo di distribuzione per il file system Lustre. Per una spiegazione delle due opzioni `PERSISTENT_1` e `PERSISTENT_2` (impostazione predefinita), consultate la documentazione [FSx di Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html#persistent-file-system).
  + `per_unit_storage_throughput`— La velocità di lettura e scrittura, in secondi MBs per TiB.  
  + `subnet_id`— L'ID della sottorete privata in cui si desidera implementare FSx Lustre.
  + `vpc_id`— L'ID del tuo cloud privato virtuale su AWS cui desideri implementare FSx Lustre.
  + `data_repository_path`— Il percorso del bucket S3 che sarà collegato al file system Lustre.
  + `iam_instance_profile`— Il profilo dell'istanza IAM da utilizzare per avviare l'istanza. EC2 
  + `kms_key_id`— L'Amazon Resource Name (ARN) della AWS KMS chiave che verrà utilizzata per la crittografia dei dati.
+ Garantisci l'accesso e il posizionamento corretti alla rete all'interno del VPC utilizzando le variabili `security_group` and`vpc_id`.
+ Esegui il `terraform plan` comando come descritto nella sezione [Epics](#deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-epics) per visualizzare in anteprima e verificare le modifiche prima di applicarle. Questo aiuta a catturare potenziali problemi e assicura che tu sia a conoscenza di ciò che verrà distribuito.
+ Usa il `terraform validate` comando come descritto nella sezione [Epics](#deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-epics) per verificare la presenza di errori di sintassi e confermare che la configurazione sia corretta.

## Epiche
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-epics"></a>

### Configurare l'ambiente
<a name="set-up-your-environment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa Terraform. | Per installare Terraform sul tuo computer locale, segui le istruzioni nella documentazione di [Terraform](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli). | AWS DevOps, DevOps ingegnere | 
| Configura AWS le credenziali. | Per configurare il profilo AWS Command Line Interface (AWS CLI) per l'account, segui le istruzioni nella [AWS documentazione](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html). | AWS DevOps, DevOps ingegnere | 
| Clona il GitHub repository. | Per clonare il GitHub repository, esegui il comando:<pre>git clone https://github.com/aws-samples/provision-fsx-lustre-with-terraform.git</pre> | AWS DevOps, DevOps ingegnere | 

### Configura e distribuisci FSx per Lustre
<a name="configure-and-deploy-fsxlustre"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Aggiorna la configurazione di distribuzione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra.html) | AWS DevOps, DevOps ingegnere | 
| Inizializza l'ambiente Terraform. | Per inizializzare il tuo ambiente per eseguire il modulo Terraform`fsx_deployment`, esegui:<pre>terraform init</pre> | AWS DevOps, DevOps ingegnere | 
| Convalida la sintassi Terraform. | Per verificare la presenza di errori di sintassi e confermare che la configurazione sia corretta, esegui:<pre>terraform validate </pre> | AWS DevOps, DevOps ingegnere | 
| Convalida la configurazione Terraform. | Per creare un piano di esecuzione Terraform e visualizzare in anteprima la distribuzione, esegui:<pre>terraform plan -var-file terraform.tfvars</pre> | AWS DevOps, DevOps ingegnere | 
| Implementa il modulo Terraform. | Per distribuire le risorse FSx for Lustre, esegui:<pre>terraform apply -var-file terraform.tfvars</pre> | AWS DevOps, DevOps ingegnere | 

### Pulisci AWS le risorse
<a name="clean-up-aws-resources"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Rimuovi AWS risorse. | Dopo aver finito di utilizzare l'ambiente FSx for Lustre, puoi rimuovere le AWS risorse distribuite da Terraform per evitare di incorrere in costi inutili. Il modulo Terraform fornito nel repository del codice automatizza questa pulizia.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra.html) | AWS DevOps, DevOps ingegnere | 

## risoluzione dei problemi
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| FSx for Lustre restituisce errori. | Per assistenza sui problemi FSx relativi a Lustre, consulta [Risoluzione dei problemi di Amazon FSx for Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/troubleshooting.html) nella documentazione di FSx for Lustre. | 

## Risorse correlate
<a name="deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra-resources"></a>
+ [Creazione di Amazon FSx for Lustre utilizzando Terraform](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/fsx_lustre_file_system) (riferimento al AWS provider nella documentazione di Terraform)
+ [Guida introduttiva ad Amazon FSx for Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/getting-started.html) (documentazione FSx per Lustre)
+ [AWS post di blog su Amazon FSx for Lustre](https://aws.amazon.com/blogs/storage/tag/amazon-fsx-for-lustre/)

# Configura una dashboard di monitoraggio Grafana per AWS ParallelCluster
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster"></a>

*Dario La Porta e William Lu, Amazon Web Services*

## Riepilogo
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-summary"></a>

AWS ti ParallelCluster aiuta a distribuire e gestire cluster HPC (High Performance Computing). Supporta gli strumenti di pianificazione dei lavori open source AWS Batch e Slurm. Sebbene AWS ParallelCluster sia integrato con Amazon CloudWatch per la registrazione e le metriche, non fornisce una dashboard di monitoraggio per il carico di lavoro.

La [dashboard Grafana per AWS ParallelCluster](https://github.com/aws-samples/aws-parallelcluster-monitoring) (GitHub) è una dashboard di monitoraggio per AWS. ParallelCluster Fornisce informazioni dettagliate sulla pianificazione dei lavori e metriche di monitoraggio dettagliate a livello di sistema operativo (OS). Per ulteriori informazioni sui dashboard inclusi in questa soluzione, consulta [Dashboard di esempio](https://github.com/aws-samples/aws-parallelcluster-monitoring#example-dashboards) nel repository. GitHub Queste metriche consentono di comprendere meglio il carico di lavoro HPC e le relative prestazioni. Tuttavia, il codice del dashboard non viene aggiornato per le versioni più recenti di AWS ParallelCluster o per i pacchetti open source utilizzati nella soluzione. Questo modello migliora la soluzione per offrire i seguenti vantaggi:
+ Supporta AWS ParallelCluster v3
+ Utilizza l'ultima versione dei pacchetti open source, tra cui Prometheus, Grafana, Prometheus Slurm Exporter e NVIDIA DCGM-Exporter
+ Aumenta il GPUs numero di core della CPU e quelli utilizzati dai job Slurm
+ Aggiunge una dashboard di monitoraggio dei lavori
+ Migliora la dashboard di monitoraggio dei nodi GPU per i nodi con 4 o 8 unità di elaborazione grafica () GPUs

Questa versione della soluzione avanzata è stata implementata e verificata nell'ambiente di produzione HPC di un cliente AWS.

## Prerequisiti e limitazioni
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-prereqs"></a>

**Prerequisiti**
+ [AWS ParallelCluster CLI](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster-v3.html), installata e configurata.
+ Una [configurazione di rete](https://docs.aws.amazon.com/parallelcluster/latest/ug/iam-roles-in-parallelcluster-v3.html) supportata per AWS ParallelCluster. Questo modello utilizza [AWS ParallelCluster utilizzando una configurazione a due sottoreti, che richiede una sottorete pubblica, una sottorete privata, un gateway Internet e un gateway NAT](https://docs.aws.amazon.com/parallelcluster/latest/ug/network-configuration-v3.html#network-configuration-v3-two-subnets).
+ Tutti i nodi ParallelCluster del cluster AWS devono avere accesso a Internet. Ciò è necessario affinché gli script di installazione possano scaricare il software open source e le immagini Docker.
+ Una [coppia di chiavi](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) in Amazon Elastic Compute Cloud (Amazon EC2). Le risorse che hanno questa coppia di key pair hanno accesso Secure Shell (SSH) al nodo principale.

**Limitazioni**
+ Questo pattern è progettato per supportare Ubuntu 20.04 LTS. Se utilizzi una versione diversa di Ubuntu o se usi Amazon Linux o CentOS, devi modificare gli script forniti con questa soluzione. Queste modifiche non sono incluse in questo schema.

**Versioni del prodotto**
+ Ubuntu 20.04 LTS
+ ParallelCluster 3.X

**Considerazioni sulla fatturazione e sui costi**
+ La soluzione implementata secondo questo schema non è coperta dal livello gratuito. Si applicano costi per Amazon EC2, Amazon FSx for Lustre, il gateway NAT in Amazon VPC e Amazon Route 53.

## Architecture
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-architecture"></a>

**Architettura Target**

Il diagramma seguente mostra come un utente può accedere alla dashboard di monitoraggio per AWS ParallelCluster sul nodo principale. Il nodo principale esegue NICE DCV, Prometheus, Grafana, Prometheus Slurm Exporter, Prometheus Node Exporter e NGINX Open Source. I nodi di calcolo eseguono Prometheus Node Exporter e eseguono anche NVIDIA DCGM-Exporter se il nodo contiene. GPUs Il nodo principale recupera le informazioni dai nodi di calcolo e visualizza tali dati nella dashboard di Grafana.

![\[Accesso alla dashboard di monitoraggio per AWS ParallelCluster sul nodo principale.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/a2132c94-98e0-4b90-8be0-99ebfa546442/images/d2255792-f66a-4ef2-8f04-cc3d5482db5f.png)


Nella maggior parte dei casi, il nodo principale non è sovraccaricato perché il job scheduler non richiede una quantità significativa di CPU o memoria. Gli utenti accedono alla dashboard sul nodo principale utilizzando SSL sulla porta 443.

Tutti gli spettatori autorizzati possono visualizzare in modo anonimo le dashboard di monitoraggio. Solo l'amministratore Grafana può modificare i dashboard. Si configura una password per l'amministratore Grafana nel `aws-parallelcluster-monitoring/docker-compose/docker-compose.head.yml` file.

## Tools (Strumenti)
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-tools"></a>

**Servizi AWS**
+ [NICE DCV](https://docs.aws.amazon.com/dcv/#nice-dcv) è un protocollo di visualizzazione remota ad alte prestazioni che consente di fornire desktop remoti e lo streaming di applicazioni da qualsiasi cloud o data center a qualsiasi dispositivo, in condizioni di rete variabili.
+ [AWS](https://docs.aws.amazon.com/parallelcluster/latest/ug/what-is-aws-parallelcluster.html) ti ParallelCluster aiuta a distribuire e gestire cluster HPC (High Performance Computing). Supporta gli strumenti di pianificazione dei lavori open source AWS Batch e Slurm.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) è un servizio di archiviazione degli oggetti basato sul cloud che consente di archiviare, proteggere e recuperare qualsiasi quantità di dati.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) ti aiuta a lanciare le risorse AWS in una rete virtuale che hai definito.

**Altri strumenti**
+ [Docker](https://www.docker.com/) è un insieme di prodotti Platform as a Service (PaaS) che utilizzano la virtualizzazione a livello di sistema operativo per fornire software in container.
+ [Grafana](https://grafana.com/docs/grafana/latest/introduction/) è un software open source che ti aiuta a interrogare, visualizzare, avvisare ed esplorare metriche, log e tracce.
+ [NGINX Open Source è un server web open source](https://nginx.org/en/docs/?_ga=2.187509224.1322712425.1699399865-405102969.1699399865) e un reverse proxy.
+ [NVIDIA Data Center GPU Manager (DCGM)](https://docs.nvidia.com/data-center-gpu-manager-dcgm/index.html) è una suite di strumenti per la gestione e il monitoraggio delle unità di elaborazione grafica dei data center NVIDIA () in ambienti cluster. GPUs In questo modello, si utilizza [DCGM-Exporter, che consente di esportare](https://github.com/NVIDIA/dcgm-exporter) le metriche della GPU da Prometheus.
+ [Prometheus](https://prometheus.io/docs/introduction/overview/) *è un toolkit di monitoraggio del sistema open source che raccoglie e archivia le sue metriche come dati di serie temporali con coppie chiave-valore associate, chiamate etichette.* [In questo modello, si utilizza anche [Prometheus Slurm Exporter per raccogliere ed esportare metriche e si utilizza Prometheus](https://github.com/vpenso/prometheus-slurm-exporter) Node Exporter per esportare le metriche dai nodi di calcolo.](https://github.com/prometheus/node_exporter)
+ [Ubuntu](https://help.ubuntu.com/) è un sistema operativo open source basato su Linux progettato per server aziendali, desktop, ambienti cloud e IoT.

**Archivio di codici**

Il codice per questo pattern è disponibile nel GitHub [pcluster-monitoring-dashboard](https://github.com/aws-samples/parallelcluster-monitoring-dashboard)repository.

## Epiche
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-epics"></a>

### Crea le risorse necessarie
<a name="create-the-required-resources"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un bucket S3. | Creare un bucket Amazon S3. Questo bucket viene utilizzato per archiviare gli script di configurazione. Per istruzioni, consulta [Creazione di un bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) nella documentazione di Amazon S3. | Informazioni generali su AWS | 
| Clonare il repository. | Clona il GitHub [pcluster-monitoring-dashboard](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/tree/main/aws-parallelcluster-monitoring)repository eseguendo il seguente comando.<pre>git clone https://github.com/aws-samples/parallelcluster-monitoring-dashboard.git</pre> | DevOps ingegnere | 
| Crea una password di amministratore. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Scripting con Linux Shell | 
| Copia i file richiesti nel bucket S3. | Copia lo script [post\$1install.sh](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/post_install.sh) e la [aws-parallelcluster-monitoring](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/tree/main/aws-parallelcluster-monitoring)cartella nel bucket S3 che hai creato. Per istruzioni, consulta [Caricamento di oggetti](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html) nella documentazione di Amazon S3. | Informazioni generali su AWS | 
| Configura un gruppo di sicurezza aggiuntivo per il nodo principale. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Amministratore AWS | 
| Configura una policy IAM per il nodo principale. | Crea una policy basata sull'identità per il nodo principale. Questa policy consente al nodo di recuperare i dati metrici da Amazon. CloudWatch [Il GitHub repository contiene una policy di esempio.](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/policies/head_node.json) Per istruzioni, consulta [Creazione di policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) nella documentazione di AWS Identity and Access Management (IAM). | Amministratore AWS | 
| Configura una policy IAM per i nodi di calcolo. | Crea una policy basata sull'identità per i nodi di calcolo. Questa politica consente al nodo di creare i tag che contengono l'ID del lavoro e il proprietario del lavoro. Il GitHub repository contiene un esempio di [policy](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/policies/compute_node.json). Per istruzioni, consulta [Creazione di politiche IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) nella documentazione IAM.Se utilizzi il file di esempio fornito, sostituisci i seguenti valori:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Amministratore AWS | 

### Creazione del cluster
<a name="create-the-cluster"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Modifica il file modello di cluster fornito. | Crea il ParallelCluster cluster AWS. Utilizza il file modello CloudFormation AWS [cluster.yaml](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/cluster.yaml) fornito come punto di partenza per creare il cluster. Sostituisci i seguenti valori nel modello fornito:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Amministratore AWS | 
| Crea il cluster. | Nella ParallelCluster CLI di AWS, inserisci il seguente comando. Questo distribuisce il CloudFormation modello e crea il cluster. Per ulteriori informazioni su questo comando, consulta [pcluster create-cluster nella documentazione](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster.create-cluster-v3.html) AWS. ParallelCluster <pre>pcluster create-cluster -n <cluster_name> -c cluster.yaml</pre> | Amministratore AWS | 
| Monitora la creazione del cluster. | Immettere il seguente comando per monitorare la creazione del cluster. Per ulteriori informazioni su questo comando, consulta [pcluster describe-cluster nella documentazione AWS](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster.describe-cluster-v3.html). ParallelCluster <pre>pcluster describe-cluster -n <cluster_name></pre> | Amministratore AWS | 

### Utilizzo delle dashboard Grafana
<a name="using-the-grafana-dashboards"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Accesso al portale Grafana. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Amministratore AWS | 

### Pulisci la soluzione per evitare di incorrere nei costi associati
<a name="clean-up-the-solution-to-stop-incurring-associated-costs"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Elimina il cluster. | Immettere il seguente comando per eliminare il cluster. Per ulteriori informazioni su questo comando, consulta [pcluster delete-cluster nella documentazione](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster.delete-cluster-v3.html) AWS. ParallelCluster <pre>pcluster delete-cluster -n <cluster_name></pre> | Amministratore AWS | 
| Elimina le politiche IAM. | Elimina le policy che hai creato per il nodo principale e il nodo di calcolo. Per ulteriori informazioni sull'eliminazione delle policy, consulta [Eliminazione delle policy IAM nella documentazione IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-delete.html). | Amministratore AWS | 
| Elimina il gruppo e la regola di sicurezza. | Eliminare il gruppo di sicurezza creato per il nodo principale. Per ulteriori informazioni, consulta [Eliminare le regole del gruppo di sicurezza](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-groups.html#deleting-security-group-rules) ed [Eliminare un gruppo di sicurezza](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-groups.html#deleting-security-groups) nella documentazione di Amazon VPC. | Amministratore AWS | 
| Eliminare il bucket S3. | Elimina il bucket S3 che hai creato per archiviare gli script di configurazione. Per ulteriori informazioni, consulta [Eliminazione di un bucket nella documentazione](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html) di Amazon S3. | Informazioni generali su AWS | 

## risoluzione dei problemi
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Il nodo principale non è accessibile nel browser. | Controlla il gruppo di sicurezza e conferma che la porta in ingresso 443 sia aperta. | 
| Grafana non si apre. | Sul nodo principale, controlla il registro del contenitore per`docker logs Grafana`. | 
| Alcune metriche non contengono dati. | Sul nodo principale, controlla i log dei contenitori di tutti i contenitori. | 

## Risorse correlate
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-resources"></a>

**Documentazione AWS**
+ [Politiche IAM per Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-policies-for-amazon-ec2.html)

**Altre risorse AWS**
+ [AWS ParallelCluster](https://aws.amazon.com/hpc/parallelcluster/)
+ [Dashboard di monitoraggio per AWS ParallelCluster](https://aws.amazon.com/blogs/compute/monitoring-dashboard-for-aws-parallelcluster/) (post sul blog AWS)

**Altre risorse**
+ [Sistema di monitoraggio Prometheus](https://prometheus.io/)
+ [Grafana](https://grafana.com/)

# Altri modelli
<a name="highperformancecomputing-more-patterns-pattern-list"></a>

**Topics**
+ [Implementa la diagnostica e la risoluzione dei problemi di Kubernetes basate sull'intelligenza artificiale con K8SGPT e l'integrazione con Amazon Bedrock](implement-ai-powered-kubernetes-diagnostics-and-troubleshooting-with-k8sgpt-and-amazon-bedrock-integration.md)

# Cloud ibrido
<a name="hybrid-pattern-list"></a>

**Topics**
+ [Configura una CI/CD pipeline per carichi di lavoro ibridi su Amazon ECS Anywhere utilizzando AWS CDK e GitLab](set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.md)
+ [Altri modelli](hybrid-more-patterns-pattern-list.md)

# Configura una CI/CD pipeline per carichi di lavoro ibridi su Amazon ECS Anywhere utilizzando AWS CDK e GitLab
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab"></a>

*Rafael Ortiz, Amazon Web Services*

## Riepilogo
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-summary"></a>

Amazon ECS Anywhere è un'estensione di Amazon Elastic Container Service (Amazon ECS). Fornisce supporto per la registrazione di un'*istanza esterna*, come un server locale o una macchina virtuale (VM), nel cluster Amazon ECS. Questa funzionalità aiuta a ridurre i costi e mitigare l'orchestrazione e le operazioni complesse dei container locali. Puoi utilizzare ECS Anywhere per distribuire ed eseguire applicazioni container in ambienti locali e cloud. Elimina la necessità per il team di apprendere più domini e set di competenze o di gestire software complessi da solo.

Questo modello descrive un step-by-step approccio per il provisioning di un cluster Amazon ECS con istanze Amazon ECS Anywhere utilizzando gli stack Amazon Web Services (AWS) Cloud Development Kit (AWS CDK). Quindi usi AWS CodePipeline per configurare una pipeline di integrazione e distribuzione continua (CI/CD). Quindi, replichi il tuo repository di GitLab codice su AWS CodeCommit e distribuisci la tua applicazione containerizzata sul cluster Amazon ECS.

Questo modello è progettato per aiutare coloro che utilizzano l'infrastruttura locale a eseguire applicazioni container e a gestire il codice base dell'applicazione GitLab . Puoi gestire questi carichi di lavoro utilizzando i servizi cloud AWS, senza disturbare l'infrastruttura locale esistente.

## Prerequisiti e limitazioni
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ Un'applicazione contenitore in esecuzione su un'infrastruttura locale.
+ Un GitLab repository in cui gestire la base di codice dell'applicazione. Per ulteriori informazioni, vedete [Repository](https://docs.gitlab.com/ee/user/project/repository/) ()GitLab.
+ AWS Command Line Interface (AWS CLI), installata e configurata. Per ulteriori informazioni, consulta [Installazione o aggiornamento della versione più recente dell'interfaccia a riga di comando di AWS (documentazione dell'interfaccia a riga](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) di comando di AWS).
+ AWS CDK Toolkit, installato e configurato a livello globale. Per ulteriori informazioni, consulta [Installare il CDK AWS](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_install) (documentazione AWS CDK).
+ npm, installato e configurato per AWS CDK in. TypeScript Per ulteriori informazioni, consulta [Download e installazione di Node.js e npm (documentazione npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)).

**Limitazioni**
+ Per limitazioni e considerazioni, consulta [Istanze esterne (Amazon ECS Anywhere) nella documentazione di Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-anywhere.html#ecs-anywhere-considerations).

**Versioni del prodotto**
+ AWS CDK Toolkit versione 2.27.0 o successiva
+ npm versione 7.20.3 o successiva
+ Node.js versione 16.6.1 o successiva

## Architecture
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-architecture"></a>

**Stack tecnologico Target**
+ AWS CDK
+ AWS CloudFormation
+ AWS CodeBuild
+ AWS CodeCommit
+ AWS CodePipeline
+ Amazon ECS Anywhere
+ Amazon Elastic Container Registry (Amazon ECR)
+ AWS Identity and Access Management (IAM)
+ Gestore di sistema AWS
+ GitLab deposito

**Architettura Target**

![\[Diagramma dell'architettura per la configurazione del cluster e CI/CD della pipeline Amazon ECS.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/b0f35986-a839-4b01-8eb0-4748182ddafc/images/85b8d4d9-3591-4d69-a54b-64aa543498f1.png)


Questo diagramma rappresenta due flussi di lavoro principali descritti in questo modello, il provisioning del cluster Amazon ECS e la configurazione della CI/CD pipeline che configura e distribuisce la pipeline, come segue: CI/CD 

1. **Eseguire il provisioning del cluster Amazon ECS**

   1. Quando distribuisci il primo stack CDK AWS, viene creato uno CloudFormation stack su AWS.

   1. Questo CloudFormation stack fornisce un cluster Amazon ECS e le relative risorse AWS.

   1. Per registrare un'istanza esterna con un cluster Amazon ECS, devi installare AWS Systems Manager Agent (SSM Agent) sulla tua macchina virtuale e registrare la macchina virtuale come istanza gestita da AWS Systems Manager. 

   1. È inoltre necessario installare l'agente contenitore Amazon ECS e Docker sulla macchina virtuale per registrarla come istanza esterna nel cluster Amazon ECS.

   1. Quando l'istanza esterna è registrata e configurata con il cluster Amazon ECS, può eseguire più contenitori sulla macchina virtuale, che è registrata come istanza esterna.

   1. Il cluster Amazon ECS è attivo e può eseguire i carichi di lavoro delle applicazioni tramite contenitori. L'istanza del contenitore Amazon ECS Anywhere viene eseguita in un ambiente locale ma è associata al cluster Amazon ECS nel cloud.

1. **Configurazione e distribuzione della pipeline CI/CD **

   1. Quando distribuisci il secondo stack CDK AWS, viene creato un altro CloudFormation stack su AWS.

   1. Questo CloudFormation stack fornisce una pipeline CodePipeline e le relative risorse AWS.

   1. Invia e unisci le modifiche al codice dell'applicazione in un repository locale. GitLab  

   1. Il GitLab repository viene replicato automaticamente nel repository. CodeCommit 

   1. Gli aggiornamenti al repository vengono avviati automaticamente CodeCommit . CodePipeline 

   1. CodePipeline copia il codice CodeCommit e crea l'applicazione incorporata distribuibile. CodeBuild

   1. CodePipeline crea un'immagine Docker dell'ambiente di CodeBuild compilazione e la invia al repository Amazon ECR.

   1. CodePipeline avvia CodeDeploy azioni che estraggono l'immagine del contenitore dal repository Amazon ECR.

   1. CodePipeline distribuisce l'immagine del contenitore sul cluster Amazon ECS.

**Automazione e scalabilità**

Questo modello utilizza AWS CDK come strumento Infrastructure as Code (IaC) per configurare e distribuire questa architettura. AWS CDK ti aiuta a orchestrare le risorse AWS e configurare Amazon ECS Anywhere e la pipeline. CI/CD 

## Tools (Strumenti)
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-tools"></a>

**Servizi AWS**
+ [AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/latest/guide/home.html) è un framework di sviluppo software che aiuta a definire e fornire l'infrastruttura cloud AWS in codice.
+ [AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) è un servizio di controllo delle versioni che consente di archiviare e gestire archivi Git in modo privato, senza dover gestire il proprio sistema di controllo del codice sorgente.
+ [AWS](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) ti CodePipeline aiuta a modellare e configurare rapidamente le diverse fasi di un rilascio di software e ad automatizzare i passaggi necessari per rilasciare continuamente le modifiche al software.
+ [AWS Command Line Interface (AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
+ [Amazon Elastic Container Registry (Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html)) è un servizio di registro di immagini di container gestito sicuro, scalabile e affidabile.
+ [Amazon Elastic Container Service (Amazon ECS)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) è un servizio rapido e scalabile di gestione dei container che ti aiuta a eseguire, arrestare e gestire container in un cluster. Questo modello utilizza anche [Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-anywhere.html) Anywhere, che fornisce supporto per la registrazione di un server o una macchina virtuale locale nel cluster Amazon ECS.

**Altri strumenti**
+ [Node.js](https://nodejs.org/en/docs/) è un ambiente di JavaScript runtime basato sugli eventi progettato per la creazione di applicazioni di rete scalabili.
+ [npm](https://docs.npmjs.com/about-npm) è un registro software che viene eseguito in un ambiente Node.js e viene utilizzato per condividere o prendere in prestito pacchetti e gestire la distribuzione di pacchetti privati.
+ [Vagrant](https://developer.hashicorp.com/vagrant/docs) è un'utilità open source per la creazione e la manutenzione di ambienti di sviluppo software virtuali portatili. A scopo dimostrativo, questo modello utilizza Vagrant per creare una macchina virtuale locale.

**Archivio di codice**

Il codice per questo pattern è disponibile nella [pipeline GitHub CI/CD per Amazon ECS Anywhere utilizzando il repository AWS](https://github.com/aws-samples/amazon-ecs-anywhere-cicd-pipeline-cdk-sample) CDK.

## Best practice
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-best-practices"></a>

Prendi in considerazione le seguenti best practice per la distribuzione di questo pattern:
+ [Le migliori pratiche per lo sviluppo e la distribuzione di infrastrutture cloud con AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/best-practices.html)
+ [Le migliori pratiche per lo sviluppo di applicazioni cloud con AWS CDK](https://aws.amazon.com/blogs/devops/best-practices-for-developing-cloud-applications-with-aws-cdk/) (post sul blog AWS)

## Epiche
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-epics"></a>

### Verifica la configurazione di AWS CDK
<a name="verify-the-aws-cdk-configuration"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Verifica la versione di AWS CDK. | Verifica la versione di AWS CDK Toolkit inserendo il seguente comando.<pre>cdk --version</pre>Questo modello richiede la versione 2.27.0 o successiva. Se disponi di una versione precedente, segui le istruzioni nella [documentazione di AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/cli.html) per aggiornarla. | DevOps ingegnere | 
| Verifica la versione di npm. | Verifica la versione di npm inserendo il seguente comando.<pre>npm --version</pre>Questo modello richiede la versione 7.20.3 o successiva. Se hai una versione precedente, segui le istruzioni nella [documentazione di npm](https://docs.npmjs.com/try-the-latest-stable-version-of-npm) per aggiornarla. | DevOps ingegnere | 
| Configura le credenziali AWS. | Configura le credenziali AWS inserendo il `aws configure` comando e seguendo le istruzioni.<pre>$aws configure<br />AWS Access Key ID [None]: <your-access-key-ID><br />AWS Secret Access Key [None]: <your-secret-access-key><br />Default region name [None]: <your-Region-name><br />Default output format [None]:</pre> | DevOps ingegnere | 

### Avvia l'ambiente CDK AWS
<a name="bootstrap-the-aws-cdk-environment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Clona il repository di codice AWS CDK. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.html) | DevOps ingegnere | 
| Avvia l'ambiente. | Distribuisci il CloudFormation modello nell'account e nella regione AWS che desideri utilizzare inserendo il seguente comando.<pre>cdk bootstrap <account-number>/<Region></pre>Per ulteriori informazioni, consulta [Bootstrapping nella documentazione](https://docs.aws.amazon.com/cdk/latest/guide/bootstrapping.html) di AWS CDK. | DevOps ingegnere | 

### Crea e distribuisci l'infrastruttura per Amazon ECS Anywhere
<a name="build-and-deploy-the-infrastructure-for-amazon-ecs-anywhere"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa le dipendenze del pacchetto e compila i TypeScript file. | Installa le dipendenze del pacchetto e compila TypeScript i file inserendo i seguenti comandi.<pre>$cd EcsAnywhereCdk<br />$npm install<br />$npm fund </pre>Questi comandi installano tutti i pacchetti dal repository di esempio. Per ulteriori informazioni, consulta [npm ci](https://docs.npmjs.com/cli/v7/commands/npm-ci) e [npm install](https://docs.npmjs.com/cli/v7/commands/npm-install) nella documentazione di npm. Se riscontri errori sui pacchetti mancanti quando inserisci questi comandi, consulta la sezione [Risoluzione dei problemi](#set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-troubleshooting) di questo modello. | DevOps ingegnere | 
| Compilare il progetto. | Per creare il codice del progetto, inserisci il seguente comando.<pre>npm run build</pre>Per ulteriori informazioni sulla creazione e la distribuzione del progetto, consulta La [tua prima app AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/hello_world.html#:~:text=the%20third%20parameter.-,Synthesize%20an%20AWS%20CloudFormation%20template,-Synthesize%20an%20AWS) nella documentazione di AWS CDK. | DevOps ingegnere | 
| Implementa lo stack di infrastruttura Amazon ECS Anywhere. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.html) | DevOps ingegnere | 
| Verifica la creazione e l'output dello stack. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.html) | DevOps ingegnere | 

### Configura una macchina virtuale locale
<a name="set-up-an-on-premises-vm"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura la tua VM. | Crea una VM Vagrant inserendo il `vagrant up` comando dalla directory principale in cui si trova Vagrantfile. [Per ulteriori informazioni, consulta la documentazione di Vagrant.](https://developer.hashicorp.com/vagrant/docs/cli/up) | DevOps ingegnere | 
| Registra la tua macchina virtuale come istanza esterna. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.html)[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.html)Questo configura la tua macchina virtuale come un'istanza esterna di Amazon ECS Anywhere e registra l'istanza nel cluster Amazon ECS. Per ulteriori informazioni, consulta [Registrazione di un'istanza esterna in un cluster](https://docs.amazonaws.cn/en_us/AmazonECS/latest/developerguide/ecs-anywhere-registration.html) nella documentazione di Amazon ECS. In caso di problemi, consulta la sezione [Risoluzione dei problemi](#set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-troubleshooting). | DevOps ingegnere | 
| Verifica lo stato di Amazon ECS Anywhere e della macchina virtuale esterna. | Per verificare se la tua macchina virtuale è connessa al piano di controllo di Amazon ECS e se è in esecuzione, usa i seguenti comandi.<pre>$aws ssm describe-instance-information<br />$aws ecs list-container-instances --cluster $CLUSTER_NAME</pre> | DevOps ingegnere | 

### Implementa la pipeline CI/CD
<a name="deploy-the-ci-cd-pipeline"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un ramo nel CodeCommit repository. | Crea un ramo denominato `main` nel CodeCommit repository creando il primo commit per il repository. Puoi seguire la documentazione di AWS per [creare un commit in CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-create-commit.html#create-first-commit). Il comando seguente è un esempio.<pre>aws codecommit put-file \<br />  --repository-name EcsAnywhereRepo \<br />  --branch-name main \<br />  --file-path README.md \<br />  --file-content "Test" \<br />  --name "Dev Ops" \<br />  --email "devops@example.com" \<br />  --commit-message "Adding README."</pre> | DevOps ingegnere | 
| Configura il mirroring dei repository. | È possibile eseguire il mirroring di un GitLab repository da e verso fonti esterne. È possibile selezionare quale repository funge da origine. I rami, i tag e i commit vengono sincronizzati automaticamente. Configura un push mirror tra il GitLab repository che ospita l'applicazione e il repository. CodeCommit Per istruzioni, [consultate Configurare un push mirror da GitLab a CodeCommit](https://docs.gitlab.com/ee/user/project/repository/mirror/push.html#set-up-a-push-mirror-from-gitlab-to-aws-codecommit) (GitLab documentazione).Per impostazione predefinita, il mirroring sincronizza automaticamente il repository. Se desideri aggiornare manualmente i repository, consulta [Aggiornare un mirror](https://docs.gitlab.com/ee/user/project/repository/mirror/#update-a-mirror) (documentazione). GitLab  | DevOps ingegnere | 
| Implementa lo stack della CI/CD pipeline. | Distribuisci lo `EcsAnywherePipelineStack` stack inserendo il seguente comando.<pre>$cdk  deploy EcsAnywherePipelineStack</pre> | DevOps ingegnere | 
| Testa la CI/CD pipeline. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.html) | DevOps ingegnere | 

### Eliminazione
<a name="clean-up"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Pulisci ed elimina le risorse. | Dopo aver seguito questo schema, dovresti rimuovere le proof-of-concept risorse che hai creato. Per pulire, inserisci i seguenti comandi.<pre>$cdk destroy EcsAnywherePipelineStack<br />$cdk destroy EcsAnywhereInfraStack</pre> | DevOps ingegnere | 

## Risoluzione dei problemi
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Errori relativi ai pacchetti mancanti durante l'installazione delle dipendenze dei pacchetti. | Immettete uno dei seguenti comandi per risolvere i pacchetti mancanti.<pre>$npm ci</pre>or<pre>$npm install -g @aws-cdk/<package_name></pre> | 
| Quando si esegue il `aws ssm create-activation` comando sulla macchina virtuale, viene visualizzato il seguente errore.`An error occurred (ValidationException) when calling the CreateActivation operation: Nonexistent role or missing ssm service principal in trust policy: arn:aws:iam::000000000000:role/EcsAnywhereInstanceRole` | Lo `EcsAnywhereInfraStack` stack non è completamente distribuito e il ruolo IAM necessario per eseguire questo comando non è stato ancora creato. Controlla lo stato dello stack nella console. CloudFormation Riprova il comando dopo che lo stato è cambiato in. `CREATE_COMPLETE` | 
| Viene `UNHEALTHY` restituito un controllo dello stato di Amazon ECS e viene visualizzato il seguente errore nella sezione **Servizi** del cluster nella console Amazon ECS.`service EcsAnywhereService was unable to place a task because no container instance met all of its requirements. Reason: No Container Instances were found in your cluster.` | Riavvia l'agente Amazon ECS sulla tua macchina virtuale Vagrant inserendo i seguenti comandi.<pre>$vagrant ssh<br />$sudo systemctl restart ecs<br />$sudo systemctl status ecs</pre> | 

## Risorse correlate
<a name="set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab-resources"></a>
+ [Pagina di marketing di Amazon ECS Anywhere](https://aws.amazon.com/ecs/anywhere/)
+ [Documentazione di Amazon ECS Anywhere](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-anywhere.html#ecs-anywhere-considerations)
+ Dimostrazione di [Amazon ECS Anywhere](https://www.youtube.com/watch?v=-eud6yUXsJM) (video)
+ Esempi GitHub di [workshop Amazon ECS Anywhere](https://github.com/aws-samples/aws-ecs-anywhere-workshop-samples) ()
+ [Mirroring del repository](https://docs.gitlab.com/ee/user/project/repository/mirror/) (documentazione) GitLab 

# Altri modelli
<a name="hybrid-more-patterns-pattern-list"></a>

**Topics**
+ [Distribuisci applicazioni containerizzate in AWS IoT Greengrass V2 esecuzione come contenitore Docker](deploy-containerized-applications-on-aws-iot-greengrass-version-2-running-as-a-docker-container.md)
+ [Gestisci le applicazioni container locali configurando Amazon ECS Anywhere con AWS CDK](manage-on-premises-container-applications-by-setting-up-amazon-ecs-anywhere-with-the-aws-cdk.md)
+ [Modifica le intestazioni HTTP durante la migrazione da F5 a un Application Load Balancer su AWS](modify-http-headers-when-you-migrate-from-f5-to-an-application-load-balancer-on-aws.md)
+ [Rehosting dei carichi di lavoro locali nel cloud AWS: lista di controllo per la migrazione](rehost-on-premises-workloads-in-the-aws-cloud-migration-checklist.md)
+ [Usa le query BMC Discovery per estrarre i dati di migrazione per la pianificazione della migrazione](use-bmc-discovery-queries-to-extract-migration-data-for-migration-planning.md)

# Gestione e governance
<a name="governance-pattern-list"></a>

**Topics**
+ [Identifica e avvisa quando le risorse Amazon Data Firehose non sono crittografate con una chiave AWS KMS](identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key.md)
+ [Automatizza le allocazioni IPv4 IPAM CIDR di Amazon VPC per nuove applicazioni utilizzando AFT Account AWS](automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.md)
+ [Automatizza l'aggiunta o l'aggiornamento delle voci di registro di Windows utilizzando AWS Systems Manager](automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager.md)
+ [Crea automaticamente un RFC in AMS usando Python](automatically-create-an-rfc-in-ams-using-python.md)
+ [Arresta e avvia automaticamente un'istanza database Amazon RDS utilizzando AWS Systems Manager Maintenance Windows](automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.md)
+ [Centralizza la distribuzione dei pacchetti software in AWS Organizations utilizzando Terraform](centralize-software-package-distribution-in-aws-organizations-by-using-terraform.md)
+ [Configura la registrazione per le applicazioni.NET in Amazon CloudWatch Logs utilizzando NLog](configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog.md)
+ [Copia i prodotti AWS Service Catalog su diversi account AWS e regioni AWS](copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.md)
+ [Crea una matrice RACI o RASCI per un modello operativo cloud](create-a-raci-or-rasci-matrix-for-a-cloud-operating-model.md)
+ [Crea allarmi per metriche personalizzate utilizzando il rilevamento delle anomalie di Amazon CloudWatch](create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection.md)
+ [Crea un IDE AWS Cloud9 che utilizza volumi Amazon EBS con crittografia predefinita](create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption.md)
+ [Crea CloudWatch dashboard Amazon basate su tag automaticamente](create-tag-based-amazon-cloudwatch-dashboards-automatically.md)
+ [Documenta il progetto della tua landing zone AWS](document-your-aws-landing-zone-design.md)
+ [Migliora le prestazioni operative abilitando Amazon DevOps Guru su più regioni AWS, account e OUs con AWS CDK](improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.md)
+ [Gestisci i set di autorizzazioni per più account utilizzando Account Factory for Terraform](govern-permission-sets-aft.md)
+ [Implementa Account Factory for Terraform (AFT) utilizzando una pipeline bootstrap](implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.md)
+ [Gestisci i prodotti AWS Service Catalog in più account AWS e regioni AWS](manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions.md)
+ [Monitora i cluster SAP RHEL Pacemaker utilizzando i servizi AWS](monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.md)
+ [Monitora l'attività delle applicazioni utilizzando CloudWatch Logs Insights](monitor-application-activity-by-using-cloudwatch-logs-insights.md)
+ [Monitora l'uso di un'Amazon Machine Image condivisa su più Account AWS](monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.md)
+ [Visualizza i dettagli degli snapshot EBS per il tuo account o la tua organizzazione AWS](view-ebs-snapshot-details-for-your-aws-account-or-organization.md)
+ [Altri modelli](governance-more-patterns-pattern-list.md)

# Identifica e avvisa quando le risorse Amazon Data Firehose non sono crittografate con una chiave AWS KMS
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key"></a>

*Ram Kandaswamy, Amazon Web Services*

## Riepilogo
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key-summary"></a>

Per motivi di conformità, alcune organizzazioni devono avere la crittografia abilitata su risorse di distribuzione dei dati come Amazon Data Firehose. Questo modello mostra un modo per monitorare, rilevare e notificare quando le risorse non sono conformi.

Per mantenere i requisiti di crittografia, questo modello può essere utilizzato AWS per fornire il monitoraggio e il rilevamento automatici delle risorse di distribuzione di Amazon Data Firehose che non sono crittografate con una chiave AWS Key Management Service (AWS KMS). La soluzione invia notifiche di avviso e può essere estesa per eseguire riparazioni automatiche. Questa soluzione può essere applicata a un account singolo o a un ambiente con più account, ad esempio un ambiente che utilizza una AWS landing zone o. AWS Control Tower

## Prerequisiti e limitazioni
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key-prereqs"></a>

**Prerequisiti**
+ Flusso di distribuzione di Amazon Data Firehose
+ Autorizzazioni e familiarità sufficienti con CloudFormation, che vengono utilizzate in questa automazione dell'infrastruttura

**Limitazioni**
+ La soluzione non è in tempo reale perché utilizza AWS CloudTrail gli eventi per il rilevamento e c'è un ritardo tra il momento in cui viene creata una risorsa non crittografata e l'invio della notifica.

## Architecture
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key-architecture"></a>

**Stack tecnologico Target**

La soluzione utilizza la tecnologia serverless e i seguenti servizi:
+ AWS CloudTrail
+ Amazon CloudWatch
+ AWS Command Line Interface (AWS CLI)
+ AWS Identity and Access Management (IAM)
+ Amazon Data Firehose
+ AWS Lambda
+ Amazon Simple Notification Service (Amazon SNS)

**Architettura Target**

![\[Processo per la generazione di avvisi quando le risorse Data Firehose non sono crittografate.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/897ba8cf-d1c2-4149-98e7-09d3d90d13d6/images/d694f718-bd0c-4d14-a2e4-e0ea58dc048e.png)


Il diagramma illustra questi passaggi:

1. Un utente crea o modifica Amazon Data Firehose.

1. Un CloudTrail evento viene rilevato e abbinato.

1. Lambda viene richiamata.

1. Vengono identificate le risorse non conformi.

1. Viene inviata una notifica via e-mail.

**Automazione e scalabilità**

È possibile utilizzare CloudFormation StackSets per applicare questa soluzione a più Regioni AWS account con un solo comando.

## Tools (Strumenti)
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key-tools"></a>
+ [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)è uno strumento Servizio AWS che vi aiuta ad abilitare la governance, la conformità e il controllo operativo e dei rischi del vostro Account AWS. Le azioni intraprese da un utente, da un ruolo o da un Servizio AWS vengono registrate come eventi in CloudTrail. Gli eventi includono le azioni intraprese nelle operazioni dell'API Console di gestione AWS AWS CLI AWS SDKs,, e.
+ [Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) offre un flusso quasi in tempo reale di eventi di sistema che descrivono i cambiamenti nelle AWS risorse.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) è uno strumento open source che ti consente di interagire Servizi AWS utilizzando i comandi nella shell della riga di comando. 
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) è un servizio web che consente di controllare in modo sicuro l'accesso alle AWS risorse. Utilizza IAM per controllare chi è autenticato (accesso effettuato) e autorizzato (dispone di autorizzazioni) per l’utilizzo di risorse. 
+ [Amazon Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html) è un servizio completamente gestito per la distribuzione di dati in streaming in tempo reale. Con Firehose, non è necessario scrivere applicazioni o gestire risorse. È sufficiente configurare i produttori dati perché inviino i dati a Firehose, che li distribuirà automaticamente alla destinazione specificata.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)è un servizio di elaborazione che supporta l'esecuzione di codice senza fornire o gestire server. Lambda esegue il codice solo quando è necessario e si dimensiona automaticamente, da poche richieste al giorno a migliaia al secondo. Paghi solo per il tempo di elaborazione che consumi: non è previsto alcun costo quando il codice non è in esecuzione. 
+ [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) è un servizio gestito che fornisce il recapito dei messaggi dagli editori agli abbonati (noti anche come produttori e consumatori).

## Epiche
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key-epics"></a>

### Applica la crittografia per garantire la conformità
<a name="enforce-encryption-for-compliance"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Implementazione. CloudFormation StackSets | In AWS CLI, utilizzate il `firehose-encryption-checker.yaml` modello (allegato) per creare lo stack set eseguendo il comando seguente.  Fornisci un argomento Amazon SNS valido Amazon Resource Name (ARN) per il parametro. L'implementazione dovrebbe creare correttamente le regole CloudWatch Events, la funzione Lambda e un ruolo IAM con le autorizzazioni necessarie, come descritto nel modello.<pre>aws cloudformation create-stack-set    --stack-set-name my-stack-set   --template-body file://firehose-encryption-checker.yaml </pre> | Architetto del cloud, amministratore di sistema | 
| Crea istanze stack. | Gli stack possono essere creati in uno o più account a tua scelta. Regioni AWS  Per creare istanze stack, esegui il comando seguente. Sostituisci il nome dello stack, i numeri di account e le regioni con i tuoi.<pre>aws cloudformation create-stack-instances     --stack-set-name my-stack-set    --accounts 123456789012 223456789012   --regions us-east-1 us-east-2 us-west-1 us-west-2     --operation-preferences FailureToleranceCount=1 </pre> | Architetto del cloud, amministratore di sistema | 

## Risorse correlate
<a name="identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key-resources"></a>
+ [Lavorare con CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html)
+ [Che cos'è Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html)

## Allegati
<a name="attachments-897ba8cf-d1c2-4149-98e7-09d3d90d13d6"></a>

[Per accedere a contenuti aggiuntivi associati a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/897ba8cf-d1c2-4149-98e7-09d3d90d13d6/attachments/attachment.zip)

# Automatizza le allocazioni IPv4 IPAM CIDR di Amazon VPC per nuove applicazioni utilizzando AFT Account AWS
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft"></a>

*Kien Pham e Alex Pazik, Amazon Web Services*

## Riepilogo
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-summary"></a>

Questo modello mostra come automatizzare le allocazioni CIDR di Amazon VPC IP Address Manager (IPAM IPv4 ) per i nuovi utenti Account AWS utilizzando [Account AWS Control Tower Factory](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) for Terraform (AFT). Questa operazione viene eseguita utilizzando una personalizzazione a livello di account che alloca un blocco IPv4 CIDR da IPAM a un nuovo cloud privato virtuale (VPC) utilizzando il modulo. `aft-account-customizations`

Con IPAM, puoi organizzare, assegnare, monitorare e controllare gli indirizzi IP su larga scala, consentendoti di pianificare, tracciare e monitorare facilmente gli indirizzi IP per i tuoi carichi di lavoro. AWS È possibile [creare un pool IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) e IPAM da utilizzare per allocare un blocco IPv4 CIDR a un nuovo VPC durante il processo di vendita dell'account.

## Prerequisiti e limitazioni
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-prereqs"></a>

**Prerequisiti**
+ Un active Account AWS with AWS Control Tower abilitato in un ambiente supportato e distribuito in AFT [Regione AWS](https://docs.aws.amazon.com/controltower/latest/userguide/region-how.html)
+ Un [provider di sistemi di controllo della versione (VCS)](https://github.com/aws-ia/terraform-aws-control_tower_account_factory?tab=readme-ov-file#input_vcs_provider) supportato come BitBucket GitHub, ed Enterprise GitHub 
+ [Interfaccia a riga di comando (CLI) Terraform installata](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli)
+ Un ambiente di runtime in cui è possibile eseguire il modulo Terraform che installa AFT
+ AWS Command Line Interface [(AWS CLI) [installato](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) e configurato](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html)

**Limitazioni**
+ Alcuni Servizi AWS non sono disponibili in tutti Regioni AWS. Per informazioni sulla disponibilità per regione, consulta [AWS Servizi per regione](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Per endpoint specifici, consulta [Endpoints and quotas del servizio](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) e scegli il link relativo al servizio.

**Versioni del prodotto**
+ [AWS Control Tower landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/2022-all.html#version-3.0) versione 3.0 o successiva, precedente alla versione 4.0
+ [AFT](https://github.com/aws-ia/terraform-aws-control_tower_account_factory) versione 1.13.0 o successiva, precedente alla versione 2.0.0
+ Terraform OSS versione 1.2.0 o successiva, precedente alla versione 2.0.0
+ [Terraform AWS Provider](https://registry.terraform.io/providers/hashicorp/aws/latest/docs) (`terraform-provider-aws`) versione 5.11.0 o successiva, precedente alla versione 6.0.0
+ [Modulo Terraform per IPAM](https://github.com/aws-ia/terraform-aws-ipam) () versione 2.1.0 o successiva `aws-ia/ipam/aws`

## Architecture
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-architecture"></a>

Il diagramma seguente mostra il flusso di lavoro e i componenti di questo modello.

![\[Flusso di lavoro per creare l'allocazione IPAM IPv4 CIDR di Amazon VPC.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/986cfc7d-058b-4490-9029-6cd1eadd1dd2/images/f90b84dd-0420-460e-ac0f-9f22b4a9fdc4.png)


Il flusso di lavoro è costituito dalle seguenti attività principali:

1. **Attiva modifiche**: le modifiche a Terraform e alla personalizzazione IPAM vengono salvate nel GitHub repository e inviate. Questa attività attiva automaticamente la pipeline. AWS CodeBuild 

1. **Automatizza la compilazione**: all'interno CodeBuild, vengono attivati più progetti di compilazione. AWS Step Functions

1. **Applica personalizzazione**: Step Functions si coordina con CodeBuild per pianificare e applicare le modifiche Terraform. Questa attività utilizza il modulo AFT Terraform per coordinare l'assegnazione dell'IP del pool IPAM all'account fornito. AWS 

## Tools (Strumenti)
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-tools"></a>

**Servizi AWS**
+ [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)è un servizio di compilazione completamente gestito che consente di compilare il codice sorgente, eseguire test unitari e produrre artefatti pronti per la distribuzione.
+ [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)ti aiuta a modellare e configurare rapidamente le diverse fasi di una versione del software e ad automatizzare i passaggi necessari per rilasciare continuamente le modifiche al software.
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)orchestra le funzionalità di molti altri [Servizi AWS](https://docs.aws.amazon.com/controltower/latest/userguide/integrated-services.html), tra cui AWS Organizations, AWS Service Catalog e. AWS IAM Identity Center Può aiutarti a configurare e gestire un ambiente con AWS più account, seguendo le migliori pratiche prescrittive.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) è un servizio di database NoSQL interamente gestito che offre prestazioni elevate, prevedibili e scalabili.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di calcolo che consente di eseguire il codice senza gestire i server o effettuarne il provisioning. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di elaborazione che utilizzi.
+ [AWS SDK per Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)è un kit di sviluppo software che ti aiuta a integrare la tua applicazione, libreria o script Python con. Servizi AWS
+ [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html)consente di gestire centralmente i cataloghi dei servizi IT approvati. AWS Gli utenti finali possono distribuire rapidamente soltanto i servizi IT approvati di cui hanno bisogno, in accordo con i vincoli stabiliti dall'organizzazione.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html)è un servizio di orchestrazione senza server che consente di combinare AWS Lambda funzioni e altro Servizi AWS per creare applicazioni aziendali critiche.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) ti aiuta a lanciare AWS risorse in una rete virtuale che hai definito. Questa rete virtuale è simile a una comune rete da gestire all'interno del proprio data center, ma con i vantaggi dell'infrastruttura scalabile di AWS. Amazon VPC IP Address Manager (IPAM) è una funzionalità VPC che semplifica la pianificazione, il monitoraggio e il monitoraggio degli indirizzi IP per i carichi di lavoro. AWS 

**Altri strumenti**
+ [GitHub](https://docs.github.com/)è una piattaforma di sviluppo che gli sviluppatori possono utilizzare per creare, archiviare, gestire e condividere il proprio codice.
+ [HashiCorp Terraform](https://www.terraform.io/) è uno strumento Infrastructure as Code (IaC) che ti aiuta a creare e gestire risorse cloud e locali. Ciò include componenti di basso livello come istanze di calcolo, storage e rete e componenti di alto livello come voci DNS e funzionalità software a service (SaaS).
+ [Python](https://www.python.org/) è un linguaggio di programmazione per computer generico. È possibile utilizzarlo per creare applicazioni, automatizzare attività e sviluppare servizi su. [Cloud AWS](https://aws.amazon.com/developer/language/python/)

**Archivio di codici**
+ Il codice per questo pattern è disponibile nel [repository GitHub AWS Control Tower Account Factory for Terraform](https://github.com/aws-ia/terraform-aws-control_tower_account_factory).

## Best practice
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-best-practices"></a>

Quando si implementa AFT, si consiglia di seguire le migliori pratiche per garantire un'implementazione sicura, efficiente e di successo. Le linee guida e le raccomandazioni chiave per l'implementazione e il funzionamento di AFT includono quanto segue: 
+ **Revisione approfondita degli input: esamina** e comprendi attentamente ogni [input](https://github.com/aws-ia/terraform-aws-control_tower_account_factory). La corretta configurazione degli input è fondamentale per la configurazione e il funzionamento di AFT.
+ **Aggiornamenti regolari dei modelli**: mantieni i modelli aggiornati con le ultime AWS funzionalità e le versioni di Terraform. Gli aggiornamenti regolari ti aiutano a sfruttare le nuove funzionalità e a mantenere la sicurezza.
+ Controllo **delle versioni**: aggiungi la versione del modulo AFT e, se possibile, utilizza una distribuzione AFT separata per i test.
+ **Ambito**: utilizzate AFT solo per implementare protezioni e personalizzazioni dell'infrastruttura. Non utilizzarlo per distribuire l'applicazione.
+ **Linting e convalida**: la pipeline AFT richiede una configurazione Terraform linkata e convalidata. Esegui lint, convalida e testa prima di inviare la configurazione ai repository AFT.
+ **Moduli Terraform**: crea codice Terraform riutilizzabile come moduli e specifica sempre le versioni di Terraform e del AWS provider in base ai requisiti della tua organizzazione.

## Epiche
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-epics"></a>

### Configura e configura il tuo ambiente AWS
<a name="set-up-and-configure-your-aws-environment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Implementazione. AWS Control Tower | Imposta e configura AWS Control Tower nel tuo AWS ambiente per garantire la gestione e la governance centralizzate del tuo. Account AWS Per ulteriori informazioni, consulta la sezione [Guida introduttiva AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-with-control-tower.html) nella AWS Control Tower documentazione. | Amministratore cloud | 
| Implementa AWS Control Tower Account Factory for Terraform (AFT). | Configura AFT in un nuovo account di gestione AFT dedicato. Per ulteriori informazioni, vedi Configurare [e avviare AWS Control Tower Account Factory for Terraform](https://docs.aws.amazon.com/controltower/latest/userguide/aft-getting-started.html#aft-configure-and-launch) nella AWS Control Tower documentazione. | Amministratore cloud | 
| AFT completo dopo l'implementazione. | Una volta completata la distribuzione dell'infrastruttura AFT, completa i passaggi indicati nelle fasi [successive alla distribuzione](https://docs.aws.amazon.com/controltower/latest/userguide/aft-post-deployment.html) nella AWS Control Tower documentazione. | Amministratore cloud | 

### Crea IPAM
<a name="create-ipam"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Delegare un amministratore IPAM. | Per delegare un account amministratore IPAM nella tua AWS organizzazione, utilizza i seguenti passaggi:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html)In alternativa, è possibile utilizzare AWS CLI ed eseguire il seguente comando:<pre>aws ec2 enable-ipam-organization-admin-account \<br />    --delegated-admin-account-id 012345678901</pre>Per ulteriori informazioni, consulta [Integrare IPAM con gli account di un' AWS organizzazione](https://docs.aws.amazon.com/vpc/latest/ipam/enable-integ-ipam.html) nella documentazione di Amazon VPC [enable-ipam-organization-admine -account nel AWS CLI Command](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-ipam-organization-admin-account.html) Reference. Per continuare a utilizzare IPAM, devi accedere all'account amministratore delegato. Il profilo SSO o le variabili di AWS ambiente specificate nel passaggio successivo devono consentire all'utente di accedere a tale account e concedere le autorizzazioni per creare un pool IPAM di primo livello e regionale. | Amministratore AWS | 
| Crea un pool IPAM di primo livello e regionale. | Il GitHub repository di questo pattern contiene un modello Terraform che puoi utilizzare per creare il tuo pool IPAM di primo livello e il pool regionale. Quindi puoi condividere i pool con un'organizzazione, un'unità organizzativa (OU) o un'altra risorsa utilizzando (). Account AWS AWS Resource Access Manager AWS RAMUtilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html)Prendi nota dell'ID del pool di risorse che viene emesso dopo la creazione. L'ID ti servirà al momento dell'invio della richiesta di account. Se si dimentica l'ID del pool di risorse, è possibile recuperarlo in un secondo momento da. Console di gestione AWS Assicurati che i pool creati CIDRs non si sovrappongano a nessun altro pool nella tua regione di lavoro. Puoi creare un pool senza CIDR, ma non sarai in grado di utilizzare il pool per le assegnazioni fino a quando non avrai eseguito il provisioning di un CIDR. Puoi aggiungere qualcosa CIDRs a un pool in qualsiasi momento modificando il pool. | Amministratore AWS | 

### Integra IPAM con AFT
<a name="integrate-ipam-with-aft"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Inizia a creare la personalizzazione dell'account. | Per iniziare una nuova personalizzazione dell'account, esegui i seguenti comandi dal tuo terminale:<pre># Default name for customization repo<br />cd aft-account-customizations # Replace with your actual repo name if different than the default<br />mkdir -p APG-AFT-IPAM/terraform # Replace APG-AFT-IPAM with your desired customization name<br />cd APG-AFT-IPAM/terraform</pre> | DevOps ingegnere | 
| Crea `aft-providers.jinja` file. | Aggiungi codice dinamico al `aft-providers.jinja` file che specifica il backend e il provider Terraform da utilizzare.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 
| Crea `backend.jinja` file. | Aggiungi codice dinamico al `backend.jinja` file che specifica il backend e il provider Terraform da utilizzare.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 
| Crea `main.tf` file. | Crea un nuovo `main.tf` file e aggiungi codice che definisce due fonti di dati che recuperano due valori da AWS Systems Manager (`aws_ssm`) e crea il VPC.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 
| Crea `variables.tf` file. | Crea un `variables.tf` file che dichiari le variabili utilizzate dal modulo Terraform.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 
| Crea `terraform.tfvars` file. | Crea un `terraform.tfvars` file che definisca i valori delle variabili che vengono passate al `main.tf` file.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 
| Crea `outputs.tf` file. | Crea un nuovo `outputs.tf` file che esponga alcuni valori in CodeBuild.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 
| Effettua la personalizzazione. | Per salvare la nuova personalizzazione nell'archivio delle personalizzazioni dell'account, esegui i seguenti comandi:<pre># Assumes you are still in the /terraform directory<br />cd .. # Skip if you are in the account customization root directory (APG-AFT-IPAM)<br />git add .<br />git commit -m "APG customization"<br />git push origin</pre> | DevOps ingegnere | 
| Applica la personalizzazione. | Aggiungi il codice al `account-requests.tf` file che richiede un nuovo account con la personalizzazione dell'account appena creato. I campi personalizzati creano i parametri di Systems Manager nell'account fornito necessari per creare il VPC con il CIDR allocato IPv4 IPAM corretto.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | AWS DevOps | 
| Convalida la personalizzazione. | Accedi all'account appena venduto e verifica che la personalizzazione sia stata applicata correttamente.Utilizza le fasi seguenti:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps ingegnere | 

## risoluzione dei problemi
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
|  Si verificano errori nella creazione o nella gestione delle risorse causati da autorizzazioni inadeguate. |  Esamina i ruoli e le policy AWS Identity and Access Management (IAM) associati a Step Functions e agli altri servizi coinvolti nella distribuzione. CodeBuild Verifica che dispongano delle autorizzazioni necessarie. In caso di problemi di autorizzazione, modifica le politiche IAM per concedere l'accesso richiesto. | 
|  Le Servizio AWS quote vengono raggiunte durante la distribuzione. |  Prima di distribuire la pipeline, controlla le Servizio AWS quote per risorse come i bucket Amazon Simple Storage Service (Amazon S3), i ruoli e le funzioni IAM. AWS Lambda Se necessario, richiedi un aumento delle quote. Per ulteriori informazioni, consulta [Servizio AWS Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) nella *documentazione generale di riferimento di AWS *. | 

## Risorse correlate
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-resources"></a>

**Servizio AWS documentazione**
+ [AWS Control Tower Guida per l'utente](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)
+ [Come funziona IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/how-it-works-ipam.html)
+ [Best practice per la sicurezza in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)
+ [Servizio AWS quote](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)

**Altre risorse**
+ [documentazione Terraform Provider AWS](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)

# Automatizza l'aggiunta o l'aggiornamento delle voci di registro di Windows utilizzando AWS Systems Manager
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager"></a>

*Appasaheb Bagali, Amazon Web Services*

## Riepilogo
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager-summary"></a>

AWS Systems Manager è uno strumento di gestione remota per le istanze Amazon Elastic Compute Cloud (Amazon EC2). Systems Manager offre visibilità e controllo sulla tua infrastruttura su Amazon Web Services. Questo strumento versatile può essere utilizzato per correggere le modifiche del registro di Windows identificate come vulnerabilità dal rapporto di scansione delle vulnerabilità di sicurezza. 

Questo schema illustra i passaggi per proteggere le EC2 istanze che eseguono il sistema operativo Windows automatizzando le modifiche al registro consigliate per la sicurezza dell'ambiente. Il pattern utilizza il comando Run per eseguire un documento Command. Il codice è allegato e una parte di esso è inclusa nella sezione *Codice*.

## Prerequisiti e limitazioni
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager-prereqs"></a>
+ Un account AWS attivo
+ Autorizzazioni per accedere all' EC2 istanza e Systems Manager

## Architecture
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager-architecture"></a>

**Stack tecnologico Target**
+ Un cloud privato virtuale (VPC), con due sottoreti e un gateway NAT (Network Address Translation)
+ Un documento Systems Manager Command per aggiungere o aggiornare il nome e il valore del registro
+ Systems Manager Run Command per eseguire il documento Command sulle EC2 istanze specificate

**Architettura Target**

![\[Come aggiungere o aggiornare automaticamente le voci del registro di Windows utilizzando AWS Systems Manager.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/2ecf680d-9f36-4070-8a19-2af262db7fcc/images/c992bcb0-d894-4aa7-9bb3-3d60c9c79e8d.png)


 

## Tools (Strumenti)
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager-tools"></a>

**Strumenti**
+ [Politiche e ruoli IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html): AWS Identity and Access Management (IAM) è un servizio Web che ti aiuta a controllare in modo sicuro l'accesso alle risorse AWS. Utilizza IAM per controllare chi è autenticato (accesso effettuato) e autorizzato (dispone di autorizzazioni) per l’utilizzo di risorse.
+ [Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) — Amazon Simple Storage Service (Amazon S3) è uno storage per Internet. È concepito per rendere più accessibili agli sviluppatori risorse informatiche su grande scala per il Web. In questo modello, viene utilizzato un bucket S3 per archiviare i log di Systems Manager.
+ [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) — AWS Systems Manager è un servizio AWS che puoi usare per visualizzare e controllare la tua infrastruttura su AWS. Systems Manager ti aiuta a mantenere la sicurezza e la conformità scansionando *le istanze gestite* e segnalando (o adottando misure correttive) eventuali violazioni delle policy rilevate.
+ [Documento AWS Systems Manager Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html): i documenti AWS Systems Manager Command vengono utilizzati da Run Command. La maggior parte dei documenti Command è supportata su tutti i sistemi operativi Linux e Windows Server supportati da Systems Manager.
+ [AWS Systems Manager Run Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html) — AWS Systems Manager Run Command ti offre un modo per gestire la configurazione delle istanze gestite in remoto e in sicurezza. Utilizzando Run Command, puoi automatizzare le attività amministrative più comuni ed eseguire modifiche di configurazione una tantum su larga scala.

**Codice**

È possibile utilizzare il codice di esempio seguente per aggiungere o aggiornare un nome di registro di Microsoft Windows in`Version`, un percorso del Registro di `HKCU:\Software\ScriptingGuys\Scripts` sistema e un valore in`2`.

```
#Windows registry path which needs to add/update
$registryPath ='HKCU:\\Software\\ScriptingGuys\\Scripts'
#Windows registry Name  which needs to add/update
$Name = 'Version'
#Windows registry value  which needs to add/update
$value = 2
# Test-Path cmdlet to see if the registry key exists. 
IF(!(Test-Path $registryPath))
        {
           New-Item -Path $registryPath -Force | Out-Null
           New-ItemProperty -Path $registryPath -Name $name -Value     $value ` -PropertyType DWORD -                 Force | Out-        Null 
        } ELSE {
                      New-ItemProperty -Path $registryPath -Name $name -Value $value ` -PropertyType            DWORD        -Force | Out-Null
            }
echo 'Registry Path:'$registryPath
 echo 'Registry Name:'$registryPath
 echo 'Registry Value:'(Get-ItemProperty -Path $registryPath -Name $Name).version
```

È allegato l'esempio di codice JSON ( JavaScript Object Notation) completo del documento Systems Manager Command. 

## Epiche
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager-epics"></a>

### Configurazione di un VPC
<a name="set-up-a-vpc"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un VPC. | Nella Console di gestione AWS, crea un VPC con sottoreti pubbliche e private e un gateway NAT. Per ulteriori informazioni, consulta la [documentazione di AWS](https://docs.aws.amazon.com/batch/latest/userguide/create-public-private-vpc.html). | Amministratore cloud | 
| Crea gruppi di sicurezza. | Assicurati che ogni gruppo di sicurezza consenta l'accesso a Remote Desktop Protocol (RDP) dall'indirizzo IP di origine. | Amministratore cloud | 

### Crea una policy IAM e un ruolo IAM
<a name="create-an-iam-policy-and-an-iam-role"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare una policy IAM | Crea una policy IAM che fornisca l'accesso ad Amazon S3 EC2, Amazon e Systems Manager. | Amministratore cloud | 
| Crea un ruolo IAM. | Crea un ruolo IAM e collega la policy IAM che fornisce l'accesso ad Amazon S3 EC2, Amazon e Systems Manager. | Amministratore cloud | 

### Esegui l'automazione
<a name="run-the-automation"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare il documento Systems Manager Command. | Crea un documento Systems Manager Command che distribuirà le modifiche del registro di Microsoft Windows da aggiungere o aggiornare. | Amministratore cloud | 
| Esegui il comando Systems Manager Run. | Eseguite il comando Systems Manager Run, selezionando il documento Command e le istanze di destinazione di Systems Manager. Ciò invia la modifica del registro di Microsoft Windows nel documento Command selezionato alle istanze di destinazione. | Amministratore cloud | 

## Risorse correlate
<a name="automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager-resources"></a>
+ [AWS Systems Manager](https://aws.amazon.com/systems-manager/)
+ [Documenti AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html)
+ [Comando di esecuzione di AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html)

## Allegati
<a name="attachments-2ecf680d-9f36-4070-8a19-2af262db7fcc"></a>

[Per accedere a contenuti aggiuntivi associati a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/2ecf680d-9f36-4070-8a19-2af262db7fcc/attachments/attachment.zip)

# Crea automaticamente un RFC in AMS usando Python
<a name="automatically-create-an-rfc-in-ams-using-python"></a>

*Gnanasekaran Kailasam, Amazon Web Services*

## Riepilogo
<a name="automatically-create-an-rfc-in-ams-using-python-summary"></a>

AWS Managed Services (AMS) ti aiuta a gestire la tua infrastruttura basata sul cloud in modo più efficiente e sicuro fornendo una gestione continua dell'infrastruttura Amazon Web Services (AWS). Per apportare una modifica al tuo ambiente gestito, devi creare e inviare una nuova richiesta di modifica (RFC) che includa un ID del tipo di modifica (CT) per una particolare operazione o azione.

Tuttavia, la creazione manuale di una RFC può richiedere circa cinque minuti e i team dell'organizzazione potrebbero doverne inviare più di una RFCs ogni giorno. Questo modello consente di automatizzare il processo di creazione RFC, ridurre i tempi di creazione per ogni RFC ed eliminare gli errori manuali.   

Questo modello descrive come utilizzare il codice Python per creare automaticamente la `Stop EC2 instance` RFC che blocca le istanze Amazon Elastic Compute Cloud (Amazon EC2) nel tuo account AMS. È quindi possibile applicare l'approccio di questo modello e l'automazione Python ad altri tipi di RFC. 

## Prerequisiti e limitazioni
<a name="automatically-create-an-rfc-in-ams-using-python-prereqs"></a>

**Prerequisiti**
+ Un account AMS Advanced. Per ulteriori informazioni a riguardo, consulta [i piani operativi di AMS](https://docs.aws.amazon.com/managedservices/latest/accelerate-guide/what-is-ams-op-plans.html) nella documentazione di AWS Managed Services.
+ Almeno un'istanza EC2 esistente nel tuo account AMS.
+ Una comprensione di come creare e inviare RFCs in AMS.
+ Familiarità con Python.

**Limitazioni**
+ Puoi utilizzarlo solo RFCs per le modifiche nel tuo account AMS. Il tuo account AWS utilizza processi diversi per modifiche simili.

## Architecture
<a name="automatically-create-an-rfc-in-ams-using-python-architecture"></a>

**Stack tecnologico**
+ ARMS
+ Interfaccia a riga di comando di AWS (CLI AWS)
+ AWS SDK per Python (Boto3)
+ Python e i suoi pacchetti richiesti (JSON e Boto3)

**Automazione e scalabilità**

Questo pattern fornisce un codice di esempio per automatizzare la `Stop EC2 instance` RFC, ma è possibile utilizzare il codice di esempio e l'approccio di questo pattern per altri scopi. RFCs

## Tools (Strumenti)
<a name="automatically-create-an-rfc-in-ams-using-python-tools"></a>
+ [AWS Managed Services](https://docs.aws.amazon.com/managedservices/latest/ctexguide/ex-rfc-use-examples.html) — AMS ti aiuta a gestire la tua infrastruttura AWS in modo più efficiente e sicuro.
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) — AWS Command Line Interface (AWS CLI) è uno strumento unificato per gestire i servizi AWS. In AMS, l'API di gestione delle modifiche fornisce operazioni di creazione e gestione. RFCs
+ [SDK AWS per Python (Boto3) — SDK per](https://docs.aws.amazon.com/pythonsdk/) Python semplifica l'integrazione di applicazioni, librerie o script Python con i servizi AWS.

**Codice**

Il `AMS Stop EC2 Instance.zip` file (allegato) contiene il codice Python per creare un `Stop EC2 instance` RFC. Puoi anche configurare questo codice per inviare una singola RFC per più istanze EC2.

## Epiche
<a name="automatically-create-an-rfc-in-ams-using-python-epics"></a>

### Opzione 1: configurare l'ambiente per macOS o Linux
<a name="option-1-ndash-set-up-environment-for-macos-or-linux"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
|  Installa e convalida Python.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-create-an-rfc-in-ams-using-python.html) | Amministratore di sistema AWS | 
|  Installa AWS CLI.  | *Esegui il `pip install awscli --upgrade –user` comando per installare AWS CLI.* | Amministratore di sistema AWS | 
|  Installa Boto3. | Esegui il `pip install boto3` comando per installare Boto3. | Amministratore di sistema AWS | 
| Installa JSON.  | Esegui il `pip install json` comando per installare JSON. | Amministratore di sistema AWS | 
| Configura AMS CLI.  | Accedi alla Console di gestione AWS, apri la console AMS e scegli **Documentation**. Scaricate il file.zip che contiene la CLI AMS, decomprimetelo e installatelo sul computer locale.Dopo aver installato AMS CLI, esegui il `aws amscm help` comando. L'output fornisce informazioni sul processo di gestione delle modifiche di AMS. | Amministratore di sistema AWS | 

### Opzione 2: configurazione dell'ambiente per Windows
<a name="option-2-ndash-set-up-environment-for-windows"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
|  Installa e convalida Python.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-create-an-rfc-in-ams-using-python.html) | Amministratore di sistema AWS | 
| Installa AWS CLI.  | Esegui il `pip install awscli --upgrade –user` comando per installare AWS CLI. | Amministratore di sistema AWS | 
|  Installa Boto3. | Esegui il `pip install boto3` comando per installare Boto3. | Amministratore di sistema AWS | 
| Installa JSON.  | Esegui il `pip install json` comando per installare JSON. | Amministratore di sistema AWS | 
| Configura AMS CLI.  | Accedi alla Console di gestione AWS, apri la console AMS e scegli **Documentation**. Scaricate il file.zip che contiene la CLI AMS, decomprimetelo e installatelo sul computer locale.Dopo aver installato AMS CLI, esegui il `aws amscm help` comando. L'output fornisce informazioni sul processo di gestione delle modifiche di AMS | Amministratore di sistema AWS | 

### Estrai l'ID CT e i parametri di esecuzione per l'RFC
<a name="extract-the-ct-id-and-execution-parameters-for-the-rfc"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Estrai l'ID CT, la versione e i parametri di esecuzione per l'RFC.  | Ogni RFC ha un ID CT, una versione e parametri di esecuzione diversi. È possibile estrarre queste informazioni utilizzando una delle seguenti opzioni:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-create-an-rfc-in-ams-using-python.html)Per adattare l'automazione Python di questo pattern ad altre RFCs, sostituisci il tipo CT e i valori dei parametri nel file di codice `ams_stop_ec2_instance` Python dal `AMS Stop EC2 Instance.zip` file (allegato) con quelli che hai estratto. | Amministratore di sistema AWS | 

### Esegui l'automazione Python
<a name="run-the-python-automation"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Esegui l'automazione Python. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-create-an-rfc-in-ams-using-python.html) | Amministratore di sistema AWS | 

## Risorse correlate
<a name="automatically-create-an-rfc-in-ams-using-python-resources"></a>
+ [Cosa sono i tipi di modifica?](https://docs.aws.amazon.com/managedservices/latest/ctexguide/understanding-cts.html)
+ [Tutorial CLI: stack a due livelli ad alta disponibilità (Linux/RHEL)](https://docs.aws.amazon.com/managedservices/latest/ctexguide/tut-create-ha-stack.html)

## Allegati
<a name="attachments-2b6c68fd-a27e-4c8b-934d-caec50c196ed"></a>

[Per accedere al contenuto aggiuntivo associato a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/2b6c68fd-a27e-4c8b-934d-caec50c196ed/attachments/attachment.zip)

# Arresta e avvia automaticamente un'istanza database Amazon RDS utilizzando AWS Systems Manager Maintenance Windows
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows"></a>

*Ashita Dsilva, Amazon Web Services*

## Riepilogo
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-summary"></a>

Questo modello dimostra come arrestare e avviare automaticamente un'istanza DB di Amazon Relational Database Service (Amazon RDS) secondo una pianificazione specifica (ad esempio, chiudere un'istanza DB al di fuori dell'orario di lavoro per ridurre i costi) utilizzando Maintenance Windows. AWS Systems Manager A tal fine, Systems Manager è conveniente per i casi d'uso tipici.

AWS Systems Manager L'automazione fornisce i `AWS-StopRdsInstance` `AWS-StartRdsInstance` runbook per arrestare e avviare le istanze database di Amazon RDS. Ciò significa che non è necessario scrivere una logica personalizzata con AWS Lambda funzioni o creare una regola Amazon CloudWatch Events.

Systems Manager offre due funzionalità per la pianificazione delle attività: [State Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-state-about.html) e [Maintenance Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html). State Manager imposta e mantiene la configurazione dello stato richiesta per le risorse nel tuo account Amazon Web Services (AWS) una sola volta o secondo una pianificazione specifica. Manutenzione Windows esegue le attività sulle risorse del tuo account durante una finestra temporale specifica. Sebbene sia possibile utilizzare l'approccio di questo modello con State Manager o Maintenance Windows, si consiglia di utilizzare Maintenance Windows perché può eseguire una o più attività in base alla priorità assegnata e può anche eseguire AWS Lambda funzioni e AWS Step Functions attività. Per ulteriori informazioni su State Manager e Maintenance Windows, vedere [Scelta tra State Manager e Maintenance Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/state-manager-vs-maintenance-windows.html) nella documentazione di Systems Manager.

Questo modello fornisce passaggi dettagliati per configurare due finestre di manutenzione separate che utilizzano espressioni cron per interrompere e quindi avviare un'istanza database Amazon RDS. 

## Prerequisiti e limitazioni
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-prereqs"></a>

**Prerequisiti**
+ Un attivo. Account AWS
+ Un'istanza database Amazon RDS esistente che desideri interrompere e avviare secondo una pianificazione specifica.
+ Espressioni Cron per la pianificazione richiesta. Ad esempio, l'espressione `cron(0 9 ? * MON-FRI *)` esegue l'attività alle 09:00 ogni lunedì, martedì, mercoledì, giovedì e venerdì. Per ulteriori informazioni, consulta [Cron and rate expressions for maintenance](https://docs.aws.amazon.com/systems-manager/latest/userguide/reference-cron-and-rate-expressions.html#reference-cron-and-rate-expressions-maintenance-window) nella documentazione di Systems Manager.
+ Familiarità con Systems Manager.
+ Autorizzazioni per avviare e arrestare l'istanza RDS. Per ulteriori informazioni, consulta la sezione [Epics](#automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-epics).

**Limitazioni**
+ Un'istanza database Amazon RDS può essere interrotta per un massimo di sette giorni alla volta. Dopo sette giorni, l'istanza DB si riavvia automaticamente per garantire che riceva gli aggiornamenti di manutenzione necessari.
+ Non è possibile interrompere un'istanza DB che è una replica di lettura o che ha una replica di lettura.
+ Non è possibile interrompere un'istanza DB di Amazon RDS for SQL Server in una configurazione Multi-AZ.
+ Le quote di servizio si applicano a Maintenance Windows e Systems Manager Automation. Per ulteriori informazioni sulle quote di servizio, consulta [AWS Systems Manager endpoint e quote](https://docs.aws.amazon.com/general/latest/gr/ssm.html) nella documentazione. Riferimenti generali di AWS  
+ Alcune Servizi AWS non sono disponibili in tutte. Regioni AWS Per la disponibilità per regione, vedi [Servizi AWS per regione](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Per endpoint specifici, consulta la pagina [Endpoint e quote del servizio](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) e scegli il link relativo al servizio.

## Architecture
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-architecture"></a>

Il diagramma seguente mostra il flusso di lavoro per arrestare e avviare automaticamente un'istanza database Amazon RDS.

![\[Flusso di lavoro per arrestare e avviare automaticamente un'istanza database Amazon RDS\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/45b81621-5674-4bcf-bf7c-75ae6f62524e/images/7d943830-716e-46a3-be44-7e668c3c01ff.png)


 

Il flusso di lavoro prevede i seguenti passaggi:

1. Crea una finestra di manutenzione e usa le espressioni cron per definire la pianificazione di arresto e avvio per le tue istanze database Amazon RDS.

2. Registrare un'attività di Systems Manager Automation nella finestra di manutenzione utilizzando il `AWS-StartRdsInstance` runbook `AWS-StopRdsInstance` or.

3. Registra una destinazione nella finestra di manutenzione utilizzando un gruppo di risorse basato su tag per le tue istanze database Amazon RDS.

**Stack tecnologico**
+ AWS CloudFormation
+ AWS Identity and Access Management (IAM)
+ Amazon RDS
+ Systems Manager

**Automazione e scalabilità**

Puoi interrompere e avviare più istanze DB Amazon RDS contemporaneamente etichettando le istanze DB Amazon RDS richieste, creando un gruppo di risorse che include tutte le istanze DB con tag e registrando questo gruppo di risorse come destinazione per la finestra di manutenzione.

## Tools (Strumenti)
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-tools"></a>
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)è un servizio che ti aiuta a modellare e configurare le tue risorse. AWS 
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) è un servizio web che consente di controllare in modo sicuro l'accesso alle AWS risorse.
+ [Amazon Relational Database Service (Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)) è un servizio Web che semplifica la configurazione, il funzionamento e la scalabilità di un database relazionale in. Cloud AWS
+ [AWS Resource Groups](https://docs.aws.amazon.com/ARG/latest/userguide/welcome.html)ti aiuta a organizzare AWS le risorse in gruppi, etichettare le risorse e gestire, monitorare e automatizzare le attività su risorse raggruppate.
+ [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)è uno Servizio AWS strumento che puoi usare per visualizzare e controllare la tua infrastruttura. AWS Questo modello utilizza le seguenti funzionalità di Systems Manager:
  + [AWS Systems Manager L'automazione](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) semplifica le attività comuni di manutenzione e distribuzione delle istanze Amazon Elastic Compute Cloud EC2 (Amazon) e di altre risorse. AWS 
  + [AWS Systems Manager Manutenzione Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html) ti aiuta a definire una pianificazione per quando eseguire azioni potenzialmente dannose sulle tue istanze.

## Epiche
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-epics"></a>

### Creare e configurare il ruolo del servizio IAM per Systems Manager Automation
<a name="create-and-configure-the-iam-service-role-for-sys-automation"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura il ruolo del servizio IAM per Systems Manager Automation. | Accedere a Console di gestione AWS e creare un ruolo di servizio per Systems Manager Automation. È possibile utilizzare uno dei due metodi seguenti per creare questo ruolo di servizio:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.html)Il flusso di lavoro Systems Manager Automation richiama Amazon RDS utilizzando un ruolo di servizio per eseguire azioni di avvio e arresto sull'istanza database di Amazon RDS.Il ruolo di servizio deve essere configurato con la seguente [policy in linea](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html#add-policies-console) che dispone delle autorizzazioni per avviare e arrestare l'istanza DB di Amazon RDS:<pre>{<br />    "Version": "2012-10-17",		 	 	 <br />    "Statement": [<br />        {<br />            "Sid": "RdsStartStop",<br />            "Effect": "Allow",<br />            "Action": [<br />                "rds:StopDBInstance",<br />                "rds:StartDBInstance"<br />            ],<br />            "Resource": "<RDS_Instance_ARN>"               <br />        },<br />        {<br />            "Sid": "RdsDescribe",<br />            "Effect": "Allow",<br />            "Action": "rds:DescribeDBInstances",<br />            "Resource": "*"<br />        }<br />    ]<br />}</pre>Assicurati di sostituirla `<RDS_Instance_ARN>` con l'Amazon Resource Name (ARN) della tua istanza database Amazon RDS.Se non hai dimestichezza con l'uso delle policy e dei ruoli IAM, segui le istruzioni nella sezione *Panoramica della soluzione* del post di AWS Systems Manager blog [Schedule Amazon RDS stop and start use](https://aws.amazon.com/blogs/database/schedule-amazon-rds-stop-and-start-using-aws-systems-manager/).Assicurati di registrare l'ARN del ruolo di servizio. | Amministratore AWS | 

### Crea un gruppo di risorse
<a name="create-a-resource-group"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Etichetta le istanze database di Amazon RDS. | Apri la [console Amazon RDS](https://console.aws.amazon.com/rds/) e tagga le istanze database di Amazon RDS che desideri aggiungere al gruppo di risorse. Un tag è un metadato assegnato a una AWS risorsa e consiste in una coppia chiave-valore. **Ti consigliamo di utilizzare *Action* come **chiave Tag** e *StartStop*come Valore.**Per ulteriori informazioni su questo argomento, consulta [Aggiungere, elencare e rimuovere tag](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html#Tagging.HowTo) nella documentazione di Amazon RDS. | Amministratore AWS | 
| Crea un gruppo di risorse per le tue istanze database Amazon RDS con tag. | Apri la [AWS Resource Groups console](https://console.aws.amazon.com/resource-groups) e crea un gruppo di risorse basato sul tag che hai creato per le tue istanze database Amazon RDS.In **Grouping Criteria**, assicurati di scegliere **AWS: :RDS:: DBInstance** per il tipo di risorsa, quindi fornisci la coppia chiave-valore del tag (ad esempio, «Action-»). StartStop Ciò garantisce che il servizio controlli solo le istanze database di Amazon RDS e non altre risorse con questo tag. ****Assicurati di registrare il nome del gruppo di risorse.Per ulteriori informazioni e passaggi dettagliati, consulta [Creare una query basata su tag e creare un gruppo](https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-query.html#gettingstarted-query-tag-based) nella AWS Resource Groups documentazione.  | Amministratore AWS | 

### Configura una finestra di manutenzione per arrestare le istanze database di Amazon RDS
<a name="configure-a-maintenance-window-to-stop-the-rds-db-instances"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare una finestra di manutenzione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.html)L'operazione di arresto dell'istanza DB viene eseguita quasi istantaneamente una volta avviata e non copre l'intera durata della finestra di manutenzione. Questo modello fornisce i valori minimi per **Duration** e **Stop all'avvio delle attività**, poiché sono i parametri richiesti per una finestra di manutenzione.Per ulteriori informazioni e passaggi dettagliati, vedere [Creare una finestra di manutenzione (console)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-create-mw.html) nella documentazione di Systems Manager. | Amministratore AWS | 
| Assegna un obiettivo alla finestra di manutenzione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.html)Per ulteriori informazioni e passaggi dettagliati, vedere [Assegnare obiettivi a una finestra di manutenzione (console)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-assign-targets.html) nella documentazione di Systems Manager. | Amministratore AWS | 
| Assegna un'attività alla finestra di manutenzione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.html)****L'opzione **Ruolo di servizio** definisce il ruolo di servizio richiesto per la finestra di manutenzione per eseguire le attività. Tuttavia, questo ruolo non è identico al ruolo di servizio creato in precedenza per Systems Manager Automation.Per ulteriori informazioni e passaggi dettagliati, vedere [Assegnare attività a una finestra di manutenzione (console)](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-maintenance-assign-tasks.html) nella documentazione di Systems Manager. | Amministratore AWS | 

### Configura una finestra di manutenzione per avviare le istanze database di Amazon RDS
<a name="configure-a-maintenance-window-to-start-the-rds-db-instances"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura una finestra di manutenzione per avviare le istanze database di Amazon RDS. | Ripeti i passaggi dalla *finestra Configura una manutenzione per interrompere l'epic delle istanze Amazon RDS DB* per configurare un'altra finestra di manutenzione per avviare le istanze Amazon RDS DB a un orario pianificato.È necessario apportare le seguenti modifiche quando si configura la finestra di manutenzione per avviare le istanze DB:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows.html) | Amministratore AWS | 

## Risorse correlate
<a name="automatically-stop-and-start-an-amazon-rds-db-instance-using-aws-systems-manager-maintenance-windows-resources"></a>
+ [Usa i documenti di Systems Manager Automation per gestire le istanze e ridurre i costi fuori orario](https://aws.amazon.com/blogs/mt/systems-manager-automation-documents-manage-instances-cut-costs-off-hours/) (AWS post sul blog)

# Centralizza la distribuzione dei pacchetti software in AWS Organizations utilizzando Terraform
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform"></a>

*Pradip Kumar Pandey, Chintamani Aphale, TV.R.L.Phani Kumar Dadi, Pratap Kumar Nanda, Aarti Rajput e Mayuri Shinde, Amazon Web Services*

## Riepilogo
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-summary"></a>

Le aziende spesso gestiscono Account AWS più file distribuiti su più file Regioni AWS per creare una forte barriera di isolamento tra i carichi di lavoro. [Per garantire la sicurezza e la conformità, i team di amministrazione installano strumenti basati su agenti come [CrowdStrike](https://www.crowdstrike.com/falcon-platform/), o [TrendMicro](https://www.trendmicro.com/en_sg/business.html)strumenti per la scansione di sicurezza [SentinelOne](https://www.sentinelone.com/platform/), e l'[ CloudWatch agente Amazon, l'agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)[Datadog](https://www.datadoghq.com/) o gli agenti per il monitoraggio. AppDynamics ](https://www.appdynamics.com/product/how-it-works/agents-and-controller) Questi team spesso incontrano difficoltà quando vogliono automatizzare centralmente la gestione e la distribuzione dei pacchetti software in questo ampio panorama.

[Distributor](https://docs.aws.amazon.com/systems-manager/latest/userguide/distributor.html), una funzionalità di [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html), automatizza il processo di creazione di pacchetti e pubblicazione del software per le istanze Microsoft Windows e Linux gestite sul cloud e sui server locali tramite un'unica interfaccia semplificata. Questo modello dimostra come è possibile utilizzare Terraform per semplificare ulteriormente il processo di gestione dell'installazione del software e per eseguire script su un gran numero di istanze e account membri all'interno con il minimo sforzo. AWS Organizations 

Questa soluzione funziona per le istanze Amazon, Linux e Windows gestite da Systems Manager.

## Prerequisiti e limitazioni
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-prereqs"></a>
+ Un [pacchetto Distributor](https://docs.aws.amazon.com/systems-manager/latest/userguide/distributor-working-with-packages-create.html) contenente il software da installare
+ [Terraform](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli) versione 0.15.0 o successiva
+ Istanze Amazon Elastic Compute Cloud (Amazon EC2) [gestite da Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/managed_instances.html) e dotate di [autorizzazioni di base per accedere ad Amazon Simple Storage Service (Amazon S3) nell'account di destinazione](https://repost.aws/knowledge-center/ec2-instance-access-s3-bucket)
+ Una landing zone per la tua organizzazione configurata utilizzando [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)
+ (Opzionale) [Account Factory for Terraform (AFT)](https://catalog.workshops.aws/control-tower/en-US/customization/aft)

## Architecture
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-architecture"></a>

**Dettagli delle risorse**

Questo modello utilizza [Account Factory for Terraform (AFT)](https://catalog.workshops.aws/control-tower/en-US/customization/aft) per creare tutte le AWS risorse richieste e la pipeline di codice per distribuire le risorse in un account di distribuzione. La pipeline di codice viene eseguita in due repository:
+ **La personalizzazione globale** contiene il codice Terraform che verrà eseguito su tutti gli account registrati con AFT.
+ **Le personalizzazioni dell'account** contengono il codice Terraform che verrà eseguito nell'account di distribuzione.

È inoltre possibile distribuire questa soluzione senza utilizzare AFT, eseguendo i comandi [Terraform](https://developer.hashicorp.com/terraform/intro) nella cartella delle personalizzazioni dell'account.

Il codice Terraform distribuisce le seguenti risorse:
+ AWS Identity and Access Management Ruolo e politiche (IAM)
  + [SystemsManager- AutomationExecutionRole](https://docs.aws.amazon.com/systems-manager/latest/userguide/running-automations-multiple-accounts-regions.html) concede all'utente le autorizzazioni per eseguire automazioni negli account di destinazione.
  + [SystemsManager- AutomationAdministrationRole](https://docs.aws.amazon.com/systems-manager/latest/userguide/running-automations-multiple-accounts-regions.html) concede all'utente le autorizzazioni per eseguire automazioni in più account e unità organizzative (). OUs
+ File compressi e manifest.json per il pacchetto
  + In Systems Manager, un [pacchetto](https://docs.aws.amazon.com/systems-manager/latest/userguide/distributor-working-with-packages-create.html) include almeno un file.zip di software o risorse installabili.
  + Il manifest JSON include puntatori ai file di codice del pacchetto.
+ Bucket S3
  + Il pacchetto distribuito condiviso all'interno dell'organizzazione viene archiviato in modo sicuro in un bucket Amazon S3.
+ AWS Systems Manager documenti (documenti SSM)
  + `DistributeSoftwarePackage`contiene la logica per distribuire il pacchetto software a ogni istanza di destinazione negli account dei membri.
  + `AddSoftwarePackageToDistributor`contiene la logica per impacchettare le risorse software installabili e aggiungerle a Automation, una funzionalità di AWS Systems Manager.
+ Associazione di Systems Manager
  + Per distribuire la soluzione viene utilizzata un'associazione Systems Manager.

**Architettura e flusso di lavoro**

![\[Diagramma di architettura per centralizzare la distribuzione dei pacchetti software in AWS Organizations\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/da584449-e12b-4878-a61d-00d8cea3d3d7/images/2718f2c4-f816-4e34-89b8-8182c128e6db.png)


Il diagramma illustra i passaggi seguenti:

1. Per eseguire la soluzione da un account centralizzato, devi caricare i pacchetti o il software insieme alle fasi di distribuzione in un bucket S3.

1. Il pacchetto personalizzato diventa disponibile nella sezione [Documenti](https://ap-southeast-2.console.aws.amazon.com/systems-manager/documents?region=ap-southeast-2) della console Systems Manager, nella scheda **Owned by me**.

1. State Manager, una funzionalità di Systems Manager, crea, pianifica ed esegue un'associazione per il pacchetto all'interno dell'organizzazione. L'associazione specifica che il pacchetto software deve essere installato ed eseguito su un nodo gestito prima di poter essere installato sul nodo di destinazione.

1. L'associazione ordina a Systems Manager di installare il pacchetto sul nodo di destinazione.

1. Per eventuali installazioni o modifiche successive, gli utenti possono eseguire la stessa associazione periodicamente o manualmente da un'unica posizione per eseguire distribuzioni su più account.

1. Negli account dei membri, Automation invia i comandi di distribuzione a Distributor.

1. Il distributore distribuisce pacchetti software tra le istanze.

Questa soluzione utilizza l'account di gestione interno AWS Organizations, ma è anche possibile designare un account (amministratore delegato) per gestirlo per conto dell'organizzazione.

## Tools (Strumenti)
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-tools"></a>

**Servizi AWS**
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) è un servizio di archiviazione degli oggetti basato sul cloud che consente di archiviare, proteggere e recuperare qualsiasi quantità di dati. Questo modello utilizza Amazon S3 per centralizzare e archiviare in modo sicuro il pacchetto distribuito.
+ [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)ti aiuta a gestire le applicazioni e l'infrastruttura in esecuzione in. Cloud AWS Semplifica la gestione delle applicazioni e delle risorse, riduce i tempi di rilevamento e risoluzione dei problemi operativi e aiuta a gestire le AWS risorse in modo sicuro su larga scala. Questo modello utilizza le seguenti funzionalità di Systems Manager:
  + [Distributor](https://docs.aws.amazon.com/systems-manager/latest/userguide/distributor.html) consente di creare pacchetti e pubblicare software su istanze gestite da Systems Manager.
  + [L'automazione](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) semplifica le attività comuni di manutenzione, implementazione e riparazione per molti servizi. AWS 
  + [Documents](https://docs.aws.amazon.com/systems-manager/latest/userguide/documents.html) esegue azioni sulle istanze gestite da Systems Manager all'interno dell'organizzazione e degli account.
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)è un servizio di gestione degli account che consente di consolidare più AWS account in un'organizzazione da creare e gestire centralmente.

**Altri strumenti**
+ [Terraform](https://www.terraform.io/) è uno strumento di infrastruttura come codice (IaC) HashiCorp che ti aiuta a creare e gestire risorse cloud e locali.

**Archivio di codici**

Le istruzioni e il codice per questo modello sono disponibili nell'archivio GitHub [centralizzato per la distribuzione dei pacchetti](https://github.com/aws-samples/aws-organization-centralised-package-distribution).

## Best practice
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-best-practices"></a>
+ Per assegnare tag a un'associazione, usa il [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) o il. [AWS Strumenti per PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-welcome.html) Aggiunta di tag a un'associazione utilizzando la console Systems Manager non è supportata. Per ulteriori informazioni, vedere [Tagging Systems Manager alle risorse](https://docs.aws.amazon.com/systems-manager/latest/userguide/tagging-resources.html) nella documentazione di Systems Manager.
+ Per eseguire un'associazione utilizzando una nuova versione di un documento condiviso da un altro account, imposta la versione del documento su. `default`
+ Per etichettare solo il nodo di destinazione, usa una chiave tag. Se vuoi indirizzare i tuoi nodi utilizzando più chiavi di tag, usa l'opzione resource group.

## Epiche
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-epics"></a>

### Configura i file sorgente e gli account
<a name="configure-source-files-and-accounts"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Clonare il repository. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 
| Aggiorna le variabili globali. | Aggiorna i seguenti parametri di input nel `global-customization/variables.tf` file. Queste variabili si applicano a tutti gli account creati e gestiti da AFT.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 
| Aggiorna le variabili dell'account. | Aggiorna i seguenti parametri di input nel `account-customization/variables.tf` file. Queste variabili si applicano solo a conti specifici creati e gestiti da AFT.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 

### Personalizza parametri e file di distribuzione
<a name="customize-parameters-and-deployment-files"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Aggiorna i parametri di input per l'associazione State Manager. | Aggiorna i seguenti parametri di input nel `account-customization/association.tf` file per definire lo stato che desideri mantenere sulle tue istanze. Puoi utilizzare i valori dei parametri predefiniti se supportano il tuo caso d'uso.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 
| Prepara i file compressi e il `manifest.json` file per il pacchetto. | Questo modello fornisce esempi di file PowerShell installabili (.msi per Windows e.rpm per Linux) con script di installazione e disinstallazione nella cartella. `account-customization/package`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 

### Esegui i comandi Terraform per fornire risorse
<a name="run-terraform-commands-to-provision-resources"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Inizializza la configurazione Terraform. | Per implementare automaticamente la soluzione con AFT, invia il codice a: AWS CodeCommit<pre>$ git add *<br />$ git commit -m "message"<br />$ git push</pre>È inoltre possibile distribuire questa soluzione senza utilizzare AFT eseguendo un comando Terraform dalla cartella. `account-customization` Per inizializzare la directory di lavoro che contiene i file Terraform, esegui:<pre>$ terraform init</pre> | DevOps ingegnere | 
| Visualizza in anteprima le modifiche. | Per visualizzare in anteprima le modifiche che Terraform apporterà all'infrastruttura, esegui il comando:<pre>$ terraform plan</pre>Questo comando valuta la configurazione di Terraform per determinare lo stato desiderato delle risorse che sono state dichiarate. Inoltre, confronta lo stato desiderato con l'infrastruttura effettiva da fornire all'interno dell'area di lavoro. | DevOps ingegnere | 
| Applica modifiche. | Eseguite il comando seguente per implementare le modifiche apportate ai `variables.tf` file:<pre>$ terraform apply</pre> | DevOps ingegnere | 

### Convalida le risorse
<a name="validate-resources"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Convalida la creazione di documenti SSM. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html)Dovresti vedere i `AddSoftwarePackageToDistributor` pacchetti `DistributeSoftwarePackage` e. | DevOps ingegnere | 
| Convalida la corretta implementazione delle automazioni. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 
| Verifica che il pacchetto sia stato distribuito nelle istanze di account membro interessate. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/centralize-software-package-distribution-in-aws-organizations-by-using-terraform.html) | DevOps ingegnere | 

## risoluzione dei problemi
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| L'associazione State Manager è fallita o è bloccata in sospeso. | Consulta le [informazioni sulla risoluzione dei problemi](https://repost.aws/knowledge-center/ssm-state-manager-association-fail) nel AWS Knowledge Center. | 
| Impossibile eseguire un'associazione pianificata. | Le specifiche della pianificazione potrebbero non essere valide. State Manager attualmente non supporta la specificazione dei mesi nelle espressioni cron per le associazioni. Usa le [espressioni cron o rate](https://docs.aws.amazon.com/systems-manager/latest/userguide/reference-cron-and-rate-expressions.html) per confermare la pianificazione. | 

## Risorse correlate
<a name="centralize-software-package-distribution-in-aws-organizations-by-using-terraform-resources"></a>
+ [Distribuzione centralizzata dei pacchetti (repository](https://github.com/aws-samples/aws-organization-centralised-package-distribution)) GitHub 
+ [Account Factory per Terraform (AFT)](https://catalog.workshops.aws/control-tower/en-US/customization/aft)
+ [Casi d'uso e migliori pratiche](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-best-practices.html) (AWS Systems Manager documentazione)

# Configura la registrazione per le applicazioni.NET in Amazon CloudWatch Logs utilizzando NLog
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog"></a>

*Bibhuti Sahu e Rob Hill (AWS), Amazon Web Services*

## Riepilogo
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-summary"></a>

Questo modello descrive come utilizzare il framework di registrazione NLog open source per registrare l'utilizzo e gli eventi delle applicazioni.NET in [Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) Logs. Nella CloudWatch console, puoi visualizzare i messaggi di registro dell'applicazione quasi in tempo reale. Puoi anche impostare [metriche](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html) e configurare [allarmi](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html) per avvisarti se viene superata una soglia metrica. Utilizzando CloudWatch Application Insights, è possibile visualizzare dashboard automatiche o personalizzate che mostrano potenziali problemi per le applicazioni monitorate. CloudWatch Application Insights è progettato per aiutarvi a isolare rapidamente i problemi in corso con le applicazioni e l'infrastruttura.

Per scrivere messaggi di log in CloudWatch Logs, aggiungi il `AWS.Logger.NLog` NuGet pacchetto al progetto.NET. Quindi, si aggiorna il `NLog.config` file per utilizzare CloudWatch Logs come destinazione.

## Prerequisiti e limitazioni
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ Un'applicazione web.NET o console che:
  + Utilizza le versioni supportate di .NET Framework o.NET Core. Per ulteriori informazioni, consulta *Versioni del prodotto*.
  + Viene utilizzato NLog per inviare dati di registro ad Application Insights.
+ Autorizzazioni per creare un ruolo IAM per un servizio AWS. Per ulteriori informazioni, consulta [Autorizzazioni dei ruoli di servizio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html#id_roles_create_service-permissions).
+ Autorizzazioni per trasferire un ruolo a un servizio AWS. Per ulteriori informazioni, consulta [Concessione di autorizzazioni utente per il passaggio di un ruolo a un servizio AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html).

**Versioni del prodotto**
+ .NET Framework versione 3.5 o successiva
+ .NET Core versioni 1.0.1, 2.0.0 o successive

## Architecture
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-architecture"></a>

**Stack tecnologico Target**
+ NLog
+  CloudWatch Registri Amazon

**Architettura Target**

![\[Diagramma dell'architettura di NLog scrittura dei dati di log per un'applicazione.NET su Amazon ClodWatch Logs.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/0ac9c3ad-2a28-415f-afc3-7fe3494b2b63/images/daea9f2f-7242-4ed2-843e-655d843dcfdf.png)


1. L'applicazione.NET scrive i dati di registro nel framework di NLog registrazione.

1. NLog scrive i dati di registro in CloudWatch Logs.

1. Si utilizzano CloudWatch allarmi e dashboard personalizzati per monitorare l'applicazione.NET.

## Tools (Strumenti)
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-tools"></a>

**Servizi AWS**
+ [Amazon CloudWatch Application Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch-application-insights.html) ti aiuta a osservare lo stato delle tue applicazioni e delle risorse AWS sottostanti.
+ [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) ti aiuta a centralizzare i log di tutti i tuoi sistemi, applicazioni e servizi AWS in modo da poterli monitorare e archiviare in modo sicuro.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Tools for PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-welcome.html) è un set di PowerShell moduli che ti aiutano a creare script di operazioni sulle tue risorse AWS dalla PowerShell riga di comando.

**Altri strumenti**
+ [Logger. NLog](https://www.nuget.org/packages/AWS.Logger.NLog)è una NLog destinazione che registra i dati di registro in CloudWatch Logs.
+ [NLog](https://nlog-project.org/)è un framework di registrazione open source per piattaforme .NET che consente di scrivere dati di registro su destinazioni, come database, file di registro o console.
+ [PowerShell](https://learn.microsoft.com/en-us/powershell/)è un programma di gestione dell'automazione e della configurazione di Microsoft che funziona su Windows, Linux e macOS.
+ [Visual Studio](https://docs.microsoft.com/en-us/visualstudio/get-started/visual-studio-ide?view=vs-2022) è un ambiente di sviluppo integrato (IDE) che include compilatori, strumenti di completamento del codice, progettisti grafici e altre funzionalità che supportano lo sviluppo del software.

## Best practice
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-best-practices"></a>
+ Imposta una [politica di conservazione](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#SettingLogRetention) per il gruppo di log di destinazione. Questa operazione deve essere eseguita al di fuori della NLog configurazione. Per impostazione predefinita, i dati di registro vengono archiviati nei CloudWatch registri a tempo indeterminato.
+ Aderisci alle [migliori pratiche per la gestione delle chiavi di accesso AWS](https://docs.aws.amazon.com/accounts/latest/reference/credentials-access-keys-best-practices.html).

## Epiche
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-epics"></a>

### Configura l'accesso e gli strumenti
<a name="set-up-access-and-tools"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare una policy IAM | Segui le istruzioni in [Creazione di politiche utilizzando l'editor JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html#access_policies_create-json-editor) nella documentazione IAM. Inserisci la seguente policy JSON, che dispone dei privilegi minimi necessari per consentire CloudWatch ai log di leggere e scrivere i log.<pre>{<br />    "Version": "2012-10-17",		 	 	 <br />    "Statement": [<br />        {<br />            "Effect": "Allow",<br />            "Action": [<br />                "logs:CreateLogGroup",<br />                "logs:CreateLogStream",<br />                "logs:GetLogEvents",<br />                "logs:PutLogEvents",<br />                "logs:DescribeLogGroups",<br />                "logs:DescribeLogStreams",<br />                "logs:PutRetentionPolicy"<br />            ],<br />            "Resource": [<br />                "*"<br />            ]<br />        }<br />    ]<br />}</pre> | Amministratore AWS, AWS DevOps | 
| Crea un ruolo IAM. | Segui le istruzioni in [Creazione di un ruolo per delegare le autorizzazioni a un servizio AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) nella documentazione IAM. Seleziona la policy che hai creato in precedenza. Questo è il ruolo che CloudWatch Logs assume per eseguire le azioni di registrazione. | Amministratore AWS, AWS DevOps | 
| Configura AWS Tools per PowerShell. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog.html) | Informazioni generali su AWS | 

### Configurazione NLog
<a name="configure-nlog"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa il NuGet pacchetto. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog.html) | Sviluppatore di app | 
| Configura la destinazione di registrazione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog.html)Per un file di configurazione di esempio, consultate la sezione [Informazioni aggiuntive](#configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-additional) di questo modello. Quando esegui l'applicazione, NLog scriverà i messaggi di registro e li invierà a CloudWatch Logs. | Sviluppatore di app | 

### Convalida e monitora i log
<a name="validate-and-monitor-logs"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Convalida la registrazione. | Segui le istruzioni in [Visualizza i dati di registro inviati ai CloudWatch registri nella documentazione dei registri.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#ViewingLogData) CloudWatch Verifica che gli eventi di registro vengano registrati per l'applicazione.NET. Se gli eventi di registro non vengono registrati, consultate la sezione [Risoluzione dei problemi](#configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-troubleshooting) in questo schema. | Informazioni generali su AWS | 
| Monitora lo stack di applicazioni.NET. | Configura il monitoraggio in base CloudWatch alle esigenze del tuo caso d'uso. Puoi utilizzare [CloudWatch Logs Insights, CloudWatch Metrics Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) [e [CloudWatch Application Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch-application-insights.html)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/query_with_cloudwatch-metrics-insights.html) per monitorare il tuo carico di lavoro.NET. Puoi anche configurare gli [allarmi](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) in modo da poterli ricevere e creare una [dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) personalizzata per monitorare il carico di lavoro da un'unica vista. | Informazioni generali su AWS | 

## risoluzione dei problemi
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| I dati di registro non vengono visualizzati in CloudWatch Logs. | Assicurati che la policy IAM sia associata al ruolo IAM assunto da CloudWatch Logs. Per istruzioni, consulta la sezione *Configurazione dell'accesso e degli strumenti* nella sezione [Epics](#configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-epics). | 

## Risorse correlate
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-resources"></a>
+ [Lavorare con gruppi di log e flussi di log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) (documentazione relativa ai CloudWatch log)
+ [Amazon CloudWatch Logs e.NET Logging Frameworks](https://aws.amazon.com/blogs/developer/amazon-cloudwatch-logs-and-net-logging-frameworks/) (post sul blog AWS)

## Informazioni aggiuntive
<a name="configure-logging-for-net-applications-in-amazon-cloudwatch-logs-by-using-nlog-additional"></a>

Di seguito è riportato un file di esempio. `NLog.config`

```
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
  </startup>
  <nlog>
    <extensions>
      <add assembly="NLog.AWS.Logger" />
    </extensions>
    <targets>
      <target name="aws" type="AWSTarget" logGroup="NLog.TestGroup" region="us-east-1" profile="demo"/>
    </targets>
    <rules>
      <logger name="*" minlevel="Info" writeTo="aws" />
    </rules>    
  </nlog>
</configuration>
```

# Copia i prodotti AWS Service Catalog su diversi account AWS e regioni AWS
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions"></a>

*Sachin Vighe e Santosh Kale, Amazon Web Services*

## Riepilogo
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-summary"></a>

AWS Service Catalog è un servizio regionale e ciò significa che i [portafogli e i prodotti](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html) di AWS Service Catalog sono visibili solo nella regione AWS in cui sono stati creati. Se configuri un [hub AWS Service Catalog](https://aws.amazon.com/about-aws/whats-new/2020/06/aws-service-catalog-now-supports-sharing-portfolios-across-an-organization-from-a-delegated-member-account/) in una nuova regione, devi ricreare i prodotti esistenti e questo processo può richiedere molto tempo.

L'approccio di questo modello aiuta a semplificare questo processo descrivendo come copiare i prodotti da un hub AWS Service Catalog in un account o in una regione AWS di origine a un nuovo hub in un account o in una regione di destinazione. Per ulteriori informazioni sul modello hub and spoke di AWS Service Catalog, consulta il modello [hub and spoke di AWS Service Catalog: come automatizzare la distribuzione e la gestione di AWS Service Catalog su molti account](https://aws.amazon.com/blogs/mt/aws-service-catalog-hub-and-spoke-model-how-to-automate-the-deployment-and-management-of-service-catalog-to-many-accounts/) sul blog di AWS Management and Governance. 

Il modello fornisce anche i pacchetti di codice separati necessari per copiare i prodotti AWS Service Catalog tra account o in altre regioni. Utilizzando questo modello, l'organizzazione può risparmiare tempo, rendere disponibili le versioni esistenti e precedenti del prodotto in un nuovo hub AWS Service Catalog, ridurre al minimo il rischio di errori manuali e scalare l'approccio su più account o regioni.

**Nota**  
La sezione *Epics* di questo pattern offre due opzioni per copiare i prodotti. Puoi utilizzare l'Opzione 1 per copiare i prodotti tra gli account o scegliere l'Opzione 2 per copiare i prodotti tra le regioni.

## Prerequisiti e limitazioni
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ Prodotti AWS Service Catalog esistenti in un account o in una regione di origine.
+ Un hub AWS Service Catalog esistente in un account o in una regione di destinazione.
+ Se desideri copiare prodotti tra account, devi condividere e quindi importare il portafoglio AWS Service Catalog contenente i prodotti nell'account di destinazione. Per ulteriori informazioni a riguardo, consulta [Condivisione e importazione di portafogli nella documentazione](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/catalogs_portfolios_sharing.html) di AWS Service Catalog.

**Limitazioni**
+ I prodotti AWS Service Catalog che desideri copiare tra regioni o account non possono appartenere a più di un portafoglio.

## Architecture
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-architecture"></a>

Il diagramma seguente mostra la copia dei prodotti AWS Service Catalog da un account di origine a un account di destinazione.

![\[Un ruolo tra account nella Regione 1, un ruolo di esecuzione Lambda e una funzione Lambda nella Regione 2.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/7ede5d17-89eb-4455-928f-6953d145ac9f/images/26738220-1ed2-4f84-911b-3c88e954b60e.png)


 Il diagramma seguente mostra la copia dei prodotti AWS Service Catalog da una regione di origine a una regione di destinazione.

![\[Prodotti copiati utilizzando la funzione scProductCopy Lambda nella Regione 2.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/7ede5d17-89eb-4455-928f-6953d145ac9f/images/0a936792-3bdc-45c2-ba05-17e828615061.png)


**Stack tecnologico**
+ Amazon CloudWatch
+ AWS Identity and Access Management (IAM)
+ AWS Lambda
+ AWS Service Catalog

**Automazione e scalabilità**

Puoi scalare l'approccio di questo modello utilizzando una funzione Lambda che può essere ridimensionata in base al numero di richieste ricevute o al numero di prodotti AWS Service Catalog da copiare. Per ulteriori informazioni su questo argomento, consulta la [scalabilità delle funzioni Lambda nella documentazione di AWS](https://docs.aws.amazon.com/lambda/latest/dg/invocation-scaling.html) Lambda.

## Tools (Strumenti)
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-tools"></a>
+ [AWS Command Line Interface (AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di elaborazione che ti aiuta a eseguire codice senza dover fornire o gestire server. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di calcolo che utilizzi.
+ [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) ti aiuta a gestire centralmente i cataloghi di servizi IT approvati per AWS. Gli utenti finali possono distribuire rapidamente soltanto i servizi IT approvati di cui hanno bisogno, in accordo con i vincoli stabiliti dall'organizzazione.

**Codice**

Puoi utilizzare il ` cross-account-copy` pacchetto (allegato) per copiare i prodotti AWS Service Catalog tra gli account o il `cross-region-copy` pacchetto (allegato) per copiare i prodotti tra le regioni.

Il `cross-account-copy` pacchetto contiene i seguenti file:
+ `copyconf.properties`— Il file di configurazione che contiene i parametri Region e AWS Account ID per copiare i prodotti tra gli account.
+ `scProductCopyLambda.py`— La funzione Python per copiare prodotti tra account.
+ `createDestAccountRole.sh`— Lo script per creare un ruolo IAM nell'account di destinazione.
+ `createSrcAccountRole.sh`— Lo script per creare un ruolo IAM nell'account di origine.
+ `copyProduct.sh`— Lo script per creare e richiamare la funzione Lambda per copiare i prodotti tra account.

Il `cross-region-copy` pacchetto contiene i seguenti file:
+ `copyconf.properties`— Il file di configurazione che contiene i parametri Region e ID dell'account AWS per copiare i prodotti tra le regioni.
+ `scProductCopyLambda.py`— La funzione Python per copiare prodotti tra regioni.
+ `copyProduct.sh`— Lo script per creare un ruolo IAM e creare e richiamare la funzione Lambda per copiare i prodotti tra le regioni.

## Epiche
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-epics"></a>

### Opzione 1: copia i prodotti AWS Service Catalog su più account
<a name="option-1-ndash-copy-aws-service-catalog-products-across-accounts"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Aggiorna il file di configurazione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 
| Configura le tue credenziali per AWS CLI nell'account di destinazione. | Configura le tue credenziali per accedere a AWS CLI nel tuo account di destinazione eseguendo `aws configure` il comando e fornendo i seguenti valori:<pre>$aws configure <br />AWS Access Key ID [None]: <your_access_key_id> <br />AWS Secret Access Key [None]: <your_secret_access_key> <br />Default region name [None]: Region<br />Default output format [None]:</pre>Per ulteriori informazioni su questo argomento, consulta le [nozioni di base sulla configurazione](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) nella documentazione dell'interfaccia a riga di comando AWS.  | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 
| Configura le tue credenziali per AWS CLI nell'account di origine. | Configura le tue credenziali per accedere alla CLI di AWS nel tuo account di origine eseguendo `aws configure` il comando e fornendo i seguenti valori: <pre>$aws configure<br />AWS Access Key ID [None]: <your_access_key_id><br />AWS Secret Access Key [None]: <your_secret_access_key><br />Default region name [None]: Region<br />Default output format [None]:</pre>Per ulteriori informazioni su questo argomento, consulta le [nozioni di base sulla configurazione](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) nella documentazione dell'interfaccia a riga di comando AWS.  | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 
| Crea un ruolo di esecuzione Lambda nel tuo account di destinazione. | Esegui lo `createDestAccountRole.sh ` script nell'account di destinazione. Lo script implementa le seguenti azioni:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 
| Crea il ruolo IAM tra account diversi nel tuo account di origine. | Esegui lo `createSrcAccountRole.sh ` script nel tuo account di origine. Lo script implementa le seguenti azioni:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 
| Esegui lo script CopyProduct nell'account di destinazione. | Esegui lo `copyProduct.sh ` script nell'account di destinazione. Lo script implementa le seguenti azioni:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 

### Opzione 2: copiare i prodotti AWS Service Catalog da una regione di origine a una regione di destinazione
<a name="option-2-ndash-copy-aws-service-catalog-products-from-a-source-region-to-a-destination-region"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Aggiorna il file di configurazione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Amministratore di sistema AWS, amministratore cloud, amministratore AWS | 
| Configura le tue credenziali per AWS CLI. | Configura le tue credenziali per accedere a AWS CLI nel tuo ambiente eseguendo `aws configure` il comando e fornendo i seguenti valori:<pre>$aws configure<br />AWS Access Key ID [None]: <your_access_key_id><br />AWS Secret Access Key [None]: <your_secret_access_key><br />Default region name [None]: Region<br />Default output format [None]:</pre>Per ulteriori informazioni su questo argomento, consulta le [nozioni di base sulla configurazione](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) nella documentazione dell'interfaccia a riga di comando AWS.  | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 
| Esegui lo script CopyProduct. | Esegui lo `copyProduct.sh` script nella regione di destinazione. Lo script implementa le seguenti azioni:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions.html) | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 

## Risorse correlate
<a name="copy-aws-service-catalog-products-across-different-aws-accounts-and-aws-regions-resources"></a>
+ [Creare un ruolo di esecuzione Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) (documentazione AWS Lambda)
+ [Creare una funzione Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-awscli.html) (documentazione AWS Lambda)
+ [Riferimento all'API AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/dg/API_Operations_AWS_Service_Catalog.html)
+ [Documentazione di AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html)

## Allegati
<a name="attachments-7ede5d17-89eb-4455-928f-6953d145ac9f"></a>

[Per accedere a contenuti aggiuntivi associati a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/7ede5d17-89eb-4455-928f-6953d145ac9f/attachments/attachment.zip)

# Crea una matrice RACI o RASCI per un modello operativo cloud
<a name="create-a-raci-or-rasci-matrix-for-a-cloud-operating-model"></a>

*Teddy Germade, Jerome Descreux, Florian Leroux e Josselin LE MINEUR, Amazon Web Services*

## Riepilogo
<a name="create-a-raci-or-rasci-matrix-for-a-cloud-operating-model-summary"></a>

Il Cloud Center of Excellence (CCoE) o CEE (Cloud Enablement Engine) è un team competente e responsabile che si concentra sulla preparazione operativa per il cloud. Il loro obiettivo principale è trasformare l'organizzazione IT delle informazioni da un modello operativo locale a un modello operativo cloud. L' CCoE dovrebbe essere un team interfunzionale che includa la rappresentanza dell'infrastruttura, delle applicazioni, delle operazioni e della sicurezza.

Uno dei componenti chiave di un modello operativo cloud è una matrice *RACI o una matrice* *RASCI*. Viene utilizzato per definire i ruoli e le responsabilità di tutte le parti coinvolte nelle attività di migrazione e nelle operazioni cloud. Il nome della matrice deriva dai tipi di responsabilità definiti nella matrice: responsabile (R), responsabile (A), supporto (S), consultato (C) e informato (I). Il tipo di supporto è facoltativo. Se la includi, viene chiamata *matrice RASCI* e se la escludi, viene chiamata matrice *RACI*.

Partendo dal modello allegato, il team CCo E può creare una matrice RACI o RASCI per l'organizzazione. Il modello contiene team, ruoli e attività comuni nei modelli operativi cloud. La base di questa matrice sono le attività relative all'integrazione delle operazioni e alle funzionalità CCo E. Tuttavia, è possibile personalizzare questo modello per soddisfare le esigenze della struttura e del caso d'uso dell'organizzazione.

Non ci sono limiti all'implementazione di una matrice RACI. Questo approccio funziona per le grandi organizzazioni, le start-up e tutto il resto. Per le piccole organizzazioni, la stessa risorsa può ricoprire diversi ruoli.

## Epiche
<a name="create-a-raci-or-rasci-matrix-for-a-cloud-operating-model-epics"></a>

### Crea la matrice
<a name="create-the-matrix"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Identifica le principali parti interessate. | Identifica i responsabili chiave dei servizi e dei team collegati agli obiettivi strategici del tuo modello operativo cloud. | Project manager | 
| Personalizza il modello di matrice. | Scaricate il modello nella sezione [Allegati](#attachments-b3df3d2c-c596-4736-bbaa-8edbcf335352), quindi aggiornate la matrice RACI o RASCI come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-a-raci-or-rasci-matrix-for-a-cloud-operating-model.html) | Project manager | 
| Pianifica le riunioni. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-a-raci-or-rasci-matrix-for-a-cloud-operating-model.html) | Project manager | 
| Completa la matrice. | Durante la riunione con tutte le parti interessate, procedi come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-a-raci-or-rasci-matrix-for-a-cloud-operating-model.html) | Project manager | 
| Condividi la matrice RASCI. | Quando la matrice RACI o RASCI è completa, fatela approvare dalla dirigenza. Salvalo in un archivio condiviso o in una posizione centrale in cui tutte le parti interessate possano accedervi. Si consiglia di utilizzare processi standard di controllo dei documenti per registrare e approvare le revisioni della matrice. | Project manager | 

## Risorse correlate
<a name="create-a-raci-or-rasci-matrix-for-a-cloud-operating-model-resources"></a>
+ [Modello di responsabilità condivisa AWS](https://aws.amazon.com/compliance/shared-responsibility-model/)

## Allegati
<a name="attachments-b3df3d2c-c596-4736-bbaa-8edbcf335352"></a>

[Per accedere a contenuti aggiuntivi associati a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/b3df3d2c-c596-4736-bbaa-8edbcf335352/attachments/attachment.zip)

# Crea allarmi per metriche personalizzate utilizzando il rilevamento delle anomalie di Amazon CloudWatch
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection"></a>

*Ram Kandaswamy e Raheem Jiwani, Amazon Web Services*

## Riepilogo
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection-summary"></a>

Sul cloud Amazon Web Services (AWS), puoi utilizzare Amazon CloudWatch per creare allarmi che monitorano i parametri e inviano notifiche o apportano automaticamente modifiche in caso di superamento di una soglia.

Per evitare di essere limitati da [soglie statiche](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html), puoi creare allarmi basati su modelli passati che ti avvisino se determinati parametri non rientrano nella normale finestra operativa. Ad esempio, puoi monitorare i tempi di risposta della tua API da Amazon API Gateway e ricevere notifiche sulle anomalie che ti impediscono di rispettare un accordo sul livello di servizio (SLA).

Questo modello descrive come utilizzare il rilevamento delle CloudWatch anomalie per metriche personalizzate. Il modello mostra come creare una metrica personalizzata in Amazon CloudWatch Logs Insights o pubblicare una metrica personalizzata con una funzione AWS Lambda, quindi configurare il rilevamento delle anomalie e creare notifiche utilizzando Amazon Simple Notification Service (Amazon SNS).

## Prerequisiti e limitazioni
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ Un argomento SNS esistente, configurato per inviare notifiche e-mail. Per ulteriori informazioni su questo argomento, consulta la sezione [Guida introduttiva ad Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html) nella documentazione di Amazon SNS.
+ [Un'applicazione esistente, configurata con CloudWatch Logs.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_GettingStarted.html)

**Limitazioni**
+ CloudWatch le metriche non supportano intervalli di tempo di millisecondi. [Per ulteriori informazioni sulla granularità delle metriche regolari e personalizzate, consulta Amazon. CloudWatch FAQs](https://aws.amazon.com/cloudwatch/faqs/)

## Architecture
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection-architecture"></a>

![\[CloudWatch utilizzando un argomento Amazon SNS per inviare una notifica e-mail quando viene avviato un allarme.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/d47e6f7f-e469-4cb9-b34b-8c4b78d71820/images/49f30340-9552-430a-893a-d0608bb09e38.png)


 Il diagramma mostra il flusso di lavoro seguente:

1. I log che utilizzano metriche create e aggiornate da CloudWatch Logs vengono trasmessi in streaming a. CloudWatch

1. Un allarme viene avviato in base a soglie e invia un avviso a un argomento SNS.

1. Amazon SNS ti invia una notifica via e-mail.

**Stack tecnologico**
+ CloudWatch
+ AWS Lambda
+ Amazon SNS

## Tools (Strumenti)
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection-tools"></a>
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) offre una soluzione di monitoraggio affidabile, scalabile e flessibile.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di elaborazione che ti aiuta a eseguire codice senza effettuare il provisioning o gestire server. 
+ [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) è un servizio gestito che fornisce il recapito dei messaggi dagli editori agli abbonati.

## Epiche
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection-epics"></a>

### Imposta il rilevamento delle anomalie per una metrica personalizzata
<a name="set-up-anomaly-detection-for-a-custom-metric"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Opzione 1: crea una metrica personalizzata con una funzione Lambda. | Scarica il `lambda_function.py` file (allegato) e sostituisci il `lambda_function.py` file di esempio nel [aws-lambda-developer-guide](https://github.com/awsdocs/aws-lambda-developer-guide/tree/main/sample-apps/blank-python/function)repository su AWS Documentation GitHub. Ciò fornisce una funzione Lambda di esempio che invia metriche personalizzate ai registri. CloudWatch La funzione Lambda utilizza l'API Boto3 per l'integrazione con. CloudWatch Dopo aver eseguito la funzione Lambda, puoi accedere alla Console di gestione AWS, aprire la CloudWatch console e la metrica pubblicata è disponibile nello spazio dei nomi pubblicato. | DevOps ingegnere, AWS DevOps | 
| Opzione 2: crea metriche personalizzate da gruppi di CloudWatch log.  | Accedi alla Console di gestione AWS, apri la CloudWatch console e scegli **Gruppi di log**. Scegli il gruppo di log per cui vuoi creare una metrica. Scegli **Azioni**, quindi scegli **Crea filtro metrico**. In **Schema di filtro**, inserisci il modello di filtro che desideri utilizzare. Per ulteriori informazioni, consultate [Filter and pattern syntax](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html) nella CloudWatch documentazione. Per testare il modello di filtro, inserisci uno o più eventi di registro in **Test Pattern**. Ogni log eventi deve essere all'interno di una riga, in quanto le interruzioni di riga vengono utilizzate per separare i log eventi nella casella **Log event messages (Messaggi di registro eventi)**. Dopo aver testato il pattern, puoi inserire un nome e un valore per la metrica in Dettagli **metrici**. Per ulteriori informazioni e passaggi per creare una metrica personalizzata, consulta [Creare un filtro metrico per un gruppo di log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CreateMetricFilterProcedure.html) nella documentazione. CloudWatch  | DevOps ingegnere, AWS DevOps | 
| Crea un allarme per la tua metrica personalizzata. | Sulla CloudWatch console, scegli **Allarmi**, quindi scegli **Crea** allarme. Scegli **Seleziona metrica** e inserisci il nome della metrica che hai creato in precedenza nella casella di ricerca. Scegli la scheda **Metriche grafiche** e configura le opzioni in base alle tue esigenze.**In **Condizioni**, scegli **Rilevamento delle anomalie anziché Soglie** statiche.** Questo mostra una banda basata su due deviazioni standard predefinite. È possibile impostare soglie e regolarle in base alle proprie esigenze.Scegli **Next (Successivo)**.La banda è dinamica e dipende dalla qualità dei punti dati. Quando inizi ad aggregare più dati, la banda e le soglie vengono aggiornate automaticamente.  | DevOps ingegnere, AWS DevOps | 
| Configura le notifiche SNS. | In **Notifica**, scegli l'argomento SNS per notificare quando l'allarme è in `ALARM` stato, `OK` stato o `INSUFFICIENT_DATA` stato.Per fare in modo che l'allarme invii più notifiche per lo stesso stato di allarme o per stati di allarme diversi, scegli **Add notification** (Aggiungi notifica). Scegli **Next (Successivo)**. Inserisci un nome e una descrizione per l'allarme. Il nome deve contenere solo caratteri ASCII. Quindi scegli **Successivo**.In **Anteprima e crea**, conferma che le informazioni e le condizioni siano corrette, quindi scegli **Crea allarme**. | DevOps ingegnere, AWS DevOps | 

## Risorse correlate
<a name="create-alarms-for-custom-metrics-using-amazon-cloudwatch-anomaly-detection-resources"></a>
+ [Pubblicazione di metriche personalizzate su CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html)
+ [Utilizzo del rilevamento CloudWatch delle anomalie](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html)
+ [Eventi di allarme e Amazon EventBridge](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch-and-eventbridge.html)
+ [Quali sono le migliori pratiche da seguire quando si inseriscono metriche personalizzate su Cloud Watch?](https://www.youtube.com/watch?v=mVffHIzIL60) (video)
+ [Introduzione a CloudWatch Application Insights](https://www.youtube.com/watch?v=PBO636_t9n0) (video)
+ [Rileva le anomalie con CloudWatch (video](https://www.youtube.com/watch?v=8umIX-pUy3k))

## Allegati
<a name="attachments-d47e6f7f-e469-4cb9-b34b-8c4b78d71820"></a>

[Per accedere al contenuto aggiuntivo associato a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/d47e6f7f-e469-4cb9-b34b-8c4b78d71820/attachments/attachment.zip)

# Crea un IDE AWS Cloud9 che utilizza volumi Amazon EBS con crittografia predefinita
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption"></a>

*Janardhan Malyala e Dhrubajyoti Mukherjee, Amazon Web Services*

## Riepilogo
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-summary"></a>

**Avviso**: non AWS Cloud9 è più disponibile per i nuovi clienti. I clienti esistenti di AWS Cloud9 possono continuare a utilizzare il servizio normalmente. [Ulteriori informazioni](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

Puoi utilizzare [la crittografia di default](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) per applicare la crittografia dei tuoi volumi Amazon Elastic Block Store (Amazon EBS) e delle copie degli snapshot sul cloud Amazon Web Services (AWS). 

Puoi creare un ambiente di sviluppo integrato (IDE) AWS Cloud9 che utilizza volumi EBS crittografati per impostazione predefinita. Tuttavia, il [ruolo collegato al servizio](https://docs.aws.amazon.com/cloud9/latest/user-guide/using-service-linked-roles.html) AWS Identity and Access Management (IAM) per AWS Cloud9 richiede l'accesso alla chiave AWS Key Management Service (AWS KMS) per questi volumi EBS. Se l'accesso non viene fornito, l'IDE AWS Cloud9 potrebbe non avviarsi e il debug potrebbe essere difficile. 

Questo modello fornisce i passaggi per aggiungere il ruolo collegato ai servizi per AWS Cloud9 alla chiave AWS KMS utilizzata dai volumi EBS. La configurazione descritta da questo modello ti aiuta a creare e avviare con successo un IDE che utilizza volumi EBS con crittografia per impostazione predefinita.

## Prerequisiti e limitazioni
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ La crittografia predefinita è attivata per i volumi EBS. Per ulteriori informazioni sulla crittografia predefinita, consulta la [crittografia Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) nella documentazione di Amazon Elastic Compute Cloud EC2 (Amazon).
+ Una [chiave KMS esistente gestita dal cliente](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per crittografare i volumi EBS.

**Nota**  
Non è necessario creare il ruolo collegato ai servizi per AWS Cloud9. Quando crei un ambiente di sviluppo AWS Cloud9, AWS Cloud9 crea il ruolo collegato al servizio per te.

## Architecture
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-architecture"></a>

![\[Utilizzo di un IDE AWS Cloud9 per imporre la crittografia di volumi e snapshot EBS.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/dd98fbb4-0949-4299-b701-bc857e13049c/images/6b22b8d1-75d9-4f06-b5d6-5fff7397f22d.png)


**Stack tecnologico**
+ AWS Cloud9
+ IAM
+ AWS KMS

## Tools (Strumenti)
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-tools"></a>
+ [AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/welcome.html) è un ambiente di sviluppo integrato (IDE) che ti aiuta a codificare, creare, eseguire, testare ed eseguire il debug del software. Ti aiuta anche a rilasciare software nel cloud AWS.
+ [Amazon Elastic Block Store (Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html)) fornisce volumi di storage a livello di blocco da utilizzare con istanze Amazon Elastic Compute Cloud (Amazon). EC2
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) ti aiuta a creare e controllare chiavi crittografiche per proteggere i tuoi dati.

## Epiche
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-epics"></a>

### Trova il valore della chiave di crittografia predefinita
<a name="find-the-default-encryption-key-value"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Registra il valore della chiave di crittografia predefinita per i volumi EBS.  | Accedi alla Console di gestione AWS e apri la EC2 console Amazon. Scegli **EC2 dashboard**, quindi scegli **Protezione e sicurezza dei dati** negli **attributi dell'account**. Nella sezione di **crittografia EBS**, copia e registra il valore nella **chiave di crittografia predefinita**. | Architetto del cloud, DevOps ingegnere | 

### Fornisci l'accesso alla chiave AWS KMS
<a name="provide-access-to-the-aws-kms-key"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Fornisci ad AWS Cloud9 l'accesso alla chiave KMS per i volumi EBS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption.html)Per ulteriori informazioni sull'aggiornamento di una policy chiave, consulta [How to change a key policy](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html#key-policy-modifying-how-to) (documentazione AWS KMS).Il ruolo collegato ai servizi per AWS Cloud9 viene creato automaticamente all'avvio del primo IDE. Per ulteriori informazioni, consulta [Creazione di un ruolo collegato ai servizi](https://docs.aws.amazon.com/cloud9/latest/user-guide/using-service-linked-roles.html#create-service-linked-role) nella documentazione di AWS Cloud9.  | Architetto del cloud, ingegnere DevOps  | 

### Crea e avvia l'IDE
<a name="create-and-launch-the-ide"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea e avvia l'IDE AWS Cloud9. | **Apri la console AWS Cloud9 e scegli Crea ambiente.** ****Configura l'IDE in base alle tue esigenze seguendo i passaggi descritti nella sezione [Creazione di un EC2 ambiente](https://docs.aws.amazon.com/cloud9/latest/user-guide/create-environment-main.html) nella documentazione di AWS Cloud9.  | Architetto del cloud, ingegnere DevOps  | 

## Risorse correlate
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-resources"></a>
+ [Crittografa i volumi EBS utilizzati da AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/move-environment.html#encrypting-volumes)
+ [Crea un ruolo collegato ai servizi per AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/using-service-linked-roles.html#create-service-linked-role)
+ [Crea un EC2 ambiente in AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/create-environment-main.html)

## Informazioni aggiuntive
<a name="create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption-additional"></a>

**Aggiornamenti delle policy chiave di AWS KMS**

Sostituisci `<aws_accountid>` con il tuo ID account AWS.

```
{
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::<aws_accountid>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow attachment of persistent resources",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::<aws_accountid>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
            },
            "Action": [
                "kms:CreateGrant",
                "kms:ListGrants",
                "kms:RevokeGrant"
            ],
            "Resource": "*",
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": "true"
                }
            }
        }
```

**Utilizzo di una chiave per più account**

Se desideri utilizzare una chiave KMS per più account, devi utilizzare una concessione in combinazione con la politica delle chiavi KMS. Ciò consente l'accesso alla chiave da più account. Nello stesso account che hai usato per creare l'ambiente Cloud9, esegui il seguente comando nel terminale.

```
aws kms create-grant \
 --region <Region where Cloud9 environment is created> \
 --key-id <The cross-account KMS key ARN> \
 --grantee-principal arn:aws:iam::<The account where Cloud9 environment is created>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9 \
 --operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"
```

Dopo aver eseguito questo comando, puoi creare ambienti Cloud9 utilizzando la crittografia EBS con una chiave in un account diverso.

# Crea CloudWatch dashboard Amazon basate su tag automaticamente
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically"></a>

*Janak Vadaria, Vinodkumar Mandalapu e RAJNEESH TYAGI, Amazon Web Services*

## Riepilogo
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-summary"></a>

La creazione manuale di diversi CloudWatch dashboard Amazon può richiedere molto tempo, in particolare quando devi creare e aggiornare più risorse per scalare automaticamente il tuo ambiente. Una soluzione che crea e aggiorna automaticamente le CloudWatch dashboard può farti risparmiare tempo. Questo modello ti aiuta a implementare una AWS Cloud Development Kit (AWS CDK) pipeline completamente automatizzata che crea e aggiorna i CloudWatch dashboard per AWS le tue risorse in base agli eventi di modifica dei tag, per visualizzare le metriche Golden Signals.

In Site Reliability Engineering (SRE), Golden Signals si riferisce a un set completo di metriche che offrono una visione ampia di un servizio dal punto di vista dell'utente o del consumatore. Queste metriche comprendono latenza, traffico, errori e saturazione. Per ulteriori informazioni, consulta [Cos'è il Site Reliability Engineering (](https://aws.amazon.com/what-is/sre/)SRE)? sul AWS sito Web.

La soluzione fornita da questo modello è basata sugli eventi. Dopo l'implementazione, monitora continuamente gli eventi di modifica dei tag e aggiorna automaticamente i dashboard e gli CloudWatch allarmi.

## Prerequisiti e limitazioni
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-prereqs"></a>

**Prerequisiti**
+ Un attivo Account AWS
+ AWS Command Line Interface (AWS CLI), [installato e configurato](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
+ [Prerequisiti](https://docs.aws.amazon.com/cdk/v2/guide/work-with.html#work-with-prerequisites) per la versione v2 AWS CDK 
+ Un ambiente con [bootstrap](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html) su AWS
+ [Python versione 3](https://www.python.org/downloads/)
+ [AWS SDK per Python (Boto3), installato](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)
+ [Node.js versione 18](https://nodejs.org/en/download/current) o successiva
+ Node package manager (npm), [installato e configurato](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) per AWS CDK
+ Familiarità moderata (livello 200) con e AWS CDK AWS CodePipeline

**Limitazioni**

Questa soluzione attualmente crea dashboard automatizzate solo per i seguenti servizi AWS:
+ [Amazon Relational Database Service (Amazon RDS)](https://aws.amazon.com/rds/)
+ [AWS Auto Scaling](https://aws.amazon.com/autoscaling/)
+ [Amazon Simple Notification Service (Amazon SNS)](https://aws.amazon.com/sns/)
+ [Amazon DynamoDB](https://aws.amazon.com/dynamodb/)
+ [AWS Lambda](https://aws.amazon.com/lambda/)

## Architecture
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-architecture"></a>

**Stack tecnologico Target**
+ [CloudWatch dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)
+ [CloudWatch allarmi](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)

**Architettura di destinazione**

![\[Architettura Target per la creazione di dashboard basate su tag CloudWatch\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/f234fe30-87db-446f-a291-d33928ca2ccb/images/f63ca697-f252-416d-8a1b-0239f38c10c5.png)


1. Un evento di modifica dei AWS tag dell'applicazione configurata o le modifiche al codice avvia una pipeline AWS CodePipeline per creare e distribuire dashboard aggiornati. CloudWatch 

1. AWS CodeBuild esegue uno script Python per trovare le risorse con tag configurati e memorizza la risorsa IDs in un file locale in un CodeBuild ambiente.

1. CodeBuild esegue **cdk synth** per generare CloudFormation modelli che implementano dashboard e allarmi. CloudWatch 

1. CodePipeline distribuisce i CloudFormation modelli nella regione e nella regione specificata. Account AWS 

1. Quando lo CloudFormation stack è stato distribuito correttamente, puoi visualizzare i CloudWatch dashboard e gli allarmi.

**Automazione e scalabilità**

Questa soluzione è stata automatizzata utilizzando il AWS CDK. Puoi trovare il codice nel CloudWatch repository GitHub [Golden Signals Dashboards su Amazon](https://github.com/aws-samples/golden-signals-dashboards-sample-app). Per una scalabilità aggiuntiva e per creare dashboard personalizzate, puoi configurare più chiavi e valori di tag.

## Tools (Strumenti)
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-tools"></a>

**Servizi Amazon**
+ [Amazon EventBridge](https://aws.amazon.com/eventbridge/) è un servizio di bus eventi senza server che ti aiuta a connettere le tue applicazioni con dati in tempo reale provenienti da una varietà di fonti, tra cui AWS Lambda funzioni, endpoint di invocazione HTTP che utilizzano destinazioni API o bus di eventi in altro modo. Account AWS
+ [AWS CodePipeline](https://aws.amazon.com/codepipeline/)ti aiuta a modellare e configurare rapidamente le diverse fasi di un rilascio del software e ad automatizzare i passaggi necessari per rilasciare continuamente le modifiche al software.
+ [AWS CodeBuild](https://aws.amazon.com/codebuild/)è un servizio di compilazione completamente gestito che consente di compilare codice sorgente, eseguire test unitari e produrre artefatti pronti per l'implementazione.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella shell della riga di comando.
+ [AWS Identity and Access Management (IAM)](https://aws.amazon.com/iam/) ti aiuta a gestire in modo sicuro l'accesso alle tue AWS risorse controllando chi è autenticato e autorizzato a utilizzarle.
+ [Amazon Simple Storage Service (Amazon S3)](https://aws.amazon.com/s3/) è un servizio di archiviazione degli oggetti basato sul cloud che consente di archiviare, proteggere e recuperare qualsiasi quantità di dati.

## Best practice
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-best-practices"></a>

Come best practice di sicurezza, puoi utilizzare la crittografia e l'autenticazione per gli archivi di origine che si connettono alle tue pipeline. Per ulteriori best practice, consulta le [CodePipeline best practice e i casi d'uso](https://docs.aws.amazon.com/codepipeline/latest/userguide/best-practices.html) nella CodePipeline documentazione.

## Epiche
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-epics"></a>

### Configura e distribuisci l'applicazione di esempio
<a name="configure-and-deploy-the-sample-application"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura e distribuisci l'applicazione di esempio. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-tag-based-amazon-cloudwatch-dashboards-automatically.html) | AWS DevOps | 
| Crea automaticamente dashboard e allarmi. | Dopo aver distribuito l'applicazione di esempio, puoi creare qualsiasi risorsa supportata da questa soluzione con i valori di tag previsti, che creeranno automaticamente i dashboard e gli allarmi specificati.Per testare questa soluzione, create una funzione: AWS Lambda [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-tag-based-amazon-cloudwatch-dashboards-automatically.html) | AWS DevOps | 

### Rimuovi l'applicazione di esempio
<a name="remove-the-sample-application"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Rimuovi il `golden-signals-dashboard` costrutto. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/create-tag-based-amazon-cloudwatch-dashboards-automatically.html) | AWS DevOps | 

## risoluzione dei problemi
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Comando Python non trovato (riferimento alla `findresources.sh` riga 8).  | Controlla la versione della tua installazione di Python. Se hai installato Python versione 3, sostituiscilo `python` con la `python3` riga 8 del `resources.sh` file ed esegui nuovamente il `sh deploy.sh` comando per distribuire la soluzione. | 

## Risorse correlate
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-resources"></a>
+ [Bootstrap](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html) (documentazione)AWS CDK 
+ [Utilizzo di profili denominati (documentazione](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-methods))AWS CLI 
+ [AWS CDK Workshop](https://cdkworkshop.com/)

## Informazioni aggiuntive
<a name="create-tag-based-amazon-cloudwatch-dashboards-automatically-additional"></a>

L'illustrazione seguente mostra un dashboard di esempio per Amazon RDS creato come parte di questa soluzione.

![\[Dashboard di esempio per Amazon RDS\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/f234fe30-87db-446f-a291-d33928ca2ccb/images/706a262f-8650-47ff-ac44-e04ce5f4023e.png)


# Documenta il progetto della tua landing zone AWS
<a name="document-your-aws-landing-zone-design"></a>

*Michael Daehnert, Florian Langer e Michael Lodemann, Amazon Web Services*

## Riepilogo
<a name="document-your-aws-landing-zone-design-summary"></a>

Una *landing zone* è un ambiente multi-account ben progettato, basato sulle migliori pratiche di sicurezza e conformità. È il contenitore a livello aziendale che contiene tutte le unità organizzative (OUs) Account AWS, gli utenti e le altre risorse. Una landing zone può essere scalata per soddisfare le esigenze di un'azienda di qualsiasi dimensione. AWS ha due opzioni per creare la tua landing zone: una landing zone basata sui servizi [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)o una landing zone personalizzata che crei tu. Ogni opzione richiede un diverso livello di conoscenza. AWS 

AWS creato AWS Control Tower per aiutarti a risparmiare tempo automatizzando la configurazione di una landing zone. AWS Control Tower è gestito AWS e utilizza le migliori pratiche e linee guida per aiutarti a creare il tuo ambiente di base. AWS Control Tower utilizza servizi integrati, come [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html)e [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html), per fornire account nella landing zone dell'utente e gestire l'accesso a tali account.

AWS i progetti di landing zone variano in termini di requisiti, dettagli di implementazione e azioni operative. Ci sono aspetti di personalizzazione che devono essere gestiti con ogni implementazione di landing zone. Ciò include (ma non è limitato a) il modo in cui viene gestita la gestione degli accessi, lo stack tecnologico utilizzato e quali sono i requisiti di monitoraggio per l'eccellenza operativa. Questo modello fornisce un modello che ti aiuta a documentare il tuo progetto di landing zone. Utilizzando il modello, puoi documentare il tuo progetto più rapidamente e aiutare i team di sviluppo e operativi a comprendere la tua landing zone.

## Prerequisiti e limitazioni
<a name="document-your-aws-landing-zone-design-prereqs"></a>

**Limitazioni**

Questo modello non descrive cos'è una landing zone o come implementarne una. Per ulteriori informazioni su questi argomenti, consulta la sezione [Risorse correlate](#document-your-aws-landing-zone-design-resources).

## Epiche
<a name="document-your-aws-landing-zone-design-epics"></a>

### Crea il documento di progettazione
<a name="create-the-design-document"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Identifica le principali parti interessate. | Identifica i responsabili chiave del servizio e del team collegati alla tua landing zone. | Project manager | 
| Personalizza il modello. | Scarica il modello nella sezione [Allegati](#attachments-9e39a05a-8f51-4fe3-8999-522feafed6ca), quindi aggiorna il modello come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/document-your-aws-landing-zone-design.html) | Project manager | 
| Completa il modello. | Nelle riunioni con le parti interessate o utilizzando un write-and-review processo, completa il modello come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/document-your-aws-landing-zone-design.html) | Project manager | 
| Condividi il documento di progettazione. | Quando la documentazione sulla progettazione della landing zone è completa, salvala in un archivio condiviso o in una posizione centrale in cui tutte le parti interessate possano accedervi. Si consiglia di utilizzare processi di controllo dei documenti standard per registrare e approvare le revisioni del documento di progettazione. | Project manager | 

## Risorse correlate
<a name="document-your-aws-landing-zone-design-resources"></a>
+ [AWS Control Tower documentazione](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)
  + [Pianifica la tua AWS Control Tower landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/planning-your-deployment.html)
  + [AWS strategia multi-account per la tua AWS Control Tower landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/aws-multi-account-landing-zone.html)
  + [Suggerimenti amministrativi per la configurazione delle landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/tips-for-admin-setup.html)
  + [Aspettative per la configurazione delle landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-configure.html)
+ [Personalizzazioni per AWS Control Tower](https://aws.amazon.com/solutions/implementations/customizations-for-aws-control-tower/) (AWS Solutions Library)
+ [Configurazione di un AWS ambiente multi-account sicuro e scalabile](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-aws-environment/welcome.html) (Prescriptive Guidance)AWS 

## Allegati
<a name="attachments-9e39a05a-8f51-4fe3-8999-522feafed6ca"></a>

[Per accedere al contenuto aggiuntivo associato a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/9e39a05a-8f51-4fe3-8999-522feafed6ca/attachments/attachment.zip)

# Migliora le prestazioni operative abilitando Amazon DevOps Guru su più regioni AWS, account e OUs con AWS CDK
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk"></a>

*Dott. Rahul Sharad Gaikwad, Amazon Web Services*

## Riepilogo
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk-summary"></a>

Questo modello illustra i passaggi per abilitare il servizio Amazon DevOps Guru su più regioni, account e unità organizzative di Amazon Web Services (AWS) (OUs) utilizzando l'AWS Cloud Development Kit (AWS CDK) in. TypeScript Puoi utilizzare AWS CDK stacks per distribuire AWS dall'account CloudFormation StackSets AWS amministratore (primario) per abilitare DevOps Amazon Guru su più account, invece di accedere a ciascun account e DevOps abilitare Guru singolarmente per ogni account.

Amazon DevOps Guru offre funzionalità operative di intelligenza artificiale (AIOps) per aiutarti a migliorare la disponibilità delle tue applicazioni e risolvere più rapidamente i problemi operativi. DevOps Guru riduce il lavoro manuale applicando consigli basati sull'apprendimento automatico (ML), senza richiedere alcuna esperienza di machine learning. DevOps Guru analizza le risorse e i dati operativi. Se rileva anomalie, fornisce metriche, eventi e consigli per aiutarti a risolvere il problema.

Questo modello descrive tre opzioni di distribuzione per abilitare Amazon DevOps Guru:
+ Per tutte le risorse, raggruppa le risorse su più account e regioni
+ Per tutte le risorse dello stack OUs
+ Per risorse stack specifiche su più account e regioni

## Prerequisiti e limitazioni
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ AWS Command Line Interface (AWS CLI), installata e configurata. (Vedi [Installazione, aggiornamento e disinstallazione dell'AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) nella documentazione dell'interfaccia a riga di comando di AWS.)
+ AWS CDK Toolkit, installato e configurato. (Vedi [AWS CDK Toolkit nella documentazione](https://docs.aws.amazon.com/cdk/latest/guide/cli.html) di AWS CDK.)
+ Node Package Manager (npm), installato e configurato per AWS CDK in. TypeScript (Vedi [Download e installazione di Node.js e npm nella documentazione di npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm).)
+ Python3 installato e configurato, per eseguire uno script Python per iniettare traffico nell'applicazione serverless di esempio. (Vedi [Configurazione e utilizzo di Python nella documentazione](https://docs.python.org/3/using/index.html) di Python.)
+ Pip, installato e configurato per installare la libreria di richieste Python. (Vedi le [istruzioni di installazione di pip sul sito](https://pypi.org/project/pip/) web.) PyPl 

**Versioni del prodotto**
+ AWS CDK Toolkit versione 1.107.0 o successiva
+ npm versione 7.9.0 o successiva
+ Node.js versione 15.3.0 o successiva

## Architecture
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk-architecture"></a>

**Tecnologie**

L'architettura di questo modello include i seguenti servizi:
+ [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/)
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [Gateway Amazon API](https://aws.amazon.com/api-gateway/)
+ [AWS Lambda](https://aws.amazon.com/lambda/)
+ [Amazon DynamoDB](https://aws.amazon.com/dynamodb/)
+ [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)

**Stack CDK AWS**

Il modello utilizza i seguenti stack AWS CDK: 
+ `CdkStackSetAdminRole`— Crea un ruolo di amministratore di AWS Identity and Access management (IAM) per stabilire una relazione di fiducia tra l'amministratore e gli account di destinazione.
+ `CdkStackSetExecRole`— Crea un ruolo IAM per fidarsi dell'account amministratore.
+ `CdkDevopsGuruStackMultiAccReg`— Abilita DevOps Guru su più regioni AWS e account per tutti gli stack e configura le notifiche Amazon Simple Notification Service (Amazon SNS).
+ `CdkDevopsGuruStackMultiAccRegSpecStacks`— Abilita DevOps Guru su più regioni AWS e account per stack specifici e configura le notifiche Amazon SNS.
+ `CdkDevopsguruStackOrgUnit`— Abilita DevOps Guru e OUs configura le notifiche Amazon SNS. 
+ `CdkInfrastructureStack`— Implementa componenti applicativi serverless di esempio come API Gateway, Lambda e DynamoDB nell'account amministratore per dimostrare l'iniezione di errori e la generazione di approfondimenti.

**Architettura applicativa di esempio**

Il diagramma seguente illustra l'architettura di un'applicazione serverless di esempio che è stata distribuita su più account e regioni. Il modello utilizza l'account amministratore per distribuire tutti gli stack CDK AWS. Inoltre, utilizza l'account amministratore come uno degli account di destinazione per la configurazione di Guru. DevOps 

1. Quando DevOps Guru è abilitato, prima definisce il comportamento di ogni risorsa e poi acquisisce i dati operativi dalle metriche fornite. CloudWatch 

1. Se rileva un'anomalia, la mette in correlazione con gli eventi generati e genera un'analisi approfondita. CloudTrail

1. L'analisi fornisce una sequenza di eventi correlata insieme a raccomandazioni prescritte per consentire all'operatore di identificare la risorsa responsabile.

1. Amazon SNS invia messaggi di notifica all'operatore.

![\[Un'applicazione serverless di esempio che è stata distribuita su più account e regioni.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/6075ca48-862a-4aa0-93c6-10bad8195a5c/images/beeb0992-aaa8-4f08-b983-685b6b8b8d5e.png)


**Automazione e scalabilità**

Il [GitHub repository](https://github.com/aws-samples/amazon-devopsguru-cdk-samples.git) fornito con questo modello utilizza AWS CDK come strumento Infrastructure as Code (IaC) per creare la configurazione per questa architettura. AWS CDK ti aiuta a orchestrare le risorse e abilitare DevOps Guru su più account AWS, regioni e. OUs

## Tools (Strumenti)
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk-tools"></a>

**Servizi AWS**
+ [AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/home.html) — AWS Cloud Development Kit (AWS CDK) ti aiuta a definire la tua infrastruttura cloud come codice in uno dei cinque linguaggi di programmazione supportati: TypeScript, JavaScript Python, Java e C\$1.
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) — AWS Command Line Interface (AWS CLI) è uno strumento unificato che fornisce un'interfaccia a riga di comando coerente per interagire con i servizi e le risorse AWS.

**Codice**

Il codice sorgente di questo pattern è disponibile nel GitHub repository [Amazon DevOps Guru CDK Samples](https://github.com/aws-samples/amazon-devopsguru-cdk-samples.git). Il codice CDK AWS è scritto in TypeScript. Per clonare e utilizzare il repository, segui le istruzioni nella sezione successiva.

**Importante**  
Alcune delle storie di questo modello includono esempi di comandi AWS CDK e AWS CLI formattati per Unix, Linux e macOS. Per Windows, sostituisci il carattere di continuazione della barra rovesciata (\$1) alla fine di ogni riga con un accento circonflesso (^).

## Epiche
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk-epics"></a>

### Prepara le risorse AWS per la distribuzione
<a name="prepare-the-aws-resources-for-deployment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura i profili denominati AWS. | Configura i tuoi profili denominati AWS come segue per distribuire gli stack in un ambiente con più account.Per l'account amministratore:<pre>$aws configure --profile administrator<br />AWS Access Key ID [****]: <your-administrator-access-key-ID><br />AWS Secret Access Key [****]: <your-administrator-secret-access-key><br />Default region name [None]: <your-administrator-region><br />Default output format [None]: json</pre>Per l'account di destinazione:<pre>$aws configure --profile target<br />AWS Access Key ID [****: <your-target-access-key-ID><br />AWS Secret Access Key [****]: <your-target-secret-access-key><br />Default region name [None]: <your-target-region><br />Default output format [None]: json</pre>Per ulteriori informazioni, consulta [Using named profiles](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-using-profiles) nella documentazione AWS CLI. | DevOps ingegnere | 
| Verifica le configurazioni dei profili AWS. | (Facoltativo) Puoi verificare le configurazioni del tuo profilo AWS nei `config` file `credentials` and seguendo le istruzioni in [Impostare e visualizzare le impostazioni di configurazione](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-methods) nella documentazione dell'interfaccia a riga di comando di AWS. | DevOps ingegnere | 
| Verifica la versione di AWS CDK. | Verifica la versione di AWS CDK Toolkit eseguendo il seguente comando:<pre>$cdk --version</pre>Questo modello richiede la versione 1.107.0 o successiva. Se disponi di una versione precedente di AWS CDK, segui le istruzioni nella [documentazione di AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/cli.html) per aggiornarla. | DevOps ingegnere | 
| Clona il codice del progetto. | Clona il GitHub repository per questo pattern usando il comando:<pre>$git clone https://github.com/aws-samples/amazon-devopsguru-cdk-samples.git</pre> | DevOps ingegnere | 
| Installa le dipendenze dei pacchetti e compila i TypeScript file. | Installa le dipendenze del pacchetto e compila TypeScript i file eseguendo i seguenti comandi:<pre>$cd amazon-devopsguru-cdk-samples<br />$npm install<br />$npm fund</pre>Questi comandi installano tutti i pacchetti dal repository di esempio.Se ricevi errori sui pacchetti mancanti, usa uno dei seguenti comandi:<pre>$npm ci</pre>oppure<pre>$npm install -g @aws-cdk/<package-name></pre>Puoi trovare l'elenco dei nomi e delle versioni dei pacchetti nella `Dependencies` sezione del `/amazon-devopsguru-cdk-samples/package.json` file. Per ulteriori informazioni, vedere [npm ci](https://docs.npmjs.com/cli/v7/commands/npm-ci) e [npm install nella documentazione](https://docs.npmjs.com/cli/v7/commands/npm-install) di npm. | DevOps ingegnere | 

### Crea (sintetizza) gli stack CDK AWS
<a name="build-synthesize-the-aws-cdk-stacks"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura un indirizzo e-mail per le notifiche di Amazon SNS. | Segui questi passaggi per fornire un indirizzo e-mail per le notifiche di Amazon SNS:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html) | DevOps ingegnere | 
| Costruisci il codice del progetto. | Crea il codice del progetto e sintetizza gli stack eseguendo il comando:<pre>npm run build && cdk synth </pre>Verrà visualizzato un output simile al seguente: <pre>$npm run build && cdk synth<br />> cdk-devopsguru@0.1.0 build<br />> tsc<br />Successfully synthesized to ~/amazon-devopsguru-cdk-samples/cdk.out<br />Supply a stack id (CdkDevopsGuruStackMultiAccReg,CdkDevopsGuruStackMultiAccRegSpecStacks, CdkDevopsguruStackOrgUnit, CdkInfrastructureStack, CdkStackSetAdminRole, CdkStackSetExecRole) to display its template.</pre>Per ulteriori informazioni e passaggi, consulta [La tua prima app AWS CDK nella documentazione](https://docs.aws.amazon.com/cdk/latest/guide/hello_world.html) di AWS CDK. | DevOps ingegnere | 
| Elenca gli stack CDK AWS. | Esegui il comando seguente per elencare tutti gli stack CDK AWS:<pre>$cdk list</pre>Il comando visualizza il seguente elenco:<pre>CdkDevopsGuruStackMultiAccReg<br />CdkDevopsGuruStackMultiAccRegSpecStacks<br />CdkDevopsguruStackOrgUnit<br />CdkInfrastructureStack<br />CdkStackSetAdminRole<br />CdkStackSetExecRole</pre> | DevOps ingegnere | 

### Opzione 1: abilita DevOps Guru per tutte le risorse dello stack su più account
<a name="option-1---enable-devops-guru-for-all-stack-resources-across-multiple-accounts"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Implementa gli stack CDK AWS per creare ruoli IAM. | Questo modello utilizza [AWS CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) per eseguire operazioni di stack su più account. Se stai creando il tuo primo set di stack, devi creare i seguenti ruoli IAM per ottenere le autorizzazioni richieste nei tuoi account AWS:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html)I ruoli devono avere questi nomi esatti.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html)Per ulteriori informazioni, consulta [Concedere autorizzazioni autogestite](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html) nella documentazione CloudFormation AWS. | DevOps ingegnere | 
| Implementa lo stack AWS CDK per abilitare DevOps Guru su più account. | Lo `CdkDevopsGuruStackMultiAccReg` stack CDK di AWS crea set di stack per distribuire istanze di stack su più account e regioni. Per distribuire lo stack, esegui il seguente comando CLI con i parametri specificati:<pre>$cdk deploy CdkDevopsGuruStackMultiAccReg \<br />  --profile administrator \<br />  --parameters AdministratorAccountId=<administrator-account-ID> \<br />  --parameters TargetAccountId=<target-account-ID> \<br />  --parameters RegionIds="<region-1>,<region-2>"</pre>Attualmente Amazon DevOps Guru è disponibile nelle regioni AWS elencate nelle domande frequenti su [DevOps Guru](https://aws.amazon.com/devops-guru/faqs/). | DevOps ingegnere | 

### Opzione 2: abilita DevOps Guru per tutte le risorse dello stack OUs
<a name="option-2---enable-devops-guru-for-all-stack-resources-across-ous"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Estrarre OU IDs. | Sulla console [AWS Organizations](https://console.aws.amazon.com/organizations/v2/home/accounts), identifica IDs le unità organizzative in cui desideri abilitare DevOps Guru. | DevOps ingegnere | 
| Abilita le autorizzazioni gestite dal servizio per. OUs | Se utilizzi AWS Organizations per la gestione degli account, devi concedere le autorizzazioni gestite dal servizio per abilitare Guru. DevOps Invece di creare i ruoli IAM manualmente, utilizza ruoli di [accesso affidabile e collegati ai servizi basati sull'organizzazione](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-enable-trusted-access.html) (). SLRs | DevOps ingegnere | 
| Implementa lo stack AWS CDK per abilitare DevOps Guru Across. OUs | Lo `CdkDevopsguruStackOrgUnit` stack CDK AWS abilita il servizio DevOps Guru in tutto il mondo. OUs Per distribuire lo stack, esegui il seguente comando con i parametri specificati:<pre>$cdk deploy CdkDevopsguruStackOrgUnit \<br />  --profile administrator \ <br />  --parameters RegionIds="<region-1>,<region-2>" \<br />  --parameters OrganizationalUnitIds="<OU-1>,<OU-2>"</pre> | DevOps ingegnere | 

### Opzione 3: abilita DevOps Guru per risorse stack specifiche su più account
<a name="option-3---enable-devops-guru-for-specific-stack-resources-across-multiple-accounts"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Implementa gli stack CDK AWS per creare ruoli IAM. | Se non hai ancora creato i ruoli IAM richiesti mostrati nella prima opzione, fallo prima:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html)Per ulteriori informazioni, consulta [Concedere autorizzazioni autogestite](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html) nella documentazione CloudFormation AWS. | DevOps ingegnere | 
| Elimina le pile esistenti. | Se hai già utilizzato la prima opzione per abilitare DevOps Guru per tutte le risorse dello stack, puoi eliminare il vecchio stack usando il seguente comando:<pre>$cdk destroy CdkDevopsGuruStackMultiAccReg --profile administrator </pre>*In alternativa, puoi modificare il ` RegionIds` parametro quando ridistribuisci lo stack per evitare che si verifichi un errore Stacks already exist.* | DevOps ingegnere | 
| Aggiorna lo stack CDK AWS con un elenco di stack.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html) | Ingegnere dei dati | 
| Implementa lo stack AWS CDK per abilitare DevOps Guru per risorse stack specifiche su più account. | Lo `CdkDevopsGuruStackMultiAccRegSpecStacks` stack AWS CDK consente a DevOps Guru di utilizzare risorse stack specifiche su più account. Per distribuire lo stack, esegui il seguente comando:<pre>$cdk deploy CdkDevopsGuruStackMultiAccRegSpecStacks \<br />  --profile administrator  \<br />  --parameters AdministratorAccountId=<administrator-account-ID> \<br />  --parameters TargetAccountId=<target-account-ID> \<br />  --parameters RegionIds="<region-1>,<region-2>"</pre>Se in precedenza hai distribuito questo stack per l'opzione 1, modifica il `RegionIds` parametro (assicurandoti di scegliere tra le [regioni disponibili](https://aws.amazon.com/devops-guru/faqs/)) per evitare che si verifichi un errore *Stacks* already exist. | DevOps ingegnere | 

### Implementa lo stack di infrastruttura AWS CDK
<a name="deploy-the-aws-cdk-infrastructure-stack"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Implementa lo stack di infrastruttura serverless di esempio. | Lo `CdkInfrastructureStack` stack CDK di AWS implementa componenti serverless come API Gateway, Lambda e una tabella DynamoDB per illustrare le intuizioni di Guru. DevOps Per distribuire lo stack, esegui il seguente comando: <pre>$cdk deploy CdkInfrastructureStack --profile administrator</pre> | DevOps ingegnere | 
| Inserisci record di esempio in DynamoDB. | Esegui il comando seguente per popolare la tabella DynamoDB con record di esempio. Fornisci il percorso corretto per lo script. `populate-shops-dynamodb-table.json`<pre>$aws dynamodb batch-write-item \<br />  --request-items file://scripts/populate-shops-dynamodb-table.json \<br />  --profile administrator</pre>Il comando visualizza il seguente output:<pre>{<br />    "UnprocessedItems": {}<br />}</pre> | DevOps ingegnere | 
| Verifica i record inseriti in DynamoDB. | Per verificare che la tabella DynamoDB includa i record di esempio `populate-shops-dynamodb-table.json` del file, accedi all'URL `ListRestApiEndpointMonitorOperator` dell'API, che viene pubblicato come output dello stack CDK AWS. Puoi trovare questo URL anche nella scheda **Outputs** della CloudFormation console AWS per lo `CdkInfrastructureStack` stack. L'output di AWS CDK sarebbe simile al seguente:<pre>CdkInfrastructureStack.CreateRestApiMonitorOperatorEndpointD1D00045 = https://oure17c5vob.execute-api.<your-region>.amazonaws.com/prod/<br /><br />CdkInfrastructureStack.ListRestApiMonitorOperatorEndpointABBDB8D8 = https://cdff8icfrn4.execute-api.<your-region>.amazonaws.com/prod/</pre> | DevOps ingegnere | 
| Attendi che le risorse completino la linea di base. | Questo stack serverless ha poche risorse. Ti consigliamo di attendere 2 ore prima di eseguire i passaggi successivi. Se hai distribuito questo stack in un ambiente di produzione, potrebbero essere necessarie fino a 24 ore per completare la baseline, a seconda del numero di risorse che hai selezionato per il monitoraggio in Guru. DevOps  | DevOps ingegnere | 

### Genera DevOps approfondimenti su Guru
<a name="generate-devops-guru-insights"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Aggiorna lo stack di infrastruttura AWS CDK. | Per provare DevOps Guru Insights, puoi apportare alcune modifiche alla configurazione per riprodurre un tipico problema operativo.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html) | DevOps ingegnere | 
| Inietta richieste HTTP sull'API. | Inietta il traffico in ingresso sotto forma di richieste HTTP sull'API: `ListRestApiMonitorOperatorEndpointxxxx`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk.html) | DevOps ingegnere | 
| Rivedi le informazioni su DevOps Guru. | In condizioni standard, la dashboard di DevOps Guru mostra zero nel contatore delle informazioni in corso. Se rileva un'anomalia, genera un avviso sotto forma di intuizione. Nel riquadro di navigazione, scegli **Insights** per visualizzare i dettagli dell'anomalia, tra cui una panoramica, metriche aggregate, eventi pertinenti e consigli. Per ulteriori informazioni sulla revisione degli approfondimenti, consulta il post [del blog Gaining operating insights with AIOps Amazon DevOps Guru](https://aws.amazon.com/blogs/devops/gaining-operational-insights-with-aiops-using-amazon-devops-guru/). | DevOps ingegnere | 

### Eliminazione
<a name="clean-up"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Pulisci ed elimina le risorse. | Dopo aver seguito questo schema, dovresti rimuovere le risorse che hai creato per evitare di incorrere in ulteriori addebiti. Esegui questi comandi:<pre>$cdk destroy CdkDevopsGuruStackMultiAccReg --profile administrator<br />$cdk destroy CdkDevopsguruStackOrgUnit --profile administrator<br />$cdk destroy CdkDevopsGuruStackMultiAccRegSpecStacks --profile administrator<br />$cdk destroy CdkInfrastructureStack --profile administrator<br />$cdk destroy CdkStackSetAdminRole --profile administrator<br />$cdk destroy CdkStackSetExecRole --profile administrator<br />$cdk destroy CdkStackSetExecRole --profile target</pre> | DevOps ingegnere | 

## Risorse correlate
<a name="improve-operational-performance-by-enabling-amazon-devops-guru-across-multiple-aws-regions-accounts-and-ous-with-the-aws-cdk-resources"></a>
+ [Ottenere informazioni operative AIOps con Amazon DevOps Guru](https://aws.amazon.com/blogs/devops/gaining-operational-insights-with-aiops-using-amazon-devops-guru/)
+ [Configura facilmente Amazon DevOps Guru su più account e regioni utilizzando AWS CloudFormation StackSets](https://aws.amazon.com/blogs/devops/configure-devops-guru-multiple-accounts-regions-using-cfn-stacksets/)
+ [DevOps Workshop per guru](https://aiops-using-devops-guru.workshop.aws/)

# Gestisci i set di autorizzazioni per più account utilizzando Account Factory for Terraform
<a name="govern-permission-sets-aft"></a>

*Anand Krishna Varanasi e Siamak Heshmati, Amazon Web Services*

## Riepilogo
<a name="govern-permission-sets-aft-summary"></a>

Questo modello ti aiuta a integrare [AWS Control Tower Account Factory Terraform (AFT)](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) con [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)per configurare autorizzazioni multiple Account AWS su larga scala. Questo approccio utilizza AWS Lambda funzioni personalizzate per automatizzare l'assegnazione dei [set di autorizzazioni](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html) ai Account AWS quali vengono gestiti come organizzazione. Questo semplifica il processo perché non richiede l'intervento manuale del team di progettazione della piattaforma. Questa soluzione può migliorare l'efficienza operativa, la sicurezza e la coerenza. Promuove un processo di onboarding sicuro e standardizzato per AWS Control Tower, rendendolo indispensabile per le aziende che danno priorità all'agilità e all'affidabilità della propria infrastruttura cloud.

## Prerequisiti e limitazioni
<a name="govern-permission-sets-aft-prereqs"></a>

**Prerequisiti**
+ Account AWS, gestito tramite. AWS Control Tower Per ulteriori informazioni, vedi [Guida introduttiva AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-with-control-tower.html).
+ Account Factory for Terraform, distribuito in un account dedicato nel tuo ambiente. Per ulteriori informazioni, consulta [Deploy AWS Control Tower Account Factory for Terraform](https://docs.aws.amazon.com/controltower/latest/userguide/aft-getting-started.html).
+ Un'istanza IAM Identity Center, configurata nel tuo ambiente. Per ulteriori informazioni, consulta [Guida introduttiva a IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/getting-started.html).
+ Un [gruppo](https://docs.aws.amazon.com/singlesignon/latest/userguide/users-groups-provisioning.html#groups-concept) IAM Identity Center attivo, configurato.  Per ulteriori informazioni, consulta [Aggiungere gruppi al tuo IAM Identity Center directory](https://docs.aws.amazon.com/singlesignon/latest/userguide/addgroups.html).
+ Python versione 3.9 o successiva, installata

**Limitazioni**
+ Questa soluzione può essere utilizzata solo con account gestiti tramite. AWS Control Tower Questa soluzione viene implementata utilizzando Account Factory for Terraform.
+ Questo modello non include istruzioni per configurare la federazione delle identità con una fonte di identità. Per ulteriori informazioni su come completare questa configurazione, consulta i [tutorial sulle fonti di identità di IAM Identity Center nella documentazione](https://docs.aws.amazon.com/singlesignon/latest/userguide/tutorials.html) di IAM Identity Center.

## Architecture
<a name="govern-permission-sets-aft-architecture"></a>

**Panoramica di AFT**

AFT imposta una pipeline Terraform che ti aiuta a fornire e personalizzare i tuoi account. AWS Control Tower AFT segue un GitOps modello che automatizza i processi di fornitura degli account in. AWS Control Tower Si crea un file *Terraform per la richiesta di account e lo si archivia* nel repository. Questo avvia il flusso di lavoro AFT per il provisioning degli account. Una volta completato il provisioning dell'account, AFT può eseguire automaticamente passaggi di personalizzazione aggiuntivi. Per ulteriori informazioni, consultate l'[architettura AFT](https://docs.aws.amazon.com/controltower/latest/userguide/aft-architecture.html) nella AWS Control Tower documentazione.

AFT fornisce i seguenti repository principali:
+ `aft-account-request`— Questo repository contiene codice Terraform da creare o aggiornare. Account AWS
+ `aft-account-customizations`- Questo repository contiene codice Terraform per creare o personalizzare risorse per account.
+ `aft-global-customizations`— Questo repository contiene codice Terraform per creare o personalizzare risorse per tutti gli account, su larga scala.
+ `aft-account-provisioning-customizations`- Questo repository gestisce le personalizzazioni che vengono applicate solo a account specifici creati e gestiti con AFT. Ad esempio, è possibile utilizzare questo repository per personalizzare le assegnazioni di utenti o gruppi in IAM Identity Center o per automatizzare la chiusura degli account.

**Panoramica della soluzione**

Questa soluzione personalizzata include una macchina a AWS Step Functions stati e una AWS Lambda funzione che assegna set di autorizzazioni a utenti e gruppi per più account. La macchina a stati distribuita tramite questo modello funziona insieme alla macchina a stati AFT preesistente. `aft_account_provisioning_customizations` Un utente invia una richiesta per aggiornare le assegnazioni di utenti e gruppi di IAM Identity Center quando ne Account AWS viene creata una nuova o dopo la creazione dell'account. Lo fanno inserendo una modifica nel repository. `aft-account-request` La richiesta di creazione o aggiornamento di un account avvia uno stream in [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.html) Streams. Questo avvia la funzione Lambda, che aggiorna gli utenti e i gruppi di IAM Identity Center per la destinazione. Account AWS

Di seguito è riportato un esempio dei parametri che è possibile fornire nella funzione Lambda per l'assegnazione di set di autorizzazioni a utenti e gruppi target:

```
custom_fields = {
    "InstanceArn"         = "<Organization ID>",
    "PermissionSetArn"    = "<Permission set ARN>",
    "PrincipalId"         = "<Principal ID>",
  }
```

Di seguito sono riportati i parametri di questa dichiarazione:
+ `InstanceArn`— L'Amazon Resource Name (ARN) dell'organizzazione
+ `PermissionSetArn`— L'ARN del set di autorizzazioni
+ `PrincipalId`— L'identificatore di un utente o di un gruppo in IAM Identity Center a cui verrà applicato il set di autorizzazioni

**Nota**  
È necessario creare il set di autorizzazioni di destinazione, gli utenti e i gruppi prima di eseguire questa soluzione.

Sebbene il `InstanceArn` valore debba rimanere coerente, è possibile modificare la funzione Lambda per assegnare più set di autorizzazioni a più identità di destinazione. I parametri per i set di autorizzazioni devono terminare con e i parametri per utenti e gruppi devono terminare con. `PermissionSetArn` `PrincipalId` È necessario definire entrambi gli attributi. Di seguito è riportato un esempio di come definire più set di autorizzazioni e indirizzare utenti e gruppi:

```
custom_fields = {
    "InstanceArn"                    = "<Organization ID>",
    "AdminAccessPermissionSetArn"    = "<Admin privileges permission set ARN>",
    "AdminAccessPrincipalId"         = "<Admin principal ID>",
    "ReadOnlyAccessPermissionSetArn" = "<Read-only privileges permission set ARN>",
    "ReadOnlyAccessPrincipalId"      = "<Read-only principal ID>",
  }
```

Il diagramma seguente mostra un step-by-step flusso di lavoro che illustra come la soluzione aggiorna i set di autorizzazioni per utenti e gruppi nella destinazione Account AWS su larga scala. Quando l'utente avvia una richiesta di creazione di account, AFT avvia la macchina a stati `aft-account-provisioning-framework` Step Functions. Questa macchina a stati avvia la funzione `extract-alternate-sso` Lambda. La funzione Lambda assegna set di autorizzazioni a utenti e gruppi nella destinazione. Account AWS Questi utenti o gruppi possono provenire da qualsiasi fonte di identità configurata in IAM Identity Center. Esempi di fonti di identità includono Okta, Active Directory o Ping Identity.

![\[Flusso di lavoro di aggiornamento dei set di autorizzazioni quando un account viene creato o aggiornato.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/14751255-3781-48db-a6b7-1a03e28c1020/images/d1de252d-8ac9-4f7d-a559-4ab3e852f325.png)


Il diagramma mostra il seguente flusso di lavoro quando vengono creati nuovi account:

1. Un utente inserisce una `custom_fields` modifica nel `aft-account-request` repository.

1. AWS CodePipeline avvia un AWS CodeBuild processo che registra i metadati definiti dall'utente nella tabella Amazon `aft-request-audit` DynamoDB. Questa tabella contiene attributi per registrare i metadati definiti dall'utente. L'`ddb_event_name`attributo definisce il tipo di operazione AFT:
   + Se il valore è`INSERT`, la soluzione assegna le autorizzazioni impostate alle identità di destinazione al momento della creazione della nuova Account AWS .
   + Se il valore è`UPDATE`, la soluzione assegna le autorizzazioni impostate alle identità di destinazione dopo la creazione di. Account AWS 

1. Amazon DynamoDB Streams avvia `aft_alternate_sso_extract` la funzione Lambda.

1. La funzione `aft_alternate_sso_extract` Lambda assume un ruolo AWS Identity and Access Management (IAM) nell'account di gestione. AWS Control Tower 

1. La funzione Lambda assegna i set di autorizzazioni agli utenti e ai gruppi di destinazione effettuando una chiamata API AWS SDK per Python (Boto3) [create\$1account\$1assignment](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sso-admin/client/create_account_assignment.html) a IAM Identity Center. Recupera il set di autorizzazioni e le assegnazioni di identità dalla tabella Amazon `aft-request-audit` DynamoDB.

1. Al termine del flusso di lavoro Step Functions, i set di autorizzazioni vengono assegnati alle identità di destinazione.

**Automazione e scalabilità**

AFT opera su larga scala utilizzando CodePipeline, Servizi AWS ad esempio AWS CodeBuild, DynamoDB e Lambda, che sono altamente scalabili. Per un'ulteriore automazione, puoi integrare questa soluzione con un sistema di gestione dei ticket o dei problemi, come Jira. Per ulteriori informazioni, consulta la sezione [Informazioni aggiuntive](#govern-permission-sets-aft-additional) di questo modello.

## Tools (Strumenti)
<a name="govern-permission-sets-aft-tools"></a>

**Servizi AWS**
+ [Account Factory for Terraform (AFT)](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) è lo strumento principale di questa soluzione. Il `aft-account-provisioning-customizations` repository contiene il codice Terraform per la creazione di personalizzazioni per Account AWS, ad esempio assegnazioni personalizzate di utenti o gruppi di IAM Identity Center.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) è un servizio di database NoSQL interamente gestito che offre prestazioni elevate, prevedibili e scalabili.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di calcolo che consente di eseguire il codice senza gestire i server o effettuarne il provisioning. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di elaborazione che utilizzi.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html)è un servizio di orchestrazione senza server che consente di combinare AWS Lambda funzioni e altro Servizi AWS per creare applicazioni aziendali critiche.

**Altri strumenti**
+ [Python](https://www.python.org/) è un linguaggio di programmazione per computer generico.
+ [Terraform](https://www.terraform.io/) è uno strumento Infrastructure as Code (IaC) HashiCorp che ti aiuta a creare e gestire risorse cloud e locali.

**Archivio di codici**

Il repository di codice per AFT è disponibile nel repository GitHub [AWS Control Tower Account Factory for Terraform](https://github.com/aws-ia/terraform-aws-control_tower_account_factory). Il codice per questo pattern è disponibile nel [Govern SSO Assignments per l'utilizzo del Account AWS repository Account Factory for Terraform (](https://github.com/aws-samples/aft-custom-sso-assignment)AFT).

## Best practice
<a name="govern-permission-sets-aft-best-practices"></a>
+ [Comprendi il modello di responsabilità condivisa.AWS](https://aws.amazon.com/compliance/shared-responsibility-model/)
+ Segui le raccomandazioni di sicurezza per AWS Control Tower. Per ulteriori informazioni, consulta [Sicurezza in AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/security.html).
+ Segui il principio del privilegio minimo. Per ulteriori informazioni, consulta [Applicazione delle autorizzazioni del privilegio minimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege).
+ Crea set di autorizzazioni e ruoli IAM specifici e mirati per gruppi e unità aziendali.

## Epiche
<a name="govern-permission-sets-aft-epics"></a>

### Implementazione della soluzione
<a name="deploy-the-solution"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un ruolo IAM. | Nell'account di AWS Control Tower gestione, usa Terraform per creare un ruolo IAM. Questo ruolo ha un accesso tra account e una politica di fiducia che consente l'accesso federato dal provider di identità. Dispone inoltre delle autorizzazioni per concedere l'accesso ad altri account tramite. AWS Control Tower La funzione Lambda assumerà questo ruolo. Esegui questa operazione:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/govern-permission-sets-aft.html) | AWS DevOps, architetto del cloud | 
| Personalizza la soluzione per il tuo ambiente. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/govern-permission-sets-aft.html) | AWS DevOps, architetto del cloud | 
| Distribuire la soluzione. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/govern-permission-sets-aft.html) | AWS DevOps, architetto del cloud | 
| Configura una connessione al repository di codice. | Configura una connessione tra il repository di codice in cui archivierai i file di configurazione e il tuo. Account AWS Per istruzioni, consulta la sezione [Aggiungere fornitori di sorgenti di terze parti alle pipeline utilizzate CodeConnections](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-connections.html) nella AWS CodePipeline documentazione. | AWS DevOps, architetto del cloud | 

### Usa la soluzione
<a name="use-the-solution"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Avvia la pipeline AFT per distribuire un nuovo account. | Segui le istruzioni riportate in [Fornire un nuovo account con AFT](https://docs.aws.amazon.com/controltower/latest/userguide/aft-provision-account.html) per avviare la pipeline che ne crea uno nuovo Account AWS nel tuo ambiente. AWS Control Tower Attendi il completamento del processo di creazione dell'account. | AWS DevOps, architetto del cloud | 
| Convalida le modifiche. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/govern-permission-sets-aft.html) | AWS DevOps, architetto del cloud | 

## risoluzione dei problemi
<a name="govern-permission-sets-aft-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| L'assegnazione del set di autorizzazioni non funziona. | Assicurati che l'ARN del gruppo, l'id dell'organizzazione e i parametri Lambda siano corretti. Per esempi, consulta la sezione *Panoramica della soluzione* di questo modello. | 
| L'aggiornamento del codice nel repository non avvia la pipeline. | Questo problema è correlato alla connettività tra l'utente Account AWS e il repository. Nel Console di gestione AWS, verifica che la connessione sia attiva. Per ulteriori informazioni, consulta [GitHub le connessioni](https://docs.aws.amazon.com/codepipeline/latest/userguide/connections-github.html) nella AWS CodePipeline documentazione. | 

## Informazioni aggiuntive
<a name="govern-permission-sets-aft-additional"></a>

**Integrazione con uno strumento di gestione dei ticket**

Puoi scegliere di integrare questa soluzione con uno strumento di gestione dei ticket o dei problemi, come Jira o. ServiceNow Il diagramma seguente mostra un esempio di flusso di lavoro per questa opzione. È possibile integrare lo strumento di gestione dei ticket con gli archivi delle soluzioni AFT utilizzando i connettori dello strumento. Per i connettori Jira, consulta [Integrare Jira](https://support.atlassian.com/jira-cloud-administration/docs/integrate-jira-software-with-github/) con. GitHub Per i ServiceNow connettori, vedi [Integrazione con](https://www.servicenow.com/docs/bundle/washingtondc-it-asset-management/page/product/software-asset-management2/concept/integrate-with-github.html). GitHub Puoi persino creare soluzioni personalizzate che richiedono agli utenti di fornire un ID del ticket come parte dell'approvazione della pull request. Se viene approvata una richiesta per crearne una nuova Account AWS utilizzando AFT, quell'evento potrebbe avviare un flusso di lavoro che aggiunge campi personalizzati al `aft-account-request` GitHub repository. Puoi progettare qualsiasi flusso di lavoro personalizzato che soddisfi i requisiti del tuo caso d'uso.

![\[Flusso di lavoro che utilizza GitHub Actions e uno strumento di gestione dei ticket.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/14751255-3781-48db-a6b7-1a03e28c1020/images/83763f65-32ea-4de0-932f-14a1b2d1d3ad.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Gli utenti richiedono l'assegnazione di un set di autorizzazioni personalizzato in uno strumento di gestione dei ticket, come Jira.

1. Dopo l'approvazione del caso, inizia un flusso di lavoro per aggiornare l'assegnazione del set di autorizzazioni. (Facoltativo) È possibile utilizzare i plugin per l'automazione personalizzata di questo passaggio.

1. Gli operatori inviano il codice Terraform con i parametri aggiornati del set di autorizzazioni al `aft-account-request` repository in un ramo di sviluppo o di funzionalità.

1. GitHub Le azioni vengono AWS CodeBuild avviate utilizzando una chiamata OpenID Connect (OIDC). CodeBuild [https://aquasecurity.github.io/tfsec/v1.20.0/](https://aquasecurity.github.io/tfsec/v1.20.0/) Avvisa gli operatori di eventuali violazioni della sicurezza.

1. Se non viene rilevata alcuna violazione, GitHub Actions crea una pull request automatica e assegna una revisione del codice ai proprietari del codice. Crea anche un tag per la pull request.

1. Se il proprietario del codice approva la revisione del codice, viene avviato un altro flusso di lavoro GitHub Actions. Controlla gli standard delle pull request, tra cui:
   + Se il titolo della pull request soddisfa i requisiti.
   + Se il corpo della pull request contiene numeri di casi approvati.
   + Se la pull request è etichettata correttamente.

1. Se le pull request soddisfano gli standard, GitHub Actions avvia il flusso di lavoro del prodotto AFT. Utilizza avvia la `ct-aft-account-request` pipeline in AWS CodePipeline. Questa pipeline avvia la macchina a stati `aft-account-provisioning-framework` personalizzata in Step Functions. Questa macchina a stati funziona come descritto in precedenza nella sezione *Panoramica della soluzione* di questo modello.

# Implementa Account Factory for Terraform (AFT) utilizzando una pipeline bootstrap
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline"></a>

*Vinicius Elias e Edgar Costa Filho, Amazon Web Services*

## Riepilogo
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-summary"></a>

Questo modello fornisce un metodo semplice e sicuro per implementare AWS Control Tower Account Factory for Terraform (AFT) dall'account di gestione di. AWS Organizations Il cuore della soluzione è un CloudFormation modello che automatizza la configurazione AFT creando una pipeline Terraform, strutturata per essere facilmente adattabile per la distribuzione iniziale o gli aggiornamenti successivi.

La sicurezza e l'integrità dei dati sono priorità assolute AWS, quindi il file di stato di Terraform, che è un componente fondamentale che tiene traccia dello stato dell'infrastruttura e delle configurazioni gestite, viene archiviato in modo sicuro in un bucket Amazon Simple Storage Service (Amazon S3). Questo bucket è configurato con diverse misure di sicurezza, tra cui la crittografia lato server e politiche per bloccare l'accesso pubblico, per garantire che lo stato di Terraform sia protetto da accessi non autorizzati e violazioni dei dati.

L'account di gestione orchestra e supervisiona l'intero ambiente, quindi è una risorsa fondamentale in. AWS Control Tower Questo modello segue le AWS migliori pratiche e garantisce che il processo di implementazione non sia solo efficiente, ma anche in linea con gli standard di sicurezza e governance, per offrire un modo completo, sicuro ed efficiente per implementare AFT nell'ambiente. AWS 

[Per ulteriori informazioni su AFT, consultate la AWS Control Tower documentazione.](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html)

## Prerequisiti e limitazioni
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-prereqs"></a>

**Prerequisiti**
+ Un ambiente AWS multi-account di base con almeno i seguenti account: account di gestione, account Log Archive, account di audit e un account aggiuntivo per la gestione AFT.
+ Un AWS Control Tower ambiente consolidato. L'account di gestione deve essere configurato correttamente, poiché il CloudFormation modello verrà distribuito al suo interno.
+ Le autorizzazioni necessarie nell'account di AWS gestione. Avrai bisogno di autorizzazioni sufficienti per creare e gestire risorse come bucket S3, AWS Lambda funzioni, ruoli AWS Identity and Access Management (IAM) e progetti. AWS CodePipeline 
+ Familiarità con Terraform. Comprendere i concetti fondamentali e il flusso di lavoro di Terraform è importante perché l'implementazione prevede la generazione e la gestione di configurazioni Terraform.

**Limitazioni**
+ Sii consapevole delle [quote di AWS risorse](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) nel tuo account. La distribuzione potrebbe creare più risorse e il verificarsi di quote di servizio potrebbe impedire il processo di distribuzione.
+ Il modello è progettato per versioni specifiche di Terraform e. Servizi AWS L'aggiornamento o la modifica delle versioni potrebbero richiedere modifiche al modello.
+ Il modello non supporta servizi di sistema di controllo della versione (VCS) autogestiti come Enterprise. GitHub 

**Versioni del prodotto**
+ Terraform versione 1.6.6 o successiva
+ AFT versione 1.11 o successiva

## Architecture
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-architecture"></a>

**Stack tecnologico Target**
+ CloudFormation
+ AWS CodeBuild
+ AWS CodeCommit
+ AWS CodePipeline
+ Amazon EventBridge
+ IAM
+ AWS Lambda
+ Simple Storage Service (Amazon S3)

**Architettura Target**

Il diagramma seguente illustra l'implementazione discussa in questo modello.

![\[Flusso di lavoro per l'implementazione di AFT utilizzando una pipeline bootstrap.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/944f9912-87c7-4cc5-8478-7070cf67f7ee/images/4ee74757-940d-4d92-a7f0-fb0db1476247.png)


Il flusso di lavoro consiste in tre attività principali: creazione delle risorse, generazione del contenuto ed esecuzione della pipeline.

*Creazione delle risorse*

Il [CloudFormation modello fornito con questo modello](https://github.com/aws-samples/aft-bootstrap-pipeline/blob/main/code/aft-deployment-pipeline.yaml) crea e imposta tutte le risorse necessarie, a seconda dei parametri selezionati al momento della distribuzione del modello. Come minimo, il modello crea le seguenti risorse:
+ Una CodePipeline pipeline per implementare l'AFT
+ Un bucket S3 per archiviare il file di stato Terraform associato all'implementazione AFT
+ Due CodeBuild progetti per implementare il piano Terraform e applicare i comandi in diverse fasi della pipeline
+ Ruoli e servizi IAM per CodeBuild CodePipeline 
+ Un secondo bucket S3 per archiviare gli artefatti del runtime della pipeline

A seconda del provider VCS selezionato (CodeCommit o VCS esterno), il modello crea le seguenti risorse. 
+ Per **CodeCommit**:
  + Un CodeCommit repository per archiviare il codice bootstrap AFT Terraform
  + Una EventBridge regola per acquisire le modifiche al CodeCommit repository sul ramo `main`
  + Un altro ruolo IAM per la regola EventBridge 
+ Per qualsiasi altro **provider VCS esterno**, ad esempio GitHub:
  + Una connessione AWS CodeConnections 

Inoltre, quando si seleziona CodeCommit come provider VCS, se si imposta il `Generate AFT Files` parametro su`true`, il modello crea le seguenti risorse aggiuntive per generare il contenuto:
+ Un bucket S3 per archiviare il contenuto generato e da utilizzare come origine del repository CodeCommit 
+ Una funzione Lambda per elaborare i parametri specificati e generare il contenuto appropriato
+ Una funzione IAM per eseguire la funzione Lambda
+ Una risorsa CloudFormation personalizzata che esegue la funzione Lambda quando il modello viene distribuito

*Generazione del contenuto*

Per generare i file di bootstrap AFT e il relativo contenuto, la soluzione utilizza una funzione Lambda e un bucket S3. La funzione crea una cartella nel bucket, quindi crea due file all'interno della cartella: e. `main.tf` `backend.tf` La funzione elabora anche i CloudFormation parametri forniti e compila questi file con codice predefinito, sostituendo i rispettivi valori dei parametri.

[Per visualizzare il codice utilizzato come modello per generare i file, consultate l'archivio della GitHub soluzione.](https://github.com/aws-samples/aft-bootstrap-pipeline) Fondamentalmente, i file vengono generati come segue.

**principale.tf**

```
module "aft" {
  source = "github.com/aws-ia/terraform-aws-control_tower_account_factory?ref=<aft_version>"

  # Required variables
  ct_management_account_id  = "<ct_management_account_id>"
  log_archive_account_id    = "<log_archive_account_id>"
  audit_account_id          = "<audit_account_id>"
  aft_management_account_id = "<aft_management_account_id>"
  ct_home_region            = "<ct_home_region>"

  # Optional variables
  tf_backend_secondary_region = "<tf_backend_secondary_region>"
  aft_metrics_reporting       = "<false|true>"

  # AFT Feature flags
  aft_feature_cloudtrail_data_events      = "<false|true>"
  aft_feature_enterprise_support          = "<false|true>"
  aft_feature_delete_default_vpcs_enabled = "<false|true>"

  # Terraform variables
  terraform_version      = "<terraform_version>"
  terraform_distribution = "<terraform_distribution>"

  # VCS variables (if you have chosen an external VCS)
  vcs_provider                                  = "<github|githubenterprise|gitlab|gitlabselfmanaged|bitbucket>"
  account_request_repo_name                     = "<org-name>/aft-account-request"
  account_customizations_repo_name              = "<org-name>/aft-account-customizations"
  account_provisioning_customizations_repo_name = "<org-name>/aft-account-provisioning-customizations"
  global_customizations_repo_name               = "<org-name>/aft-global-customizations"

}
```

**backend.ttf**

```
terraform {
  backend "s3" {
    region = "<aft-main-region>"
    bucket = "<s3-bucket-name>"
    key    = "aft-setup.tfstate"
  }
}
```

Durante la creazione del CodeCommit repository, se imposti il `Generate AFT Files` parametro su`true`, il modello utilizza il bucket S3 con il contenuto generato come origine del ramo per popolare automaticamente il repository. `main`

*Esecuzione della pipeline*

Dopo aver creato le risorse e configurato i file di bootstrap, viene eseguita la pipeline. La prima fase (*Source*) recupera il codice sorgente dal ramo principale del repository e la seconda fase (*Build*) esegue il comando Terraform plan e genera i risultati da esaminare. *Nella terza fase (*Approvazione*), la pipeline attende un'azione manuale per approvare o rifiutare l'ultima fase (Deploy).* Nell'ultima fase, la pipeline esegue il comando Terraform utilizzando il risultato del precedente `apply` comando Terraform come input. `plan` Infine, un ruolo tra account e le autorizzazioni nell'account di gestione vengono utilizzati per creare le risorse AFT nell'account di gestione AFT.

**Nota**  
Se si seleziona un provider VCS esterno, sarà necessario autorizzare la connessione con le credenziali del provider VCS. Per completare la configurazione, segui i passaggi in [Aggiornare una connessione in sospeso](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-update.html) nella documentazione della AWS console Developer Tools.

## Tools (Strumenti)
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-tools"></a>

**Servizi AWS**
+ [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)ti aiuta a configurare le risorse AWS, a fornirle in modo rapido e coerente e a gestirle durante tutto il loro ciclo di vita in tutte Account AWS le regioni.
+ [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)è un servizio di compilazione completamente gestito che ti aiuta a compilare codice sorgente, eseguire test unitari e produrre artefatti pronti per la distribuzione. 
+ [AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html)è un servizio di controllo delle versioni che consente di archiviare e gestire in modo privato gli archivi Git senza dover gestire il proprio sistema di controllo del codice sorgente.
+ [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)consente di modellare e configurare rapidamente le diverse fasi di un rilascio del software e di automatizzare i passaggi necessari per rilasciare continuamente le modifiche al software.
+ [AWS CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/welcome-connections.html)consente a AWS risorse e servizi, ad esempio CodePipeline, di connettersi a repository di codice esterni, come. GitHub
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)è un servizio di elaborazione che esegue il codice in risposta agli eventi e gestisce automaticamente le risorse di elaborazione, fornendo un modo rapido per creare un'applicazione di produzione moderna e senza server.
+ [AWS SDK per Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)è un kit di sviluppo software che ti aiuta a integrare la tua applicazione, libreria o script Python con. Servizi AWS

**Altri strumenti**
+ [Terraform](https://developer.hashicorp.com/terraform?product_intent=terraform) è uno strumento di infrastruttura come codice (IaC) che consente di creare, modificare e modificare l'infrastruttura in modo sicuro ed efficiente. Ciò include componenti di basso livello come istanze di calcolo, storage e rete e componenti di alto livello come voci DNS e funzionalità SaaS.
+ [Python](https://docs.python.org/3.9/tutorial/index.html) è un linguaggio di programmazione potente e facile da imparare. Dispone di strutture dati efficienti di alto livello e fornisce un approccio semplice ma efficace alla programmazione orientata agli oggetti.

**Archivio di codici**

Il codice per questo pattern è disponibile nel repository della [pipeline di bootstrap GitHub AFT](https://github.com/aws-samples/aft-bootstrap-pipeline).

Per il repository AFT ufficiale, vedi [AWS Control Tower Account Factory for Terraform in](https://github.com/aws-ia/terraform-aws-control_tower_account_factory/tree/main). GitHub

## Best practice
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-best-practices"></a>

Quando distribuisci AFT utilizzando il CloudFormation modello fornito, ti consigliamo di seguire le migliori pratiche per garantire un'implementazione sicura, efficiente e di successo. Le linee guida e le raccomandazioni chiave per l'implementazione e il funzionamento dell'AFT includono quanto segue.
+ **Revisione approfondita dei parametri**: esamina e comprendi attentamente ogni parametro del CloudFormation modello. Una configurazione accurata dei parametri è fondamentale per la corretta configurazione e funzionamento di AFT.
+ **Aggiornamenti regolari dei modelli**: mantieni il modello aggiornato con le ultime AWS funzionalità e le versioni di Terraform. Gli aggiornamenti regolari ti aiutano a sfruttare le nuove funzionalità e a mantenere la sicurezza.
+ Controllo **delle versioni**: aggiungi la versione del modulo AFT e, se possibile, utilizza una distribuzione AFT separata per i test.
+ **Ambito**: utilizzate AFT solo per implementare protezioni e personalizzazioni dell'infrastruttura. Non utilizzarlo per distribuire l'applicazione.
+ **Linting e convalida**: la pipeline AFT richiede una configurazione Terraform linkata e convalidata. Esegui lint, convalida e testa prima di inviare la configurazione ai repository AFT.
+ **Moduli Terraform**: crea codice Terraform riutilizzabile come moduli e specifica sempre le versioni di Terraform e del AWS provider in base ai requisiti della tua organizzazione.

## Epiche
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-epics"></a>

### Configura e configura l'ambiente AWS
<a name="set-up-and-configure-the-aws-environment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Prepara l' AWS Control Tower ambiente. | Imposta e configura AWS Control Tower nel tuo AWS ambiente per garantire la gestione e la governance centralizzate per il tuo Account AWS. Per ulteriori informazioni, consulta la sezione [Guida introduttiva AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-with-control-tower.html) nella AWS Control Tower documentazione. | Amministratore cloud | 
| Avvia l'account di gestione AFT. | Usa AWS Control Tower Account Factory per lanciarne uno nuovo Account AWS che funga da account di gestione AFT. Per ulteriori informazioni, consulta [Fornire account con AWS Service Catalog Account Factory](https://docs.aws.amazon.com/controltower/latest/userguide/provision-as-end-user.html) nella AWS Control Tower documentazione. | Amministratore cloud | 

### Implementa il CloudFormation modello nell'account di gestione
<a name="deploy-the-cfnshort-template-in-the-management-account"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Avvia il CloudFormation modello. | In questa epopea, distribuisci il CloudFormation modello fornito con questa soluzione per configurare la pipeline di bootstrap AFT nel tuo account di gestione. AWS La pipeline implementa la soluzione AFT nell'account di gestione AFT che hai configurato nell'epic precedente.**Passaggio 1: apri la console CloudFormation **[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 2: Creare un nuovo stack**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 3: Configurazione dei parametri dello stack**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 4: Decidi in che modo generare il file**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 5: inserisci i dettagli dell' AWS Control Tower account AFT**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 6: Configurazione delle opzioni AFT**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 7: Specificare le versioni**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 8: Rivedi e crea lo stack**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 9: Monitora la creazione dello stack**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 10: verifica della distribuzione**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html) | Amministratore cloud | 

### Compila e convalida il repository e la pipeline di bootstrap AFT
<a name="populate-and-validate-the-aft-bootstrap-repository-and-pipeline"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Opzione 1: popolare il repository bootstrap AFT per un VCS esterno. | Se impostate il provider VCS su un VCS esterno (non su), seguite questi passaggi. CodeCommit(Facoltativo) Dopo aver distribuito il CloudFormation modello, potete compilare o convalidare il contenuto nel repository bootstrap AFT appena creato e verificare se la pipeline è stata eseguita correttamente.**Fase 1: Aggiornare la connessione**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 2: popolare il repository**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 2: Conferma e invia le modifiche**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html) | Amministratore cloud | 
| Opzione 2: popolare il repository bootstrap AFT per. CodeCommit | Se imposti il provider VCS su CodeCommit, segui questi passaggi.(Facoltativo) Dopo aver distribuito il CloudFormation modello, potete compilare o convalidare il contenuto nel repository bootstrap AFT appena creato e verificare se la pipeline è stata eseguita correttamente.Se impostate il `Generate AFT Files` parametro su`true`, passate alla storia successiva (convalida della pipeline).**Passaggio 1: popolare il repository**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 2: Conferma e invia le modifiche**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html) | Amministratore cloud | 
| Convalida la pipeline di bootstrap AFT. | **Fase 1: Visualizza la pipeline**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Passaggio 2: approvare i risultati del piano Terraform**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 3: Attendi la distribuzione**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html)**Fase 4: Controlla le risorse create**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.html) | Amministratore cloud | 

## risoluzione dei problemi
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| La funzione Lambda personalizzata inclusa nel CloudFormation modello non funziona durante la distribuzione. | Controlla i CloudWatch log di Amazon per la funzione Lambda per identificare l'errore. I log forniscono informazioni dettagliate e possono aiutare a individuare il problema specifico. Verifica che la funzione Lambda disponga delle autorizzazioni necessarie e che le variabili di ambiente siano state impostate correttamente. | 
| Si verificano errori nella creazione o nella gestione delle risorse causati da autorizzazioni inadeguate. | Esamina i ruoli e le policy IAM collegati alla funzione Lambda e altri servizi coinvolti nella distribuzione. CodeBuild Verifica che dispongano delle autorizzazioni necessarie. In caso di problemi di autorizzazione, modifica le politiche IAM per concedere l'accesso richiesto. | 
| Stai utilizzando una versione obsoleta del CloudFormation modello con versioni più recenti Servizi AWS o Terraform. | Aggiorna regolarmente il CloudFormation modello per renderlo compatibile con le ultime versioni AWS e con le versioni di Terraform. Consulta le note di rilascio o la documentazione per eventuali modifiche o requisiti specifici della versione. | 
| Le Servizio AWS quote vengono raggiunte durante la distribuzione. | Prima di distribuire la pipeline, controlla le Servizio AWS quote per risorse come i bucket S3, i ruoli IAM e le funzioni Lambda. La richiesta aumenta se necessario. Per ulteriori informazioni, consulta le [Servizio AWS quote](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) sul AWS sito Web. | 
| Si verificano errori dovuti a parametri di input errati nel CloudFormation modello. | Ricontrolla tutti i parametri di input per errori di battitura o valori errati. Verifica che gli identificatori delle risorse, come i nomi degli account IDs e delle regioni, siano accurati. | 

## Risorse correlate
<a name="implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline-resources"></a>

Per implementare correttamente questo modello, consulta le seguenti risorse. Queste risorse forniscono informazioni e indicazioni aggiuntive che possono essere preziose per la configurazione e la gestione di AFT utilizzando CloudFormation.

**AWS****documentazione:**
+ [AWS Control Tower La Guida per l'utente](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) offre informazioni dettagliate sulla configurazione e la gestione AWS Control Tower.
+ [CloudFormation la documentazione](https://docs.aws.amazon.com/cloudformation/index.html) fornisce approfondimenti su CloudFormation modelli, stack e gestione delle risorse.

**Politiche e best practice IAM:**
+ [Le best practice di sicurezza in IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) spiegano come contribuire a proteggere AWS le risorse utilizzando i ruoli e le policy IAM.

**Terraform su AWS:**
+ La [documentazione di Terraform AWS Provider](https://registry.terraform.io/providers/hashicorp/aws/latest/docs) fornisce informazioni complete sull'utilizzo di Terraform con. AWS

**Servizio AWS quote:**
+ Servizio AWS le [quote](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) forniscono informazioni su come visualizzare le Servizio AWS quote e su come richiedere aumenti.

# Gestisci i prodotti AWS Service Catalog in più account AWS e regioni AWS
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions"></a>

*Ram Kandaswamy, Amazon Web Services*

## Riepilogo
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-summary"></a>

Amazon Web Services (AWS) Service Catalog semplifica e accelera la governance e la distribuzione dei modelli Infrastructure as Code (IaC) per le aziende. CloudFormation I modelli AWS vengono utilizzati per definire una raccolta di risorse AWS (*stack*) necessarie per un prodotto. AWS CloudFormation StackSets estende questa funzionalità consentendoti di creare, aggiornare o eliminare stack su più account e regioni AWS con un'unica operazione.

Gli amministratori di AWS Service Catalog creano prodotti utilizzando CloudFormation modelli creati dagli sviluppatori e li pubblicano. Questi prodotti vengono quindi associati a un portafoglio e vengono applicati dei vincoli per la governance. Per rendere i tuoi prodotti disponibili agli utenti in altri account o unità organizzative AWS (OUs), in genere [condividi il tuo portafoglio](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/catalogs_portfolios_sharing.html) con loro. Questo modello descrive un approccio alternativo per la gestione delle offerte di prodotti AWS Service Catalog basato su AWS CloudFormation StackSets. Invece di condividere i portafogli, utilizzi i vincoli dello stack set per impostare le regioni e gli account AWS in cui il prodotto può essere distribuito e utilizzato. Utilizzando questo approccio, puoi effettuare il provisioning dei prodotti AWS Service Catalog su più account e regioni AWS e gestirli da una posizione centrale, soddisfacendo al contempo i requisiti di governance. OUs 

Vantaggi di questo approccio:
+ Il prodotto viene fornito e gestito dall'account principale e non viene condiviso con altri account.
+ Questo approccio fornisce una visione consolidata di tutti i prodotti (pile) forniti e basati su un prodotto specifico.
+ La configurazione con AWS Service Management Connector è più semplice, perché si rivolge a un solo account.
+ È più facile interrogare e utilizzare i prodotti di AWS Service Catalog.

## Prerequisiti e limitazioni
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-prereqs"></a>

**Prerequisiti**
+  CloudFormation Modelli AWS per IaC e controllo delle versioni
+ Configurazione di più account e AWS Service Catalog per il provisioning e la gestione delle risorse AWS

**Limitazioni**
+ Questo approccio utilizza AWS CloudFormation StackSets e StackSets si applicano le seguenti limitazioni:
  + StackSets non supporta la distribuzione di CloudFormation modelli tramite macro. Se utilizzi una macro per preelaborare il modello, non sarai in grado di utilizzare una distribuzione StackSets basata.
  + StackSets offre la possibilità di dissociare uno stack dal set di stack, in modo da poter scegliere come destinazione uno stack specifico per risolvere un problema. Tuttavia, uno stack dissociato non può essere riassociato allo stack set.
+ AWS Service Catalog genera automaticamente StackSet i nomi. La personalizzazione non è attualmente supportata.

## Architecture
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-architecture"></a>

**Architettura di Target**

![\[L'utente gestisce il prodotto AWS Service Catalog utilizzando il CloudFormation modello AWS e StackSets.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/16458fcd-861d-4ed4-8b91-47e19289a6bb/images/97d23325-b5c6-4ca9-8288-8dec1650c975.png)


1. L'utente crea un CloudFormation modello AWS per il provisioning delle risorse AWS, in formato JSON o YAML.

1. Il CloudFormation modello crea un prodotto in AWS Service Catalog, che viene aggiunto a un portafoglio.

1. L'utente crea un prodotto fornito, che crea CloudFormation pile negli account di destinazione.

1. Ogni stack fornisce le risorse specificate nei modelli. CloudFormation 

## Tools (Strumenti)
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-tools"></a>

**Servizi AWS**
+ [AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) ti CloudFormation aiuta a configurare le risorse AWS, effettuarne il provisioning in modo rapido e coerente e gestirle durante tutto il loro ciclo di vita su account e regioni AWS.
+ [AWS Command Line Interface (AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) ti aiuta a gestire centralmente i cataloghi di servizi IT approvati per AWS. Gli utenti finali possono distribuire rapidamente soltanto i servizi IT approvati di cui hanno bisogno, in accordo con i vincoli stabiliti dall'organizzazione.

## Epiche
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-epics"></a>

### Fornisci prodotti su più account
<a name="provision-products-across-accounts"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un portfolio. | Un portafoglio è un contenitore che include uno o più prodotti raggruppati in base a criteri specifici. L'utilizzo di un portafoglio per i tuoi prodotti ti aiuta ad applicare vincoli comuni a tutti i tuoi set di prodotti.Per creare un portfolio, segui le istruzioni nella [documentazione di AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/portfoliomgmt-create.html). Se utilizzi la CLI di AWS, ecco un comando di esempio:<pre>aws servicecatalog create-portfolio --provider-name my-provider --display-name my-portfolio</pre>Per ulteriori informazioni, consulta la documentazione dell'[interfaccia a riga di comando di AWS](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/servicecatalog/create-portfolio.html). | AWS Service Catalog, IAM | 
| Crea un CloudFormation modello. | Crea un CloudFormation modello che descriva le risorse. I valori delle proprietà delle risorse devono essere parametrizzati ove applicabile. | AWS CloudFormation, JSON/YAML | 
| Crea un prodotto con informazioni sulla versione. | Il CloudFormation modello diventa un prodotto quando viene pubblicato in AWS Service Catalog. Fornisci valori per i parametri opzionali di dettaglio della versione, come il titolo e la descrizione della versione; ciò ti sarà utile per richiedere informazioni sul prodotto in un secondo momento.Per creare un prodotto, segui le istruzioni nella [documentazione di AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/productmgmt-cloudresource.html). Se utilizzi la CLI di AWS, un comando di esempio è:<pre>aws servicecatalog create-product --cli-input-json file://create-product-input.json</pre>dove `create-product-input.json` è il file che passa i parametri per il prodotto. Per un esempio di questo file, consulta la sezione *Informazioni aggiuntive*. Per ulteriori informazioni, consulta la documentazione dell'[interfaccia a riga di comando di AWS](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/servicecatalog/create-product.html). | AWS Service Catalog | 
| Applica vincoli. | Applica i vincoli dello stack set al portafoglio, per configurare opzioni di distribuzione del prodotto come più account AWS, regioni e autorizzazioni. Per istruzioni, consulta la [documentazione di AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/constraints-stackset.html). | AWS Service Catalog | 
| Aggiungi autorizzazioni  | Fornisci le autorizzazioni agli utenti in modo che possano lanciare i prodotti del portafoglio. Per istruzioni sulla console, consulta la [documentazione di AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/catalogs_portfolios_users.html). Se utilizzi la CLI di AWS, ecco un comando di esempio:<pre>aws servicecatalog associate-principal-with-portfolio \<br />    --portfolio-id port-2s6abcdefwdh4 \<br />    --principal-arn arn:aws:iam::444455556666:role/Admin \<br />    --principal-type IAM</pre>Per ulteriori informazioni, consulta la documentazione dell'[interfaccia a riga di comando di AWS](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/servicecatalog/associate-principal-with-portfolio.html). | AWS Service Catalog, IAM | 
| Effettua il provisioning del prodotto. | Un prodotto sottoposto a provisioning è un'istanza di risorse di un prodotto. Il provisioning di un prodotto basato su un CloudFormation modello avvia uno CloudFormation stack e le relative risorse sottostanti.Effettua il provisioning del prodotto scegliendo come target le regioni e gli account AWS applicabili, in base ai vincoli dello stack set. Nella CLI di AWS, ecco un comando di esempio:<pre>aws servicecatalog provision-product \<br />    --product-id prod-abcdfz3syn2rg \<br />    --provisioning-artifact-id pa-abc347pcsccfm \<br />    --provisioned-product-name "mytestppname3"</pre>Per ulteriori informazioni, consulta la documentazione dell'[interfaccia a riga di comando di AWS](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/servicecatalog/provision-product.html). | AWS Service Catalog | 

## Risorse correlate
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-resources"></a>

**Riferimenti**
+ [Panoramica di AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html)
+ [Usare AWS CloudFormation StackSets](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/using-stacksets.html)

**Tutorial e video**
+ [AWS re:Invent 2019: Automatizza tutto: opzioni e best](https://www.youtube.com/watch?v=bGBVPIpQMYk) practice (video)

## Informazioni aggiuntive
<a name="manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions-additional"></a>

Quando usi il `create-product` comando, il `cli-input-json` parametro punta a un file che specifica informazioni come il proprietario del prodotto, l'e-mail di supporto e i dettagli del modello. CloudFormation Ecco un esempio di tale file:

```
{
   "Owner": "Test admin",
      "SupportDescription": "Testing",
         "Name": "SNS",
            "SupportEmail": "example@example.com",
            "ProductType": "CLOUD_FORMATION_TEMPLATE",
               "AcceptLanguage": "en",
                  "ProvisioningArtifactParameters": {
                     "Description": "SNS product",
                        "DisableTemplateValidation": true,
                           "Info": {
                              "LoadTemplateFromURL": "<url>"
                     },
                           "Name": "version 1"
}
```

# Monitora i cluster SAP RHEL Pacemaker utilizzando i servizi AWS
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services"></a>

*Harsh Thoria, Randy Germann e RAVEENDRA Voore, Amazon Web Services*

## Riepilogo
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-summary"></a>

Questo modello delinea i passaggi per il monitoraggio e la configurazione degli avvisi per un cluster Red Hat Enterprise Linux (RHEL) Pacemaker per applicazioni SAP e servizi di database SAP HANA utilizzando Amazon e Amazon Simple Notification Service (Amazon CloudWatch SNS).

La configurazione consente di monitorare le risorse del cluster SAP SCS o ASCS, Enqueue Replication Server (ERS) e SAP HANA quando si trovano in uno stato «interrotto» con l'aiuto di flussi di CloudWatch log, filtri metrici e allarmi. Amazon SNS invia un'e-mail all'infrastruttura o al team SAP Basis sullo stato del cluster interrotto.

È possibile creare le AWS risorse per questo modello utilizzando AWS CloudFormation gli script o le AWS console di servizio. Questo modello presuppone che tu stia utilizzando le console; non fornisce CloudFormation script né copre la distribuzione dell'infrastruttura per Amazon CloudWatch SNS. I comandi Pacemaker vengono utilizzati per impostare la configurazione degli avvisi del cluster.

## Prerequisiti e limitazioni
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-prereqs"></a>

**Prerequisiti**
+ Un account attivo. AWS 
+ Amazon SNS configurato per inviare notifiche e-mail o mobili.
+ Un cluster SAP ASCS/ERS per ABAP o SCS/ERS per Java e un cluster RHEL Pacemaker del database SAP HANA. Per le istruzioni, consulta quanto segue:
  + [Configurazione del cluster SAP HANA](https://docs.aws.amazon.com/sap/latest/sap-hana/sap-hana-on-aws-manual-deployment-of-sap-hana-on-aws-with-high-availability-clusters.html)
  + [Configurazione del cluster SAP Netweaver ABAP/Java ](https://docs.aws.amazon.com/sap/latest/sap-netweaver/sap-netweaver-ha-configuration-guide.html)

**Limitazioni**
+ Questa soluzione attualmente funziona con i cluster basati su Pacemaker versione 7.3 e successive di RHEL. Non è stata testata sui sistemi operativi SUSE.

**Versioni del prodotto**
+ RHEL 7.3 e versioni successive

## Architecture
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-architecture"></a>

**Stack tecnologico Target**
+ Agente basato sugli eventi di avviso RHEL Pacemaker
+ Amazon Elastic Compute Cloud (Amazon EC2)
+ CloudWatch allarme
+ CloudWatch gruppo di log e filtro metrico
+ Amazon SNS

**Architettura di Target**

Il diagramma seguente illustra i componenti e i flussi di lavoro di questa soluzione.

![\[Architettura per il monitoraggio dei cluster SAP RHEL Pacemaker\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/ca4d282e-eadd-43fd-8506-3dbeb43e4db6/images/bfc96678-1fd3-47b6-8f09-bf7cf7c4a92c.png)


**Automazione e scalabilità**
+ È possibile automatizzare la creazione di AWS risorse utilizzando CloudFormation gli script. Puoi anche utilizzare filtri metrici aggiuntivi per ridimensionare e coprire più cluster.

## Tools (Strumenti)
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-tools"></a>

**Servizi AWS**
+ [Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) ti CloudWatch aiuta a monitorare i parametri delle tue AWS risorse e delle applicazioni su cui esegui AWS in tempo reale.
+  [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) ti aiuta a coordinare e gestire lo scambio di messaggi tra editori e clienti, inclusi server Web e indirizzi e-mail.

**Strumenti**
+ CloudWatch agent (unified) è uno strumento che raccoglie parametri, log e tracce a livello di sistema dalle EC2 istanze e recupera metriche personalizzate dalle tue applicazioni.
+ Pacemaker alert agent (per RHEL 7.3 e versioni successive) è uno strumento che avvia un'azione in caso di modifica, ad esempio quando una risorsa si arresta o si riavvia, in un cluster Pacemaker.

## Best practice
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-best-practices"></a>
+ Per le best practice per l'utilizzo dei carichi di lavoro SAP su AWS, consulta [SAP Lens](https://docs.aws.amazon.com/wellarchitected/latest/sap-lens/sap-lens.html) for the Well-Architected AWS Framework.
+ Considera i costi associati alla configurazione del CloudWatch monitoraggio per i cluster SAP HANA. Per ulteriori informazioni, consulta la [documentazione relativa ad CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_billing.html).
+ Valuta la possibilità di utilizzare un cercapersone o un meccanismo di ticketing per gli avvisi di Amazon SNS.
+ Controlla sempre le versioni RHEL ad alta disponibilità (HA) del pacchetto RPM per **PC**, Pacemaker e Fencing Agent. AWS 

## Epiche
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-epics"></a>

### Configurazione di Amazon SNS
<a name="set-up-sns"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare un argomento SNS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html) | Amministratore AWS | 
| Modifica la politica di accesso per l'argomento SNS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html) | Amministratore di sistema AWS | 
| Iscriviti all'argomento SNS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html)Nel Web browser viene visualizzata una risposta di conferma di Amazon SNS. | Amministratore di sistema AWS | 

### Conferma la configurazione del cluster
<a name="confirm-the-setup-of-the-cluster"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Controlla lo stato del cluster. | Usa il comando **pcs status** per confermare che le risorse sono online. | Amministratore SAP Basis | 

### Configura gli avvisi Pacemaker
<a name="configure-pacemaker-alerts"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configurare l'agente di avviso Pacemaker sull'istanza del cluster principale. | Accedi all' EC2 istanza nel cluster primario ed esegui i seguenti comandi:<pre>install --mode=0755 /usr/share/pacemaker/alerts/alert_file.sh.sample<br />touch /var/lib/pacemaker/alert_file.sh<br />touch /var/log/pcmk_alert_file.log<br />chown hacluster:haclient /var/log/pcmk_alert_file.log<br />chmod 600 /var/log/pcmk_alert_file.log<br />pcs alert create id=alert_file description="Log events to a file." path=/var/lib/pacemaker/alert_file.sh<br />pcs alert recipient add alert_file id=my-alert_logfile value=/var/log/pcmk_alert_file.log</pre> | Amministratore SAP Basis | 
| Configurare l'agente di avviso Pacemaker sull'istanza del cluster secondaria. | Accedi all' EC2 istanza del cluster secondario nel cluster secondario ed esegui i seguenti comandi:<pre>install --mode=0755 /usr/share/pacemaker/alerts/alert_file.sh.sample<br />touch /var/lib/pacemaker/alert_file.sh<br />touch /var/log/pcmk_alert_file.log<br />chown hacluster:haclient /var/log/pcmk_alert_file.log<br />chmod 600 /var/log/pcmk_alert_file.log</pre> | Amministratore SAP Basis | 
| Conferma che la risorsa di avviso RHEL è stata creata. | Utilizzate il seguente comando per confermare che la risorsa di avviso è stata creata:<pre>pcs alert</pre>L'output del comando sarà simile al seguente:<pre>[root@xxxxxxx ~]# pcs alert <br />Alerts:<br /> Alert: alert_file (path=/var/lib/pacemaker/alert_file.sh)<br />  Description: Log events to a file.<br />  Recipients:<br />   Recipient: my-alert_logfile (value=/var/log/pcmk_alert_file.log)</pre> | Amministratore SAP Basis | 

### Configurare l'agente CloudWatch
<a name="configure-the-cw-agent"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Installa l' CloudWatch agente. | Esistono diversi modi per installare l' CloudWatch agente su un' EC2 istanza. Per utilizzare la riga di comando:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html)Per ulteriori informazioni, consulta la [documentazione relativa ad CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-on-EC2-Instance.html). | Amministratore di sistema AWS | 
| Associa un ruolo IAM all' EC2 istanza. | Per consentire all' CloudWatch agente di inviare dati dalle istanze, devi associare il **CloudWatchAgentServerRole**ruolo IAM a ciascuna istanza. In alternativa, puoi aggiungere una policy per l' CloudWatch agente al tuo ruolo IAM esistente. Per ulteriori informazioni, consulta la [documentazione relativa ad CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent-commandline.html). | Amministratore AWS | 
| Configura l' CloudWatch agente per monitorare il file di registro dell'agente di avviso Pacemaker sull'istanza del cluster principale. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html) | Amministratore AWS | 
| Avvia l' CloudWatch agente sulle istanze del cluster primario e secondario. | Per avviare l'agente, esegui il comando seguente sulle EC2 istanze nei cluster primario e secondario:<pre>sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m<br />ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json</pre> | Amministratore AWS | 

### Configura CloudWatch le risorse
<a name="set-up-cw-resources"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura gruppi di CloudWatch log. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html)L' CloudWatch agente trasferirà il file di avviso Pacemaker al gruppo di CloudWatch log come flusso di log. | Amministratore AWS | 
| Configura filtri CloudWatch metrici. | I filtri metrici ti aiutano a cercare uno schema, ad esempio `stop <cluster-resource-name>` nei flussi di CloudWatch log. Quando viene identificato questo modello, il filtro metrico aggiorna una metrica personalizzata.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html)**Quando il filtro metrico identifica il modello nel passaggio 4, aggiorna il valore della metrica CloudWatch `sapcluster_abc` personalizzata a 1.****L' CloudWatch allarme `SAP-Cluster-QA1-ABC` monitora la metrica `sapcluster_abc` e invia una notifica SNS quando il valore della metrica passa a 1.** Ciò indica che la risorsa del cluster si è interrotta e che è necessario intraprendere un'azione. | Amministratore AWS, amministratore SAP Basis | 
| Imposta un allarme CloudWatch metrico per la metrica SAP ASCS/SCS ed ERS. | Per creare un allarme basato su una singola metrica:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html) | Amministratore AWS | 
| Imposta un allarme CloudWatch metrico per la metrica SAP HANA. | Ripeti i passaggi per impostare un allarme CloudWatch metrico dell'attività precedente, con queste modifiche:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.html) | Amministratore AWS | 

## Risorse correlate
<a name="monitor-sap-rhel-pacemaker-clusters-by-using-aws-services-resources"></a>
+ [Attivazione di script per eventi cluster](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html-single/high_availability_add-on_reference/index#ch-alertscripts-HAAR) (documentazione RHEL)
+ [Creare il file di configurazione CloudWatch dell'agente con la procedura guidata](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/create-cloudwatch-agent-configuration-file-wizard.html) (documentazione) CloudWatch 
+ [Installazione ed esecuzione dell' CloudWatch agente sui server](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-commandline-fleet.html) (CloudWatch documentazione)
+ [Crea un CloudWatch allarme basato su una soglia statica](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html) (CloudWatch documentazione)
+ [Distribuzione manuale di SAP HANA su AWS con cluster ad alta disponibilità](https://docs.aws.amazon.com/sap/latest/sap-hana/sap-hana-on-aws-manual-deployment-of-sap-hana-on-aws-with-high-availability-clusters.html) (documentazione SAP sul sito Web) AWS 
+ [ NetWeaver Guide SAP](https://docs.aws.amazon.com/sap/latest/sap-netweaver/welcome.html) (documentazione SAP sul sito Web) AWS 

## Allegati
<a name="attachments-ca4d282e-eadd-43fd-8506-3dbeb43e4db6"></a>

[Per accedere al contenuto aggiuntivo associato a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/ca4d282e-eadd-43fd-8506-3dbeb43e4db6/attachments/attachment.zip)

# Monitora l'attività delle applicazioni utilizzando CloudWatch Logs Insights
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights"></a>

*Ram Kandaswamy, Amazon Web Services*

## Riepilogo
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-summary"></a>

Questo modello fornisce una soluzione per rilevare e inviare avvisi automaticamente sulle eccezioni delle applicazioni utilizzando Amazon CloudWatch Logs Insights. Implementando l'analisi e l'invio di avvisi automatici dei log, puoi identificare e rispondere rapidamente ai problemi delle applicazioni nel tuo ambiente di produzione.

I log svolgono un ruolo cruciale nel monitoraggio del comportamento del sistema, nell'identificazione dei problemi e nel garantire prestazioni ottimali. Durante un processo di migrazione, i file di registro sono preziosi per convalidare il funzionamento del sistema nel nuovo ambiente, rilevare problemi di compatibilità e identificare eventuali comportamenti imprevisti. I problemi potrebbero essere correlati alle operazioni o alla sicurezza. Per quanto riguarda i problemi relativi alla sicurezza, consentire il rilevamento tempestivo di tentativi di accesso non autorizzati o attività sospette è essenziale per mantenere la sicurezza e la conformità normativa. Questa funzionalità è particolarmente importante quando si tratta di dati sensibili o sistemi critici. 

Questo modello è particolarmente utile per i team che devono eseguire le seguenti operazioni:
+ Mantieni un'elevata disponibilità delle applicazioni.
+ Rispondi rapidamente ai problemi di produzione.
+ Analizza gli errori specifici dell'applicazione non rilevati dai log. Servizio AWS 
+ Esegui l'analisi dei log su richiesta senza un'infrastruttura precostruita.

CloudWatch Logs Insights è ottimale per analizzare i log generati dalle applicazioni in cui il contesto dell'errore esiste solo all'interno del codice dell'applicazione. CloudWatch Logs Insights eccelle nelle seguenti attività:
+ Interroga dati di log non strutturati o semistrutturati.
+ Esegui analisi su richiesta durante la risposta agli incidenti.
+ Correla gli eventi su più gruppi di log.
+ Crea visualizzazioni rapide senza strumenti esterni.

## Prerequisiti e limitazioni
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-prereqs"></a>

**Prerequisiti**
+ Un'applicazione di produzione distribuita in active Account AWS
+ Conoscenza di base del formato di registrazione e dei modelli di eccezione dell'applicazione di produzione
+ Log delle applicazioni configurati per lo streaming su Amazon CloudWatch Logs

**Limitazioni**
+ Alcuni Servizi AWS non sono disponibili in tutti. Regioni AWS Per la disponibilità regionale, vedi [AWS Servizi per regione](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Per endpoint specifici, consulta [Endpoints and quotas del servizio](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) e scegli il link relativo al servizio.

## Architecture
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-architecture"></a>

Il diagramma seguente mostra come CloudWatch Logs Insights valuta i log delle risorse e invia una visualizzazione dei dati pertinente a una dashboard. CloudWatch 

![\[CloudWatch Logs Insights valuta i log delle risorse e invia la visualizzazione dei dati alla dashboard.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/082ff4b6-9303-42e6-bc62-263e2254f232/images/b1cbb699-07cd-45e6-ac06-839159bafa6b.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Le risorse pubblicano i log in Logs. CloudWatch Le risorse possono includere AWS risorse come istanze Amazon Elastic Compute Cloud (Amazon EC2) o bucket Amazon Simple Storage Service (Amazon S3). Un altro esempio include sistemi locali con CloudWatch Agent installato su cui è possibile pubblicare i log. CloudWatch

1. CloudWatch Filtri Logs Insights per la stringa di pattern pertinente. Esempi di stringhe di pattern di ricerca includono «error», «exception» o un'espressione regolare specifica.

1. In genere, il team di supporto alla produzione o gli sviluppatori aggiungono la visualizzazione del pattern alla CloudWatch dashboard.

**Automazione e scalabilità**

Gli sviluppatori possono automatizzare la soluzione di questo pattern utilizzando AWS Cloud Development Kit (AWS CDK) AWS CloudFormation, o AWS SDKs per gestire più modelli di stringhe. I team possono incorporare questa automazione nei loro processi di integrazione e distribuzione continue (CI/CD). DevOps 

## Tools (Strumenti)
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-tools"></a>

**Servizi AWS**
+ [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) ti aiuta a centralizzare i log di tutti i tuoi sistemi e applicazioni, Servizi AWS così puoi monitorarli e archiviarli in modo sicuro.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue AWS risorse controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) ti aiuta a creare e controllare chiavi crittografiche per proteggere i tuoi dati.

## Best practice
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-best-practices"></a>

**Efficienza delle query**
+ Definisci e configura [i gruppi di log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) per analizzare i dati di registro pertinenti.
+ Utilizza gli esploratori di campi per comprendere la struttura e i campi disponibili nei dati di registro.
+ Scrivi query efficienti utilizzando la sintassi delle query di [CloudWatch Logs Insights.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_LogsInsights.html)
+ Adatta [le query di esempio](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-examples.html) alle tue esigenze specifiche per un'analisi più rapida.
+ Limita gli intervalli di tempo di interrogazione per ridurre i dati scansionati e migliorare le prestazioni.
+ [Salva le interrogazioni](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_Insights-Saving-Queries.html) per utilizzi futuri per risparmiare tempo e garantire un'analisi coerente.

**Sicurezza**
+ Applica [le politiche](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html) IAM appropriate a CloudWatch Logs Insights e ai gruppi di log. Segui il principio del privilegio minimo e concedi le autorizzazioni minime necessarie per eseguire un'attività. Per ulteriori informazioni, consulta le [best practice relative alla [concessione dei privilegi minimi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#grant-least-priv) e alla sicurezza nella documentazione](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) IAM.
+ Abilita la [crittografia dei dati di registro utilizzando AWS KMS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Insights-Query-Encrypt.html) i dati di registro sensibili.

**Ottimizzazione dei costi**
+ CloudWatch Logs Insights addebita per GB di dati scansionati per query. Riduci gli intervalli di tempo e scegli come target gruppi di log specifici per ridurre i costi.
+ Configura politiche di conservazione dei log appropriate per gestire i costi di storage.
+ Per un'analisi frequente di set di dati storici di grandi dimensioni, prendi in considerazione l'esportazione dei log in Amazon S3 e l'utilizzo di Amazon Athena.
+ Consulta [CloudWatch i prezzi](https://aws.amazon.com/cloudwatch/pricing/) per comprendere le implicazioni in termini di costi per il tuo caso d'uso.

## Epiche
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-epics"></a>

### Crea un gruppo di log e configura i log da visualizzare nella dashboard.
<a name="create-log-group-and-configure-logs-to-view-in-dashboard"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Configura le autorizzazioni IAM. | Per configurare le autorizzazioni IAM, procedi come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-application-activity-by-using-cloudwatch-logs-insights.html)Per informazioni su come creare policy IAM o aggiungere autorizzazioni a policy esistenti, consulta [Definizione delle autorizzazioni IAM personalizzate con policy gestite dai clienti e Modifica delle policy](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) [IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-edit.html) nella *IAM User* Guide. Per ulteriori informazioni, consulta il [riferimento [alla gestione delle identità e degli accessi per Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/auth-and-access-control-cwl.html) e alle autorizzazioni CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/permissions-reference-cwl.html) nella *Amazon CloudWatch Logs* User Guide. | Amministratore AWS, AWS DevOps, amministratore di sistema AWS, amministratore cloud, architetto cloud, DevOps ingegnere | 
| Creazione di un gruppo di log. | Per creare un gruppo di log, utilizza una delle seguenti opzioni:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-application-activity-by-using-cloudwatch-logs-insights.html)[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-application-activity-by-using-cloudwatch-logs-insights.html) | Amministratore AWS, AWS DevOps, amministratore di sistema AWS, amministratore cloud, architetto cloud, DevOps ingegnere | 
| Genera una query CloudWatch Logs Insights. | Per creare e salvare una query di CloudWatch Logs Insights, procedi come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-application-activity-by-using-cloudwatch-logs-insights.html) | Amministratore AWS, AWS DevOps, amministratore di sistema AWS, amministratore cloud, architetto cloud, DevOps ingegnere | 
| Crea visualizzazioni in una CloudWatch dashboard. | Per utilizzare una CloudWatch dashboard per creare una visualizzazione, procedi come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-application-activity-by-using-cloudwatch-logs-insights.html)Per ulteriori informazioni sulle opzioni e le funzionalità delle dashboard, consulta [Using Amazon CloudWatch dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) e [Creazione di CloudWatch dashboard flessibili con variabili di dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_dashboard_variables.html) nella *Amazon CloudWatch Logs* User Guide. | Amministratore AWS, AWS DevOps, amministratore di sistema AWS, amministratore cloud, architetto cloud, DevOps ingegnere | 

## risoluzione dei problemi
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Impossibile visualizzare i risultati della query o la query sembra interrotta | Inizia con una query di lavoro che è stata modificata da una [query di esempio](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-examples.html). Eseguite piccole modifiche incrementali a parti della query (come un filtro o un campo) e sfruttate la funzionalità CloudWatch Logs [Query Generator](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Insights-Query-Assist.html). | 
| Gruppi di log che non creano flussi di log | Nella policy IAM, assicurati che la risorsa per le [CreateLogStream[CreateLogGroup](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogGroup.html)](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateLogStream.html)operazioni sia fornita con un valore di caratteri `(*)` jolly. L'`create `operazione non avrà successo senza questa autorizzazione con i caratteri jolly. | 
| Timeout delle query o rallentamento delle prestazioni | Riduci l'intervallo di tempo, scegli come target gruppi di log specifici o semplifica la query. I modelli complessi di espressioni regolari (`regex`) e gli ampi intervalli di tempo aumentano il tempo di interrogazione. | 
| Nessun dato restituito per un intervallo di tempo valido | Verifica la selezione del gruppo di log e controlla che i log vengano inseriti (esamina i flussi di log) e conferma che lo schema di filtro corrisponda al formato di registro. | 

## Risorse correlate
<a name="monitor-application-activity-by-using-cloudwatch-logs-insights-resources"></a>
+ [Analisi dei dati di registro con Logs Insights CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html)
+ [Amazon CloudWatch FAQs](https://aws.amazon.com/cloudwatch/faqs/#topic-0)
+ [Creazione di CloudWatch dashboard flessibili con variabili di dashboard](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_dashboard_variables.html)
+ [Inizia a usare Logs Insights QL: Query tutorial](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData_Tutorials.html)
+ [Usa il linguaggio naturale per generare e aggiornare CloudWatch le query di Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Insights-Query-Assist.html)
+ [Utilizzo PutDashboard con un AWS SDK o una CLI](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/example_cloudwatch_PutDashboard_section.html)
+ [Lavorare con gruppi di log e flussi di log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html)

# Monitora l'uso di un'Amazon Machine Image condivisa su più Account AWS
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts"></a>

*Naveen Suthar e Sandeep Gawande, Amazon Web Services*

## Riepilogo
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-summary"></a>

[Amazon Machine Images (AMIs)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) vengono utilizzate per creare istanze Amazon Elastic Compute Cloud (Amazon EC2) nel tuo ambiente Amazon Web Services (AWS). Puoi creare AMIs un account AWS separato e centralizzato, chiamato *account creator* in questo modello. È quindi possibile condividere l'AMI tra più account Account AWS che si trovano nella stessa Regione AWS area, denominati *account consumer* secondo questo schema. La gestione AMIs da un unico account offre scalabilità e semplifica la governance. [Negli account consumer, puoi fare riferimento all'AMI condivisa nei [modelli di lancio](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-launch-template.html) di Amazon EC2 Auto Scaling e nei gruppi di nodi Amazon Elastic Kubernetes Service (Amazon EKS).](https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html)

Quando un'AMI condivisa è [obsoleta, cancellata](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-deprecate.html) o [non [è condivisa](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/deregister-ami.html)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html), quelle che Servizi AWS fanno riferimento all'AMI negli account consumer non possono utilizzare questa AMI per avviare nuove istanze. Qualsiasi evento di ridimensionamento automatico o riavvio della stessa istanza ha esito negativo. Ciò può causare problemi nell'ambiente di produzione, come tempi di inattività delle applicazioni o peggioramento delle prestazioni. Quando gli eventi di condivisione e utilizzo dell'AMI si verificano più volte Account AWS, può essere difficile monitorare questa attività.

Questo modello consente di monitorare l'utilizzo e lo stato delle AMI condivise tra gli account nella stessa regione. Utilizza sistemi serverless Servizi AWS, come Amazon EventBridge, Amazon AWS Lambda DynamoDB e Amazon Simple Email Service (Amazon SES). Effettua il provisioning dell'infrastruttura come codice (IaC) utilizzando Terraform. HashiCorp Questa soluzione fornisce avvisi quando un servizio in un account consumatore fa riferimento a un'AMI non registrata o non condivisa.

## Prerequisiti e limitazioni
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-prereqs"></a>

**Prerequisiti**
+ Due o più account attivi Account AWS: un account Creator e uno o più account consumer
+ Uno o più AMIs condivisi dall'account creatore a un account consumatore
+ Terraform CLI[,](https://developer.hashicorp.com/terraform/cli) installata (documentazione Terraform)
+ Terraform AWS Provider, [configurato](https://hashicorp.github.io/terraform-provider-aws/) (documentazione Terraform)
+ (Facoltativo, ma consigliato) Backend Terraform, [configurato](https://developer.hashicorp.com/terraform/language/backend) (documentazione Terraform)
+ Git, [installato](https://github.com/git-guides/install-git)

**Limitazioni**
+ Questo modello monitora AMIs ciò che è stato condiviso con account specifici utilizzando l'ID dell'account. Questo modello non monitora AMIs ciò che è stato condiviso con un'organizzazione utilizzando l'ID dell'organizzazione.
+ AMIs può essere condiviso solo con account che si trovano all'interno della stessa Regione AWS. Questo modello esegue il monitoraggio AMIs all'interno di un'unica regione di destinazione. Per monitorare l'utilizzo AMIs in più regioni, è necessario implementare questa soluzione in ciascuna regione.
+ Questo modello non monitora nulla di AMIs ciò che è stato condiviso prima dell'implementazione di questa soluzione. Se desideri monitorare i dati precedentemente condivisi AMIs, puoi annullare la condivisione dell'AMI e ricondividerla con gli account utente.

**Versioni del prodotto**
+ Terraform versione 1.2.0 o successiva
+ Terraform AWS Provider versione 4.20 o successiva

## Architecture
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-architecture"></a>

**Stack tecnologico Target**

Le seguenti risorse vengono fornite come IaC tramite Terraform:
+ Tabelle Amazon DynamoDB
+  EventBridge Regole di Amazon
+ AWS Identity and Access Management ruolo (IAM)
+ AWS Lambda funzioni
+ Amazon SES

**Architettura di destinazione**

![\[Architettura per monitorare l'uso condiviso dell'AMI e avvisare gli utenti se l'AMI non è condivisa o non è registrata\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/2d709249-0c68-47d7-be5d-46e8a73071ed/images/8c48c4dd-d681-4c32-9ba8-8f5ad2d66f64.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Un'AMI nell'account del creatore viene condivisa con un account consumatore nello stesso Regione AWS.

1. Quando l'AMI è condivisa, una EventBridge regola nell'account creatore acquisisce l'`ModifyImageAttribute`evento e avvia una funzione Lambda nell'account creatore.

1. La funzione Lambda archivia i dati relativi all'AMI in una tabella DynamoDB nell'account creatore.

1. Quando un Servizio AWS account consumer utilizza l'AMI condivisa per avviare un' EC2 istanza Amazon o quando l'AMI condivisa è associata a un modello di avvio, una EventBridge regola nell'account consumer rileva l'uso dell'AMI condivisa.

1. La EventBridge regola avvia una funzione Lambda nell'account consumer. La funzione Lambda; svolge le operazioni seguenti:

   1. La funzione Lambda aggiorna i dati relativi all'AMI in una tabella DynamoDB nell'account consumer.

   1. La funzione Lambda assume un ruolo IAM nell'account creatore e aggiorna la tabella Lambda nell'account creatore. Nella `Mapping` tabella, crea un elemento che associa l'ID dell'istanza o l'ID del modello di avvio al rispettivo ID AMI.

1. L'AMI gestita centralmente nell'account del creatore è obsoleta, cancellata o non è condivisa.

1. La EventBridge regola nell'account creatore acquisisce l'`DeregisterImage`evento `ModifyImageAttribute` or con l'`remove`azione e avvia la funzione Lambda.

1. La funzione Lambda controlla la tabella DynamoDB per determinare se l'AMI viene utilizzata in uno qualsiasi degli account consumer. Se nella `Mapping` tabella non è presente alcuna istanza IDs o modello di avvio IDs associato all'AMI, il processo è completo.

1. Se un'istanza IDs o un modello di avvio IDs sono associati all'AMI nella `Mapping` tabella, la funzione Lambda utilizza Amazon SES per inviare una notifica e-mail agli abbonati configurati.

## Tools (Strumenti)
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-tools"></a>

**Servizi AWS**
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) è un servizio di database NoSQL interamente gestito che offre prestazioni elevate, prevedibili e scalabili.
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) è un servizio di bus eventi senza server che ti aiuta a connettere le tue applicazioni con dati in tempo reale provenienti da una varietà di fonti. Ad esempio, AWS Lambda funzioni, endpoint di invocazione HTTP che utilizzano destinazioni API o bus di eventi in altro modo. Account AWS
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di calcolo che consente di eseguire il codice senza gestire i server o effettuarne il provisioning. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di elaborazione che utilizzi.
+ [Amazon Simple Email Service (Amazon SES)](https://docs.aws.amazon.com/ses/latest/dg/Welcome.html) Simple Email Service (Amazon SES) ti aiuta a inviare e ricevere e-mail utilizzando i tuoi indirizzi e-mail e domini.

**Altri strumenti**
+ [HashiCorp Terraform](https://www.terraform.io/docs) è uno strumento Infrastructure as Code (IaC) che consente di utilizzare il codice per fornire e gestire l'infrastruttura e le risorse cloud.
+ [Python](https://www.python.org/) è un linguaggio di programmazione per computer generico.

**Archivio di codice**

Il codice per questo pattern è disponibile nel repository GitHub [cross-account-ami-monitoring-terraform-samples](https://github.com/aws-samples/cross-account-ami-monitoring-terraform-samples).

## Best practice
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-best-practices"></a>
+ Segui le [migliori pratiche](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html) per lavorare con le funzioni. AWS Lambda 
+ Segui le [migliori pratiche per la costruzione AMIs](https://docs.aws.amazon.com/marketplace/latest/userguide/best-practices-for-building-your-amis.html).
+ Quando crei il ruolo IAM, segui il principio del privilegio minimo e concedi le autorizzazioni minime necessarie per eseguire un'attività. Per ulteriori informazioni, consulta le [migliori pratiche relative alla [concessione dei privilegi minimi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#grant-least-priv) e alla sicurezza nella documentazione](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPracticesAndUseCases.html) IAM.
+ Imposta il monitoraggio e gli avvisi per le AWS Lambda funzioni. Per ulteriori informazioni, consulta [Monitoraggio e risoluzione dei problemi delle funzioni Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-monitoring.html).

## Epiche
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-epics"></a>

### Personalizza i file di configurazione Terraform
<a name="customize-the-terraform-configuration-files"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea i profili AWS CLI denominati. | Per l'account creatore e ogni account consumatore, crea un profilo denominato AWS Command Line Interface (AWS CLI). Per istruzioni, consulta [Configurare il AWS CLI](https://aws.amazon.com/getting-started/guides/setup-environment/module-three/) nel Centro risorse AWS introduttive. | DevOps ingegnere | 
| Clonare il repository. | Inserire il seguente comando. Questo clona il repository [cross-account-ami-monitoring-terraform-samples utilizzando SSH](https://github.com/aws-samples/cross-account-ami-monitoring-terraform-samples). GitHub <pre>git clone git@github.com:aws-samples/cross-account-ami-monitoring-terraform-samples.git</pre> | DevOps ingegnere | 
| Aggiorna il file provider.tf. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html)Per ulteriori informazioni sulla configurazione dei provider, consulta [Configurazioni di più provider](https://developer.hashicorp.com/terraform/language/providers/configuration#alias-multiple-provider-configurations) nella documentazione di Terraform. | DevOps ingegnere | 
| Aggiorna il file terraform.tfvars. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 
| Aggiorna il file.tf principale. | Completa questi passaggi solo se stai distribuendo questa soluzione su più di un account consumatore. Se si implementa questa soluzione su un solo account consumer, non è necessaria alcuna modifica di questo file.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 

### Implementa la soluzione utilizzando Terraform
<a name="deploy-the-solution-by-using-terraform"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Distribuire la soluzione. | Nella CLI Terraform, inserisci i seguenti comandi per distribuire le risorse AWS negli account creatore e consumatore:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 
| Verifica l'identità dell'indirizzo e-mail. | Quando hai implementato il piano Terraform, Terraform ha creato un indirizzo e-mail per ogni account consumer in Amazon SES. Prima di poter inviare notifiche a quell'indirizzo e-mail, devi verificare l'indirizzo e-mail. Per istruzioni, consulta [Verifica dell'identità di un indirizzo e-mail](https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#just-verify-email-proc) nella documentazione di Amazon SES. | Informazioni generali su AWS | 

### Convalida la distribuzione delle risorse
<a name="validate-resource-deployment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Convalida la distribuzione nell'account creatore. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 
| Convalida l'implementazione nell'account consumer. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 

### Convalida il monitoraggio
<a name="validate-monitoring"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un'AMI nell'account del creatore. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 
| Usa l'AMI nell'account del consumatore. | Nell'account consumer, utilizza l'AMI condivisa per creare un' EC2 istanza Amazon o un modello di avvio. Per istruzioni, consulta [Come posso avviare un' EC2 istanza Amazon da un'AMI personalizzata](https://repost.aws/knowledge-center/launch-instance-custom-ami) (AWS re:POST Knowledge Center) o [Creare un modello di avvio per un gruppo di Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) (documentazione di Amazon Auto EC2 Scaling). | DevOps ingegnere | 
| Convalida il monitoraggio e gli avvisi. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 

### (Facoltativo) Interrompi il monitoraggio condiviso AMIs
<a name="optional-stop-monitoring-shared-amis"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Eliminare le risorse. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | DevOps ingegnere | 

## risoluzione dei problemi
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Non ho ricevuto un avviso via e-mail. | Potrebbero esserci diversi motivi per cui l'e-mail di Amazon SES non è stata inviata. Verifica quanto segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts.html) | 

## Risorse correlate
<a name="monitor-use-of-a-shared-amazon-machine-image-across-multiple-aws-accounts-resources"></a>

**AWS documentazione**
+ [Creazione di funzioni Lambda con Python](https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html) (documentazione Lambda)
+ [Creare un AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-ami.html) ( EC2 documentazione Amazon)
+ [Condividi un'AMI con specifiche Account AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html) ( EC2 documentazione Amazon)
+ [Annulla la registrazione dell'AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/deregister-ami.html) (documentazione Amazon EC2 )

**Documentazione Terraform**
+ [Installa Terraform](https://learn.hashicorp.com/tutorials/terraform/install-cli)
+ [Configurazione del backend Terraform](https://www.terraform.io/language/settings/backends/configuration)
+ [Fornitore AWS Terraform](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)
+ [Scarica il file binario di Terraform](https://developer.hashicorp.com/terraform/install)

# Visualizza i dettagli degli snapshot EBS per il tuo account o la tua organizzazione AWS
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization"></a>

*Arun Chandapillai e Parag Nagwekar, Amazon Web Services*

## Riepilogo
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-summary"></a>

Questo modello descrive come generare automaticamente un report su richiesta di tutte le snapshot di Amazon Elastic Block Store (Amazon EBS) nel tuo account Amazon Web Services (AWS) o unità organizzativa (OU) in AWS Organizations. 

Amazon EBS è un easy-to-use servizio di storage a blocchi scalabile e ad alte prestazioni progettato per Amazon Elastic Compute Cloud (Amazon). EC2 Un volume EBS fornisce uno storage durevole e persistente che puoi collegare alle tue istanze. EC2 Puoi utilizzare i volumi EBS come storage principale per i tuoi dati ed eseguire un point-in-time backup dei tuoi volumi EBS creando un'istantanea. Puoi utilizzare la Console di gestione AWS o l'AWS Command Line Interface (AWS CLI) per visualizzare i dettagli di snapshot EBS specifici. Questo modello fornisce un modo programmatico per recuperare informazioni su tutte le snapshot EBS nel tuo account AWS o nell'unità organizzativa.

Puoi utilizzare lo script fornito da questo pattern per generare un file con valori separati da virgole (CSV) contenente le seguenti informazioni su ogni snapshot: ID account, ID snapshot, ID e dimensione del volume, data di acquisizione dello snapshot, ID dell'istanza e descrizione. Se le tue istantanee EBS sono contrassegnate, il rapporto include anche gli attributi del proprietario e del team.

## Prerequisiti e limitazioni
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo
+ [AWS CLI versione 2 [installata](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html#getting-started-install-instructions) e configurata](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)
+ Ruolo AWS Identity and Access Management (IAM) con le autorizzazioni appropriate (autorizzazioni di accesso per un account specifico o per tutti gli account in un'unità organizzativa se prevedi di eseguire lo script da AWS Organizations)

## Architecture
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-architecture"></a>

Il diagramma seguente mostra il flusso di lavoro dello script che genera un report su richiesta di snapshot EBS distribuiti su più account AWS in un'unità organizzativa.

![\[Generazione di un report su richiesta degli snapshot EBS su tutto il territorio. OUs\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/4e8b1812-2731-4f46-8385-0dd4d92f2d03/images/62d10408-7c85-46cf-a6a4-fe87a6e446f2.png)


## Tools (Strumenti)
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-tools"></a>

**Servizi AWS**
+ [AWS Command Line Interface (AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
+ [Amazon Elastic Block Store (Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html)) fornisce volumi di storage a livello di blocco da utilizzare con le istanze. EC2  
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) ti aiuta a gestire in modo sicuro l'accesso alle tue risorse AWS controllando chi è autenticato e autorizzato a utilizzarle.
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html) è un servizio di gestione degli account che ti aiuta a consolidare più account AWS in un'organizzazione da creare e gestire centralmente.

**Codice**

Il codice per l'applicazione di esempio utilizzata in questo modello è disponibile su GitHub, nel [aws-ebs-snapshots-awsorganizations](https://github.com/aws-samples/aws-ebs-snapshots-awsorganizations)repository. Segui le istruzioni nella sezione successiva per utilizzare i file di esempio.

## Epiche
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-epics"></a>

### Scarica lo script
<a name="download-the-script"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Scarica lo script Python. | Scarica lo script [GetSnapshotDetailsAllAccountsOU.py](https://github.com/aws-samples/aws-ebs-snapshots-awsorganizations/blob/main/GetSnapshotDetailsAllAccountsOU.py) dal [GitHub repository](https://github.com/aws-samples/aws-ebs-snapshots-awsorganizations). | Informazioni generali su AWS | 

### Ottieni i dettagli dello snapshot EBS per un account AWS
<a name="get-ebs-snapshot-details-for-an-aws-account"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Eseguire lo script Python. | Eseguire il comando :<pre>python3 getsnapshotinfo.py --file <output-file>.csv --region <region-name> </pre>dove `<output-file>` si riferisce al file di output CSV in cui desideri inserire le informazioni sugli snapshot EBS ed è `<region-name>` la regione AWS in cui sono archiviate le istantanee. Esempio:<pre>python3 getsnapshotinfo.py --file snapshots.csv --region us-east-1 </pre> | Informazioni generali su AWS | 

### Ottieni i dettagli delle istantanee EBS per un'organizzazione
<a name="get-ebs-snapshot-details-for-an-organization"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Eseguire lo script Python. | Eseguire il comando :<pre>python3 getsnapshotinfo.py --file <output-file>.csv --role <IAM-role> --region <region-name> </pre>dove `<output-file>` si riferisce al file di output CSV in cui desideri inserire le informazioni sugli snapshot EBS, `<IAM-role>` è un ruolo che fornisce le autorizzazioni per accedere ad AWS Organizations ed è `<region-name>` la regione AWS in cui sono archiviate le istantanee. Esempio:<pre>python3 getsnapshotinfo.py --file snapshots.csv --role <IAM role> --region us-west-2</pre> | Informazioni generali su AWS | 

## Risorse correlate
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-resources"></a>
+ [Documentazione Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html)
+ [Azioni Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/OperationList-query-ebs.html)
+ [Riferimento all'API Amazon EBS](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ebs/index.html)
+ [Miglioramento delle prestazioni di Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSPerformance.html)
+ [Risorse Amazon EBS](https://aws.amazon.com/ebs/resources/)
+ [Prezzi degli snapshot EBS](https://aws.amazon.com/ebs/pricing/)

## Informazioni aggiuntive
<a name="view-ebs-snapshot-details-for-your-aws-account-or-organization-additional"></a>

**Tipi di istantanee EBS**

Amazon EBS offre tre tipi di snapshot, in base alla proprietà e all'accesso:
+ **Di tua proprietà**:**** per impostazione predefinita, solo tu puoi creare volumi da istantanee di tua proprietà.
+ **Istantanee pubbliche**: puoi condividere istantanee pubblicamente con tutti gli altri account AWS. Per creare uno snapshot pubblico, modifichi le autorizzazioni per uno snapshot per condividerlo con gli account AWS da te specificati. Gli utenti che autorizzerai possono quindi utilizzare gli snapshot che condividi creando i propri volumi EBS, mentre lo snapshot originale rimane inalterato. Puoi anche rendere le tue istantanee non crittografate disponibili pubblicamente a tutti gli utenti AWS. Tuttavia, non puoi rendere le tue istantanee crittografate disponibili pubblicamente per motivi di sicurezza. Le istantanee pubbliche rappresentano un rischio significativo per la sicurezza a causa della possibilità di esporre dati personali e sensibili. Ti consigliamo vivamente di non condividere le tue istantanee EBS con tutti gli account AWS. Per ulteriori informazioni sulla condivisione di snapshot, consulta la [documentazione AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html).
+ **Istantanee private**: puoi condividere istantanee in privato con singoli account AWS da te specificati. Per condividere lo snapshot in privato con account AWS specifici, segui le [istruzioni](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html#share-unencrypted-snapshot) nella documentazione AWS e scegli **Privato** per l'impostazione delle autorizzazioni. Gli utenti autorizzati possono utilizzare lo snapshot condiviso per la creazione di propri volumi EBS, mentre lo snapshot originale rimane inalterato.

**Panoramiche e procedure**

La tabella seguente fornisce collegamenti a ulteriori informazioni sulle istantanee EBS, incluso come ridurre i costi in termini di volume EBS trovando ed eliminando le istantanee non utilizzate e archiviare le istantanee a cui si accede raramente che non richiedono un recupero frequente o rapido. 


| 
| 
| Per informazioni su | See | 
| --- |--- |
| **Istantanee, relative funzionalità e limitazioni** | [Crea istantanee Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html) | 
| **Come creare uno snapshot** | Console: [crea un'istantanea](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html#ebs-create-snapshot)[CLI AWS: comando create-snapshot](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/create-snapshot.html)Esempio:<pre>aws ec2 create-snapshot --volume-id vol-1234567890abcdef0 --description " volume snapshot"</pre> | 
| **Eliminazione di istantanee (informazioni generali)** | [Eliminare uno snapshot di Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-deleting-snapshot.html) | 
| **Come eliminare uno snapshot** | Console: [elimina un'istantanea](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-deleting-snapshot.html#ebs-delete-snapshot)[CLI AWS: comando delete-snapshot](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/delete-snapshot.html)Esempio:<pre>aws ec2 delete-snapshot --snapshot-id snap-1234567890abcdef0</pre> | 
| **Archiviazione delle istantanee (informazioni generali)** | [Archivia gli snapshot di Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/snapshot-archive.html)[Amazon EBS Snapshots Archive](https://aws.amazon.com/blogs/aws/new-amazon-ebs-snapshots-archive/) (post di blog) | 
| **Come archiviare uno snapshot** | Console: [archivia un'istantanea](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/working-with-snapshot-archiving.html#archive-snapshot)[AWS CLI: comando modify-snapshot-tier ](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/modify-snapshot-tier.html) | 
| **Come recuperare un'istantanea archiviata** | Console: [ripristina](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/working-with-snapshot-archiving.html#restore-archived-snapshot) un'istantanea archiviata[AWS CLI: comando restore-snapshot-tier ](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ec2/restore-snapshot-tier.html) | 
| **Prezzi delle istantanee** | [Prezzi di Amazon EBS](https://aws.amazon.com/ebs/pricing/) | 

**DOMANDE FREQUENTI**

**Qual è il periodo minimo di archiviazione?**

Il periodo minimo di archiviazione è di 90 giorni.

**Quanto tempo occorre per ripristinare un'istantanea archiviata?**

Possono essere necessarie fino a 72 ore per ripristinare uno snapshot archiviato dal livello archivio al livello standard, a seconda delle dimensioni dello snapshot.

**Le istantanee archiviate sono istantanee complete?**

Gli snapshot archiviati sono sempre snapshot completi.

**Quali istantanee può archiviare un utente?**

È possono archiviare solo gli snapshot che possiedi nel proprio account.

**È possibile archiviare un'istantanea del volume del dispositivo root di un'Amazon Machine Image (AMI) registrata?**

No, non è possibile archiviare un'istantanea del volume del dispositivo principale di un'AMI registrata.

**Quali sono le considerazioni sulla sicurezza per la condivisione di un'istantanea?**

Quando condividi un'istantanea, consenti ad altri di accedere a tutti i dati dell'istantanea. Condividi le istantanee solo con persone di cui ti fidi per i tuoi dati.

**Come si condivide uno snapshot con un'altra regione AWS?**

Gli snapshot sono vincolati alla regione in cui sono stati creati. Per condividere uno snapshot con altre Regioni, copia lo snapshot nella regione desiderata.

**È possibile condividere istantanee crittografate?**

Non puoi condividere istantanee crittografate con la chiave gestita AWS predefinita. Puoi condividere istantanee crittografate solo con una chiave gestita dal cliente. Quando si condivide un'istantanea crittografata, è necessario condividere anche la chiave gestita dal cliente utilizzata per crittografare l'istantanea.

**Che dire delle istantanee non crittografate?**

È possibile condividere pubblicamente istantanee non crittografate.

# Altri modelli
<a name="governance-more-patterns-pattern-list"></a>

**Topics**
+ [Automatizza la creazione di account utilizzando Landing Zone Accelerator su AWS](automate-account-creation-lza.md)
+ [Automatizza le operazioni AWS dell'infrastruttura utilizzando Amazon Bedrock](automate-aws-infrastructure-operations-by-using-amazon-bedrock.md)
+ [Automatizza la valutazione delle risorse AWS](automate-aws-resource-assessment.md)
+ [Inventaria automaticamente AWS le risorse su più account e regioni](automate-aws-resource-inventory.md)
+ [Automatizza il portafoglio e la distribuzione dei prodotti di AWS Service Catalog utilizzando AWS CDK](automate-aws-service-catalog-portfolio-and-product-deployment-by-using-aws-cdk.md)
+ [Automatizza la gestione dinamica delle pipeline per l'implementazione di soluzioni hotfix in ambienti Gitflow utilizzando e AWS Service Catalog AWS CodePipeline](automate-dynamic-pipeline-management-for-deploying-hotfix-solutions.md)
+ [Automatizza l'inserimento e la visualizzazione di metriche personalizzate di Amazon MWAA su Amazon Managed Grafana utilizzando Terraform](automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.md)
+ [Associa automaticamente una policy gestita da AWS per Systems Manager ai profili di EC2 istanza utilizzando Cloud Custodian e AWS CDK](automatically-attach-an-aws-managed-policy-for-systems-manager-to-ec2-instance-profiles-using-cloud-custodian-and-aws-cdk.md)
+ [Crittografa automaticamente i volumi Amazon EBS esistenti e nuovi](automatically-encrypt-existing-and-new-amazon-ebs-volumes.md)
+ [Crea una AWS landing zone che includa MongoDB Atlas](build-aws-landing-zone-that-includes-mongodb-atlas.md)
+ [Centralizza il monitoraggio utilizzando Amazon CloudWatch Observability Access Manager](centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.md)
+ [Verifica la presenza di tag obbligatori EC2 nelle istanze al momento del lancio](check-ec2-instances-for-mandatory-tags-at-launch.md)
+ [Pulisci le risorse di AWS Account Factory for Terraform (AFT) in modo sicuro dopo la perdita dei file di stato](clean-up-aft-resources-safely-after-state-file-loss.md)
+ [Crea una definizione di attività Amazon ECS e monta un file system su EC2 istanze utilizzando Amazon EFS](create-an-amazon-ecs-task-definition-and-mount-a-file-system-on-ec2-instances-using-amazon-efs.md)
+ [Crea regole AWS Config personalizzate utilizzando AWS CloudFormation Guard le politiche](create-aws-config-custom-rules-by-using-aws-cloudformation-guard-policies.md)
+ [Personalizza i nomi dei ruoli predefiniti utilizzando AWS CDK gli aspetti e gli escape hatch](customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches.md)
+ [Implementa e gestisci AWS Control Tower i controlli utilizzando AWS CDK e CloudFormation](deploy-and-manage-aws-control-tower-controls-by-using-aws-cdk-and-aws-cloudformation.md)
+ [Implementa e gestisci AWS Control Tower i controlli utilizzando Terraform](deploy-and-manage-aws-control-tower-controls-by-using-terraform.md)
+ [Distribuisci codice in più regioni AWS utilizzando AWS CodePipeline CodeCommit, AWS e AWS CodeBuild](deploy-code-in-multiple-aws-regions-using-aws-codepipeline-aws-codecommit-and-aws-codebuild.md)
+ [Distribuisci applicazioni containerizzate in AWS IoT Greengrass V2 esecuzione come contenitore Docker](deploy-containerized-applications-on-aws-iot-greengrass-version-2-running-as-a-docker-container.md)
+ [Abilita Amazon in GuardDuty modo condizionale utilizzando modelli AWS CloudFormation](enable-amazon-guardduty-conditionally-by-using-aws-cloudformation-templates.md)
+ [Abilita l'archiviazione dei DB2 log direttamente su Amazon S3 in un database IBM Db2](enable-db2-logarchive-directly-to-amazon-s3-in-ibm-db2-database.md)
+ [Esporta un report delle identità di AWS IAM Identity Center e delle relative assegnazioni utilizzando PowerShell](export-a-report-of-aws-iam-identity-center-identities-and-their-assignments-by-using-powershell.md)
+ [Genera un CloudFormation modello AWS contenente le regole gestite di AWS Config utilizzando Troposphere](generate-an-aws-cloudformation-template-containing-aws-config-managed-rules-using-troposphere.md)
+ [Offri alle istanze di SageMaker notebook l'accesso temporaneo a un CodeCommit repository in un altro account AWS](give-sagemaker-notebook-instances-temporary-access-to-a-codecommit-repository-in-another-aws-account.md)
+ [Integra il controller universale Stonebranch con la modernizzazione del mainframe AWS](integrate-stonebranch-universal-controller-with-aws-mainframe-modernization.md)
+ [Avvia un CodeBuild progetto su più account AWS utilizzando Step Functions e una funzione proxy Lambda](launch-a-codebuild-project-across-aws-accounts-using-step-functions-and-a-lambda-proxy-function.md)
+ [Gestisci i set di AWS autorizzazioni in modo dinamico utilizzando Terraform](manage-aws-permission-sets-dynamically-by-using-terraform.md)
+ [Esegui la migrazione di applicazioni ospitate da IIS su Amazon utilizzando appcmd.exe EC2](migrate-iis-hosted-applications-to-amazon-ec2-by-using-appcmd.md)
+ [Migrazione dei certificati SSL di Windows su un Application Load Balancer utilizzando ACM](migrate-windows-ssl-certificates-to-an-application-load-balancer-using-acm.md)
+ [Monitoraggio dell'attività dell'utente root IAM](monitor-iam-root-user-activity.md)
+ [Crea un'architettura IPAM gerarchica e multiregionale utilizzando Terraform AWS](multi-region-ipam-architecture.md)
+ [Ottimizza le implementazioni serverless multi-account utilizzando i flussi di lavoro e Actions AWS CDK GitHub](optimize-multi-account-serverless-deployments.md)
+ [Conserva lo spazio IP instradabile nei progetti VPC multi-account per sottoreti non destinate ai carichi di lavoro](preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets.md)
+ [Fornisci ruoli IAM con privilegi minimi implementando una soluzione di distribuzione automatica di ruoli](provision-least-privilege-iam-roles-by-deploying-a-role-vending-machine-solution.md)
+ [Registrazione di più indirizzi e-mail Account AWS con un unico indirizzo e-mail utilizzando Amazon SES](register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.md)
+ [Rimuovi Amazon EC2 Entries Account AWS dall'altra AWS Managed Microsoft AD parte utilizzando l' AWS Lambda automazione](remove-amazon-ec2-entries-across-aws-accounts-from-aws-managed-microsoft-ad.md)
+ [Rimuovi EC2 le voci Amazon nello stesso Account AWS modulo AWS Managed Microsoft AD utilizzando l' AWS Lambda automazione](remove-amazon-ec2-entries-in-the-same-aws-account-from-aws-managed-microsoft-ad.md)
+ [Proteggi i dati sensibili nei CloudWatch registri utilizzando Amazon Macie](secure-cloudwatch-logs-using-macie.md)
+ [Invia notifiche per un'istanza di database Amazon RDS for SQL Server utilizzando un server SMTP locale e Database Mail](send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.md)
+ [Configura una dashboard di monitoraggio Grafana per AWS ParallelCluster](set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.md)
+ [Configura la registrazione centralizzata su scala aziendale utilizzando Terraform](set-up-centralized-logging-at-enterprise-scale-by-using-terraform.md)
+ [Configura il disaster recovery per SAP su IBM Db2 su AWS](set-up-disaster-recovery-for-sap-on-ibm-db2-on-aws.md)
+ [Semplifica la gestione EC2 della conformità di Amazon con agenti Amazon Bedrock e AWS Config](streamline-amazon-ec2-compliance-management-with-amazon-bedrock-agents-and-aws-config.md)
+ [Etichetta automaticamente gli allegati Transit Gateway utilizzando AWS Organizations](tag-transit-gateway-attachments-automatically-using-aws-organizations.md)
+ [Usa le query BMC Discovery per estrarre i dati di migrazione per la pianificazione della migrazione](use-bmc-discovery-queries-to-extract-migration-data-for-migration-planning.md)
+ [Verifica le best practice operative per PCI DSS 4.0 utilizzando AWS Config](verify-ops-best-practices-pci-dss-4.md)
+ [Visualizza i log e i parametri di AWS Network Firewall utilizzando Splunk](view-aws-network-firewall-logs-and-metrics-by-using-splunk.md)
+ [Visualizza i report sulle credenziali IAM per tutti gli account AWS utilizzando Amazon Quick Sight](visualize-iam-credential-reports-for-all-aws-accounts-using-amazon-quicksight.md)

# Messaggi e comunicazioni
<a name="messagingandcommunications-pattern-list"></a>

**Topics**
+ [Automatizza la configurazione di RabbitMQ in Amazon MQ](automate-rabbitmq-configuration-in-amazon-mq.md)
+ [Migliora la qualità delle chiamate sulle postazioni di lavoro degli agenti nei contact center Amazon Connect](improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.md)
+ [Altri modelli](messagingandcommunications-more-patterns-pattern-list.md)

# Automatizza la configurazione di RabbitMQ in Amazon MQ
<a name="automate-rabbitmq-configuration-in-amazon-mq"></a>

*Yogesh Bhatia e Afroz Khan, Amazon Web Services*

## Riepilogo
<a name="automate-rabbitmq-configuration-in-amazon-mq-summary"></a>

[Amazon MQ](https://docs.aws.amazon.com/amazon-mq/) è un servizio di broker di messaggi gestito che offre compatibilità con molti broker di messaggi popolari. L'uso di Amazon MQ con RabbitMQ fornisce un robusto cluster RabbitMQ gestito in Cloud AWS con più broker e opzioni di configurazione. Amazon MQ fornisce un'infrastruttura altamente disponibile, sicura e scalabile e può elaborare un gran numero di messaggi al secondo con facilità. Più applicazioni possono utilizzare l'infrastruttura con diversi host virtuali, code e scambi. Tuttavia, la gestione di queste opzioni di configurazione o la creazione manuale dell'infrastruttura possono richiedere tempo e impegno. Questo modello descrive un modo per gestire le configurazioni per RabbitMQ in un unico passaggio, tramite un singolo file. È possibile incorporare il codice fornito con questo pattern in qualsiasi strumento di integrazione continua (CI) come Jenkins o Bamboo. 

È possibile utilizzare questo modello per configurare qualsiasi cluster RabbitMQ. Tutto ciò che serve è la connettività al cluster. Sebbene esistano molti altri modi per gestire le configurazioni di RabbitMQ, questa soluzione crea intere configurazioni di applicazioni in un unico passaggio, in modo da poter gestire facilmente code e altri dettagli.

## Prerequisiti e limitazioni
<a name="automate-rabbitmq-configuration-in-amazon-mq-prereqs"></a>

**Prerequisiti**
+ AWS Command Line Interface (AWS CLI) [installato e configurato in modo che punti al](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html) Account AWS
+ Ansible è installato, quindi puoi eseguire i playbook per creare la configurazione
+ **rabbitmqadmin** [installato (per istruzioni, consultate la documentazione di RabbitMQ)](https://www.rabbitmq.com/management-cli.html)
+ Un cluster RabbitMQ in Amazon MQ, creato con parametri Amazon affidabili CloudWatch 

**Requisiti aggiuntivi**
+ Assicurati di creare le configurazioni per gli host e gli utenti virtuali separatamente e non come parte di JSON.
+ Assicurati che la configurazione JSON faccia parte del repository e sia controllata dalla versione.
+ La versione della CLI di **rabbitmqadmin** deve essere la stessa del server RabbitMQ, quindi l'opzione migliore è scaricare la CLI dalla console RabbitMQ.
+ Come parte della pipeline, assicurati che la sintassi JSON sia convalidata prima di ogni esecuzione.

**Versioni del prodotto**
+ AWS CLI versione 2.0
+ Ansible versione 2.9.13
+ **rabbitmqadmin** versione 3.9.13 (deve essere la stessa della versione del server RabbitMQ)

## Architecture
<a name="automate-rabbitmq-configuration-in-amazon-mq-architecture"></a>

**Stack tecnologico di origine**
+ Un cluster RabbitMQ in esecuzione su una macchina virtuale (VM) locale esistente o su un cluster Kubernetes (in locale o nel cloud)

**Stack tecnologico Target**
+ Configurazioni RabbitMQ automatizzate su Amazon MQ per RabbitMQ

**Architettura Target**

Esistono molti modi per configurare RabbitMQ. Questo modello utilizza la funzionalità di importazione di configurazione, in cui un singolo file JSON contiene tutte le configurazioni. Questo file applica tutte le impostazioni e può essere gestito da un sistema di controllo delle versioni come Bitbucket o Git. Questo modello utilizza Ansible per implementare la configurazione tramite la CLI **rabbitmqadmin**.

![\[Automazione della configurazione di RabbitMQ in Amazon MQ\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/294120b6-c95f-4cc5-bf85-5ad7e2abdad5/images/292e1284-5c9e-4c82-bb41-010fa84d8d74.png)


## Tools (Strumenti)
<a name="automate-rabbitmq-configuration-in-amazon-mq-tools"></a>

**Servizi AWS**
+ [Amazon MQ](https://docs.aws.amazon.com/amazon-mq/) è un servizio di broker di messaggi gestito che semplifica la configurazione e la gestione di broker di messaggi nel cloud.
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)ti aiuta a configurare l' AWS infrastruttura e ad accelerare il provisioning del cloud con Infrastructure as Code.
+ [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)consente di interagire Servizi AWS utilizzando i comandi in una shell a riga di comando. 

**Altri strumenti**
+ [rabbitmqadmin](https://www.rabbitmq.com/management-cli.html) è uno strumento a riga di comando per l'API basata su HTTP di RabbitMQ. Viene utilizzato per gestire e monitorare i nodi e i cluster RabbitMQ.
+ [Ansible](https://www.ansible.com/) è uno strumento open source per l'automazione delle applicazioni e dell'infrastruttura IT.

**Archivio di codice**

Il file di configurazione JSON utilizzato in questo modello e un esempio di playbook Ansible sono forniti in allegato.

## Epiche
<a name="automate-rabbitmq-configuration-in-amazon-mq-epics"></a>

### Crea la tua infrastruttura AWS
<a name="create-your-aws-infrastructure"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea un cluster RabbitMQ su. AWS | Se non disponi già di un cluster RabbitMQ, puoi utilizzarlo [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)per creare lo stack su. AWS In alternativa, puoi usare il [CloudFormation modulo in Ansible](https://docs.ansible.com/projects/ansible/latest/collections/amazon/aws/cloudformation_module.html) per creare lo stack. Con quest'ultimo approccio, puoi utilizzare Ansible per entrambe le attività: creare l'infrastruttura RabbitMQ e gestire le configurazioni.  | Informazioni generali su AWS, Ansible | 

### Creare la configurazione Amazon MQ per RabbitMQ
<a name="create-the-amqlong-for-rabbitmq-configuration"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare un file delle proprietà. | Scarica il file di configurazione JSON (`rabbitmqconfig.json`) nell'allegato o esportalo dalla console RabbitMQ.  Modificalo per configurare code, scambi e associazioni. Questo file di configurazione dimostra quanto segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-rabbitmq-configuration-in-amazon-mq.html)**Queste configurazioni vengono eseguite sull'host virtuale root (/), come richiesto da rabbitmqadmin.**  | JSON | 
| Recupera i dettagli dell'infrastruttura Amazon MQ for RabbitMQ. | Recupera i seguenti dettagli per l'infrastruttura RabbitMQ su: AWS[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-rabbitmq-configuration-in-amazon-mq.html)È possibile utilizzare Console di gestione AWS o the AWS CLI per recuperare queste informazioni. Questi dettagli consentono al playbook Ansible di connettersi al cluster RabbitMQ Account AWS e di utilizzare il cluster RabbitMQ per eseguire i comandi.*Il computer che esegue il playbook Ansible deve essere in grado di accedere al tuo e AWS CLI deve essere già configurato Account AWS, come descritto nella sezione Prerequisiti.* | Informazioni generali su AWS | 
| Crea il file `hosts_var`. | Crea il `hosts_var` file per Ansible e assicurati che tutte le variabili siano definite nel file. Prendi in considerazione l'utilizzo di Ansible Vault per memorizzare la password. Puoi configurare il `hosts_var` file come segue (sostituisci gli asterischi con le tue informazioni):<pre>RABBITMQ_HOST: "***********.mq.us-east-2.amazonaws.com"<br />RABBITMQ_VHOST: "/"<br />RABBITMQ_USERNAME: "admin"<br />RABBITMQ_PASSWORD: "*******"</pre> | Ansible | 
| Crea un playbook Ansible. | Per un playbook di esempio, vedi `ansible-rabbit-config.yaml` in allegato. Scarica e salva questo file. Il playbook Ansible importa e gestisce tutte le configurazioni di RabbitMQ, come code, scambi e associazioni, richieste dalle applicazioni. Segui le migliori pratiche per i playbook Ansible, come la protezione delle password. Usa Ansible Vault per la crittografia delle password e recupera la password di RabbitMQ dal file crittografato. | Ansible | 

### Distribuzione della configurazione
<a name="deploy-the-configuration"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Esegui il playbook. | Esegui il playbook Ansible che hai creato nell'epopea precedente.<pre>ansible-playbook ansible-rabbit-config.yaml</pre>Puoi verificare le nuove configurazioni sulla console RabbitMQ. | Informazioni generali su AWS, RabbitMQ, Ansible | 

## Risorse correlate
<a name="automate-rabbitmq-configuration-in-amazon-mq-resources"></a>
+ [Migrazione da RabbitMQ ad Amazon MQ](https://aws.amazon.com/blogs/compute/migrating-from-rabbitmq-to-amazon-mq/) (AWS post sul blog)
+ [Strumento a riga di comando di gestione](https://www.rabbitmq.com/management-cli.html) (documentazione RabbitMQ)
+ [Crea o elimina uno AWS CloudFormation stack (documentazione Ansible](https://docs.ansible.com/ansible/latest/collections/amazon/aws/cloudformation_module.html))
+ [Migrazione di applicazioni basate su messaggi su Amazon MQ for RabbitMQ](https://aws.amazon.com/blogs/compute/migrating-message-driven-applications-to-amazon-mq-for-rabbitmq/) (AWS post sul blog)

## Allegati
<a name="attachments-294120b6-c95f-4cc5-bf85-5ad7e2abdad5"></a>

[Per accedere a contenuti aggiuntivi associati a questo documento, decomprimi il seguente file: attachment.zip](samples/p-attach/294120b6-c95f-4cc5-bf85-5ad7e2abdad5/attachments/attachment.zip)

# Migliora la qualità delle chiamate sulle postazioni di lavoro degli agenti nei contact center Amazon Connect
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers"></a>

*Ernest Ozdoba, Amazon Web Services*

## Riepilogo
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers-summary"></a>

I problemi di qualità delle chiamate sono tra i problemi più difficili da risolvere nei contact center. Per evitare problemi di qualità vocale e procedure di risoluzione complesse, è necessario ottimizzare l'ambiente di lavoro e le impostazioni della workstation degli agenti. Questo modello descrive le tecniche di ottimizzazione della qualità vocale per le postazioni di lavoro degli agenti nei contact center Amazon Connect. Fornisce consigli nelle seguenti aree:
+ Adeguamenti dell'ambiente di lavoro. L'ambiente in cui si trovano gli agenti non influisce sul modo in cui la voce viene trasmessa sulla rete, ma ha un effetto sulla qualità delle chiamate. 
+ Impostazioni della workstation dell'agente. Le configurazioni hardware e di rete per le workstation dei contact center hanno effetti significativi sulla qualità delle chiamate.
+ Impostazioni del browser. Gli agenti utilizzano un browser Web per accedere al sito Web Amazon Connect Contact Control Panel (CCP) e comunicare con i clienti, in modo che le impostazioni del browser possano influire sulla qualità delle chiamate.

Anche i seguenti componenti possono influire sulla qualità delle chiamate, ma non rientrano nell'ambito della workstation e non rientrano in questo schema:
+ Flussi di traffico verso il cloud Amazon Web Services (AWS) tramite AWS Direct Connect, una VPN a tunnel completo o una VPN a tunnel diviso  
+ Condizioni di rete quando si lavora all'interno o all'esterno della sede aziendale
+ Connettività alla rete telefonica pubblica commutata (PSTN)
+ Il dispositivo e l'operatore telefonico del cliente
+ Configurazione dell'infrastruttura desktop virtuale (VDI)

Per ulteriori informazioni su queste aree, consulta [Problemi comuni del Pannello di controllo dei contatti (CCP)](https://docs.aws.amazon.com/connect/latest/adminguide/common-ccp-issues.html) e [Utilizzo dell'Endpoint Test Utility nella documentazione](https://docs.aws.amazon.com/connect/latest/adminguide/check-connectivity-tool.html) di Amazon Connect.

## Prerequisiti e limitazioni
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers-prereqs"></a>

**Prerequisiti**
+ Le cuffie e le workstation devono soddisfare i requisiti specificati nella [Amazon Connect Administrator Guide](https://docs.aws.amazon.com/connect/latest/adminguide/ccp-agent-hardware.html). 

**Limitazioni**
+ Le tecniche di ottimizzazione descritte in questo modello si applicano alla qualità vocale dei soft phone. Non si applicano quando configuri Amazon Connect CCP in modalità telefono fisso. Tuttavia, puoi utilizzare la modalità telefono fisso se la configurazione del softphone non offre una qualità vocale accettabile per la chiamata.

**Versioni del prodotto**
+ Per i browser e le versioni supportati, consulta la [Amazon Connect Administrator Guide](https://docs.aws.amazon.com/connect/latest/adminguide/browsers.html).

## Architecture
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers-architecture"></a>

Questo modello è indipendente dall'architettura perché si riferisce alle impostazioni delle workstation degli agenti. Come illustrato nel diagramma seguente, il percorso vocale dall'agente al cliente è influenzato dall'auricolare, dal browser, dal sistema operativo, dall'hardware della workstation e dalla rete dell'operatore.

![\[Percorso vocale dall'agente al cliente nelle chiamate alla workstation Amazon Connect\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/04ac4c80-30c4-4a48-8411-e3aac7bc2887/images/04e94efc-39d1-424d-a299-89ea17d40153.png)


Nei contact center Amazon Connect, la connettività audio dell'utente viene stabilita con WebRTC. La voce è codificata con il [codec audio interattivo Opus](https://opus-codec.org/) e crittografata con il Secure Real-time Transport Protocol (SRTP) in transito. Sono possibili altre architetture di rete, tra cui VPN, reti WAN/LAN private e reti ISP.

## Tools (Strumenti)
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers-tools"></a>
+ [Amazon Connect Endpoint Test Utility](https://tools.connect.aws/endpoint-test/): questa utilità verifica la connettività di rete e le impostazioni del browser.
+ Editor di configurazione del browser per le impostazioni WebRTC:
  + **Per Firefox: about:config**
  + **Per Chrome: chrome: //flags**
+ [CCP Log Parser](https://tools.connect.aws/ccp-log-parser/index.html): questo strumento consente di analizzare i log CCP per la risoluzione dei problemi.

## Epiche
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers-epics"></a>

### Modifica l'ambiente di lavoro
<a name="adjust-the-work-environment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Riduci il rumore di fondo. | Evita ambienti rumorosi. Se ciò non è possibile, ottimizza l'ambiente con questi suggerimenti per l'insonorizzazione:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html) | Agente, manager | 

### Ottimizza le impostazioni della postazione di lavoro degli agenti
<a name="optimize-agent-workstation-settings"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Scegli l'auricolare giusto. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html) | Agente, responsabile | 
| Usa l'auricolare come previsto. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html) | Agente | 
| Controlla le risorse della workstation. | Assicurati che i computer dei tuoi agenti siano performanti. Se utilizzano applicazioni di terze parti che consumano risorse, i loro computer potrebbero non soddisfare i [requisiti hardware](https://docs.aws.amazon.com/connect/latest/adminguide/ccp-agent-hardware.html) minimi per eseguire CCP. Se gli agenti riscontrano problemi di qualità delle chiamate, assicuratevi che abbiano sufficiente potenza di elaborazione (CPU), spazio su disco, larghezza di banda di rete e memoria per CCP. Gli agenti devono chiudere tutte le applicazioni e le schede non necessarie per migliorare le prestazioni del CCP e la qualità delle chiamate. | Amministratore | 
| Configura le impostazioni audio del sistema operativo. | Le impostazioni predefinite per il livello e l'amplificazione del microfono di solito funzionano bene. Se riscontri che la voce in uscita è bassa o il microfono capta troppo, potrebbe essere utile modificare queste impostazioni. Le impostazioni del microfono sono disponibili nella configurazione audio del sistema del computer (**Suono**, **Input** su [macOS](https://support.apple.com/en-gb/guide/mac-help/mchlp2567/12.0/mac/12.0), **Proprietà microfono** in [Windows](https://support.microsoft.com/en-us/windows/fix-microphone-problems-5f230348-106d-bfa4-1db5-336f35576011)). Puoi accedere alle impostazioni avanzate che potrebbero influire sulla qualità della voce tramite strumenti di sistema o applicazioni di terze parti. Ecco alcune delle impostazioni che puoi controllare:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html)Se riscontri problemi di qualità della voce, prova a ripristinare questi valori alle impostazioni predefinite prima di approfondire.Per ulteriori informazioni su queste e altre impostazioni regolabili, consulta il manuale del dispositivo. | Agente, amministratore | 
| Usa una rete cablata. | In genere, la rete Ethernet cablata ha una latenza inferiore, quindi è più facile fornire la qualità di trasmissione costante richiesta per la trasmissione di dati vocali.  Consigliamo una larghezza di banda minima di 100 KB per chiamata. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html) | Amministratore di rete, agente | 
| Aggiorna i driver hardware. | Quando utilizzi una cuffia USB o un altro tipo di cuffia dotata di un proprio firmware, ti consigliamo di mantenerla aggiornata alla versione più recente. Le cuffie semplici che utilizzano una porta ausiliaria utilizzano il dispositivo audio integrato del computer, quindi assicurati che il driver hardware del sistema operativo sia aggiornato. In rari casi, l'aggiornamento di un driver audio può causare problemi audio e potrebbe essere necessario ripristinarlo. Per ulteriori informazioni sulla modifica delle versioni del firmware e dei driver, consultate il manuale del dispositivo. | Amministratore | 
| Evita gli hub e i dongle USB. | Quando colleghi l'auricolare, evita dispositivi aggiuntivi come dongle, convertitori di tipo porta, hub e cavi di estensione.Questi dispositivi potrebbero influire sulla qualità delle chiamate. Connect invece il dispositivo direttamente alla porta del computer. | Agente | 
| Controlla i registri CCP. | Il CCP Log Parser offre un modo semplice per controllare i log delle applicazioni.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html) | Agente (competenze avanzate) | 

### Ottimizza le impostazioni del browser
<a name="optimize-browser-settings"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Ripristina le impostazioni WebRTC predefinite. | WebRTC deve essere abilitato per effettuare chiamate soft phone con CCP. Si consiglia di mantenere le impostazioni predefinite per le funzionalità relative a WebRTC. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers.html) | Amministratore | 
| Disattiva le estensioni del browser durante la risoluzione dei problemi. | Alcune estensioni del browser potrebbero influire sulla qualità delle chiamate o addirittura impedire il corretto collegamento delle chiamate. Utilizza la finestra di navigazione in incognito o la modalità privata del browser e disattiva tutte le estensioni. Se questo risolve il problema, esamina le estensioni del browser e cerca componenti aggiuntivi sospetti oppure disattivali singolarmente. | Agente, amministratore | 
| Controlla la frequenza di campionamento del browser.  | Verifica che l'ingresso del microfono sia impostato sulla frequenza di campionamento ottimale di 48 kHz. Per istruzioni, consulta la [Amazon Connect Administrator Guide](https://docs.aws.amazon.com/connect/latest/adminguide/verify-sample-rate.html). | Agente, amministratore | 

## Risorse correlate
<a name="improve-call-quality-on-agent-workstations-in-amazon-connect-contact-centers-resources"></a>

Se hai seguito i passaggi indicati in questo schema ma continui a riscontrare problemi con la qualità delle chiamate, consulta le seguenti risorse per suggerimenti sulla risoluzione dei problemi.
+ Esamina i [problemi più comuni relativi al Contact Control Panel (CCP).](https://docs.aws.amazon.com/connect/latest/adminguide/common-ccp-issues.html)
+ Verifica la connessione con l'[Endpoint Test Utility](https://docs.aws.amazon.com/en_us/connect/latest/adminguide/check-connectivity-tool.html).
+ Segui la [guida alla risoluzione dei problemi](https://docs.aws.amazon.com/connect/latest/adminguide/troubleshooting.html) per qualsiasi altro problema. 

Se la risoluzione dei problemi e le regolazioni non risolvono il problema della qualità delle chiamate, la causa principale potrebbe essere esterna alla workstation. Per ulteriori informazioni sulla risoluzione dei problemi, contattate il team di supporto IT. 

# Altri modelli
<a name="messagingandcommunications-more-patterns-pattern-list"></a>

**Topics**
+ [Scomponi i monoliti in microservizi utilizzando CQRS e l'event sourcing](decompose-monoliths-into-microservices-by-using-cqrs-and-event-sourcing.md)
+ [Implementa una ChatOps soluzione per gestire i risultati della scansione SAST utilizzando Amazon Q Developer nelle applicazioni di chat, azioni personalizzate e CloudFormation](deploy-chatops-solution-to-manage-sast-scan-results.md)
+ [Integra Amazon API Gateway con Amazon SQS per gestire REST asincrono APIs](integrate-amazon-api-gateway-with-amazon-sqs-to-handle-asynchronous-rest-apis.md)
+ [Semplifica lo sviluppo e la distribuzione di bot Amazon Lex utilizzando un flusso di lavoro automatizzato](streamline-amazon-lex-bot-development-and-deployment-using-an-automated-workflow.md)

# Strategia multi-account
<a name="multiaccountstrategy-pattern-list"></a>

**Topics**
+ [Esegui la migrazione di un account AWS membro da a AWS Organizations AWS Control Tower](migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower.md)
+ [Imposta avvisi per la chiusura programmatica degli account in AWS Organizations](set-up-alerts-for-programmatic-account-closures-in-aws-organizations.md)
+ [Altri modelli](multiaccountstrategy-more-patterns-pattern-list.md)

# Esegui la migrazione di un account AWS membro da a AWS Organizations AWS Control Tower
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower"></a>

*Rodolfo Junior Cerrada, Amazon Web Services*

## Riepilogo
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-summary"></a>

Questo modello descrive come migrare Account AWS da AWS Organizations un account membro a un account di gestione verso. AWS Control Tower Registrando l'account AWS Control Tower, puoi sfruttare i controlli e le funzionalità preventivi e investigativi che semplificano la governance dell'account. Potresti anche voler migrare il tuo account membro se il tuo account di gestione AWS Organizations è stato compromesso e desideri trasferire gli account membro in una nuova organizzazione governata da. AWS Control TowerAWS Control Tower 

AWS Control Tower fornisce un framework che combina e integra le funzionalità di molti altri Servizi AWS AWS Organizations, tra cui e garantisce conformità e governance coerenti in tutto l'ambiente multi-account. Con AWS Control Tower, puoi seguire una serie di regole e definizioni prescritte che estendono le funzionalità di. AWS Organizations Ad esempio, è possibile utilizzare i controlli per garantire che i registri di sicurezza e le necessarie autorizzazioni di accesso tra account vengano creati e non modificati.

## Prerequisiti e limitazioni
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-prereqs"></a>

**Prerequisiti**
+ Un attivo Account AWS
+ AWS Control Tower configurato nell'organizzazione di destinazione in AWS Organizations (per istruzioni, consulta [Configurazione](https://docs.aws.amazon.com/controltower/latest/userguide/setting-up.html) nella AWS Control Tower documentazione)
+ Credenziali di amministratore per AWS Control Tower (membro del **AWSControlTowerAdmins**gruppo)
+ Credenziali di amministratore per la fonte Account AWS

**Limitazioni**
+ L'account di gestione di origine in AWS Organizations deve essere diverso dall'account di gestione di destinazione in AWS Control Tower.

**Versioni del prodotto**
+ AWS Control Tower versione 2.3 (febbraio 2020) o successiva (vedi [note di rilascio](https://docs.aws.amazon.com/controltower/latest/userguide/release-notes.html))

## Architecture
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-architecture"></a>

Il diagramma seguente illustra il processo di migrazione e l'architettura di riferimento. Questo modello migra il Account AWS dall'organizzazione di origine a un'organizzazione di destinazione governata da. AWS Control Tower 

![\[Processo di registrazione di AWS Control Tower per un account AWS migrato a un'altra organizzazione e trasferito in un'unità organizzativa registrata.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/1fc2c2f0-fa5d-4068-a2b2-9e57cea2aff5/images/0654d242-0faa-4810-9e53-40ef89305b5b.png)


Il processo di registrazione consiste nei seguenti passaggi:

1. L'organizzazione di destinazione invia un invito affinché l'account entri a far parte dell'organizzazione. 

1. L'account accetta l'invito e diventa membro dell'organizzazione target.

1. L'account viene registrato AWS Control Tower e trasferito in un'unità organizzativa (OU) registrata. (Ti consigliamo di controllare la AWS Control Tower dashboard per confermare l'iscrizione.) A questo punto, tutti i controlli abilitati nell'unità organizzativa registrata hanno effetto.

## Tools (Strumenti)
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-tools"></a>

**Servizi AWS**
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)è un servizio di gestione degli account che consente di consolidare più account Account AWS in un'unica entità (un'*organizzazione*) da creare e gestire centralmente.
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)integra le funzionalità di altri servizi, tra cui, e AWS Organizations AWS IAM Identity Center AWS Service Catalog, per aiutarvi a far rispettare e gestire le regole di governance per la sicurezza, le operazioni e la conformità su larga scala in tutte le organizzazioni e gli account del. Cloud AWS

## Epiche
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-epics"></a>

### Invita l'account a entrare a far parte della nuova organizzazione con AWS Control Tower
<a name="invite-the-account-to-join-the-new-organization-with-ctower"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Accedi a AWS Control Tower. | Accedi alla AWS Control Tower console come amministratore. Attualmente, non esiste un modo diretto per spostare un uomo Account AWS da un'organizzazione di origine a un'organizzazione in un'unità organizzativa governata da AWS Control Tower. Tuttavia, è possibile estendere la AWS Control Tower governance a un'organizzazione esistente Account AWS quando la si registra in un'unità organizzativa già governata da AWS Control Tower. Ecco perché è necessario accedere a AWS Control Tower questa fase. | Amministratore di AWS Control Tower | 
| Invita l'account membro. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower.html)Verifica che il trasferimento dell'account non influisca sulle applicazioni o sulla connettività di rete.Questa azione invia un'e-mail di invito con un link all'account del membro. Quando l'amministratore dell'account segue il link e accetta l'invito, l'account del membro viene visualizzato nella **Account AWS**pagina. Per ulteriori informazioni, consulta [Gestire gli inviti all'account](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_invites.html) nella AWS Organizations documentazione. | Amministratore di AWS Control Tower | 
| Testa applicazioni e connettività. | Quando l'account del membro è stato registrato nella nuova organizzazione, viene visualizzato nell'unità organizzativa all'interno di una cartella root. Viene inoltre visualizzato nella [AWS Control Tower console](https://console.aws.amazon.com/controltower), contrassegnato come non registrato negli account, perché non è ancora stato registrato nell'unità organizzativa registrata. AWS Control Tower Verificare quanto segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower.html) | Amministratore AWS Control Tower, amministratore dell'account membro, proprietari delle applicazioni | 

### Prepara l'account per la registrazione
<a name="prepare-the-account-for-enrollment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Rivedi i controlli e correggi eventuali violazioni. | Rivedi i controlli definiti nell'unità organizzativa di destinazione, in particolare i controlli preventivi, e correggi eventuali violazioni. Una serie di [controlli preventivi obbligatori](https://docs.aws.amazon.com/controltower/latest/controlreference/preventive-controls.html) sono abilitati di default quando configuri la AWS Control Tower landing zone. Questi non possono essere disabilitati. È necessario rivedere questi controlli obbligatori e correggere l'account del membro (manualmente o utilizzando uno script) prima di registrare l'account.I controlli preventivi mantengono gli account AWS Control Tower registrati conformi e prevengono le violazioni delle politiche. Qualsiasi violazione dei controlli preventivi potrebbe influire sull'iscrizione. Le violazioni del controllo investigativo vengono visualizzate nella AWS Control Tower dashboard, se rilevate, dopo l'avvenuta registrazione. Non influiscono sul processo di registrazione. Per ulteriori informazioni, consulta [Informazioni sui controlli](https://docs.aws.amazon.com/controltower/latest/controlreference/controls.html) nella AWS Control Tower documentazione. | Amministratore di AWS Control Tower, amministratore dell'account dei membri | 
| Verifica la presenza di problemi di connettività dopo aver corretto le violazioni di controllo. | In alcuni casi, potrebbe essere necessario chiudere porte specifiche o disabilitare servizi per correggere le violazioni di controllo. Assicurati che le applicazioni che utilizzano tali porte e servizi vengano corrette prima di registrare l'account. | Proprietario dell'applicazione | 

### Registra l'account in AWS Control Tower
<a name="enroll-the-account-into-ctowerlong"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Accedi a AWS Control Tower. | Accedi alla [console AWS Control Tower](https://console.aws.amazon.com/controltower). Utilizza credenziali di accesso con autorizzazioni amministrative per. AWS Control Tower Non utilizzare le credenziali dell'utente root (account di gestione) per registrare un account. AWS Organizations Verrà visualizzato un messaggio di errore. | Amministratore di AWS Control Tower | 
| Registra l'account. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower.html)Per ulteriori informazioni, consulta [Informazioni sulla registrazione degli account esistenti](https://docs.aws.amazon.com/controltower/latest/userguide/enroll-account.html) nella AWS Control Tower documentazione. | Amministratore di AWS Control Tower | 

### Verifica l'account dopo l'iscrizione
<a name="verify-the-account-after-enrollment"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Verifica l'account. | Da AWS Control Tower, scegli **Account**. L'account che hai appena registrato ha lo stato iniziale di **Iscrizione**. **Una volta completata l'iscrizione, lo stato cambia in Registrato.** | Amministratore di AWS Control Tower, amministratore dell'account dei membri | 
| Verifica la presenza di violazioni di controllo. | I controlli definiti nell'unità organizzativa verranno applicati automaticamente all'account membro registrato. Monitora la AWS Control Tower dashboard per rilevare eventuali violazioni e correggile di conseguenza. Per ulteriori informazioni, consulta [Informazioni sui controlli](https://docs.aws.amazon.com/controltower/latest/controlreference/controls.html) nella AWS Control Tower documentazione. | Amministratore di AWS Control Tower, amministratore dell'account dei membri | 

## risoluzione dei problemi
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Riceverai il messaggio di errore: **Si è verificato un errore sconosciuto. Riprova più tardi o contatta l' AWS assistenza.**  | Questo errore si verifica quando si utilizzano le credenziali dell'utente root (account di gestione) AWS Control Tower per registrare un nuovo account. AWS Service Catalog non riesce a mappare il portafoglio o il prodotto Account Factory all'utente root, il che genera il messaggio di errore. Per correggere questo errore, utilizza credenziali utente (amministratore) non root con accesso completo per registrare il nuovo account. Per ulteriori informazioni su come assegnare l'accesso amministrativo a un utente amministrativo, consulta [Guida introduttiva](https://docs.aws.amazon.com/singlesignon/latest/userguide/getting-started.html) nella documentazione di IAM Identity Center. | 
| La pagina AWS Control Tower **Attività** mostra un'azione **Get Catastrophic** Drift. | Questa azione riflette un controllo della situazione del servizio e non indica alcun problema con la configurazione. AWS Control Tower Nessuna operazione richiesta. | 

## Risorse correlate
<a name="migrate-an-aws-member-account-from-aws-organizations-to-aws-control-tower-resources"></a>

**Documentazione**
+ [Terminologia e concetti (documentazione](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html))AWS Organizations 
+ [Che cos'è AWS Control Tower?](https://docs.aws.amazon.com/controltower/latest/userguide/) (AWS Control Tower documentazione)
+ [Rimuovere un account membro da un'organizzazione](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_remove.html#leave-without-all-info) (AWS Organizations documentazione)
+ [Configurazione](https://docs.aws.amazon.com/controltower/latest/userguide/setting-up.html#setting-up-iam) (AWS Control Tower documentazione)

**Tutorial e video**
+ [AWS Control Tower workshop (workshop](https://catalog.workshops.aws/control-tower/) autogestito)
+ [Che cos'è? AWS Control Tower](https://www.youtube.com/watch?v=daLvEb44d5Q) (video)
+ [Assegnazione di ruoli agli utenti in AWS Control Tower](https://www.youtube.com/watch?v=y_n9xN5mg1g) (video)

# Imposta avvisi per la chiusura programmatica degli account in AWS Organizations
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations"></a>

*Richard Milner-Watts, Debojit Bhadra e Manav Yadav, Amazon Web Services*

## Riepilogo
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations-summary"></a>

L'[CloseAccount API](https://docs.aws.amazon.com/organizations/latest/APIReference/API_CloseAccount.html) for [AWS Organizations](https://aws.amazon.com/organizations/) consente di chiudere gli account dei membri all'interno di un'organizzazione in modo programmatico, senza dover accedere all'account con credenziali root. L'[RemoveAccountFromOrganization API](https://docs.aws.amazon.com/organizations/latest/APIReference/API_RemoveAccountFromOrganization.html) estrae un account da un'organizzazione in AWS Organizations, quindi diventa un account autonomo.

Questi APIs potrebbero aumentare il numero di operatori che possono chiudere o rimuovere un account AWS. Tutti gli utenti che hanno accesso all'organizzazione tramite AWS Identity and Access Management (IAM) nell'account di gestione AWS Organizations possono richiamarli APIs, quindi l'accesso non è limitato al proprietario dell'e-mail root dell'account con qualsiasi dispositivo di autenticazione a più fattori (MFA) associato.

Questo modello implementa avvisi quando `RemoveAccountFromOrganization` APIs vengono chiamati i `CloseAccount` e, quindi, è possibile monitorare queste attività. Per gli avvisi, utilizza un argomento [Amazon Simple Notification Service](https://aws.amazon.com/sns/) (Amazon SNS). [Puoi anche configurare le notifiche Slack tramite un webhook.](https://api.slack.com/messaging/webhooks)

## Prerequisiti e limitazioni
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo
+ Un'organizzazione in AWS Organizations
+ Accesso all'account di gestione dell'organizzazione, nella directory principale dell'organizzazione, per creare le risorse necessarie

**Limitazioni**
+ Come descritto nel [riferimento all'API di AWS Organizations](https://docs.aws.amazon.com/organizations/latest/APIReference/API_CloseAccount.html), l'`CloseAccount`API consente di chiudere solo il 10% degli account dei membri attivi entro un periodo continuativo di 30 giorni.
+ Quando un account AWS viene chiuso, il suo stato viene modificato in SOSPESO. Per 90 giorni dopo questa transizione di status, AWS Support può riaprire l'account. Dopo 90 giorni l'account viene eliminato definitivamente.
+ Utenti che hanno accesso all'account di gestione di AWS Organizations e APIs potrebbero anche disporre delle autorizzazioni per disabilitare questi avvisi. Se la preoccupazione principale è il comportamento dannoso anziché l'eliminazione accidentale, prendi in considerazione la possibilità di proteggere le risorse create da questo modello con un limite di [autorizzazioni IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html).
+ L'API richiede `CloseAccount ` e `RemoveAccountFromOrganization` viene elaborata nella regione Stati Uniti orientali (Virginia settentrionale) (). `us-east-1` Pertanto, è necessario implementare questa soluzione per osservare gli eventi. `us-east-1`

## Architecture
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations-architecture"></a>

**Stack tecnologico Target**
+ AWS Organizations
+ AWS CloudTrail
+ Amazon EventBridge
+ AWS Lambda
+ Amazon SNS

**Architettura Target**

Il diagramma seguente mostra l'architettura della soluzione per questo modello.

 

![\[Architettura per la configurazione di avvisi in AWS Organizations per la chiusura degli account\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/ba9d9db1-fab8-4e3b-a1bb-f0be91ade5c6/images/92caee55-2722-4ba2-bdd2-66f1af35dce5.png)


1. AWS Organizations elabora una `RemoveAccountFromOrganization` richiesta `CloseAccount` or.

1. Amazon EventBridge è integrato con AWS CloudTrail per inviare questi eventi al bus eventi predefinito.

1. Una EventBridge regola Amazon personalizzata corrisponde alle richieste di AWS Organizations e chiama una funzione AWS Lambda.

1. La funzione Lambda invia un messaggio a un argomento SNS, a cui gli utenti possono iscriversi per ricevere avvisi e-mail o ulteriori elaborazioni.

1. Se le notifiche Slack sono abilitate, la funzione Lambda invia un messaggio a un webhook Slack.

## Tools (Strumenti)
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations-tools"></a>

**Servizi AWS**
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) offre un modo per modellare una raccolta di risorse AWS e di terze parti correlate, fornirle in modo rapido e coerente e gestirle durante tutto il loro ciclo di vita, trattando l'infrastruttura come codice.
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) è un servizio di bus eventi senza server che puoi utilizzare per connettere le tue applicazioni con dati provenienti da una varietà di fonti. EventBridge riceve un evento, un indicatore di un cambiamento nell'ambiente e applica una regola per indirizzare l'evento verso un obiettivo. Le regole abbinano gli eventi agli obiettivi in base alla struttura dell'evento, chiamata *pattern di evento*, o a una pianificazione.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di elaborazione che supporta l'esecuzione di codice senza effettuare il provisioning o la gestione di server. Lambda esegue il codice solo quando necessario e si ridimensiona automaticamente, da poche richieste al giorno a migliaia al secondo. I costi saranno calcolati in base al tempo di elaborazione effettivo. Quando il codice non è in esecuzione non viene addebitato alcun costo.
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html) ti aiuta a gestire e governare centralmente il tuo ambiente man mano che cresci e ridimensioni le tue risorse AWS. Con AWS Organizations, puoi creare in modo programmatico nuovi account AWS e allocare risorse, raggruppare account per organizzare i flussi di lavoro, applicare policy ad account o gruppi per la governance e semplificare la fatturazione utilizzando un unico metodo di pagamento per tutti i tuoi account.
+ [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) monitora e registra l'attività degli account nell'infrastruttura AWS e ti offre il controllo sulle azioni di storage, analisi e correzione.
+ [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) è un servizio di messaggistica completamente gestito per application-to-application le comunicazioni (A2A) e (A2P) application-to-person.

**Altri strumenti**
+ La [libreria AWS Lambda Powertools for Python](https://docs.powertools.aws.dev/lambda/python/latest/) è un insieme di utilità che forniscono funzionalità di tracciamento, registrazione, metriche e gestione degli eventi per le funzioni Lambda.

**Codice**

Il codice per questo pattern si trova nel repository GitHub [AWS Account Closer Notifier](https://github.com/aws-samples/aws-account-closure-notifier).

La soluzione include un CloudFormation modello che implementa l'architettura per questo pattern. Utilizza la [libreria AWS Lambda Powertools for Python](https://docs.powertools.aws.dev/lambda/python/latest/) per fornire registrazione e tracciamento.

## Epiche
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations-epics"></a>

### Implementa l'architettura
<a name="deploy-the-architecture"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Avvia il CloudFormation modello per lo stack di soluzioni. | Il CloudFormation modello per questo modello si trova nel ramo principale del [GitHub repository](https://github.com/aws-samples/aws-account-closure-notifier). Implementa i ruoli, EventBridge le regole, le funzioni Lambda e l'argomento SNS di IAM.Per avviare il modello:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-alerts-for-programmatic-account-closures-in-aws-organizations.html)Per ulteriori informazioni sul lancio di uno CloudFormation stack, consulta la documentazione [AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html). | Amministratore AWS | 
| Verifica che la soluzione sia stata avviata correttamente. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-alerts-for-programmatic-account-closures-in-aws-organizations.html) | Amministratore AWS | 
| Iscriviti all'argomento SNS. | (Facoltativo) Se desideri iscriverti all'argomento SNS:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-alerts-for-programmatic-account-closures-in-aws-organizations.html)Per ulteriori informazioni sulla configurazione delle notifiche SNS, consulta la documentazione di [Amazon SNS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/US_SetupSNS.html). | Amministratore AWS | 

### Verifica la soluzione
<a name="verify-the-solution"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Invia un evento di test al bus eventi predefinito. | Il [GitHub repository](https://github.com/aws-samples/aws-account-closure-notifier) fornisce un esempio di evento che è possibile inviare al bus di eventi EventBridge predefinito per il test. La EventBridge regola reagisce anche agli eventi che utilizzano l'origine degli eventi personalizzata. `account.closure.notifier`Non puoi utilizzare l'origine CloudTrail dell'evento per inviare questo evento, perché non è possibile inviare un evento come servizio AWS.Per inviare un evento di test:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/set-up-alerts-for-programmatic-account-closures-in-aws-organizations.html) | Amministratore AWS | 
| Verifica che la notifica via e-mail sia stata ricevuta. | Controlla la casella di posta che ha sottoscritto l'argomento SNS per le notifiche. Dovresti ricevere un'e-mail con i dettagli dell'account che è stato chiuso e del principale che ha eseguito la chiamata API. | Amministratore AWS | 
| Verifica che la notifica Slack sia stata ricevuta. | (Facoltativo) Se hai specificato un URL del webhook per il `SlackWebhookEndpoint` parametro quando hai distribuito il CloudFormation modello, controlla il canale Slack mappato al webhook. Dovrebbe visualizzare un messaggio con i dettagli dell'account che è stato chiuso e del principale che ha eseguito la chiamata API. | Amministratore AWS | 

## Risorse correlate
<a name="set-up-alerts-for-programmatic-account-closures-in-aws-organizations-resources"></a>
+ [CloseAccount azione](https://docs.aws.amazon.com/organizations/latest/APIReference/API_CloseAccount.html) (riferimento all'API AWS Organizations)
+ [RemoveAccountFromOrganization azione](https://docs.aws.amazon.com/organizations/latest/APIReference/API_RemoveAccountFromOrganization.html) (riferimento all'API AWS Organizations)
+ [AWS Lambda Powertools per Python](https://docs.powertools.aws.dev/lambda/python/latest/)

# Altri modelli
<a name="multiaccountstrategy-more-patterns-pattern-list"></a>

**Topics**
+ [Automatizza la creazione di account utilizzando Landing Zone Accelerator su AWS](automate-account-creation-lza.md)
+ [Eliminazione automatica degli AWS CloudFormation stack e delle risorse associate](automate-deletion-cloudformation-stacks-associated-resources.md)
+ [Automatizza la gestione dinamica delle pipeline per l'implementazione di soluzioni hotfix in ambienti Gitflow utilizzando e AWS Service Catalog AWS CodePipeline](automate-dynamic-pipeline-management-for-deploying-hotfix-solutions.md)
+ [Crea una rete dati aziendale con Amazon DataZone e AWS CDK AWS CloudFormation](build-enterprise-data-mesh-amazon-data-zone.md)
+ [Centralizza il monitoraggio utilizzando Amazon CloudWatch Observability Access Manager](centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.md)
+ [Gestisci i set di autorizzazioni per più account utilizzando Account Factory for Terraform](govern-permission-sets-aft.md)
+ [Implementa una strategia di ramificazione Gitflow per ambienti con più account DevOps](implement-a-gitflow-branching-strategy-for-multi-account-devops-environments.md)
+ [Implementa una strategia di ramificazione GitHub Flow per ambienti con più account DevOps](implement-a-github-flow-branching-strategy-for-multi-account-devops-environments.md)
+ [Implementa una strategia di ramificazione Trunk per ambienti con più account DevOps](implement-a-trunk-branching-strategy-for-multi-account-devops-environments.md)
+ [Gestisci i set di AWS autorizzazioni in modo dinamico utilizzando Terraform](manage-aws-permission-sets-dynamically-by-using-terraform.md)
+ [Crea un'architettura IPAM gerarchica e multiregionale utilizzando Terraform AWS](multi-region-ipam-architecture.md)
+ [Imposta il rilevamento della CloudFormation deriva in un'organizzazione multiregionale e con più account](set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization.md)
+ [Configura la risoluzione DNS per reti ibride in un ambiente multi-account AWS](set-up-dns-resolution-for-hybrid-networks-in-a-multi-account-aws-environment.md)