View a markdown version of this page

AWSPremiumSupport-PostgreSQLWorkloadReview - AWS Systems Manager Riferimento al runbook dell’automazione

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWSPremiumSupport-PostgreSQLWorkloadReview

Descrizione

Il AWSPremiumSupport-PostgreSQLWorkloadReview runbook acquisisce più istantanee delle statistiche di utilizzo del database PostgreSQL di Amazon Relational Database Service (Amazon RDS). Le statistiche acquisite sono necessarie per consentire a un esperto di Supporto Proactive Services di eseguire una revisione operativa. Le statistiche vengono raccolte utilizzando un set di script SQL e shell personalizzati. Questi script vengono scaricati in un'istanza temporanea di Amazon Elastic Compute Cloud (Amazon EC2) creata da Account AWS questo runbook. Il runbook richiede di fornire le credenziali utilizzando un AWS Secrets Manager segreto contenente una coppia chiave-valore nome utente e password. Il nome utente deve disporre delle autorizzazioni per interrogare le visualizzazioni e le funzioni statistiche standard di PostgreSQL.

Questo runbook crea automaticamente le seguenti AWS risorse nell'utilizzo di uno stack. Account AWS AWS CloudFormation È possibile monitorare la creazione dello stack utilizzando la CloudFormation console.

  • Un cloud privato virtuale (VPC) e un'istanza Amazon EC2 sono stati avviati in una sottorete privata del VPC con connettività opzionale a Internet tramite un gateway NAT.

  • Un ruolo AWS Identity and Access Management (IAM) collegato all'istanza temporanea di Amazon EC2 con autorizzazioni per recuperare il valore segreto di Secrets Manager. Il ruolo fornisce anche le autorizzazioni per caricare file su un bucket Amazon Simple Storage Service (Amazon S3) a tua scelta e, facoltativamente, su un case. Supporto

  • Una connessione peering VPC per consentire la connettività tra l'istanza DB e l'istanza temporanea di Amazon EC2.

  • Endpoint Systems Manager, Secrets Manager e Amazon S3 VPC collegati al VPC temporaneo.

  • Una finestra di manutenzione con attività registrate che avviano e arrestano periodicamente l'istanza temporanea di Amazon EC2, eseguono script di raccolta dati e caricano file in un bucket Amazon S3. Viene inoltre creato un ruolo IAM per la finestra di manutenzione che fornisce le autorizzazioni per eseguire le attività registrate.

Al termine del runbook, CloudFormation lo stack utilizzato per creare AWS le risorse necessarie viene eliminato e il report viene caricato nel bucket Amazon S3 di tua scelta e, facoltativamente, in un case. Supporto

Nota

Per impostazione predefinita, il volume Amazon EBS principale dell'istanza temporanea di Amazon EC2 viene preservato. Puoi sovrascrivere questa opzione impostando il EbsVolumeDeleteOnTermination parametro su. true

Prerequisiti

  • Abbonamento al supporto aziendale Questo runbook e Proactive Services Workload Diagnostics and Reviews richiedono un abbonamento Enterprise Support. Prima di utilizzare questo runbook, contattate il vostro Technical Account Manager (TAM) o Specialist TAM (STAM) per istruzioni. Per ulteriori informazioni, consulta Proactive Services. Supporto

  • Account e Regione AWS quote Assicurati di non aver raggiunto il numero massimo di istanze Amazon EC2 o VPC che puoi creare nel tuo account e nella regione in cui usi questo runbook. Se devi richiedere un aumento del limite, consulta il modulo di aumento del limite di servizio.

  • Configurazione del database

    1. L'pg_stat_statementsestensione deve essere configurata nel database specificato nel DatabaseName parametro. Se non è stata effettuata la configurazione pg_stat_statementsshared_preload_libraries, è necessario modificare il valore nel DB Parameter Group e applicare le modifiche. Le modifiche al parametro shared_preload_libraries richiedono il riavvio dell'istanza DB. Per ulteriori informazioni, consulta la sezione Uso di gruppi di parametri. L'aggiunta pg_stat_statements a shared_preload_libraries comporterà un aumento delle prestazioni. Tuttavia, ciò è utile per tenere traccia delle prestazioni dei singoli rendiconti. Per ulteriori informazioni sull'pg_stat_statementsestensione, consulta la documentazione di PostgreSQL. Se non si configura l'pg_stat_statementsestensione o se l'estensione non è presente nel database utilizzato per la raccolta delle statistiche, l'analisi a livello di dichiarazione non verrà presentata nella revisione operativa.

    2. Assicurati che track_counts i track_activities parametri non siano disattivati. Se questi parametri sono disattivati nel DB Parameter Group, non sarà disponibile alcuna statistica significativa. La modifica di questi parametri richiederà il riavvio dell'istanza DB. Per ulteriori informazioni, consulta Utilizzo dei parametri sull'istanza DB di Amazon RDS for PostgreSQL.

    3. Se il track_io_timing parametro è disattivato, le statistiche del I/O livello non verranno incluse nella revisione operativa. La modifica track_io_timing richiederà il riavvio dell'istanza DB e comporterà un ulteriore sovraccarico delle prestazioni a seconda del carico di lavoro dell'istanza DB. Nonostante il sovraccarico delle prestazioni per i carichi di lavoro critici, questo parametro fornisce informazioni utili relative al tempo impiegato per ogni query. I/O

Fatturazione e costi Ti Account AWS verranno addebitati i costi associati all'istanza temporanea di Amazon EC2, al volume Amazon EBS associato, al gateway NAT e ai dati trasferiti durante l'esecuzione dell'automazione. Per impostazione predefinita, questo runbook crea un'istanza t3.micro Amazon Linux 2 per raccogliere le statistiche. Il runbook avvia e arresta l'istanza tra una fase e l'altra per ridurre i costi.

Sicurezza e governance dei dati Questo runbook raccoglie statistiche interrogando le visualizzazioni e le funzioni delle statistiche di PostgreSQL. Assicurati che le credenziali fornite nel SecretId parametro consentano solo autorizzazioni di sola lettura per le visualizzazioni e le funzioni delle statistiche. Come parte dell'automazione, gli script di raccolta vengono caricati nel bucket Amazon S3 e possono essere collocati in. s3://amzn-s3-demo-bucket/automation execution id/queries/

Questi script raccolgono dati che vengono utilizzati da uno AWS specialista per esaminare gli indicatori di prestazioni chiave a livello di oggetto. Lo script raccoglie informazioni come il nome della tabella, il nome dello schema e il nome dell'indice. Se una di queste informazioni contiene informazioni sensibili come indicatori di fatturato, nome utente, indirizzo email o qualsiasi altra informazione di identificazione personale, ti consigliamo di interrompere questa revisione del carico di lavoro. Contatta il tuo AWS TAM per discutere di un approccio alternativo per la revisione del carico di lavoro.

Assicurati di avere l'approvazione e l'autorizzazione necessarie per condividere le statistiche e i metadati raccolti da questa automazione. AWS

Considerazioni sulla sicurezza Se imposti il UpdateRdsSecurityGroup parametro suyes, il runbook aggiorna il gruppo di sicurezza associato all'istanza DB per consentire il traffico in entrata dall'indirizzo IP privato dell'istanza Amazon EC2 temporanea.

Se imposti il UpdateRdsRouteTable parametro suyes, il runbook aggiorna la tabella di route associata alla sottorete in cui è in esecuzione l'istanza DB per consentire il traffico verso l'istanza temporanea di Amazon EC2 tramite la connessione peering VPC.

Creazione utente Per consentire allo script di raccolta di connettersi al database Amazon RDS, devi configurare un utente con le autorizzazioni per leggere le visualizzazioni statistiche. Quindi devi memorizzare le credenziali in Secrets Manager. Consigliamo di creare un nuovo utente dedicato per questa automazione. La creazione di un utente separato consente di controllare e tenere traccia delle attività eseguite da questa automazione.

  1. Crea un nuovo utente.

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

  2. Assicurati che questo utente possa effettuare solo connessioni di sola lettura.

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

  3. Imposta i limiti a livello di utente.

    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. Concedi pg_monitor le autorizzazioni al nuovo utente in modo che possa accedere alle statistiche del DB. (Il pg_monitor ruolo è membro dipg_read_all_settings,pg_read_all_stats, epg_stat_scan_table.)

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

Autorizzazioni aggiunte al profilo temporaneo dell'istanza Amazon EC2 da questo Systems Manager Automation Le seguenti autorizzazioni vengono aggiunte al ruolo IAM associato all'istanza temporanea di Amazon EC2. La policy AmazonSSMManagedInstanceCore gestita è inoltre associata al ruolo IAM per consentire la gestione dell'istanza Amazon EC2 da Systems Manager.

JSON
{ "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:us-east-1:111122223333:secret:secret-id", "Effect": "Allow" }, { "Action": [ "support:AddAttachmentsToSet", "support:AddCommunicationToCase", "support:DescribeCases" ], "Resource": "*", "Effect": "Allow" } ] }

Autorizzazioni aggiunte alla finestra di manutenzione temporanea da questa automazione di Systems Manager Le seguenti autorizzazioni vengono aggiunte automaticamente al ruolo IAM associato alle attività di manutenzione di Windows. Le attività di manutenzione Windows avviano, interrompono e inviano comandi all'istanza temporanea di Amazon EC2.

JSON
{ "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:us-east-1:111122223333:instance/temporary-instance-id", "arn:aws:ssm:*:*:document/AWS-RunShellScript", "arn:aws:ssm:*:*:document/AWS-StopEC2Instance", "arn:aws:ssm:*:*:document/AWS-StartEC2Instance", "arn:aws:ssm:*:111122223333:automation-execution/*" ], "Effect": "Allow" }, { "Condition": { "StringEquals": { "iam:PassedToService": "ssm.amazonaws.com" }, "ArnLike": { "iam:AssociatedResourceARN": "arn:aws:ssm:*:*:document/AWS-*" } }, "Action": "iam:PassRole", "Resource": "arn:aws:iam::111122223333:role/SSM-*", "Effect": "Allow" } ] }

Esegui questa automazione (console)

Tipo di documento

Automazione

Proprietario

Amazon

Piattaforme

Database

Parametri

  • AutomationAssumeRole

    Tipo: String

    Descrizione: (Facoltativo) L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a Systems Manager Automation di eseguire le azioni per tuo conto. Se non viene specificato alcun ruolo, Systems Manager Automation utilizza le autorizzazioni dell'utente che avvia questo runbook.

  • DBInstanceIdentifier

    Tipo: String

    Descrizione: (Obbligatorio) L'ID dell'istanza DB.

  • DatabaseName

    Tipo: String

    Descrizione: (Obbligatorio) Il nome del database ospitato sull'istanza DB.

  • SecretId

    Tipo: String

    Descrizione: (Obbligatorio) L'ARN del tuo segreto di Secrets Manager contenente la coppia di nome utente e password chiave-valore. Lo CloudFormation stack crea una policy IAM con le autorizzazioni per il GetSecretValue funzionamento di questo ARN. Le credenziali vengono utilizzate per consentire all'istanza temporanea di raccogliere le statistiche del database. Contatta il tuo TAM o STAM per discutere delle autorizzazioni minime richieste.

  • Riconosci

    Tipo: String

    Descrizione: (Obbligatorio) Inserisci yes se riconosci che questo runbook creerà risorse temporanee nel tuo account per raccogliere statistiche dalla tua istanza DB. Ti consigliamo di contattare il tuo TAM o STAM prima di eseguire questa automazione.

  • SupportCase

    Tipo: String

    Descrizione: (Facoltativo) Il numero del Supporto caso fornito dal TAM o dallo STAM. Se fornito, il runbook aggiorna il caso e allega i dati raccolti. Questa opzione richiede che l'istanza temporanea di Amazon EC2 disponga di connettività Internet per accedere all' Supporto endpoint API. È necessario impostare il AllowVpcInternetAccess parametro su. true L'oggetto del caso deve contenere la fraseAWSPremiumSupport-PostgreSQLWorkloadReview.

  • S3BucketName

    Tipo: String

    Descrizione: (Obbligatorio) Il nome del bucket Amazon S3 nel tuo account in cui desideri caricare i dati raccolti dall'automazione. Verifica che la policy del bucket non conceda autorizzazioni di lettura o scrittura non necessarie ai principali che non hanno bisogno di accedere ai contenuti del bucket. Consigliamo di creare un nuovo bucket Amazon S3 temporaneo ai fini di questa automazione. Il runbook fornisce le autorizzazioni per il funzionamento dell's3:PutObjectAPI al ruolo IAM collegato all'istanza temporanea di Amazon EC2. I file caricati si troveranno in. s3://bucket name/automation execution id/

  • InstanceType

    Tipo: String

    Descrizione: (Facoltativo) Il tipo di istanza temporanea di Amazon EC2 che eseguirà gli script SQL e shell personalizzati.

    Valori validi: t2.micro | t2.small | t2.medium | t2.large | t3.micro | t3.small | t3.medium | t3.large

    Predefinito: t3.micro

  • VpcCidr

    Tipo: String

    Descrizione: (Facoltativo) L'intervallo di indirizzi IP in notazione CIDR per il nuovo VPC (ad esempio,). 172.31.0.0/16 Assicurati di selezionare un CIDR che non si sovrapponga o corrisponda a nessun VPC esistente con connettività alla tua istanza DB. Il VPC più piccolo che puoi creare utilizza una subnet mask /28 e il VPC più grande utilizza una subnet mask /16.

    Predefinito: 172.31.0. 0/16

  • StackResourcesNamePrefix

    Tipo: String

    Descrizione: (Facoltativo) Il prefisso e il tag del nome delle risorse CloudFormation dello stack. Il runbook crea le risorse CloudFormation dello stack utilizzando questo prefisso come parte del nome e del tag applicati alle risorse. La struttura per la coppia chiave-valore del tag è. StackResourcesNamePrefix:{{automation:EXECUTION_ID}}

    Predefinito: AWSPostgreSQLWorkloadReview

  • Schedule

    Tipo: String

    Descrizione: (Facoltativo) La pianificazione della finestra di manutenzione. Specifica la frequenza con cui la finestra di manutenzione esegue le attività. Il valore predefinito è every1 hour.

    Valori validi: 15 minuti | 30 minuti | 1 ora | 2 ore | 4 ore | 6 ore | 12 ore | 1 giorno | 2 giorni | 4 giorni

    Impostazione predefinita: 1 ora

  • Durata

    Tipo: numero intero

    Descrizione: (Facoltativo) La durata massima, in minuti, per consentire l'esecuzione dell'automazione. La durata massima supportata è di 8.640 minuti (6 giorni). Il valore predefinito è 4.320 minuti (3 giorni).

    Valori validi: 30-8640

    Impostazione predefinita: 4320

  • UpdateRdsRouteTable

    Tipo: String

    Descrizione: (Facoltativo) Se impostato sutrue, il runbook aggiorna la tabella di route associata alla sottorete in cui viene eseguita l'istanza DB. Viene aggiunta una route IPv4 per indirizzare il traffico all'indirizzo IPV4 privato dell'istanza Amazon EC2 temporanea tramite la connessione peering VPC appena creata.

    Valori validi: true | false

    Impostazione predefinita: false

  • AllowVpcInternetAccess

    Tipo: String

    Descrizione: (Facoltativo) Se impostato sutrue, il runbook crea un gateway NAT per fornire connettività Internet all'istanza temporanea di Amazon EC2 per comunicare con l'endpoint API. Supporto Puoi lasciare questo parametro come false se volessi solo che il runbook carichi l'output nel tuo bucket Amazon S3.

    Valori validi: true | false

    Impostazione predefinita: false

  • UpdateRdsSecurityGroup

    Tipo: String

    Descrizione: (Facoltativo) Se impostato sutrue, il runbook aggiorna il gruppo di sicurezza associato all'istanza DB per consentire il traffico proveniente dall'indirizzo IP privato dell'istanza temporanea.

    Valori validi: false | true

    Impostazione predefinita: false

  • EbsVolumeDeleteOnTermination

    Tipo: String

    Descrizione: (Facoltativo) Se impostato sutrue, il volume principale dell'istanza Amazon EC2 temporanea viene eliminato dopo il completamento del runbook e l'eliminazione dello stack. CloudFormation

    Valori validi: false | true

    Impostazione predefinita: false

Autorizzazioni IAM richieste

Il AutomationAssumeRole parametro richiede le seguenti azioni per utilizzare correttamente il 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

Fasi del documento

  1. aws:assertAwsResourceProperty- Conferma che l'istanza DB è nello available stato.

  2. aws:executeAwsApi- Raccoglie dettagli sull'istanza DB.

  3. aws:executeScript- Verifica se il bucket Amazon S3 specificato in S3BucketName consente autorizzazioni di accesso anonime o pubbliche in lettura o scrittura.

  4. aws:executeScript- Ottiene il contenuto del CloudFormation modello dall'allegato del runbook di Automation utilizzato per creare le risorse temporanee AWS nel tuo. Account AWS

  5. aws:createStack- Crea le risorse dello CloudFormation stack.

  6. aws:waitForAwsResourceProperty- Attende che l'istanza Amazon EC2 creata dal CloudFormation modello sia in esecuzione.

  7. aws:executeAwsApi- Ottiene gli ID per l'istanza temporanea di Amazon EC2 e la connessione peering VPC creata da. CloudFormation

  8. aws:executeAwsApi- Ottiene l'indirizzo IP dell'istanza temporanea di Amazon EC2 per configurare la connettività con l'istanza DB.

  9. aws:executeAwsApi- Contrassegna il volume Amazon EBS collegato all'istanza temporanea di Amazon EC2.

  10. aws:waitForAwsResourceProperty- Attende che l'istanza Amazon EC2 temporanea superi i controlli di stato.

  11. aws:waitForAwsResourceProperty- Attende che l'istanza Amazon EC2 temporanea sia gestita da Systems Manager. Se questo passaggio scade o fallisce, il runbook riavvia l'istanza.

    1. aws:executeAwsApi- Riavvia l'istanza Amazon EC2 temporanea se il passaggio precedente non è riuscito o è scaduto.

    2. aws:waitForAwsResourceProperty- Attende che l'istanza temporanea di Amazon EC2 venga gestita da Systems Manager dopo il riavvio.

  12. aws:runCommand- Installa i requisiti dell'applicazione di raccolta di metadati sull'istanza temporanea di Amazon EC2.

  13. aws:runCommand- Configura l'accesso alla tua istanza DB creando un file di configurazione sull'istanza temporanea di Amazon EC2.

  14. aws:executeAwsApi- Crea una finestra di manutenzione per eseguire periodicamente l'applicazione di raccolta dei metadati utilizzando Run Command. La finestra di manutenzione avvia e interrompe l'istanza tra i comandi.

  15. aws:waitForAwsResourceProperty- Attende che la finestra di manutenzione creata dal CloudFormation modello sia pronta.

  16. aws:executeAwsApi- Ottiene gli ID per la finestra di manutenzione e il calendario delle modifiche creato da CloudFormation.

  17. aws:sleep- Attende fino alla data di fine della finestra di manutenzione.

  18. aws:executeAwsApi- Disattiva la finestra di manutenzione.

  19. aws:executeScript- Ottiene i risultati delle attività eseguite durante la finestra di manutenzione.

  20. aws:waitForAwsResourceProperty- Attende che la finestra di manutenzione termini l'ultima operazione prima di continuare.

  21. aws:branch- Suddivide il flusso di lavoro in base al fatto che sia stato fornito un valore per il SupportCase parametro.

    1. aws:changeInstanceState- Avvia l'istanza temporanea di Amazon EC2 e attende il superamento dei controlli di stato prima di caricare il report.

    2. aws:waitForAwsResourceProperty- Attende che l'istanza temporanea di Amazon EC2 sia gestita da Systems Manager. Se questo passaggio scade o fallisce, il runbook riavvia l'istanza.

      1. aws:executeAwsApi- Riavvia l'istanza Amazon EC2 temporanea se il passaggio precedente non è riuscito o è scaduto.

      2. aws:waitForAwsResourceProperty- Attende che l'istanza temporanea di Amazon EC2 venga gestita da Systems Manager dopo il riavvio.

    3. aws:runCommand- Allega il report sui metadati al Supporto caso se hai fornito un valore per il parametro. SupportCase Lo script comprime e divide il report in file da 5 MB. Il numero massimo di file che lo script allega a un Supporto caso è 12.

  22. aws:changeInstanceState- Interrompe l'istanza temporanea di Amazon EC2 nel caso in cui lo CloudFormation stack non venga eliminato.

  23. aws:executeAwsApi- Descrive gli eventi CloudFormation dello stack se i runbook non riescono a creare o aggiornare lo CloudFormation stack.

  24. aws:waitForAwsResourceProperty- Attende che CloudFormation lo stack raggiunga lo stato di terminale prima di eliminarlo.

  25. aws:executeAwsApi- Elimina lo CloudFormation stack escludendo la finestra di manutenzione. Il volume Amazon EBS principale associato all'istanza temporanea di Amazon EC2 viene preservato se il valore del EbsVolumeDeleteOnTermination parametro è stato impostato su. false