

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 RDS Custom for SQL Server vers un Single-AZ Multi-AZ déploiement
<a name="custom-sqlserver-multiaz.modify-saztomaz"></a>

Vous pouvez modifier une instance de base de données RDS Custom pour SQL Server existante d'un Single-AZ déploiement à un autre 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 transformer votre instance de base de données RDS Custom pour SQL Server en un Single-AZ Multi-AZ déploiement 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 de Single-AZ vers Multi-AZ, mais les performances peuvent être affectées pendant et après la conversion vers 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 Multi-AZ déploiement Single-AZ à l'aide de CloudFormation](#custom-sqlserver-multiaz.modify-saztomaz-prereqs.cf)
+ [Configuration des conditions requises pour modifier Single-AZ manuellement un Multi-AZ déploiement](#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 Multi-AZ déploiement Single-AZ à l'aide de CloudFormation
<a name="custom-sqlserver-multiaz.modify-saztomaz-prereqs.cf"></a>

Pour utiliser un Multi-AZ déploiement, 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 Multi-AZ déploiement 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 de création d'une pile, sélectionnez la pile existante que vous avez utilisée pour créer un Single-AZ déploiement 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) correspondant au lien [custom-sqlserver-onboard.zip](samples/custom-sqlserver-onboard.zip) et choisissez **Save Link As** (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 requises pour modifier Single-AZ manuellement un Multi-AZ déploiement
<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 Multi-AZ déploiement Single-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 **Network ACL**, 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 RDS Custom pour SQL Server d'un Multi-AZ déploiement Single-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 RDS Custom pour SQL Server existant en vue Single-AZ d'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. Pour **Actions**, choisissez **Convertir en Multi-AZ déploiement**.

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 **de confirmation**, choisissez **Convertir en Multi-AZ**.

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

Pour effectuer une conversion en déploiement d' Multi-AZ instance de base de données à l'aide de AWS CLI, appelez la commande [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) et définissez l'option. `--multi-az` 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 effectuer une conversion en déploiement d' Multi-AZ instance de base de données avec l'API RDS, appelez l'opération [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) et définissez le paramètre sur true. `MultiAZ`