

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

# Automatizza il failover e il failback tra regioni utilizzando DR Orchestrator Framework
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework"></a>

*Jitendra Kumar, Pavithra Balasubramanian e Oliver Francis, Amazon Web Services*

## Riepilogo
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-summary"></a>

Questo modello descrive come utilizzare [DR Orchestrator Framework](https://docs.aws.amazon.com/prescriptive-guidance/latest/automate-dr-solution-relational-database/dr-orchestrator-framework-overview.html) per orchestrare e automatizzare i passaggi manuali, soggetti a errori, per eseguire il disaster recovery nelle regioni di Amazon Web Services ().AWS Il modello copre i seguenti database:
+ Amazon Relational Database Service (Amazon RDS) per MySQL, Amazon RDS per PostgreSQL o Amazon RDS per MariaDB
+ Edizione compatibile con Amazon Aurora MySQL o edizione compatibile con Amazon Aurora PostgreSQL (utilizzando un file centralizzato)
+ Amazon ElastiCache (sistema operativo Redis)

Per dimostrare la funzionalità di DR Orchestrator Framework, crei due istanze o cluster DB. Il primario è in e il Regione AWS `us-east-1` secondario è in. `us-west-2` Per creare queste risorse, si utilizzano i AWS CloudFormation modelli nella `App-Stack` cartella del GitHub repository [aws-cross-region-dr-databases](https://github.com/aws-samples/aws-cross-region-dr-databases).

## Prerequisiti e limitazioni
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-prereqs"></a>

**Prerequisiti generali**
+ DR Orchestrator Framework distribuito sia in modalità primaria che secondaria Regioni AWS
+ Due [bucket Amazon Simple Storage Service](https://aws.amazon.com/s3/)
+ Un [cloud privato virtuale (VPC)](https://aws.amazon.com/vpc/) con due sottoreti e un gruppo di sicurezza AWS 

**Prerequisiti specifici del motore**
+ **Amazon Aurora**: almeno un database globale di Aurora deve essere disponibile in due. Regioni AWSÈ possibile utilizzare `us-east-1` come regione principale e `us-west-2` come regione secondaria.
+ **Amazon ElastiCache (Redis OSS)**: un datastore ElastiCache globale deve essere disponibile in due. Regioni AWS Puoi `use us-east-1` utilizzarla come regione principale e `us-west-2` come regione secondaria.

**Limitazioni di Amazon RDS**
+ DR Orchestrator Framework non verifica il ritardo di replica prima di eseguire un failover o un failback. Il ritardo di replica deve essere controllato manualmente.
+ Questa soluzione è stata testata utilizzando un'istanza di database principale con una replica di lettura. Se desideri utilizzare più di una replica di lettura, testa accuratamente la soluzione prima di implementarla in un ambiente di produzione.

**Limitazioni di Aurora**
+ La disponibilità e il supporto delle funzionalità variano a seconda delle versioni specifiche di ciascun motore di database e tra Regioni AWS di loro. Per ulteriori informazioni sulle funzionalità e sulla disponibilità regionale per la replica tra regioni, consulta Repliche di lettura [tra regioni](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RDS_Fea_Regions_DB-eng.Feature.CrossRegionReadReplicas.html).
+ I database globali Aurora hanno requisiti di configurazione specifici per le classi di istanze Aurora DB supportate e il numero massimo di. Regioni AWS Per ulteriori informazioni, consulta [Requisiti di configurazione di un database globale Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.configuration.requirements).
+ Questa soluzione è stata testata utilizzando un'istanza di database principale con una replica di lettura. Se desideri utilizzare più di una replica di lettura, testa accuratamente la soluzione prima di implementarla in un ambiente di produzione.

**ElastiCache limitazioni**
+ Per informazioni sulla disponibilità regionale per Global Datastore e sui requisiti di ElastiCache configurazione, consulta [Prerequisiti e limitazioni nella documentazione](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-Getting-Started.html). ElastiCache 

****Versioni del prodotto Amazon RDS p****

Amazon RDS supporta le seguenti versioni del motore:
+ **MySQL** — Amazon RDS supporta istanze DB che eseguono le seguenti versioni di MySQL: MySQL 8.0 e [MySQL 5.7](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html)
+ **PostgreSQL**[: per informazioni sulle versioni supportate di Amazon RDS for PostgreSQL, consulta Versioni disponibili del database PostgreSQL.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions)
+ **MariaDB** [— Amazon RDS supporta istanze DB che eseguono le seguenti versioni di MariaDB:](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html)
  + MariaDB 10.11
  + MariaDB 10.6
  + MariaDB 10.5

**Versioni del prodotto Aurora**
+ Il passaggio al database globale di Amazon Aurora richiede Aurora MySQL, compatibile con MySQL 5.7, versione 2.09.1 e successive

  Per ulteriori informazioni, consulta [Limitazioni dei database globali di Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html#aurora-global-database.limitations).

**ElastiCache Versioni del prodotto (Redis OSS)**

Amazon ElastiCache (Redis OSS) supporta le seguenti versioni di Redis:
+ Redis 7.1 (avanzata)
+ Redis 7.0 (avanzata)
+ Redis 6.2 (avanzato)
+ Redis 6.0 (avanzato)
+ Redis 5.0.6 (potenziato)

Per ulteriori informazioni, consulta Versioni [supportate ElastiCache (Redis OSS](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-Getting-Started.html)).

## Architecture
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-architecture"></a>

****Architettura Amazon RDS****

L'architettura Amazon RDS include le seguenti risorse:
+ L'istanza database Amazon RDS primaria creata nella regione primaria (`us-east-1`) con read/write accesso per i client
+ Una replica di lettura Amazon RDS creata nella regione secondaria (`us-west-2`) con accesso in sola lettura per i client
+ DR Orchestrator Framework distribuito sia nella regione primaria che in quella secondaria

![\[Diagramma dell'architettura RDS a due regioni in un singolo account AWS.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/8d39561f-924e-4b3e-8175-c5c3cab163bd/images/ad217033-600c-40da-929c-b9f9aecb4c2c.png)


Il diagramma mostra:

1. Replica asincrona tra l'istanza primaria e l'istanza secondaria

1. Accesso in lettura/scrittura per i client nella regione principale

1. Accesso in sola lettura per i client nella regione secondaria

**Architettura Aurora**

L'architettura Amazon Aurora include le seguenti risorse:
+ Il cluster Aurora DB primario creato nella regione primaria (`us-east-1`) con un endpoint active-writer
+ Un cluster Aurora DB creato nella regione secondaria (`us-west-2`) con un endpoint inactive-writer
+ DR Orchestrator Framework distribuito sia nella regione primaria che in quella secondaria

![\[Diagramma dell'implementazione di Aurora in due regioni in un singolo account AWS.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/8d39561f-924e-4b3e-8175-c5c3cab163bd/images/524ec002-5aa7-47b2-8c8d-6d1a3b535e9e.png)


Il diagramma mostra:

1. Replica asincrona tra il cluster primario e il cluster secondario

1. Il cluster DB primario con un endpoint active-writer

1. Il cluster DB secondario con un endpoint di scrittura inattiva

**ElastiCache Architettura (Redis OSS)**

L'architettura Amazon ElastiCache (Redis OSS) include le seguenti risorse:
+ Un datastore globale ElastiCache (Redis OSS) creato con due cluster:

  1. Il cluster primario nella regione primaria () `us-east-1`

  1. Il cluster secondario nella regione secondaria (`us-west-2`)
+ Un collegamento Amazon interregionale con crittografia TLS 1.2 tra i due cluster
+ DR Orchestrator Framework distribuito nelle regioni primarie e secondarie

![\[Diagramma di una ElastiCache distribuzione in due regioni con collegamento Amazon Cross-region.\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/8d39561f-924e-4b3e-8175-c5c3cab163bd/images/cf6620a0-dd42-4042-8dc2-012bf514ffc0.png)


**Automazione e scalabilità**

DR Orchestrator Framework è scalabile e supporta il failover o il failback di più di un database in parallelo. AWS 

Puoi utilizzare il seguente codice di payload per eseguire il failover di più database del tuo account. AWS In questo esempio, tre AWS database (due database globali come Aurora MySQL compatibile o Aurora PostgreSQL e un'istanza Amazon RDS for MySQL) eseguono il failover nella regione DR:

```
{
  "StatePayload": [
    {
      "layer": 1,
      "resources": [
        {
          "resourceType": "PlannedFailoverAurora",
          "resourceName": "Switchover (planned failover) of Amazon Aurora global databases (MySQL)",
          "parameters": {
            "GlobalClusterIdentifier": "!Import dr-globaldb-cluster-mysql-global-identifier",
            "DBClusterIdentifier": "!Import dr-globaldb-cluster-mysql-cluster-identifier" 
          }
        },
        {
          "resourceType": "PlannedFailoverAurora",
          "resourceName": "Switchover (planned failover) of Amazon Aurora global databases (PostgreSQL)",
          "parameters": {
            "GlobalClusterIdentifier": "!Import dr-globaldb-cluster-postgres-global-identifier",
            "DBClusterIdentifier": "!Import dr-globaldb-cluster-postgres-cluster-identifier" 
          }
        },
        {
          "resourceType": "PromoteRDSReadReplica",
          "resourceName": "Promote RDS for MySQL Read Replica",
          "parameters": {
            "RDSInstanceIdentifier": "!Import rds-mysql-instance-identifier",
            "TargetClusterIdentifier": "!Import rds-mysql-instance-global-arn"
          }
        }         
      ]
    }
  ]
}
```

## Tools (Strumenti)
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-tools"></a>

**AWS servizi**
+ [Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) è un motore di database relazionale completamente gestito creato per il cloud e compatibile con MySQL e PostgreSQL.
+ [Amazon](https://docs.aws.amazon.com/elasticache/) ti ElastiCache aiuta a configurare, gestire e scalare ambienti di cache in memoria distribuiti in. Cloud AWS Questo modello utilizza Amazon ElastiCache (Redis OSS).
+ [AWS Lambda](https://aws.amazon.com/lambda/) è 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. In questo modello, le funzioni Lambda vengono utilizzate AWS Step Functions per eseguire i passaggi.
+ [Amazon Relational Database Service (Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)) ti aiuta a configurare, gestire e scalare un database relazionale in. Cloud AWS Questo modello supporta Amazon RDS for MySQL, Amazon RDS per PostgreSQL e Amazon RDS per MariaDB.
+ [AWS SDK per Python (Boto3)](https://aws.amazon.com/sdk-for-python/)ti aiuta a integrare la tua applicazione, libreria o script Python con. Servizi AWS In questo modello, i Boto3 APIs vengono utilizzati per comunicare con le istanze del database o i database globali.
+ [AWS Step Functions](https://aws.amazon.com/step-functions/)è un servizio di orchestrazione senza server che consente di combinare AWS Lambda funzioni e altro per creare applicazioni aziendali critiche. Servizi AWS In questo modello, le macchine a stati Step Functions vengono utilizzate per orchestrare ed eseguire il failover e il failback interregionali delle istanze del database o dei database globali.

**Archivio di codice**

Il codice per questo pattern è disponibile nel repository [aws-cross-region-dr-databases](https://github.com/aws-samples/aws-cross-region-dr-databases/tree/main/App-Stack) su. GitHub

## Epiche
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-epics"></a>

### Installa DR Orchestrator Framework
<a name="install-dr-orchestrator-framework"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Clona il GitHub repository. | Per clonare il repository, esegui il seguente comando:<pre>git clone https://github.com/aws-samples/aws-cross-region-dr-databases.git</pre> | AWS DevOps, amministratore AWS | 
| Codice delle funzioni Package Lambda in un archivio di file.zip. | Crea i file di archivio per le funzioni Lambda per includere le dipendenze di DR Orchestrator Framework:<pre>cd <YOUR-LOCAL-GIT-FOLDER>/DR-Orchestration-artifacts<br /><br />bash scripts/deploy-orchestrator-sh.sh</pre> | Amministratore AWS | 
| Crea bucket S3. | I bucket S3 sono necessari per archiviare DR Orchestrator Framework insieme alla configurazione più recente. Crea due bucket S3, uno nella regione principale () e uno nella regione secondaria (`us-east-1`): `us-west-2`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html)`xxxxxx`Sostituiscili con un valore casuale per rendere unici i nomi dei bucket. | Amministratore AWS | 
| Crea sottoreti e gruppi di sicurezza. | Sia nella regione principale (`us-east-1`) che nella regione secondaria (`us-west-2`), crea due sottoreti e un gruppo di sicurezza per l'implementazione della funzione Lambda nel tuo VPC:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html) | Amministratore AWS | 
| Aggiorna i file dei parametri di DR Orchestrator. | Nella `<YOUR-LOCAL-GIT-FOLDER>/DR-Orchestration-artifacts/cloudformation` cartella, aggiorna i seguenti file dei parametri di DR Orchestrator:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html)Utilizza i seguenti valori dei parametri, sostituendo `x` e `y` con i nomi delle tue risorse:<pre>[<br />    {<br />         "ParameterKey": "TemplateStoreS3BucketName",<br />         "ParameterValue": "dr-orchestrator-xxxxxx-us-east-1"<br />    },<br />    {<br />        "ParameterKey": "TemplateVPCId",<br />        "ParameterValue": "vpc-xxxxxx"<br />    },<br />    {<br />        "ParameterKey": "TemplateLambdaSubnetID1",<br />        "ParameterValue": "subnet-xxxxxx"<br />    },<br />    {<br />        "ParameterKey": "TemplateLambdaSubnetID2",<br />        "ParameterValue": "subnet-yyyyyy"<br />    },<br />    {<br />        "ParameterKey": "TemplateLambdaSecurityGroupID",<br />        "ParameterValue": "sg-xxxxxxxxxx"<br />    }<br /> ]</pre> | Amministratore AWS | 
| Carica il codice di DR Orchestrator Framework nel bucket S3. | Il codice sarà più sicuro in un bucket S3 che nella directory locale. Carica la `DR-Orchestration-artifacts` directory, inclusi tutti i file e le sottocartelle, nei bucket S3.Per caricare il codice, procedi come segue:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html) | Amministratore AWS | 
| Implementa DR Orchestrator Framework nella regione principale. | Per distribuire DR Orchestrator Framework nella regione primaria (), esegui i seguenti comandi: `us-east-1`<pre>cd <YOUR-LOCAL-GIT-FOLDER>/DR-Orchestration-artifacts/cloudformation<br /><br />aws cloudformation deploy \<br />--region us-east-1 \<br />--stack-name dr-orchestrator \<br />--template-file Orchestrator-Deployer.yaml \<br />--parameter-overrides file://Orchestrator-Deployer-parameters-us-east-1.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre> | Amministratore AWS | 
| Implementa DR Orchestrator Framework nella regione secondaria. | Nella regione secondaria (`us-west-2`), esegui i seguenti comandi: <pre>cd <YOUR-LOCAL-GIT-FOLDER>/DR-Orchestration-artifacts/cloudformation<br /><br />aws cloudformation deploy \<br />--region us-west-2 \<br />--stack-name dr-orchestrator \<br />--template-file Orchestrator-Deployer.yaml \<br />--parameter-overrides file://Orchestrator-Deployer-parameters-us-west-2.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre> | Amministratore AWS | 
| Verifica la distribuzione. | Se il CloudFormation comando viene eseguito correttamente, restituisce il seguente risultato:<pre>Successfully created/updated stack - dr-orchestrator</pre>In alternativa, puoi accedere alla CloudFormation console e verificare lo stato dello `dr-orchestrator` stack.  | Amministratore AWS | 

### Crea le istanze o i cluster del database
<a name="create-the-database-instances-or-clusters"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Creare le sottoreti e i gruppi di sicurezza del database. | Nel tuo VPC, crea due sottoreti e un gruppo di sicurezza per l'istanza DB o il database globale nelle regioni primaria (`us-east-1`) e secondaria (): `us-west-2`[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html) | Amministratore AWS | 
| Aggiorna il file dei parametri per l'istanza o il cluster DB primario. | Nella `<YOUR LOCAL GIT FOLDER>/App-Stack` cartella, aggiorna il file dei parametri per la regione principale.**Amazon RDS**Nel `RDS-MySQL-parameter-us-east-1.json` file, aggiorna `SubnetIds` e `DBSecurityGroup` inserisci i nomi delle risorse che hai creato:<pre>{<br />  "Parameters": {<br />    "SubnetIds": "subnet-xxxxxx,subnet-xxxxxx",<br />    "DBSecurityGroup": "sg-xxxxxxxxxx",<br />    "MySqlGlobalIdentifier":"rds-mysql-instance",<br />    "InitialDatabaseName": "mysqldb",<br />    "DBPortNumber": "3789",<br />    "PrimaryRegion": "us-east-1",<br />    "SecondaryRegion": "us-west-2",<br />    "KMSKeyAliasName": "rds/rds-mysql-instance-KmsKeyId"<br />  }<br />}<br /></pre>**Amazon Aurora** Nel `Aurora-MySQL-parameter-us-east-1.json` file, aggiorna `SubnetIds` e `DBSecurityGroup` con i nomi delle risorse che hai creato:<pre>{<br />  "Parameters": {<br />    "SubnetIds": "subnet1-xxxxxx,subnet2-xxxxxx",<br />    "DBSecurityGroup": "sg-xxxxxxxxxx",<br />    "GlobalClusterIdentifier":"dr-globaldb-cluster-mysql",<br />    "DBClusterName":"dbcluster-01",<br />    "SourceDBClusterName":"dbcluster-02",<br />    "DBPortNumber": "3787",<br />    "DBInstanceClass":"db.r5.large",<br />    "InitialDatabaseName": "sampledb",<br />    "PrimaryRegion": "us-east-1",<br />    "SecondaryRegion": "us-west-2",<br />    "KMSKeyAliasName": "rds/dr-globaldb-cluster-mysql-KmsKeyId"<br />  }<br />}</pre>**Amazon ElastiCache (sistema operativo Redis)**Nel `ElastiCache-parameter-us-east-1.json` file, aggiorna `SubnetIds` e `DBSecurityGroup` inserisci i nomi delle risorse che hai creato.<pre>{<br />  "Parameters": {<br />    "CacheNodeType": "cache.m5.large",<br />    "DBSecurityGroup": "sg-xxxxxxxxxx",<br />    "SubnetIds": "subnet-xxxxxx,subnet-xxxxxx",<br />    "EngineVersion": "5.0.6",<br />    "GlobalReplicationGroupIdSuffix": "demo-redis-global-datastore",<br />    "NumReplicas": "1",<br />    "NumShards": "1",<br />    "ReplicationGroupId": "demo-redis-cluster",<br />    "DBPortNumber": "3788",<br />    "TransitEncryption": "true",<br />    "KMSKeyAliasName": "elasticache/demo-redis-global-datastore-KmsKeyId",<br />    "PrimaryRegion": "us-east-1",<br />    "SecondaryRegion": "us-west-2"<br />  }<br />}</pre> | Amministratore AWS | 
| Distribuisci l'istanza o il cluster di database nella regione principale. | Per distribuire l'istanza o il cluster nella regione primaria (`us-east-1`), esegui i seguenti comandi in base al motore di database.**Amazon RDS**<pre>cd <YOUR-LOCAL-GIT-FOLDER>/App-Stack<br /><br />aws cloudformation deploy \<br />--region us-east-1 \<br />--stack-name rds-mysql-app-stack \<br />--template-file RDS-MySQL-Primary.yaml \<br />--parameter-overrides file://RDS-MySQL-parameter-us-east-1.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre>**Amazon Aurora**<pre>cd <YOUR-LOCAL-GIT-FOLDER>/App-Stack<br /><br />aws cloudformation deploy \<br />--region us-east-1 \<br />--stack-name aurora-mysql-app-stack \<br />--template-file Aurora-MySQL-Primary.yaml \<br />--parameter-overrides file://Aurora-MySQL-parameter-us-east-1.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre>**Amazon ElastiCache (sistema operativo Redis)**<pre>cd <YOUR-LOCAL-GIT-FOLDER>/App-Stack<br /><br />aws cloudformation deploy \<br />--region us-east-1 --stack-name elasticache-ds-app-stack \<br />--template-file ElastiCache-Primary.yaml \<br />--parameter-overrides file://ElastiCache-parameter-us-east-1.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback<br /></pre>Verifica che le CloudFormation risorse siano state distribuite correttamente. | Amministratore AWS | 
| Aggiorna il file dei parametri per l'istanza o il cluster DB secondario. | Nella `<YOUR LOCAL GIT FOLDER>/App-Stack` cartella, aggiorna il file dei parametri per la regione secondaria.**Amazon RDS**Nel `RDS-MySQL-parameter-us-west-2.json` file, aggiorna `SubnetIDs` e `DBSecurityGroup` inserisci i nomi delle risorse che hai creato. Aggiorna il file `PrimaryRegionKMSKeyArn` con il valore `MySQLKmsKeyId` preso dalla sezione **Outputs** dello CloudFormation stack per l'istanza DB principale:<pre>{<br />  "Parameters": {<br />    "SubnetIds": "subnet-aaaaaaaaa,subnet-bbbbbbbbb",<br />    "DBSecurityGroup": "sg-cccccccccc",<br />    "MySqlGlobalIdentifier":"rds-mysql-instance",<br />    "InitialDatabaseName": "mysqldb",<br />    "DBPortNumber": "3789",<br />    "PrimaryRegion": "us-east-1",<br />    "SecondaryRegion": "us-west-2",<br />    "KMSKeyAliasName": "rds/rds-mysql-instance-KmsKeyId",<br />    "PrimaryRegionKMSKeyArn":"arn:aws:kms:us-east-1:xxxxxxxxx:key/mrk-xxxxxxxxxxxxxxxxxxxxx"<br />  }<br />} </pre>**Amazon Aurora**Nel `Aurora-MySQL-parameter-us-west-2.json` file, aggiorna `SubnetIDs` e inserisci `DBSecurityGroup` i nomi delle risorse che hai creato. Aggiorna il `PrimaryRegionKMSKeyArn` con il valore `AuroraKmsKeyId` preso dalla sezione **Outputs** dello CloudFormation stack per l'istanza DB principale:<pre>{<br />  "Parameters": {<br />    "SubnetIds": "subnet1-aaaaaaaaa,subnet2-bbbbbbbbb",<br />    "DBSecurityGroup": "sg-cccccccccc",<br />    "GlobalClusterIdentifier":"dr-globaldb-cluster-mysql",<br />    "DBClusterName":"dbcluster-01",<br />    "SourceDBClusterName":"dbcluster-02",<br />    "DBPortNumber": "3787",<br />    "DBInstanceClass":"db.r5.large",<br />    "InitialDatabaseName": "sampledb",<br />    "PrimaryRegion": "us-east-1",<br />    "SecondaryRegion": "us-west-2",<br />    "KMSKeyAliasName": "rds/dr-globaldb-cluster-mysql-KmsKeyId"<br />  }<br />}</pre>**Amazon ElastiCache (sistema operativo Redis)**Nel `ElastiCache-parameter-us-west-2.json` file, aggiorna `SubnetIDs` e `DBSecurityGroup` inserisci i nomi delle risorse che hai creato. Aggiorna il file `PrimaryRegionKMSKeyArn` con il valore `ElastiCacheKmsKeyId` preso dalla sezione **Outputs** dello CloudFormation stack per l'istanza DB principale:<pre>{<br />  "Parameters": {<br />    "CacheNodeType": "cache.m5.large",<br />    "DBSecurityGroup": "sg-cccccccccc",<br />    "SubnetIds": "subnet-aaaaaaaaa,subnet-bbbbbbbbb",<br />    "EngineVersion": "5.0.6",<br />    "GlobalReplicationGroupIdSuffix": "demo-redis-global-datastore",<br />    "NumReplicas": "1",<br />    "NumShards": "1",<br />    "ReplicationGroupId": "demo-redis-cluster",<br />    "DBPortNumber": "3788",<br />    "TransitEncryption": "true",<br />    "KMSKeyAliasName": "elasticache/demo-redis-global-datastore-KmsKeyId",<br />    "PrimaryRegion": "us-east-1",<br />    "SecondaryRegion": "us-west-2"<br />  }<br />}</pre> | Amministratore AWS | 
| Distribuisci l'istanza o il cluster di database nella regione secondaria. | Esegui i seguenti comandi, in base al tuo motore di database.**Amazon RDS**<pre>cd <YOUR-LOCAL-GIT-FOLDER>/App-Stack<br /><br />aws cloudformation deploy \<br />--region us-west-2 \<br />--stack-name rds-mysql-app-stack \<br />--template-file RDS-MySQL-DR.yaml \<br />--parameter-overrides file://RDS-MySQL-parameter-us-west-2.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre>**Amazon Aurora**<pre>cd <YOUR-LOCAL-GIT-FOLDER>/App-Stack<br /><br />aws cloudformation deploy \<br />--region us-west-2 \<br />--stack-name aurora-mysql-app-stack \<br />--template-file Aurora-MySQL-DR.yaml \<br />--parameter-overrides file://Aurora-MySQL-parameter-us-west-2.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre>**Amazon ElastiCache (sistema operativo Redis)**<pre>cd <YOUR-LOCAL-GIT-FOLDER>/App-Stack<br /><br />aws cloudformation deploy \<br />--region us-west-2 \<br />--stack-name elasticache-ds-app-stack \<br />--template-file ElastiCache-DR.yaml \<br />--parameter-overrides file://ElastiCache-parameter-us-west-2.json \<br />--capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_NAMED_IAM CAPABILITY_IAM \<br />--disable-rollback</pre>Verifica che le CloudFormation risorse siano state distribuite correttamente. | Amministratore AWS | 

## Risorse correlate
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-resources"></a>
+ [Strategia di disaster recovery per i database su AWS(strategia](https://docs.aws.amazon.com/prescriptive-guidance/latest/strategy-database-disaster-recovery/welcome.html)AWS Prescriptive Guidance)
+ [Automatizza la tua soluzione DR per i database relazionali su AWS(guida Prescriptive Guidance](https://docs.aws.amazon.com/prescriptive-guidance/latest/automate-dr-solution-relational-database/dr-orchestrator-framework-overview.html))AWS 
+ [Using Amazon Aurora global databases](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html)
+ [Replica attraverso l'utilizzo di datastore globali Regioni AWS](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastore.html)
+ [Automatizza la tua soluzione DR per i database relazionali su AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/automate-dr-solution-relational-database/introduction.html) (guida Prescriptive Guidance)AWS 