AWSPremiumSupport-PostgreSQLWorkloadReview - AWS Systems Manager Referenz zum Automatisierungs-Runbook

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWSPremiumSupport-PostgreSQLWorkloadReview

Beschreibung

Das AWSPremiumSupport-PostgreSQLWorkloadReview Runbook erfasst mehrere Schnappschüsse Ihrer Amazon Relational Database Service (AmazonRDS) Postgre-Datenbank Nutzungsstatistiken. SQL Die erfassten Statistiken sind erforderlich, damit ein Experte von AWS Support Proactive Services eine Betriebsprüfung durchführen kann. Die Statistiken werden mithilfe einer Reihe von benutzerdefinierten Skripten SQL und Shell-Skripten erfasst. Diese Skripts werden auf eine temporäre Amazon Elastic Compute Cloud (AmazonEC2) -Instance in Ihrer AWS-Konto , die mit diesem Runbook erstellt wurde, heruntergeladen. Für das Runbook müssen Sie Anmeldeinformationen mithilfe eines AWS Secrets Manager Secrets angeben, das ein Schlüssel-Wert-Paar aus Benutzername und Passwort enthält. Der Benutzername muss über Berechtigungen zum Abfragen der Standardansichten und -funktionen von SQL Postgre-Statistiken verfügen.

Dieses Runbook erstellt AWS-Konto unter Verwendung eines AWS CloudFormation Stacks automatisch die folgenden AWS Ressourcen. Sie können die Stack-Erstellung mithilfe der AWS CloudFormation Konsole überwachen.

  • Eine virtuelle private Cloud (VPC) und eine EC2 Amazon-Instance wurden in einem privaten Subnetz VPC mit optionaler Konnektivität zum Internet über ein NAT Gateway gestartet.

  • Eine AWS Identity and Access Management (IAM) -Rolle, die der temporären EC2 Amazon-Instance zugewiesen ist und über Berechtigungen zum Abrufen des geheimen Secrets Manager Manager-Werts verfügt. Die Rolle bietet auch Berechtigungen zum Hochladen von Dateien in einen Amazon Simple Storage Service (Amazon S3) -Bucket Ihrer Wahl und optional in einen AWS Support Fall.

  • Eine VPC Peering-Verbindung, um Konnektivität zwischen Ihrer DB-Instance und der temporären EC2 Amazon-Instance zu ermöglichen.

  • Systems Manager-, Secrets Manager- und Amazon S3 VPC S3-Endpoints, die an die temporären VPC Endgeräte angeschlossen sind.

  • Ein Wartungsfenster mit registrierten Aufgaben, die die temporäre EC2 Amazon-Instance regelmäßig starten und stoppen, Datenerfassungsskripten ausführen und Dateien in einen Amazon S3-Bucket hochladen. Außerdem wird eine IAM Rolle für das Wartungsfenster erstellt, die Berechtigungen zur Ausführung der registrierten Aufgaben bereitstellt.

Wenn das Runbook abgeschlossen ist, wird der AWS CloudFormation Stack, der zum Erstellen der erforderlichen AWS Ressourcen verwendet wird, gelöscht und der Bericht wird in den Amazon S3 S3-Bucket Ihrer Wahl hochgeladen, und optional wird ein AWS Support Fall erstellt.

Anmerkung

Standardmäßig wird das EBS Amazon-Root-Volume der temporären EC2 Amazon-Instance beibehalten. Sie können diese Option überschreiben, indem Sie den EbsVolumeDeleteOnTermination Parameter auf setzentrue.

Voraussetzungen

  • Enterprise Support-Abonnement Für dieses Runbook und die Proactive Services Workload Diagnostics and Reviews ist ein Enterprise Support-Abonnement erforderlich. Bevor Sie dieses Runbook verwenden, wenden Sie sich an Ihren Technical Account Manager (TAM) oder Specialist TAM (STAM), um weitere Anweisungen zu erhalten. Weitere Informationen finden Sie unter AWS Support Proactive Services.

  • Konto und AWS-Region Kontingente Stellen Sie sicher, dass Sie die maximale Anzahl an EC2 Amazon-Instances nicht erreicht haben oder VPCs die Sie in Ihrem Konto und der Region, in der Sie dieses Runbook verwenden, erstellen können. Wenn Sie eine Erhöhung des Limits beantragen müssen, sehen Sie sich das Formular zur Erhöhung des Service-Limits an.

  • Konfiguration der Datenbank

    1. Für die Datenbank, die Sie im DatabaseName Parameter angeben, sollte die pg_stat_statements Erweiterung konfiguriert sein. Wenn Sie die Konfiguration pg_stat_statements nicht vorgenommen habenshared_preload_libraries, müssen Sie den Wert in der DB-Parametergruppe bearbeiten und die Änderungen übernehmen. Bei Änderungen am Parameter shared_preload_libraries müssen Sie Ihre DB-Instance neu starten. Weitere Informationen finden Sie unter Arbeiten mit Parametergruppen. Wenn Sie pg_stat_statements mehr hinzufügen, shared_preload_libraries wird dies zu einem gewissen Leistungsaufwand führen. Dies ist jedoch nützlich, um die Leistung einzelner Kontoauszüge zu verfolgen. Weitere Informationen zur pg_stat_statements Erweiterung finden Sie in der SQLPostgre-Dokumentation. Wenn Sie die Erweiterung nicht konfigurieren oder wenn die pg_stat_statements Erweiterung nicht in der Datenbank vorhanden ist, die für die Statistikerfassung verwendet wird, wird die Analyse auf Kontoauszugsebene nicht in der Operational Review dargestellt.

    2. Stellen Sie sicher, dass die track_activities Parameter track_counts und nicht ausgeschaltet sind. Wenn diese Parameter in der DB-Parametergruppe deaktiviert sind, sind keine aussagekräftigen Statistiken verfügbar. Wenn Sie diese Parameter ändern, müssen Sie Ihre DB-Instance neu starten. Weitere Informationen finden Sie unter Arbeiten mit Parametern auf Ihrer Amazon RDS for SQL Postgre-DB-Instance.

    3. Wenn der track_io_timing Parameter ausgeschaltet ist, werden die Statistiken auf I/O-Ebene nicht in die Betriebsüberprüfung einbezogen. Bei Änderungen track_io_timing müssen Sie Ihre DB-Instance neu starten, was je nach Arbeitslast der DB-Instance zu zusätzlichem Leistungsaufwand führt. Trotz des Leistungsaufwands für kritische Workloads bietet dieser Parameter nützliche Informationen zur I/O-Zeit pro Abfrage.

Abrechnung und Gebühren AWS-Konto Ihnen werden die Kosten für die temporäre EC2 Amazon-Instance, das zugehörige EBS Amazon-Volumen, das NAT Gateway und die während der Ausführung dieser Automatisierung übertragenen Daten in Rechnung gestellt. Standardmäßig erstellt dieses Runbook eine t3.micro Amazon Linux 2-Instance, um die Statistiken zu sammeln. Das Runbook startet und stoppt die Instance zwischen den Schritten, um die Kosten zu senken.

Datensicherheit und Verwaltung Dieses Runbook sammelt Statistiken, indem es die Statistikansichten und -funktionen von Postgre SQL abfragt. Stellen Sie sicher, dass die im SecretId Parameter angegebenen Anmeldeinformationen nur Leseberechtigungen für die Statistikansichten und -funktionen zulassen. Im Rahmen der Automatisierung werden die Sammelskripte in Ihren Amazon S3 S3-Bucket hochgeladen und befinden sich dorts3://amzn-s3-demo-bucket/automation execution id/queries/.

Diese Skripts sammeln Daten, die von einem AWS Spezialisten verwendet werden, um wichtige Leistungsindikatoren auf Objektebene zu überprüfen. Das Skript sammelt Informationen wie Tabellenname, Schemaname und Indexname. Wenn eine dieser Informationen vertrauliche Informationen wie Umsatzindikatoren, Benutzername, E-Mail-Adresse oder andere persönlich identifizierbare Informationen enthält, empfehlen wir, dass Sie diese Workload-Prüfung beenden. Wenden Sie sich an Sie AWS TAM, um einen alternativen Ansatz für die Überprüfung der Arbeitslast zu besprechen.

Stellen Sie sicher, dass Sie über die erforderliche Genehmigung und Freigabe verfügen, um die im Rahmen dieser Automatisierung gesammelten Statistiken und Metadaten mit anderen zu teilen AWS.

Sicherheitsüberlegungen Wenn Sie den UpdateRdsSecurityGroup Parameter auf setzenyes, aktualisiert das Runbook die Ihrer DB-Instance zugeordnete Sicherheitsgruppe, um eingehenden Datenverkehr von der privaten IP-Adresse der temporären EC2 Amazon-Instance zuzulassen.

Wenn Sie den UpdateRdsRouteTable Parameter auf setzenyes, aktualisiert das Runbook die Routing-Tabelle, die dem Subnetz zugeordnet ist, in dem Ihre DB-Instance läuft, um Traffic zur temporären EC2 Amazon-Instance über die VPC Peering-Verbindung zuzulassen.

Benutzererstellung Damit das Sammelskript eine Verbindung zu Ihrer RDS Amazon-Datenbank herstellen kann, müssen Sie einen Benutzer einrichten, der berechtigt ist, die Statistikansichten zu lesen. Dann müssen Sie die Anmeldeinformationen in Secrets Manager speichern. Wir empfehlen, einen neuen dedizierten Benutzer für diese Automatisierung zu erstellen. Wenn Sie einen separaten Benutzer erstellen, können Sie die im Rahmen dieser Automatisierung ausgeführten Aktivitäten prüfen und nachverfolgen.

  1. Erstellen Sie einen neuen Benutzer.

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

  2. Stellen Sie sicher, dass dieser Benutzer nur schreibgeschützte Verbindungen herstellen kann.

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

  3. Legen Sie Grenzwerte auf Benutzerebene fest.

    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. Erteilen Sie dem neuen Benutzer pg_monitor Berechtigungen, damit er auf die DB-Statistiken zugreifen kann. (Die pg_monitor Rolle ist Mitglied von pg_read_all_settingspg_read_all_stats, undpg_stat_scan_table.)

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

Berechtigungen, die dem temporären EC2 Amazon-Instance-Profil durch diese Systems Manager Manager-Automatisierung hinzugefügt wurden Die folgenden Berechtigungen werden der IAM Rolle hinzugefügt, die der temporären EC2 Amazon-Instance zugeordnet ist. Die AmazonSSMManagedInstanceCore verwaltete Richtlinie ist auch mit der IAM Rolle verknüpft, sodass die EC2 Amazon-Instance von Systems Manager verwaltet werden kann.

{ "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" } ] }

Berechtigungen, die dem temporären Wartungsfenster durch diese Systems Manager Manager-Automatisierung hinzugefügt wurden Die folgenden Berechtigungen werden automatisch der IAM Rolle hinzugefügt, die den Windows-Wartungsaufgaben zugeordnet ist. Die Windows-Wartungsaufgaben starten, stoppen und senden Befehle an die temporäre EC2 Amazon-Instance.

{ "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" } ] }

Führen Sie diese Automatisierung aus (Konsole)

Art des Dokuments

Automatisierung

Eigentümer

Amazon

Plattformen

Datenbanken

Parameter

  • AutomationAssumeRole

    Typ: Zeichenfolge

    Beschreibung: (Optional) Der Amazon-Ressourcenname (ARN) der Rolle AWS Identity and Access Management (IAM), der es Systems Manager Automation ermöglicht, die Aktionen in Ihrem Namen durchzuführen. Wenn keine Rolle angegeben ist, verwendet Systems Manager Automation die Berechtigungen des Benutzers, der dieses Runbook startet.

  • DBInstanceIdentifier

    Typ: Zeichenfolge

    Beschreibung: (Erforderlich) Die ID Ihrer DB-Instance.

  • DatabaseName

    Typ: Zeichenfolge

    Beschreibung: (Erforderlich) Der Datenbankname, der auf Ihrer DB-Instance gehostet wird.

  • SecretId

    Typ: Zeichenfolge

    Beschreibung: (Erforderlich) Das Geheimnis ARN Ihres Secrets Manager, das das Schlüsselwertpaar aus Benutzername und Passwort enthält. Der AWS CloudFormation Stack erstellt eine IAM Richtlinie mit Berechtigungen für den entsprechenden GetSecretValue VorgangARN. Die Anmeldeinformationen werden verwendet, damit die temporäre Instanz die Datenbankstatistiken sammeln kann. Wenden Sie sich an Ihren TAM oderSTAM, um die erforderlichen Mindestberechtigungen zu besprechen.

  • Bestätigen

    Typ: Zeichenfolge

    Beschreibung: (Erforderlich) Geben Sie ein, yes ob Sie bestätigen, dass dieses Runbook temporäre Ressourcen in Ihrem Konto erstellt, um Statistiken von Ihrer DB-Instance zu sammeln. Wir empfehlen Ihnen, Ihren TAM oder zu kontaktieren, STAM bevor Sie diese Automatisierung ausführen.

  • SupportCase

    Typ: Zeichenfolge

    Beschreibung: (Optional) Die von Ihrem TAM oder angegebene AWS Support FallnummerSTAM. Falls angegeben, aktualisiert das Runbook den Fall und fügt die gesammelten Daten an. Für diese Option muss die temporäre EC2 Amazon-Instance über eine Internetverbindung verfügen, um auf den AWS Support API Endpunkt zugreifen zu können. Sie müssen den AllowVpcInternetAccess Parameter auf setzentrue. Der Betreff der Groß- und Kleinschreibung muss den Ausdruck enthaltenAWSPremiumSupport-PostgreSQLWorkloadReview.

  • S3 BucketName

    Typ: Zeichenfolge

    Beschreibung: (Erforderlich) Der Amazon S3 S3-Bucket-Name in Ihrem Konto, in das Sie die von der Automatisierung gesammelten Daten hochladen möchten. Stellen Sie sicher, dass die Bucket-Richtlinie Prinzipalen, die keinen Zugriff auf den Inhalt des Buckets benötigen, keine unnötigen Lese- oder Schreibberechtigungen gewährt. Wir empfehlen, für diese Automatisierung einen neuen temporären Amazon S3 S3-Bucket zu erstellen. Das Runbook gewährt der IAM Rolle, die der temporären EC2 Amazon-Instance zugewiesen ist, Berechtigungen für den s3:PutObject API Vorgang. Die hochgeladenen Dateien befinden sich ins3://bucket name/automation execution id/.

  • InstanceType

    Typ: Zeichenfolge

    Beschreibung: (Optional) Der Typ der temporären EC2 Amazon-Instance, die die benutzerdefinierten Skripts SQL und Shell-Skripts ausführt.

    Gültige Werte: t2.micro | t2.small | t2.medium | t2.large | t3.micro | t3.small | t3.medium | t3.large

    Standard: t3.micro

  • VpcCidr

    Typ: Zeichenfolge

    Beschreibung: (Optional) Der IP-Adressbereich in CIDR Notation für den neuen VPC (z. B.172.31.0.0/16). Stellen Sie sicherCIDR, dass Sie einen auswählen, der sich nicht VPC mit bestehenden Verbindungen zu Ihrer DB-Instance überschneidet oder mit diesen übereinstimmt. Die kleinste, die VPC Sie erstellen können, verwendet eine /28-Subnetzmaske, und die größte VPC verwendet eine /16-Subnetzmaske.

    Standard: 172.31.0.0/16

  • StackResourcesNamePrefix

    Typ: Zeichenfolge

    Beschreibung: (Optional) Das Namenspräfix und das Tag für den Namen der AWS CloudFormation Stack-Ressourcen. Das Runbook erstellt die AWS CloudFormation Stack-Ressourcen unter Verwendung dieses Präfixes als Teil des Namens und des Tags, die auf die Ressourcen angewendet werden. Die Struktur für das Schlüssel-Wert-Paar des Tags lautet. StackResourcesNamePrefix:{{automation:EXECUTION_ID}}

    Standard: AWSPostgreSQLWorkloadReview

  • Plan

    Typ: Zeichenfolge

    Beschreibung: (Optional) Der Zeitplan für das Wartungsfenster. Gibt an, wie oft die Aufgaben im Wartungsfenster ausgeführt werden. Der Standardwert ist jeder1 hour.

    Gültige Werte: 15 Minuten | 30 Minuten | 1 Stunde | 2 Stunden | 4 Stunden | 6 Stunden | 12 Stunden | 1 Tag | 2 Tage | 4 Tage

    Standard: 1 Stunde

  • Dauer

    Typ: Ganzzahl

    Beschreibung: (Optional) Die maximale Dauer in Minuten, für die die Automatisierung ausgeführt werden soll. Die maximal unterstützte Dauer beträgt 8.640 Minuten (6 Tage). Der Standardwert ist 4.320 Minuten (3 Tage).

    Gültige Werte: 30-8640

    Standard: 4320

  • UpdateRdsRouteTable

    Typ: Zeichenfolge

    Beschreibung: (Optional) Wenn diese Option auf gesetzt isttrue, aktualisiert das Runbook die Routing-Tabelle, die dem Subnetz zugeordnet ist, in dem Ihre DB-Instance ausgeführt wird. Eine IPv4 Route wird hinzugefügt, um den Verkehr über die neu erstellte VPC Peering-Verbindung an die temporäre private IPV4 Adresse der EC2 Amazon-Instance weiterzuleiten.

    Zulässige Werte: true | false

    Standard: false

  • AllowVpcInternetAccess

    Typ: Zeichenfolge

    Beschreibung: (Optional) Wenn diese Option auf gesetzt isttrue, erstellt das Runbook ein NAT Gateway, um eine Internetverbindung für die temporäre EC2 Amazon-Instance bereitzustellen, um mit dem AWS Support API Endpunkt zu kommunizieren. Sie können diesen Parameter so belassen, als false ob das Runbook nur die Ausgabe in Ihren Amazon S3 S3-Bucket hochladen soll.

    Zulässige Werte: true | false

    Standard: false

  • UpdateRdsSecurityGroup

    Typ: Zeichenfolge

    Beschreibung: (Optional) Wenn diese Option auf gesetzt isttrue, aktualisiert das Runbook die Ihrer DB-Instance zugeordnete Sicherheitsgruppe, um Datenverkehr von der privaten IP-Adresse der temporären Instance aus zuzulassen.

    Gültige Werte: false | true

    Standard: false

  • EbsVolumeDeleteOnTermination

    Typ: Zeichenfolge

    Beschreibung: (Optional) Wenn auf gesetzttrue, wird das Root-Volume der temporären EC2 Amazon-Instance gelöscht, nachdem das Runbook abgeschlossen und der AWS CloudFormation Stack gelöscht wurde.

    Gültige Werte: falsch | wahr

    Standard: false

Erforderliche IAM Berechtigungen

Der AutomationAssumeRole Parameter erfordert die folgenden Aktionen, um das Runbook erfolgreich zu verwenden.

  • 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

Dokumentschritte

  1. aws:assertAwsResourceProperty- Bestätigt, dass sich die DB-Instance im available Status befindet.

  2. aws:executeAwsApi- Sammelt Details über die DB-Instance.

  3. aws:executeScript- Prüft, ob der im angegebene Amazon S3 S3-Bucket anonyme oder öffentliche Lese- oder Schreibzugriffsberechtigungen S3BucketName zulässt.

  4. aws:executeScript- Ruft den AWS CloudFormation Vorlageninhalt aus dem Automation-Runbook-Anhang ab, der verwendet wird, um die temporären AWS Ressourcen in Ihrem AWS-Konto zu erstellen.

  5. aws:createStack- Erstellt die AWS CloudFormation Stack-Ressourcen.

  6. aws:waitForAwsResourceProperty- Wartet, bis die durch die AWS CloudFormation Vorlage erstellte EC2 Amazon-Instance läuft.

  7. aws:executeAwsApi- Ruft die IDs für die temporäre EC2 Amazon-Instance und die VPC Peering-Verbindung ab, die von AWS CloudFormation erstellt wurden.

  8. aws:executeAwsApi— Ruft die IP-Adresse für die temporäre EC2 Amazon-Instance ab, um die Konnektivität mit Ihrer DB-Instance zu konfigurieren.

  9. aws:executeAwsApi— Kennzeichnet das EBS Amazon-Volume, das an die temporäre EC2 Amazon-Instance angehängt ist.

  10. aws:waitForAwsResourceProperty- Wartet, bis die temporäre EC2 Amazon-Instance die Statusprüfungen bestanden hat.

  11. aws:waitForAwsResourceProperty- Wartet, bis die temporäre EC2 Amazon-Instance von Systems Manager verwaltet wird. Wenn dieser Schritt das Timeout überschreitet oder fehlschlägt, startet das Runbook die Instance neu.

    1. aws:executeAwsApi— Startet die temporäre EC2 Amazon-Instance neu, falls der vorherige Schritt fehlgeschlagen ist oder eine Zeitüberschreitung aufgetreten ist.

    2. aws:waitForAwsResourceProperty- Wartet, bis die temporäre EC2 Amazon-Instance nach dem Neustart von Systems Manager verwaltet wird.

  12. aws:runCommand- Installiert die Anwendungsanforderungen für den Metadatensammler auf der temporären EC2 Amazon-Instance.

  13. aws:runCommand- Konfiguriert den Zugriff auf Ihre DB-Instance, indem eine Konfigurationsdatei auf der temporären EC2 Amazon-Instance erstellt wird.

  14. aws:executeAwsApi- Erstellt ein Wartungsfenster, in dem die Metadatensammler-Anwendung regelmäßig mithilfe von Run Command ausgeführt werden kann. Das Wartungsfenster startet und stoppt die Instanz zwischen den Befehlen.

  15. aws:waitForAwsResourceProperty- Wartet, bis das von der AWS CloudFormation Vorlage erstellte Wartungsfenster bereit ist.

  16. aws:executeAwsApi- Ruft das IDs für das Wartungsfenster und den Änderungskalender ab, die von AWS CloudFormation erstellt wurden.

  17. aws:sleep- Wartet bis zum Enddatum des Wartungsfensters.

  18. aws:executeAwsApi- Schaltet das Wartungsfenster aus.

  19. aws:executeScript- Ruft die Ergebnisse der Aufgaben ab, die während des Wartungsfensters ausgeführt wurden.

  20. aws:waitForAwsResourceProperty- Wartet, bis das Wartungsfenster die letzte Aufgabe abgeschlossen hat, bevor der Vorgang fortgesetzt wird.

  21. aws:branch- Verzweigt den Workflow je nachdem, ob Sie einen Wert für den SupportCase Parameter angegeben haben.

    1. aws:changeInstanceState- Startet die temporäre EC2 Amazon-Instance und wartet, bis die Statusprüfungen bestanden sind, bevor der Bericht hochgeladen wird.

    2. aws:waitForAwsResourceProperty- Wartet, bis die temporäre EC2 Amazon-Instance von Systems Manager verwaltet wird. Wenn dieser Schritt das Timeout überschreitet oder fehlschlägt, startet das Runbook die Instance neu.

      1. aws:executeAwsApi— Startet die temporäre EC2 Amazon-Instance neu, falls der vorherige Schritt fehlgeschlagen ist oder eine Zeitüberschreitung aufgetreten ist.

      2. aws:waitForAwsResourceProperty- Wartet, bis die temporäre EC2 Amazon-Instance nach dem Neustart von Systems Manager verwaltet wird.

    3. aws:runCommand- Hängt den Metadatenbericht an den AWS Support Fall an, wenn Sie einen Wert für den SupportCase Parameter angegeben haben. Das Skript komprimiert den Bericht und teilt ihn in 5 MB-Dateien auf. Die maximale Anzahl von Dateien, die das Skript an einen AWS Support Fall anhängt, beträgt 12.

  22. aws:changeInstanceState- Stoppt die temporäre EC2 Amazon-Instance für den Fall, dass der AWS CloudFormation Stack nicht gelöscht werden kann.

  23. aws:executeAwsApi— Beschreibt die AWS CloudFormation Stack-Ereignisse, falls die Runbooks den AWS CloudFormation Stack nicht erstellen oder aktualisieren können.

  24. aws:waitForAwsResourceProperty- Wartet, bis sich der AWS CloudFormation Stack im Terminalstatus befindet, bevor er gelöscht wird.

  25. aws:executeAwsApi- Löscht den AWS CloudFormation Stapel mit Ausnahme des Wartungsfensters. Das mit der temporären EC2 Amazon-Instance verknüpfte EBS Amazon-Root-Volume wird beibehalten, wenn der EbsVolumeDeleteOnTermination Parameterwert auf gesetzt wurdefalse.