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 personnalisé pour SQL serveur vers un déploiement multi-AZ
Vous pouvez modifier une instance de base de données RDS personnalisée pour SQL serveur existante d'un déploiement mono-AZ à 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 personnalisée pour SQL serveur 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 des volumes importants à partir d'instantanés, elle peut entraîner une augmentation de la latence des opérations d'I/O en raison de la réplication synchrone. Cette latence peut avoir un impact sur les performances de votre base de données.
Rubriques
Configuration des conditions requises pour modifier un déploiement mono-AZ en déploiement multi-AZ à l'aide de CloudFormation
Pour utiliser un déploiement multi-AZ, vous devez vous assurer d'avoir 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 RDS personnalisé pour le SQL serveur à l'aide de CloudFormation
-
Ouvrez la CloudFormation console à l'adresse https://console.aws.amazon.com/cloudformation.
-
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.
-
Pour Prérequis - Préparer le modèle, choisissez Le modèle est prêt.
-
Pour Specify template (Spécifier un modèle), procédez comme suit :
Téléchargez le dernier fichier AWS CloudFormation modèle. Ouvrez le menu contextuel (clic droit) du lien custom-sqlserver-onboard.zip et choisissez Enregistrer le lien sous.
-
Enregistrez et extrayez le fichier
custom-sqlserver-onboard.json
de votre ordinateur. -
Pour Source du modèle, choisissez Charger un fichier de modèle.
-
Pour Choose file (Choisir un fichier), accédez à
custom-sqlserver-onboard.json
et sélectionnez ce fichier.
-
Choisissez Suivant.
La page Specify stack details (Spécifier les détails de la pile) s'affiche.
-
Pour conserver les options par défaut, choisissez Next (Suivant).
La page Options avancées s'affiche.
-
Pour conserver les options par défaut, choisissez Next (Suivant).
-
Pour conserver les options par défaut, choisissez Next (Suivant).
-
Sur la page Vérifier les modifications, procédez comme suit :
-
Pour Capacités, cochez la case Je reconnais que IAM des ressources AWS CloudFormation peuvent être créées avec des noms personnalisés.
-
Sélectionnez Envoyer.
-
-
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 ACL règles réseau numérotées 18 et 19, mais qu'il existe des règles portant les mêmes numéros, la mise à jour renverra le message d'erreur suivant : Resource handler
returned message: "The network acl entry identified by 18 already exists.
Dans ce scénario, vous pouvez modifier les ACL règles existantes pour utiliser un nombre inférieur à 18, puis réessayer la mise à jour.
Configuration des conditions préalables pour modifier manuellement un déploiement mono-AZ en un déploiement multi-AZ
Important
Pour simplifier la configuration, nous vous recommandons d'utiliser le dernier fichier AWS 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.
Si vous choisissez de configurer les conditions préalables manuellement, exécutez les tâches suivantes.
-
Ouvrez la VPC console Amazon à l'adresse https://console.aws.amazon.com/vpc/
. -
Choisissez Point de terminaison. La page Créer un point de terminaison s'affiche.
-
Pour Catégorie de service, choisissez Services AWS .
-
Dans Services, recherchez
SQS
-
Dans VPC, choisissez l'VPCendroit où votre instance de base de données RDS personnalisée pour SQL serveur est déployée.
-
Dans Sous-réseaux, choisissez les sous-réseaux sur lesquels votre instance de base de données RDS Custom for SQL Server est déployée.
-
Dans Groupes de sécurité, sélectionnez le
-vpc-endpoint-sg
groupe. -
Pour Politique, choisissez Personnalisé
-
Dans votre politique personnalisée, remplacez le
AWS partition
,Region
,accountId
, etIAM-Instance-role
avec vos propres valeurs.{ "Version": "2012-10-17", "Statement": [ { "Condition": { "StringLike": { "aws:ResourceTag/AWSRDSCustom": "custom-sqlserver" } }, "Action": [ "SQS:SendMessage", "SQS:ReceiveMessage", "SQS:DeleteMessage", "SQS:GetQueueUrl" ], "Resource": "arn:${AWS::Partition}:sqs:${AWS::Region}:${AWS::AccountId}:do-not-delete-rds-custom-*", "Effect": "Allow", "Principal": { "AWS": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/{IAM-Instance-role}" } } ] }
-
Mettez à jour le profil de l'instance avec l'autorisation d'accéder à AmazonSQS. Remplacez le
AWS partition
,Region
, etaccountId
avec 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" } } } >
-
Mettez à jour les règles entrantes et sortantes du groupe de RDS sécurité Amazon pour autoriser le port 1120.
Dans Groupes de sécurité, sélectionnez le
-rds-custom-instance-sg
groupe.Pour les règles entrantes, créez une TCP règle personnalisée pour autoriser le port
1120
depuis la source-rds-custom-instance-sg
groupe.Pour les règles sortantes, créez une TCP règle personnalisée pour autoriser le port
1120
vers la destination-rds-custom-instance-sg
groupe.
-
Ajoutez une règle dans la liste de contrôle d'accès de votre réseau privé (ACL) qui autorise TCP les ports
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.
Dans Réseau ACLs, choisissez le
-private-network-acl
groupe.Pour les règles entrantes, créez une TCP règle Tous pour autoriser les TCP ports
0-65535
dont la source provient deprivatesubnet1
andprivatesubnet2
.Pour les règles sortantes, créez une TCP règle Tous pour autoriser les TCP ports
0-65535
à destinationprivatesubnet1
andprivatesubnet2
.
Modifiez à l'aide de RDS la console AWS CLI, ou RDSAPI.
Une fois les conditions requises remplies, vous pouvez modifier une instance de base de données RDS personnalisée pour SQL serveur d'un déploiement mono-AZ à un déploiement multi-AZ à l'aide de la RDS console, AWS CLI ou. RDS API
Pour modifier un déploiement mono-AZ vers un déploiement multi-AZ RDS personnalisé pour SQL serveur existant
Connectez-vous à la RDS console Amazon AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/rds/
. -
Dans la RDS console Amazon, sélectionnez Databases.
Le volet Bases de données s'affiche.
-
Choisissez l'instance de base de données RDS personnalisée pour le SQL serveur que vous souhaitez modifier.
-
Dans Actions, choisissez Convertir en déploiement multi-AZ.
-
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 modification du calendrier.
-
Sur la page Confirmation, choisissez Convertir en Multi-AZ.
Pour passer à un déploiement d'instance de base de données multi-AZ à l'aide de AWS CLI, appelez la modify-db-instancecommande 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, veuillez consulter Paramètres des instances de base de données.
Exemple
Le code suivant modifie mycustomdbinstance
en incluant l'option --multi-az
. Les modifications sont appliquées dans la prochaine fenêtre de maintenance à l'aide de --no-apply-immediately
. Pour appliquer les modifications immédiatement, utilisez --apply-immediately
. Pour de plus amples informations, veuillez consulter Utilisation du paramètre de modification du calendrier.
Dans Linux, macOS, ou Unix:
aws rds modify-db-instance \ --db-instance-identifier
mycustomdbinstance
\ --multi-az \--no-apply-immediately
Dans Windows:
aws rds modify-db-instance ^ --db-instance-identifier
mycustomdbinstance
^ --multi-az \ ^--no-apply-immediately
Pour passer à un déploiement d'instance de base de données multi-AZ avec le RDSAPI, appelez l'odifyDBInstanceopération M et définissez le MultiAZ
paramètre sur true.