AWSEC2-SQLServerDBRestore - AWS Systems Manager Guide de référence du manuel d'automatisation

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.

AWSEC2-SQLServerDBRestore

Description

Le AWSEC2-SQLServerDBRestore runbook restaure les sauvegardes de bases de données Microsoft SQL Server stockées dans Amazon S3 vers SQL Server 2017 s'exécutant sur une instance Linux Amazon Elastic Compute Cloud (EC2). Vous pouvez fournir votre propre instance EC2 exécutant SQL Server 2017 Linux. Si aucune instance EC2 n'est fournie, l'automatisation lance et configure une nouvelle instance EC2 Ubuntu 16.04 avec SQL Server 2017. Automation prend en charge la restauration des sauvegardes de journaux complètes, différentielles et transactionnelles. Cette instance d'Automation accepte plusieurs fichiers de sauvegarde de base de données et restaure automatiquement la dernière sauvegarde de chaque base de données valides dans les fichiers fournis.

Pour automatiser à la fois la sauvegarde et la restauration d'une base de données SQL Server locale sur une instance EC2 exécutant SQL Server 2017 Linux, vous pouvez utiliser le script AWS PowerShell -signed. MigrateSQLServerToEC2Linux

Important

Ce runbook réinitialise le mot de passe utilisateur de l'administrateur (SA) du serveur SQL Server à chaque exécution de l'automatisation. Une fois l'automatisation terminée, vous devez redéfinir votre propre mot de passe utilisateur SA avant de vous connecter à l'instance SQL Server.

Exécutez cette automatisation (console)

Types de document

 Automatisation

Propriétaire

Amazon

Plateformes

Linux

Prérequis

Pour exécuter cette automatisation, vous devez remplir les conditions préalables suivantes :

  • L'utilisateur ou le rôle IAM qui exécute cette automatisation doit disposer d'une politique intégrée associée aux autorisations décrites dans. Autorisations IAM requises

  • Si vous fournissez votre propre instance EC2 :

    • L'instance EC2 que vous fournissez doit être une instance Linux exécutant Microsoft SQL Server 2017.

    • L'instance EC2 que vous fournissez doit être configurée avec un profil d'instance AWS Identity and Access Management (IAM) auquel est associée la politique AmazonSSMManagedInstanceCore gérée. Pour de plus amples informations, veuillez consulter Créer un profil d'instance IAM pour Systems Manager.

    • L'agent SSM doit être installé sur votre instance EC2. Pour plus d'informations, consultez Installation et configuration de l'agent SSM sur des instances EC2 pour Linux.

    • L'instance EC2 doit disposer de suffisamment d'espace disque disponible pour télécharger et restaurer les sauvegardes SQL Server.

Limites

Cette instance d'Automation ne prend pas en charge la restauration vers SQL Server s'exécutant sur des instances EC2 pour Windows Server. Cette instance d'Automation ne restaure les sauvegardes de base de données qui sont compatibles avec SQL Server Linux 2017. Pour de plus amples informations, veuillez consulter Fonctionnalités et éditions de SQL Server 2017 prises en charge sur Linux.

Paramètres

Cette automatisation possède les paramètres suivants :

  • DatabaseNames

    Type : String

    Description : (Facultatif) liste séparée par des virgules des noms des bases de données à restaurer.

  • DataDirectorySize

    Type : String

    Description : (Facultatif) taille de volume (Gio) souhaitée du répertoire de données SQL Server pour la nouvelle instance EC2.

    Valeur par défaut : 100

  • KeyPair

    Type : String

    Description : (Facultatif) paire de clés à utiliser lors de la création de la nouvelle instance EC2.

  • IamInstanceProfileName

    Type : String

    Description : (Facultatif) Le profil d'instance IAM à associer à la nouvelle instance EC2. La politique AmazonSSMManagedInstanceCore gérée doit être associée au profil d'instance IAM.

  • InstanceId

    Type : String

    Description : (Facultatif) instance exécutant SQL Server 2017 sur Linux. Si la valeur non n'InstanceIdest pas fournie, l'automatisation lance une nouvelle instance EC2 à l'aide du InstanceType et du SQL ServerEdition fournis.

  • InstanceType

    Type : String

    Description : (Facultatif) type d'instance de l'instance EC2 à lancer.

  • iSS3 PresignedUrl

    Type : String

    Description : (Facultatif) Si S3Input est une URL S3 pré-signée, indiquez-la. yes

    Valeur par défaut : non

    Valeurs valides : oui | non

  • LogDirectorySize

    Type : String

    Description : (Facultatif) taille de volume (Gio) souhaitée du répertoire de journaux SQL Server pour la nouvelle instance EC2.

    Valeur par défaut : 100

  • Entrée S3

    Type : String

    Description : (Obligatoire) nom du compartiment S3, liste séparée par des virgules des clés d'objet S3, ou liste séparée par des virgules des URL S3 pré-signées contenant les fichiers de sauvegarde SQL à restaurer.

  • SQL ServerEdition

    Type : String

    Description : (Facultatif) édition de SQL Server 2017 à installer sur l'instance EC2 qui vient d'être créée.

    Valeurs valides : Standard | Enterprise | Web | Express

  • SubnetId

    Type : String

    Description : (Facultatif) sous-réseau dans lequel lancer la nouvelle instance EC2. Le sous-réseau doit disposer d'une connectivité sortante aux services AWS. Si aucune valeur pour n'SubnetIdest fournie, l'automatisation utilise le sous-réseau par défaut.

  • TempDbDirectorySize

    Type : String

    Description : (Facultatif) taille de volume (Gio) souhaitée du répertoire TempDB SQL Server pour la nouvelle instance EC2.

    Valeur par défaut : 100

Autorisations IAM requises

Le AutomationAssumeRole paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:DescribeImages", "ec2:DescribeInstanceStatus", "ec2:DescribeInstances", "ec2:RebootInstances", "ec2:RunInstances", "ssm:DescribeInstanceInformation", "ssm:GetAutomationExecution", "ssm:ListCommandInvocations", "ssm:ListCommands", "ssm:SendCommand", "ssm:StartAutomationExecution" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::ACCOUNTID:role/ROLENAME" } ] }

Étapes de document

Pour utiliser cette automatisation, suivez les étapes qui s'appliquent à votre type d'instance :

Pour les nouvelles instances EC2 :

  1. aws:executeAwsApi- Récupérez l'ID AMI pour SQL Server 2017 sur Ubuntu 16.04.

  2. aws:runInstances- Lancez une nouvelle instance EC2 pour Linux.

  3. aws:waitForAwsResourceProperty- Attendez que l'instance EC2 nouvellement créée soit prête.

  4. aws:executeAwsApi- Redémarrez l'instance si elle n'est pas prête.

  5. aws:assertAwsResourceProperty- Vérifiez que l'agent SSM est installé.

  6. aws:runCommand- Exécutez le script de restauration de SQL Server dansPowerShell.

Pour les instances EC2 existantes :

  1. aws:waitForAwsResourceProperty- Vérifiez que l'instance EC2 est prête.

  2. aws:executeAwsApi- Redémarrez l'instance si elle n'est pas prête.

  3. aws:assertAwsResourceProperty- Vérifiez que l'agent SSM est installé.

  4. aws:runCommand- Exécutez le script de restauration de SQL Server dansPowerShell.

Sorties

GetInstance. InstanceId

restoreToNewInstance.Sortie

restoreToExistingInstance.Sortie