AWSPremiumSupport-PostgreSQLWorkloadReview - AWS Systems Manager 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.

AWSPremiumSupport-PostgreSQLWorkloadReview

Description

Le AWSPremiumSupport-PostgreSQLWorkloadReview runbook capture plusieurs instantanés des statistiques d'utilisation de votre base de données Amazon Relational Database Service (AmazonRDS) SQL Postgre. Les statistiques capturées sont nécessaires pour qu'un expert des services AWS Support proactifs puisse effectuer un examen opérationnel. Les statistiques sont collectées à l'aide d'un ensemble de scripts personnalisés SQL et de scripts shell. Ces scripts sont téléchargés sur une instance Amazon Elastic Compute Cloud (AmazonEC2) temporaire de votre Compte AWS ordinateur créée par ce runbook. Le runbook vous demande de fournir des informations d'identification à l'aide d'un AWS Secrets Manager secret contenant une paire clé-valeur du nom d'utilisateur et du mot de passe. Le nom d'utilisateur doit être autorisé à interroger les vues et fonctions SQL statistiques standard de Postgre.

Ce runbook crée automatiquement les AWS ressources suivantes dans votre fichier à Compte AWS l'aide d'une AWS CloudFormation pile. Vous pouvez surveiller la création de la pile à l'aide de la AWS CloudFormation console.

  • Un cloud privé virtuel (VPC) et une EC2 instance Amazon lancés dans un sous-réseau privé du VPC avec une connectivité optionnelle à Internet via une NAT passerelle.

  • Rôle AWS Identity and Access Management (IAM) attaché à l'EC2instance Amazon temporaire avec les autorisations nécessaires pour récupérer la valeur secrète de Secrets Manager. Le rôle fournit également des autorisations pour télécharger des fichiers dans un bucket Amazon Simple Storage Service (Amazon S3) de votre choix, et éventuellement dans un dossier. AWS Support

  • Une connexion VPC d'appairage pour permettre la connectivité entre votre instance de base de données et l'EC2instance Amazon temporaire.

  • Systems Manager, Secrets Manager et VPC points de terminaison Amazon S3 attachés au périphérique temporaireVPC.

  • Une fenêtre de maintenance avec des tâches enregistrées qui démarrent et arrêtent périodiquement l'EC2instance Amazon temporaire, exécutent des scripts de collecte de données et chargent des fichiers dans un compartiment Amazon S3. Un IAM rôle est également créé pour la fenêtre de maintenance qui fournit les autorisations nécessaires pour effectuer les tâches enregistrées.

Lorsque le runbook est terminé, la AWS CloudFormation pile utilisée pour créer les AWS ressources nécessaires est supprimée et le rapport est chargé dans le compartiment Amazon S3 de votre choix, et éventuellement dans un AWS Support dossier.

Note

Par défaut, le EBS volume Amazon racine de l'EC2instance Amazon temporaire est conservé. Vous pouvez annuler cette option en définissant le EbsVolumeDeleteOnTermination paramètre sur. true

Prérequis

  • Abonnement au support d'entreprise Ce manuel et les diagnostics et révisions de la charge de travail de Proactive Services nécessitent un abonnement au support d'entreprise. Avant d'utiliser ce manuel, contactez votre responsable de compte technique (TAM) ou votre spécialiste TAM (STAM) pour obtenir des instructions. Pour plus d'informations, consultez AWS Support Proactive Services.

  • Compte et Région AWS quotas Vérifiez que vous n'avez pas atteint le nombre maximum d'EC2instances Amazon ou VPCs que vous pouvez en créer dans votre compte et dans la région où vous utilisez ce runbook. Si vous devez demander une augmentation de limite, consultez le formulaire d'augmentation de limite de service.

  • Configuration de base de données

    1. L'pg_stat_statementsextension doit être configurée pour la base de données que vous spécifiez dans le DatabaseName paramètre. Si vous n'avez pas configuré pg_stat_statements dansshared_preload_libraries, vous devez modifier la valeur dans le groupe de paramètres de base de données et appliquer les modifications. Les modifications apportées au paramètre shared_preload_libraries nécessitent le redémarrage de votre instance de base de données. Pour plus d'informations, veuillez consulter Utilisation des groupes de paramètres. L'ajout pg_stat_statements à shared_preload_libraries ajoutera une certaine surcharge en termes de performances. Cependant, cela est utile pour suivre les performances des relevés individuels. Pour plus d'informations sur l'pg_stat_statementsextension, consultez la SQLdocumentation Postgre. Si vous ne configurez pas l'pg_stat_statementsextension ou si l'extension n'est pas présente dans la base de données utilisée pour la collecte des statistiques, l'analyse au niveau des instructions ne sera pas présentée dans la revue opérationnelle.

    2. Assurez-vous que les track_activities paramètres track_counts et ne sont pas désactivés. Si ces paramètres sont désactivés dans le groupe de paramètres de base de données, aucune statistique significative ne sera disponible. La modification de ces paramètres vous obligera à redémarrer votre instance de base de données. Pour plus d'informations, consultez Utilisation des paramètres sur votre SQL instance de base de données Amazon RDS pour Postgre.

    3. Si le track_io_timing paramètre est désactivé, les statistiques du niveau d'E/S ne seront pas incluses dans la revue opérationnelle. La modification vous track_io_timing obligera à redémarrer votre instance de base de données et entraînera une surcharge de performance supplémentaire en fonction de la charge de travail de l'instance de base de données. Malgré la surcharge de performance associée aux charges de travail critiques, ce paramètre fournit des informations utiles relatives au temps d'E/S par requête.

Facturation et frais Les coûts associés à l'EC2instance Amazon temporaire, au EBS volume Amazon associé, à la NAT passerelle et aux données transférées pendant l'exécution de cette automatisation Compte AWS vous seront facturés. Par défaut, ce runbook crée une instance t3.micro Amazon Linux 2 pour collecter les statistiques. Le runbook démarre et arrête l'instance entre les étapes afin de réduire les coûts.

Sécurité et gouvernance des données Ce runbook collecte des statistiques en interrogeant les vues et les fonctions SQL statistiques de Postgre. Assurez-vous que les informations d'identification fournies dans le SecretId paramètre n'autorisent que les autorisations en lecture seule pour les vues et les fonctions des statistiques. Dans le cadre de l'automatisation, les scripts de collecte sont chargés dans votre compartiment Amazon S3 et peuvent y être localiséss3://amzn-s3-demo-bucket/automation execution id/queries/.

Ces scripts collectent des données qui sont utilisées par un AWS spécialiste pour examiner les indicateurs de performance clés au niveau de l'objet. Le script collecte des informations telles que le nom de la table, le nom du schéma et le nom de l'index. Si l'une de ces informations contient des informations sensibles telles que des indicateurs de revenus, un nom d'utilisateur, une adresse e-mail ou toute autre information personnellement identifiable, nous vous recommandons de mettre fin à cet examen de la charge de travail. Communiquez avec vous AWS TAM pour discuter d'une autre approche pour l'examen de la charge de travail.

Assurez-vous d'avoir l'approbation et l'autorisation nécessaires pour partager les statistiques et les métadonnées collectées par cette automatisation avec AWS.

Considérations relatives à la sécurité Si vous définissez le UpdateRdsSecurityGroup paramètre suryes, le runbook met à jour le groupe de sécurité associé à votre instance de base de données afin d'autoriser le trafic entrant depuis l'adresse IP privée de l'EC2instance Amazon temporaire.

Si vous définissez le UpdateRdsRouteTable paramètre suryes, le runbook met à jour la table de routage associée au sous-réseau dans lequel votre instance de base de données s'exécute afin d'autoriser le trafic vers l'EC2instance Amazon temporaire via la connexion d'appairageVPC.

Création d'un utilisateur Pour autoriser le script de collecte à se connecter à votre RDS base de données Amazon, vous devez configurer un utilisateur autorisé à lire les vues statistiques. Vous devez ensuite enregistrer les informations d'identification dans Secrets Manager. Nous vous recommandons de créer un nouvel utilisateur dédié pour cette automatisation. La création d'un utilisateur distinct vous permet d'auditer et de suivre les activités effectuées par cette automatisation.

  1. Créez un nouvel utilisateur.

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "CREATE USER <user_name> PASSWORD '<password>';"

  2. Assurez-vous que cet utilisateur ne peut établir que des connexions en lecture seule.

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET default_transaction_read_only=true;"

  3. Définissez des limites de niveau utilisateur.

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET work_mem=4096;"

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET statement_timeout=10000;"

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "ALTER USER <user_name> SET idle_in_transaction_session_timeout=60000;"

  4. Accordez pg_monitor des autorisations au nouvel utilisateur afin qu'il puisse accéder aux statistiques de la base de données. (Le pg_monitor rôle est membre de pg_read_all_settingspg_read_all_stats, etpg_stat_scan_table.)

    psql -h <database_connection_endpoint> -p <database_port> -U <admin_user> -c "GRANT pg_monitor to <user_name>;"

Autorisations ajoutées au profil d'EC2instance Amazon temporaire par cette automatisation de Systems Manager Les autorisations suivantes sont ajoutées au IAM rôle associé à l'EC2instance Amazon temporaire. La politique AmazonSSMManagedInstanceCore gérée est également associée au IAM rôle pour permettre à l'EC2instance Amazon d'être gérée par Systems Manager.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:DescribeTags" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", "Effect": "Allow" }, { "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/automation execution id/*", "Effect": "Allow" }, { "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:region:account id:secret:secret id", "Effect": "Allow" }, { "Action": [ "support:AddAttachmentsToSet", "support:AddCommunicationToCase", "support:DescribeCases" ], "Resource": "*", "Effect": "Allow" } ] }

Autorisations ajoutées à la fenêtre de maintenance temporaire par cette automatisation de Systems Manager Les autorisations suivantes sont automatiquement ajoutées au IAM rôle associé aux tâches de maintenance Windows. Les tâches Windows de maintenance démarrent, s'arrêtent et envoient des commandes à l'EC2instance Amazon temporaire.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ssm:GetAutomationExecution", "ssm:ListCommands", "ssm:ListCommandInvocations", "ssm:GetCommandInvocation", "ssm:GetCalendarState", "ssm:CancelCommand", "ec2:DescribeInstanceStatus" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "ssm:SendCommand", "ec2:StartInstances", "ec2:StopInstances", "ssm:StartAutomationExecution" ], "Resource": [ "arn:aws:ec2:region:account id:instance/temporary instance id", "arn:aws:ssm:*:*:document/AWS-RunShellScript", "arn:aws:ssm:*:*:automation-definition/AWS-StopEC2Instance:$DEFAULT", "arn:aws:ssm:*:*:automation-definition/AWS-StartEC2Instance:$DEFAULT" ], "Effect": "Allow" }, { "Condition": { "StringEquals": { "iam:PassedToService": "ssm.amazonaws.com" } }, "Action": "iam:PassRole", "Resource": "*", "Effect": "Allow" } ] }

Exécuter cette automatisation (console)

Type de document

 Automatisation

Propriétaire

Amazon

Plateformes

Bases de données

Paramètres

  • AutomationAssumeRole

    Type : String

    Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle AWS Identity and Access Management (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.

  • DBInstanceIdentifier

    Type : String

    Description : (Obligatoire) L'ID de votre instance de base de données.

  • DatabaseName

    Type : String

    Description : (Obligatoire) Le nom de la base de données hébergée sur votre instance de base de données.

  • SecretId

    Type : String

    Description : (Obligatoire) Le secret ARN de votre Gestionnaire de Secrets Manager contenant la paire clé/valeur du nom d'utilisateur et du mot de passe. La AWS CloudFormation pile crée une IAM politique avec des autorisations pour cette GetSecretValue opérationARN. Les informations d'identification sont utilisées pour permettre à l'instance temporaire de collecter les statistiques de la base de données. Contactez votre TAM ou STAM pour discuter des autorisations minimales requises.

  • Reconnaître

    Type : String

    Description : (Obligatoire) Entrez yes si vous reconnaissez que ce runbook créera des ressources temporaires dans votre compte pour collecter des statistiques à partir de votre instance de base de données. Nous vous recommandons de contacter votre TAM ou STAM avant d'exécuter cette automatisation.

  • SupportCase

    Type : String

    Description : (Facultatif) Le numéro de AWS Support dossier fourni par votre TAM ouSTAM. S'il est fourni, le runbook met à jour le dossier et y joint les données collectées. Cette option nécessite que l'EC2instance Amazon temporaire dispose d'une connexion Internet pour accéder au AWS Support API point de terminaison. Vous devez définir le AllowVpcInternetAccess paramètre surtrue. L'objet du dossier doit contenir la phraseAWSPremiumSupport-PostgreSQLWorkloadReview.

  • S3 BucketName

    Type : String

    Description : (Obligatoire) Le nom du compartiment Amazon S3 de votre compte dans lequel vous souhaitez télécharger les données collectées par l'automatisation. Vérifiez que la politique du compartiment n'accorde aucune autorisation de lecture ou d'écriture inutile aux principaux qui n'ont pas besoin d'accéder au contenu du compartiment. Nous vous recommandons de créer un nouveau compartiment Amazon S3 temporaire aux fins de cette automatisation. Le runbook fournit des autorisations d's3:PutObjectAPIopération au IAM rôle attaché à l'EC2instance Amazon temporaire. Les fichiers téléchargés seront situés danss3://bucket name/automation execution id/.

  • InstanceType

    Type : String

    Description : (Facultatif) Type d'EC2instance Amazon temporaire qui exécutera les scripts personnalisés SQL et shell.

    Valeurs valides : t2.micro | t2.small | t2.medium | t2.large | t3.micro | t3.small | t3.medium | t3.large

    Par défaut : t3.micro

  • VpcCidr

    Type : String

    Description : (Facultatif) La plage d'adresses IP en CIDR notation pour la nouvelle VPC (par exemple,172.31.0.0/16). Assurez-vous d'en sélectionner une CIDR qui ne chevauche pas ou ne correspond à aucune connectivité existante VPC avec votre instance de base de données. Le plus petit VPC que vous pouvez créer utilise un masque de sous-réseau /28, et le plus grand VPC un masque de sous-réseau /16.

    Par défaut : 172.31.0.0/16

  • StackResourcesNamePrefix

    Type : String

    Description : (Facultatif) Le préfixe et la balise du nom des ressources de la AWS CloudFormation pile. Le runbook crée les ressources de la AWS CloudFormation pile en utilisant ce préfixe dans le nom et la balise appliqués aux ressources. La structure de la paire clé-valeur du tag est. StackResourcesNamePrefix:{{automation:EXECUTION_ID}}

    Par défaut : AWSPostgreSQLWorkloadReview

  • Planificateur

    Type : String

    Description : (Facultatif) Le calendrier de la fenêtre de maintenance. Spécifie la fréquence à laquelle la fenêtre de maintenance exécute les tâches. La valeur par défaut est every1 hour.

    Valeurs valides : 15 minutes | 30 minutes | 1 heure | 2 heures | 4 heures | 6 heures | 12 heures | 1 jour | 2 jours | 4 jours

    Par défaut : 1 heure

  • Durée

    Type : entier

    Description : (Facultatif) Durée maximale, en minutes, pendant laquelle vous souhaitez autoriser l'exécution de l'automatisation. La durée maximale prise en charge est de 8 640 minutes (6 jours). La valeur par défaut est de 4 320 minutes (3 jours).

    Valeurs valides : 30-8640

    Par défaut : 4320

  • UpdateRdsRouteTable

    Type : String

    Description : (Facultatif) Si ce paramètre est défini surtrue, le runbook met à jour la table de routage associée au sous-réseau dans lequel s'exécute votre instance de base de données. Un IPv4 itinéraire est ajouté pour acheminer le trafic vers l'IPV4adresse privée de l'EC2instance Amazon temporaire via la connexion d'VPCappairage nouvellement créée.

    Valeurs valides : true | false

    Valeur par défaut : false

  • AllowVpcInternetAccess

    Type : String

    Description : (Facultatif) S'il est défini surtrue, le runbook crée une NAT passerelle pour fournir une connectivité Internet à l'EC2instance Amazon temporaire afin de communiquer avec le AWS Support API point de terminaison. Vous pouvez laisser ce paramètre comme false si vous vouliez uniquement que le runbook télécharge la sortie dans votre compartiment Amazon S3.

    Valeurs valides : true | false

    Valeur par défaut : false

  • UpdateRdsSecurityGroup

    Type : String

    Description : (Facultatif) Si ce paramètre est défini surtrue, le runbook met à jour le groupe de sécurité associé à votre instance de base de données afin d'autoriser le trafic provenant de l'adresse IP privée de l'instance temporaire.

    Valeurs valides : faux | vrai

    Valeur par défaut : false

  • EbsVolumeDeleteOnTermination

    Type : String

    Description : (Facultatif) Si ce paramètre est défini surtrue, le volume racine de l'EC2instance Amazon temporaire est supprimé une fois le runbook terminé et la AWS CloudFormation pile supprimée.

    Valeurs valides : faux | vrai

    Valeur par défaut : false

IAMAutorisations requises

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

  • cloudformation:CreateStack

  • cloudformation:DeleteStack

  • cloudformation:DescribeStackEvents

  • cloudformation:DescribeStackResource

  • cloudformation:DescribeStacks

  • cloudformation:UpdateStack

  • ec2:AcceptVpcPeeringConnection

  • ec2:AllocateAddress

  • ec2:AssociateRouteTable

  • ec2:AssociateVpcCidrBlock

  • ec2:AttachInternetGateway

  • ec2:AuthorizeSecurityGroupEgress

  • ec2:AuthorizeSecurityGroupIngress

  • ec2:CreateEgressOnlyInternetGateway

  • ec2:CreateInternetGateway

  • ec2:CreateNatGateway

  • ec2:CreateRoute

  • ec2:CreateRouteTable

  • ec2:CreateSecurityGroup

  • ec2:CreateSubnet

  • ec2:CreateTags

  • ec2:CreateVpc

  • ec2:CreateVpcEndpoint

  • ec2:CreateVpcPeeringConnection

  • ec2:DeleteEgressOnlyInternetGateway

  • ec2:DeleteInternetGateway

  • ec2:DeleteNatGateway

  • ec2:DeleteRoute

  • ec2:DeleteRouteTable

  • ec2:DeleteSecurityGroup

  • ec2:DeleteSubnet

  • ec2:DeleteTags

  • ec2:DeleteVpc

  • ec2:DeleteVpcEndpoints

  • ec2:DescribeAddresses

  • ec2:DescribeEgressOnlyInternetGateways

  • ec2:DescribeImages

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

  • ec2:DescribeInternetGateways

  • ec2:DescribeNatGateways

  • ec2:DescribeRouteTables

  • ec2:DescribeSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeVpcEndpoints

  • ec2:DescribeVpcPeeringConnections

  • ec2:DescribeVpcs

  • ec2:DetachInternetGateway

  • ec2:DisassociateRouteTable

  • ec2:DisassociateVpcCidrBlock

  • ec2:ModifySubnetAttribute

  • ec2:ModifyVpcAttribute

  • ec2:RebootInstances

  • ec2:ReleaseAddress

  • ec2:RevokeSecurityGroupEgress

  • ec2:RevokeSecurityGroupIngress

  • ec2:StartInstances

  • ec2:StopInstances

  • ec2:RunInstances

  • ec2:TerminateInstances

  • iam:AddRoleToInstanceProfile

  • iam:AttachRolePolicy

  • iam:CreateInstanceProfile

  • iam:CreateRole

  • iam:DeleteInstanceProfile

  • iam:DeleteRole

  • iam:DeleteRolePolicy

  • iam:DetachRolePolicy

  • iam:GetInstanceProfile

  • iam:GetRole

  • iam:GetRolePolicy

  • iam:PassRole

  • iam:PutRolePolicy

  • iam:RemoveRoleFromInstanceProfile

  • iam:TagPolicy

  • iam:TagRole

  • rds:DescribeDBInstances

  • s3:GetAccountPublicAccessBlock

  • s3:GetBucketAcl

  • s3:GetBucketPolicyStatus

  • s3:GetBucketPublicAccessBlock

  • s3:ListBucket

  • ssm:AddTagsToResource

  • ssm:CancelMaintenanceWindowExecution

  • ssm:CreateDocument

  • ssm:CreateMaintenanceWindow

  • ssm:DeleteDocument

  • ssm:DeleteMaintenanceWindow

  • ssm:DeregisterTaskFromMaintenanceWindow

  • ssm:DescribeAutomationExecutions

  • ssm:DescribeDocument

  • ssm:DescribeInstanceInformation

  • ssm:DescribeMaintenanceWindowExecutions

  • ssm:GetCalendarState

  • ssm:GetDocument

  • ssm:GetMaintenanceWindowExecution

  • ssm:GetParameters

  • ssm:ListCommandInvocations

  • ssm:ListCommands

  • ssm:ListTagsForResource

  • ssm:RegisterTaskWithMaintenanceWindow

  • ssm:RemoveTagsFromResource

  • ssm:SendCommand

  • support:AddAttachmentsToSet

  • support:AddCommunicationToCase

  • support:DescribeCases

Étapes de document

  1. aws:assertAwsResourceProperty- Confirme que l'instance de base de données est en available bon état.

  2. aws:executeAwsApi- Rassemble des informations sur l'instance de base de données.

  3. aws:executeScript- Vérifie si le compartiment Amazon S3 spécifié dans le S3BucketName permet des autorisations d'accès anonymes ou publiques en lecture ou en écriture.

  4. aws:executeScript- Extrait le contenu du AWS CloudFormation modèle à partir de la pièce jointe du runbook Automation qui est utilisée pour créer les AWS ressources temporaires dans votre Compte AWS.

  5. aws:createStack- Crée les ressources de la AWS CloudFormation pile.

  6. aws:waitForAwsResourceProperty- Attend que l'EC2instance Amazon créée par le AWS CloudFormation modèle soit en cours d'exécution.

  7. aws:executeAwsApi- Obtient IDs l'EC2instance Amazon temporaire et la connexion de VPC peering créées par AWS CloudFormation.

  8. aws:executeAwsApi- Obtient l'adresse IP de l'EC2instance Amazon temporaire pour configurer la connectivité avec votre instance de base de données.

  9. aws:executeAwsApi- Marque le EBS volume Amazon attaché à l'EC2instance Amazon temporaire.

  10. aws:waitForAwsResourceProperty- Attend que l'EC2instance Amazon temporaire passe les vérifications de statut.

  11. aws:waitForAwsResourceProperty- Attend que l'EC2instance Amazon temporaire soit gérée par Systems Manager. Si cette étape expire ou échoue, le runbook redémarre l'instance.

    1. aws:executeAwsApi- Redémarre l'EC2instance Amazon temporaire si l'étape précédente a échoué ou a expiré.

    2. aws:waitForAwsResourceProperty- Attend que l'EC2instance Amazon temporaire soit gérée par Systems Manager après le redémarrage.

  12. aws:runCommand- Installe les exigences de l'application de collecte de métadonnées sur l'EC2instance Amazon temporaire.

  13. aws:runCommand- Configure l'accès à votre instance de base de données en créant un fichier de configuration sur l'EC2instance Amazon temporaire.

  14. aws:executeAwsApi- Crée une fenêtre de maintenance pour exécuter périodiquement l'application de collecte de métadonnées à l'aide de la commande Exécuter. La fenêtre de maintenance démarre et arrête l'instance entre les commandes.

  15. aws:waitForAwsResourceProperty- Attend que la fenêtre de maintenance créée par le AWS CloudFormation modèle soit prête.

  16. aws:executeAwsApi- Récupère IDs la fenêtre de maintenance et le calendrier des modifications créés par AWS CloudFormation.

  17. aws:sleep- Attend la date de fin de la fenêtre de maintenance.

  18. aws:executeAwsApi- Désactive la fenêtre de maintenance.

  19. aws:executeScript- Obtient les résultats des tâches exécutées pendant la fenêtre de maintenance.

  20. aws:waitForAwsResourceProperty- Attend que la fenêtre de maintenance termine la dernière tâche avant de continuer.

  21. aws:branch- Branche le flux de travail selon que vous avez fourni ou non une valeur pour le SupportCase paramètre.

    1. aws:changeInstanceState- Démarre l'EC2instance Amazon temporaire et attend que les vérifications de statut soient passées avant de télécharger le rapport.

    2. aws:waitForAwsResourceProperty- Attend que l'EC2instance Amazon temporaire soit gérée par Systems Manager. Si cette étape expire ou échoue, le runbook redémarre l'instance.

      1. aws:executeAwsApi- Redémarre l'EC2instance Amazon temporaire si l'étape précédente a échoué ou a expiré.

      2. aws:waitForAwsResourceProperty- Attend que l'EC2instance Amazon temporaire soit gérée par Systems Manager après le redémarrage.

    3. aws:runCommand- Joint le rapport de métadonnées au AWS Support dossier si vous avez fourni une valeur pour le SupportCase paramètre. Le script compresse et divise le rapport en fichiers de 5 Mo. Le nombre maximum de fichiers que le script joint à un AWS Support dossier est de 12.

  22. aws:changeInstanceState- Arrête l'EC2instance Amazon temporaire au cas où la AWS CloudFormation pile ne serait pas supprimée.

  23. aws:executeAwsApi- Décrit les événements de la AWS CloudFormation pile si les runbooks ne parviennent pas à créer ou à mettre à jour la AWS CloudFormation pile.

  24. aws:waitForAwsResourceProperty- Attend que la AWS CloudFormation pile soit en état de terminal avant de la supprimer.

  25. aws:executeAwsApi- Supprime la AWS CloudFormation pile à l'exception de la fenêtre de maintenance. Le EBS volume Amazon racine associé à l'EC2instance Amazon temporaire est préservé si la valeur du EbsVolumeDeleteOnTermination paramètre a été définie surfalse.