

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.

# Modification d'un déploiement mono-AZ RDS Custom for SQL Server en un déploiement multi-AZ
<a name="custom-sqlserver-multiaz.modify-saztomaz"></a>

Vous pouvez modifier une instance de base de données RDS Custom for SQL Server existante d'un déploiement mono-AZ en un déploiement multi-AZ. Lorsque vous modifiez l'instance de base de données, Amazon RDS effectue plusieurs actions :
+ Prend un instantané de l'instance de base de données primaire.
+ Crée de nouveaux volumes pour le réplica en attente à partir de l'instantané. Ces volumes s'initialisent en arrière-plan, et les performances maximales du volume sont atteintes après l'initialisation complète des données.
+ Active la réplication synchrone au niveau des blocs entre les instances de base de données primaire et secondaire.

**Important**  
Nous vous recommandons d'éviter de modifier votre instance de base de données RDS Custom for SQL Server pour passer d'un déploiement mono-AZ à un déploiement multi-AZ sur une instance de base de données de production pendant les périodes de pointe.

AWS utilise un instantané pour créer l'instance de secours afin d'éviter les temps d'arrêt lors de la conversion du mode mono-AZ au mode multi-AZ, mais les performances peuvent être affectées pendant et après la conversion au mode multi-AZ. Cet impact peut être significatif pour les charges de travail sensibles à la latence d'écriture. Bien que cette fonctionnalité permette de restaurer rapidement de gros volumes à partir de snapshots, elle peut entraîner une augmentation de la latence des I/O opérations en raison de la réplication synchrone. Cette latence peut avoir un impact sur les performances de votre base de données.

**Note**  
Si vous avez créé votre instance de base de données RDS Custom for SQL Server avant le 29 août 2024, appliquez un correctif à la dernière version mineure avant de la modifier.  
Pour les instances SQL Server 2019, mettez à niveau la version du moteur de base de données vers la version `15.00.4410.1.v1` ou une version ultérieure.
Pour les instances SQL Server 2022, mettez à niveau la version du moteur de base de données vers la version `16.00.4150.1.v1` ou une version ultérieure.

**Topics**
+ [Configuration des conditions requises pour modifier un déploiement mono-AZ en déploiement multi-AZ à l'aide de CloudFormation](#custom-sqlserver-multiaz.modify-saztomaz-prereqs.cf)
+ [Configuration des conditions préalables pour modifier manuellement un déploiement mono-AZ en un déploiement multi-AZ](#custom-sqlserver-multiaz.modify-saztomaz-prereqs.manual)
+ [Modifiez à l'aide de la console RDS, de la AWS CLI ou de l'API RDS.](#custom-sqlserver-multiaz.modify-saztomaz-afterprereqs)

## Configuration des conditions requises pour modifier un déploiement mono-AZ en déploiement multi-AZ à l'aide de CloudFormation
<a name="custom-sqlserver-multiaz.modify-saztomaz-prereqs.cf"></a>

Pour utiliser un déploiement multi-AZ, vous devez vous assurer que vous avez appliqué le dernier CloudFormation modèle avec les prérequis, ou configurer manuellement les derniers prérequis. Si vous avez déjà appliqué le dernier modèle CloudFormation prérequis, vous pouvez ignorer ces étapes.

Pour configurer les conditions préalables au déploiement multi-AZ de RDS Custom pour SQL Server à l'aide de CloudFormation

1. Ouvrez la CloudFormation console à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Pour démarrer l'assistant Créer une pile, sélectionnez la pile existante que vous avez utilisée pour créer un déploiement mono-AZ et choisissez **Mettre à jour**.

   La page **Mettre à jour la pile** s'affiche.

1. Pour **Prérequis - Préparer le modèle**, choisissez **Le modèle est prêt**.

1. Pour **Specify template** (Spécifier un modèle), procédez comme suit :

   1. Téléchargez le dernier fichier CloudFormation modèle. Ouvrez le menu contextuel (clic droit) du lien [custom-sqlserver-onboard.zip](samples/custom-sqlserver-onboard.zip) et choisissez **Enregistrer le lien sous**.

   1. Enregistrez et extrayez le fichier `custom-sqlserver-onboard.json` de votre ordinateur.

   1. Pour **Source du modèle**, choisissez **Charger un fichier de modèle**.

   1. Pour **Choose file** (Choisir un fichier), accédez à `custom-sqlserver-onboard.json` et sélectionnez ce fichier.

1. Choisissez **Suivant**.

   La page **Specify stack details** (Spécifier les détails de la pile) s'affiche.

1. Pour conserver les options par défaut, choisissez **Next** (Suivant).

   La page **Options avancées** s'affiche.

1. Pour conserver les options par défaut, choisissez **Next** (Suivant).

1. Pour conserver les options par défaut, choisissez **Next** (Suivant).

1. Sur la page **Vérifier les modifications**, procédez comme suit :

   1. Sous **Capacités**, cochez la case ****Je sais qu' CloudFormation peut créer des ressources IAM avec des noms personnalisés****.

   1. Sélectionnez **Soumettre**.

1. Vérifiez que la mise à jour est réussie. Le statut d'une opération réussie affiche `UPDATE_COMPLETE`.

Si la mise à jour échoue, toute nouvelle configuration spécifiée dans le processus de mise à jour sera annulée. La ressource existante sera toujours utilisable. Par exemple, si vous ajoutez des règles ACL réseau numérotées 18 et 19, mais que certaines règles existantes portent les mêmes numéros, la mise à jour renverra l'erreur suivante : `Resource handler returned message: "The network acl entry identified by 18 already exists.` (L'entrée ACL réseau numérotée 18 existe déjà). Dans ce scénario, vous pouvez modifier les règles ACL existantes pour utiliser un nombre inférieur à 18, puis réessayez la mise à jour.

## Configuration des conditions préalables pour modifier manuellement un déploiement mono-AZ en un déploiement multi-AZ
<a name="custom-sqlserver-multiaz.modify-saztomaz-prereqs.manual"></a>

**Important**  
Pour simplifier la configuration, nous vous recommandons d'utiliser le dernier fichier CloudFormation modèle fourni dans les instructions de configuration réseau. Pour de plus amples informations, veuillez consulter [Configuration des conditions requises pour modifier un déploiement mono-AZ en déploiement multi-AZ à l'aide de CloudFormation](#custom-sqlserver-multiaz.modify-saztomaz-prereqs.cf).

Si vous choisissez de configurer les conditions préalables manuellement, exécutez les tâches suivantes.

1. Ouvrez la console Amazon VPC à l’adresse [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Choisissez **Point de terminaison**. La page **Créer un point de terminaison** s’affiche.

1. Pour **Catégorie de service**, choisissez **Services AWS **.

1. Dans **Services**, recherchez *SQS*

1. Dans **VPC**, choisissez le VPC dans lequel votre instance de base de données RDS Custom for SQL Server est déployée.

1. Dans **Sous-réseaux**, choisissez les sous-réseaux dans lesquels votre instance de base de données RDS Custom for SQL Server est déployée.

1. Dans **Groupes de sécurité**, choisissez le *-vpc-endpoint-sg* groupe.

1. Pour **Politique**, choisissez **Personnalisé**

1. Dans votre politique personnalisée, remplacez *AWS partition*, *Region*, *accountId* et *IAM-Instance-role* par vos propres valeurs.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Condition": {
                   "StringLike": {
                       "aws:ResourceTag/AWSRDSCustom": "custom-sqlserver"
                   }
               },
               "Action": [
                   "SQS:SendMessage",
                   "SQS:ReceiveMessage",
                   "SQS:DeleteMessage",
                   "SQS:GetQueueUrl"
               ],
               "Resource": "arn:aws:sqs:us-east-1:111122223333:do-not-delete-rds-custom-*",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:role/{IAM-Instance-role}"
               }
           }
       ]
   }
   ```

------

1.  Mettez à jour le **Profil d'instance** avec l'autorisation d'accéder à Amazon SQS. Remplacez *AWS partition*, *Region* et *accountId* par vos propres valeurs.

   ```
                           {
       "Sid": "SendMessageToSQSQueue",
       "Effect": "Allow",
       "Action": [
         "SQS:SendMessage",
         "SQS:ReceiveMessage",
         "SQS:DeleteMessage",                                    
         "SQS:GetQueueUrl"
   
       ],
       "Resource": [
         {
           "Fn::Sub": "arn:${AWS::Partition}:sqs:${AWS::Region}:${AWS::AccountId}:do-not-delete-rds-custom-*"
         }
       ],
       "Condition": {
         "StringLike": {
           "aws:ResourceTag/AWSRDSCustom": "custom-sqlserver"
         }
       }
     } 
                           >
   ```

1. Mettez à jour les règles entrantes et sortantes du groupe de sécurité Amazon RDS pour autoriser le port 1120.

   1. Dans **Groupes de sécurité**, choisissez le *-rds-custom-instance-sg* groupe.

   1. Pour les **règles entrantes**, créez une règle **TCP personnalisée** pour autoriser le port *1120* depuis le groupe source*-rds-custom-instance-sg*.

   1. Pour les **règles sortantes**, créez une règle **TCP personnalisée** pour autoriser le port *1120* vers le groupe de destination*-rds-custom-instance-sg*.

1. Ajoutez une règle dans la liste de contrôle d'accès (ACL) de votre réseau privé qui autorise les ports TCP `0-65535` pour le sous-réseau source de l'instance de base de données.
**Note**  
Lorsque vous créez une **Règle entrante** et une **Règle sortante**, prenez note du **Numéro de règle** existant le plus élevé. Les nouvelles règles que vous créez doivent avoir un **Numéro de règle** inférieur à 100 et ne correspondre à aucun **Numéro de règle** existant.

   1. Dans **Réseau ACLs**, choisissez le *-private-network-acl* groupe.

   1. Pour les **règles entrantes**, créez une règle **entièrement TCP** pour autoriser les ports TCP dont la source `0-65535` provient de et. *privatesubnet1* *privatesubnet2*

   1. Pour les **règles sortantes**, créez une règle **All TCP** pour autoriser les ports TCP `0-65535` à destination et. *privatesubnet1* *privatesubnet2*

## Modifiez à l'aide de la console RDS, de la AWS CLI ou de l'API RDS.
<a name="custom-sqlserver-multiaz.modify-saztomaz-afterprereqs"></a>

Une fois les conditions requises remplies, vous pouvez modifier une instance de base de données personnalisée RDS pour SQL Server d'un déploiement mono-AZ à un déploiement multi-AZ à l'aide de la console RDS, de la AWS CLI ou de l'API RDS.

### Console
<a name="custom-sqlserver-multiaz.modify-saztomaz.Console"></a>

**Pour modifier un déploiement mono-AZ RDS Custom for SQL Server existant en un déploiement multi-AZ**

1. Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)l'adresse.

1. Dans la console Amazon RDS, choisissez **Bases de données**.

   Le volet **Bases de données** s’affiche.

1. Choisissez l'instance de base de données RDS Custom for SQL Server que vous souhaitez modifier.

1. Dans **Actions**, choisissez **Convertir en déploiement multi-AZ**.

1. Sur la page **Confirmation**, choisissez **Appliquer immédiatement** pour appliquer les modifications immédiatement. Le choix de cette option n'entraîne pas d'interruption de service, mais il existe un impact possible sur les performances. Vous pouvez également choisir d'appliquer la mise à jour pendant le créneau de maintenance suivant. Pour de plus amples informations, veuillez consulter [Utilisation du paramètre de planification des modifications](USER_ModifyInstance.ApplyImmediately.md).

1. Sur la page **Confirmation**, choisissez **Convertir en Multi-AZ**.

### AWS CLI
<a name="custom-sqlserver-multiaz.modify-saztomaz.CLI"></a>

Pour passer à un déploiement d'instance de base de données multi-AZ à l'aide de AWS CLI, appelez la [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html)commande et définissez l'`--multi-az`option. Spécifiez l'identifiant d'instance de base de données et les valeurs des autres options que vous souhaitez modifier. Pour plus d’informations sur chaque option, consultez [Paramètres des instances de base de données](USER_ModifyInstance.Settings.md). 

**Example**  
Le code suivant modifie `mycustomdbinstance` en incluant l'option `--multi-az`. Les modifications sont appliquées pendant le créneau de maintenance suivant à l’aide de `--no-apply-immediately`. Pour appliquer les modifications immédiatement, utilisez `--apply-immediately`. Pour plus d’informations, consultez [Utilisation du paramètre de planification des modifications](USER_ModifyInstance.ApplyImmediately.md).   
Pour Linux, macOS ou Unix :  

```
aws rds modify-db-instance \
    --db-instance-identifier mycustomdbinstance \
    --multi-az \
    --no-apply-immediately
```
Pour Windows :  

```
aws rds modify-db-instance ^
    --db-instance-identifier mycustomdbinstance ^
    --multi-az  \ ^
    --no-apply-immediately
```

### API RDS
<a name="custom-sqlserver-multiaz.modify-saztomaz.API"></a>

Pour passer à un déploiement d'instance de base de données multi-AZ avec l'API RDS, appelez l'DBInstanceopération [Modify](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) et définissez le `MultiAZ` paramètre sur true.