

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Automatisez le basculement et le retour en arrière entre régions à l'aide de DR Orchestrator Framework
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework"></a>

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

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

Ce modèle décrit comment utiliser [DR Orchestrator Framework pour orchestrer](https://docs.aws.amazon.com/prescriptive-guidance/latest/automate-dr-solution-relational-database/dr-orchestrator-framework-overview.html) et automatiser les étapes manuelles, sujettes aux erreurs, pour effectuer une reprise après sinistre dans les régions Amazon Web Services ().AWS Le modèle couvre les bases de données suivantes :
+ Amazon Relational Database Service (Amazon RDS) pour MySQL, Amazon RDS pour PostgreSQL ou Amazon RDS pour MariaDB
+ Édition compatible avec Amazon Aurora MySQL ou édition compatible avec Amazon Aurora PostgreSQL (à l'aide d'un fichier centralisé)
+ Amazon ElastiCache (Redis OSS)

Pour démontrer les fonctionnalités de DR Orchestrator Framework, vous devez créer deux instances ou clusters de base de données. Le primaire est dans le Région AWS `us-east-1`, et le secondaire est dans`us-west-2`. Pour créer ces ressources, vous devez utiliser les AWS CloudFormation modèles contenus dans le `App-Stack` dossier du GitHub référentiel [aws-cross-region-dr-databases](https://github.com/aws-samples/aws-cross-region-dr-databases).

## Conditions préalables et limitations
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-prereqs"></a>

**Prérequis généraux**
+ Framework DR Orchestrator déployé à la fois dans le primaire et le secondaire Régions AWS
+ Deux [compartiments Amazon Simple Storage Service](https://aws.amazon.com/s3/)
+ Un [cloud privé virtuel (VPC)](https://aws.amazon.com/vpc/) avec deux sous-réseaux et un groupe de sécurité AWS 

**Prérequis spécifiques au moteur**
+ **Amazon Aurora** — Au moins une base de données globale Aurora doit être disponible sur deux Régions AWS. Vous pouvez l'utiliser `us-east-1` comme région principale et l'utiliser `us-west-2` comme région secondaire.
+ **Amazon ElastiCache (Redis OSS)** — Une banque de données ElastiCache globale doit être disponible en deux. Régions AWS Vous pouvez le faire `use us-east-1` comme région principale et l'utiliser `us-west-2` comme région secondaire.

**Limitations d'Amazon RDS**
+ DR Orchestrator Framework ne vérifie pas le délai de réplication avant d'effectuer un basculement ou un retour en arrière. Le délai de réplication doit être vérifié manuellement.
+ Cette solution a été testée à l'aide d'une instance de base de données principale avec une réplique en lecture. Si vous souhaitez utiliser plusieurs répliques de lecture, testez soigneusement la solution avant de l'implémenter dans un environnement de production.

**Limites d'Aurora**
+ La disponibilité et le support des fonctionnalités varient en fonction des versions spécifiques de chaque moteur de base de données et d'une version à l'autre Régions AWS. Pour plus d'informations sur la disponibilité des fonctionnalités et des régions pour la réplication entre régions, voir Répliques de [lecture entre régions](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RDS_Fea_Regions_DB-eng.Feature.CrossRegionReadReplicas.html).
+ Les bases de données globales Aurora ont des exigences de configuration spécifiques pour les classes d'instances de base de données Aurora prises en charge et le nombre maximum de Régions AWS. Pour plus d'informations, consultez [la section Exigences de configuration d'une base de données globale Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html#aurora-global-database.configuration.requirements).
+ Cette solution a été testée à l'aide d'une instance de base de données principale avec une réplique en lecture. Si vous souhaitez utiliser plusieurs répliques de lecture, testez soigneusement la solution avant de l'implémenter dans un environnement de production.

**ElastiCache limites**
+ Pour plus d'informations sur la disponibilité des régions pour Global Datastore et les exigences ElastiCache de configuration, consultez la section [Conditions préalables et limites](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastores-Getting-Started.html) de la ElastiCache documentation.

Versions des produits **Amazon **RDS****

Amazon RDS prend en charge les versions de moteur suivantes :
+ **MySQL** — Amazon RDS prend en charge les instances de base de données exécutant les versions suivantes de [MySQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html) : MySQL 8.0 et MySQL 5.7
+ **PostgreSQL** [— Pour plus d'informations sur les versions prises en charge d'Amazon RDS pour PostgreSQL, consultez la section Versions de base de données PostgreSQL disponibles.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions)
+ **MariaDB** [— Amazon RDS prend en charge les instances de base de données exécutant les versions suivantes de MariaDB :](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html)
  + MariaDB 10.11
  + MariaDB 10.6
  + MariaDB 10.5

**Versions des produits Aurora**
+ Le passage à la base de données globale Amazon Aurora nécessite la compatibilité entre Aurora MySQL et MySQL 5.7, version 2.09.1 et supérieure

  Pour plus d'informations, consultez [Limitations des bases de données mondiales Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html#aurora-global-database.limitations).

**ElastiCache Versions du produit (Redis OSS)**

Amazon ElastiCache (Redis OSS) prend en charge les versions Redis suivantes :
+ Redis 7.1 (améliorée)
+ Redis 7.0 (améliorée)
+ Redis 6.2 (améliorée)
+ Redis 6.0 (améliorée)
+ Redis 5.0.6 (améliorée)

Pour plus d'informations, voir [Versions prises en charge 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>

****Architecture Amazon RDS****

L'architecture Amazon RDS inclut les ressources suivantes :
+ L'instance de base de données Amazon RDS principale créée dans la région principale (`us-east-1`) avec read/write accès pour les clients
+ Une réplique en lecture Amazon RDS créée dans la région secondaire (`us-west-2`) avec un accès en lecture seule pour les clients
+ Framework DR Orchestrator déployé dans les régions principale et secondaire

![Schéma de l'architecture RDS à deux régions dans un seul compte AWS.](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/8d39561f-924e-4b3e-8175-c5c3cab163bd/images/ad217033-600c-40da-929c-b9f9aecb4c2c.png)


Le diagramme décrit les éléments suivants :

1. Réplication asynchrone entre l'instance principale et l'instance secondaire

1. Accès en lecture/écriture pour les clients de la région principale

1. Accès en lecture seule pour les clients de la région secondaire

**Architecture Aurora**

L'architecture Amazon Aurora inclut les ressources suivantes :
+ Le cluster de base de données Aurora principal créé dans la région principale (`us-east-1`) avec un point de terminaison d'écriture active
+ Un cluster de base de données Aurora créé dans la région secondaire (`us-west-2`) avec un point de terminaison d'écriture inactif
+ Framework DR Orchestrator déployé dans les régions principale et secondaire

![Schéma du déploiement d'Aurora dans deux régions dans un seul compte AWS.](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/8d39561f-924e-4b3e-8175-c5c3cab163bd/images/524ec002-5aa7-47b2-8c8d-6d1a3b535e9e.png)


Le diagramme décrit les éléments suivants :

1. Réplication asynchrone entre le cluster principal et le cluster secondaire

1. Le cluster de base de données principal avec un point de terminaison d'écriture active

1. Le cluster de base de données secondaire avec un point de terminaison d'écriture inactif

**ElastiCache Architecture (Redis OSS)**

L'architecture Amazon ElastiCache (Redis OSS) inclut les ressources suivantes :
+ Une banque de données globale ElastiCache (Redis OSS) créée avec deux clusters :

  1. Le cluster principal de la région principale (`us-east-1`)

  1. Le cluster secondaire de la région secondaire (`us-west-2`)
+ Un lien interrégional Amazon avec chiffrement TLS 1.2 entre les deux clusters
+ Framework DR Orchestrator déployé dans les régions principale et secondaire

![Schéma d'un ElastiCache déploiement dans deux régions avec un lien entre les régions d'Amazon.](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/8d39561f-924e-4b3e-8175-c5c3cab163bd/images/cf6620a0-dd42-4042-8dc2-012bf514ffc0.png)


**Automatisation et mise à l'échelle**

DR Orchestrator Framework est évolutif et prend en charge le basculement ou le repli de plusieurs bases de données AWS en parallèle.

Vous pouvez utiliser le code de charge utile suivant pour basculer entre plusieurs AWS bases de données de votre compte. Dans cet exemple, trois AWS bases de données (deux bases de données globales telles que Aurora MySQL compatible ou Aurora PostgreSQL compatible, et une instance Amazon RDS for MySQL) basculent vers la région 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"
          }
        }         
      ]
    }
  ]
}
```

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

**AWS services**
+ [Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) est un moteur de base de données relationnelle entièrement géré conçu pour le cloud et compatible avec MySQL et PostgreSQL.
+ [Amazon](https://docs.aws.amazon.com/elasticache/) vous ElastiCache aide à configurer, à gérer et à faire évoluer des environnements de cache en mémoire distribués dans le AWS Cloud. Ce modèle utilise Amazon ElastiCache (Redis OSS).
+ [AWS Lambda](https://aws.amazon.com/lambda/) est un service de calcul qui vous aide à exécuter du code sans avoir à allouer ni à gérer des serveurs. Il exécute votre code uniquement lorsque cela est nécessaire et évolue automatiquement, de sorte que vous ne payez que pour le temps de calcul que vous utilisez. Dans ce modèle, les fonctions Lambda sont utilisées pour AWS Step Functions effectuer les étapes.
+ [Amazon Relational Database Service (Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)) vous aide à configurer, exploiter et dimensionner une base de données relationnelle dans le. AWS Cloud Ce modèle prend en charge Amazon RDS pour MySQL, Amazon RDS pour PostgreSQL et Amazon RDS pour MariaDB.
+ [AWS SDK pour Python (Boto3)](https://aws.amazon.com/sdk-for-python/)vous permet d'intégrer votre application, bibliothèque ou script Python à Services AWS. Dans ce modèle, les Boto3 APIs sont utilisés pour communiquer avec les instances de base de données ou les bases de données globales.
+ [AWS Step Functions](https://aws.amazon.com/step-functions/)est un service d'orchestration sans serveur qui vous aide à combiner des AWS Lambda fonctions et d'autres fonctions Services AWS pour créer des applications critiques pour l'entreprise. Dans ce modèle, les machines d'état Step Functions sont utilisées pour orchestrer et exécuter le basculement et le retour en arrière entre régions des instances de base de données ou des bases de données globales.

**Référentiel de code**

Le code de ce modèle est disponible dans le référentiel [aws-cross-region-dr-databases](https://github.com/aws-samples/aws-cross-region-dr-databases/tree/main/App-Stack) sur GitHub.

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

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


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Clonez le GitHub dépôt. | Pour cloner le dépôt, exécutez la commande suivante :<pre>git clone https://github.com/aws-samples/aws-cross-region-dr-databases.git</pre> | AWS DevOps, administrateur AWS | 
| Package Lambda utilise le code des fonctions dans une archive de fichier .zip. | Créez les fichiers d'archive pour les fonctions Lambda afin d'inclure les dépendances du DR Orchestrator Framework :<pre>cd <YOUR-LOCAL-GIT-FOLDER>/DR-Orchestration-artifacts<br /><br />bash scripts/deploy-orchestrator-sh.sh</pre> | Administrateur AWS | 
| Créez des compartiments S3. | Les compartiments S3 sont nécessaires pour stocker le framework DR Orchestrator ainsi que votre dernière configuration. Créez deux compartiments S3, l'un dans la région principale (`us-east-1`) et l'autre dans la région secondaire (`us-west-2`) :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html)<br />`xxxxxx`Remplacez-le par une valeur aléatoire pour que les noms des compartiments soient uniques. | Administrateur AWS | 
| Créez des sous-réseaux et des groupes de sécurité. | Dans la région principale (`us-east-1`) et la région secondaire (`us-west-2`), créez deux sous-réseaux et un groupe de sécurité pour le déploiement de la fonction Lambda dans votre VPC :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html) | Administrateur AWS | 
| Mettez à jour les fichiers de paramètres de DR Orchestrator. | Dans le `<YOUR-LOCAL-GIT-FOLDER>/DR-Orchestration-artifacts/cloudformation` dossier, mettez à jour les fichiers de paramètres DR Orchestrator suivants :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html)<br />Utilisez les valeurs de paramètres suivantes, en `y` remplaçant `x` et par les noms de vos ressources :<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> | Administrateur AWS | 
| Téléchargez le code DR Orchestrator Framework dans le compartiment S3. | Le code sera plus sûr dans un compartiment S3 que dans le répertoire local. Téléchargez le `DR-Orchestration-artifacts` répertoire, y compris tous les fichiers et sous-dossiers, dans les compartiments S3.<br />Pour télécharger le code, procédez comme suit :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html) | Administrateur AWS | 
| Déployez DR Orchestrator Framework dans la région principale. | Pour déployer DR Orchestrator Framework dans la région principale (`us-east-1`), exécutez les commandes suivantes :<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> | Administrateur AWS | 
| Déployez DR Orchestrator Framework dans la région secondaire. | Dans la région secondaire (`us-west-2`), exécutez les commandes suivantes : <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> | Administrateur AWS | 
| Vérifier le déploiement. | Si la CloudFormation commande s'exécute correctement, elle renvoie le résultat suivant :<pre>Successfully created/updated stack - dr-orchestrator</pre><br />Vous pouvez également accéder à la CloudFormation console et vérifier l'état de la `dr-orchestrator` pile.  | Administrateur AWS | 

### Création des instances ou des clusters de base de données
<a name="create-the-database-instances-or-clusters"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Créez les sous-réseaux de base de données et les groupes de sécurité. | Dans votre VPC, créez deux sous-réseaux et un groupe de sécurité pour l'instance de base de données ou la base de données globale dans les régions principale (`us-east-1`) et secondaire (`us-west-2`) :[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.html) | Administrateur AWS | 
| Mettez à jour le fichier de paramètres pour l'instance ou le cluster de base de données principal. | Dans le `<YOUR LOCAL GIT FOLDER>/App-Stack` dossier, mettez à jour le fichier de paramètres de la région principale.<br />**Amazon RDS**<br />Dans le `RDS-MySQL-parameter-us-east-1.json` fichier, mettez à jour `SubnetIds` et `DBSecurityGroup` avec les noms des ressources que vous avez créées :<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><br />**Amazon Aurora**<br /> Dans le `Aurora-MySQL-parameter-us-east-1.json` fichier, mettez à jour `SubnetIds` et `DBSecurityGroup` avec les noms des ressources que vous avez créées :<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><br />**Amazon ElastiCache (Redis OSS)**<br />Dans le `ElastiCache-parameter-us-east-1.json` fichier, mettez à jour `SubnetIds` et `DBSecurityGroup` avec les noms des ressources que vous avez créées.<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> | Administrateur AWS | 
| Déployez votre instance ou cluster de base de données dans la région principale. | Pour déployer votre instance ou votre cluster dans la région principale (`us-east-1`), exécutez les commandes suivantes en fonction de votre moteur de base de données.<br />**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><br />**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><br />**Amazon ElastiCache (Redis OSS)**<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><br />Vérifiez que les CloudFormation ressources ont été déployées avec succès. | Administrateur AWS | 
| Mettez à jour le fichier de paramètres pour l'instance ou le cluster de base de données secondaire. | Dans le `<YOUR LOCAL GIT FOLDER>/App-Stack` dossier, mettez à jour le fichier de paramètres de la région secondaire.<br />**Amazon RDS**<br />Dans le `RDS-MySQL-parameter-us-west-2.json` fichier, mettez à jour `SubnetIDs` et `DBSecurityGroup` avec les noms des ressources que vous avez créées. Mettez à jour le `PrimaryRegionKMSKeyArn` avec la valeur `MySQLKmsKeyId` extraite de la section **Outputs** de la CloudFormation pile pour l'instance de base de données 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><br />**Amazon Aurora**<br />Dans le `Aurora-MySQL-parameter-us-west-2.json` fichier, mettez à jour `SubnetIDs` et `DBSecurityGroup` avec les noms des ressources que vous avez créées. Mettez à jour le `PrimaryRegionKMSKeyArn` avec la valeur `AuroraKmsKeyId` extraite de la section **Outputs** de la CloudFormation pile pour l'instance de base de données 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><br />**Amazon ElastiCache (Redis OSS)**<br />Dans le `ElastiCache-parameter-us-west-2.json` fichier, mettez à jour `SubnetIDs` et `DBSecurityGroup` avec les noms des ressources que vous avez créées. Mettez à jour le `PrimaryRegionKMSKeyArn` avec la valeur `ElastiCacheKmsKeyId` extraite de la section **Outputs** de la CloudFormation pile pour l'instance de base de données 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> | Administrateur AWS | 
| Déployez votre instance ou cluster de base de données dans la région secondaire. | Exécutez les commandes suivantes, en fonction de votre moteur de base de données.<br />**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><br />**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><br />**Amazon ElastiCache (Redis OSS)**<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><br />Vérifiez que les CloudFormation ressources ont été déployées avec succès. | Administrateur AWS | 

## Ressources connexes
<a name="automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework-resources"></a>
+ [Stratégie de reprise après sinistre pour les bases de données sur AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/strategy-database-disaster-recovery/welcome.html) (stratégie d'orientation AWS prescriptive)
+ [Automatisez votre solution de reprise après sinistre pour les bases de données relationnelles sur AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/automate-dr-solution-relational-database/dr-orchestrator-framework-overview.html) (AWS guide prescriptif)
+ [Utilisation de bases de données globales Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html)
+ [Réplication à Régions AWS l'aide de banques de données globales](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Datastore.html)
+ [Automatisez votre solution de reprise après sinistre pour les bases de données relationnelles sur AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/automate-dr-solution-relational-database/introduction.html) (AWS guide prescriptif)