Wie kann ich die AWS-CLI verwenden, um einen AWS Backup-Plan zu erstellen oder einen On-Demand-Job auszuführen?

Lesedauer: 4 Minute
0

Ich möchte die AWS Command Line Interface (AWS CLI) verwenden, um einen AWS-Backup-Plan zu erstellen. -oder- Ich möchte die AWS-CLI verwenden, um einen On-Demand-Job auf AWS Backup auszuführen.

Lösung

Einen AWS Backup-Plan erstellen

Hinweis: Das folgende Beispiel für einen AWS Backup-Plan wurde mit einer Kopierauftragskonfiguration in der Backup-Regel eingerichtet. Mit dieser Konfiguration erstellen Sie einen primären Backup-Tresor in der AWS-Quellregion. Der primäre Tresor hostet die Quellwiederherstellungspunkte. Anschließend erstellen Sie einen sekundären Tresor in der Zielregion. Der sekundäre Tresor speichert die Wiederherstellungspunkte, die AWS Backup als Teil der Kopierkonfiguration im Backup-Plan erstellt.

1.Führen Sie den Befehl create-backup-vault aus, um einen primären Tresor in der Quellregion zu erstellen. Führen Sie dann den Befehl erneut aus, um einen sekundären Tresor in der Zielregion zu erstellen. In den folgenden Beispielbefehlen ist eu-west-1 die Quellregion und eu-west-2 die Zielregion.

aws backup create-backup-vault --backup-vault-name primary --region eu-west-1

aws backup create-backup-vault --backup-vault-name secondary --region eu-west-2

Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.

2.Erstellen Sie eine JSON-Datei mit den Optionen und Parametern für Ihren Backup-Plan. Beispiel:

{
    "BackupPlanName": "testplan",
    "Rules": [{
        "RuleName": "HalfDayBackups",
        "TargetBackupVaultName": "primary",
        "ScheduleExpression": "cron(0 5/12 ? * * *)",
        "StartWindowMinutes": 480,
        "CompletionWindowMinutes": 10080,
        "Lifecycle": {
            "DeleteAfterDays": 30
        },
        "CopyActions": [{
            "DestinationBackupVaultArn": "arn:aws:backup:eu-west-2:123456789:backup-vault:secondary",
            "Lifecycle": {
                "DeleteAfterDays": 30
            }
        }]
    }]
}

Hinweis: Legen Sie für das Feld ScheduleExpression den Wert auf der Grundlage des Wiederherstellungspunktziels Ihrer Organisation fest. Für das Feld Lebenszyklus, das optional ist, können Sie einen Wert eingeben, der auf der Aufbewahrungsrichtlinie Ihrer Backup-Strategie basiert.

3.Nachdem Sie die JSON-Datei erstellt haben, führen Sie den Befehl create-backup-plan aus. Übergeben Sie dann die JSON-Datei als Eingabeparameter:

aws backup create-backup-plan --backup-plan file://

4.Notieren Sie sich in der Ausgabe des Befehls den Wert für BackupPlanId.

5.Erstellen Sie eine JSON-Datei, die die Parameter für die Zuweisung von Ressourcen zum Backup-Plan festlegt, ähnlich der folgenden:

Hinweis: Sie können Amazon Resource Names (ARNs), Tags oder beides verwenden, um Ressourcen für einen Backup-Plan festzulegen. Das folgende Beispiel verwendet sowohl einen ARN als auch Tags.

{
    "SelectionName": "Myselection",
    "IamRoleArn": "arn:aws:iam::123456789:role/service-role/AWSBackupDefaultServiceRole",
    "Resources": ["arn:aws:ec2:eu-west-1:123456789:volume/vol-0abcdef1234"],
    "ListOfTags": [{
        "ConditionType": "STRINGEQUALS",
        "ConditionKey": "backup",
        "ConditionValue": "yes"
    }]
}

6.Nachdem Sie die JSON-Datei erstellt haben, führen Sie den Befehl create-backup-selection aus. Übergeben Sie dann die JSON-Datei als Eingabeparameter:

Hinweis: Geben Sie für den Wert von --backup-plan-id die BackupPlanId ein, die Sie in Schritt 4 erhalten haben.

aws backup create-backup-selection --backup-plan-id abcd-efgh-ijkl-mnop --backup-selection file://

Führen Sie einen On-Demand-Job auf AWS Backup aus

Führen Sie den Befehl start-backup-job aus, um einen On-Demand-Backup-Job auszuführen. Mit dem folgenden Beispielbefehl wird ein Backup-Job für die Ressource vol-0abcdef1234 ausgeführt:

aws backup start-backup-job --backup-vault-name primary --resource-arn arn:aws:ec2:eu-west-1:123456789:volume/vol-0abcdef1234 --iam-role-arn arn:aws:iam::123456789:role/service-role/AWSBackupDefaultServiceRole --idempotency-token 623f13d2-78d2-11ea-bc55-0242ac130003 --start-window-minutes 60 --complete-window-minutes 10080 --lifecycle DeleteAfterDays=30 --region eu-west-1

Hinweis: Der vorherige Befehl enthält einen Wert für --idempotency-token. Dieser Wert ist eine eindeutige Zeichenfolge, die Sie angeben, um zwischen StartBackupJob-Aufrufen zu unterscheiden. Auf einem Linux-Betriebssystem können Sie den Befehl uuid ausführen, um eine eindeutige Kennung zu generieren:

uuid -r

Führen Sie den Befehl start-copy-job aus, um einen On-Demand-Kopierauftrag auszuführen. Mit dem folgenden Beispielbefehl wird ein Job ausgeführt, der den Wiederherstellungspunkt für snap-0abcdaf2247b33dbc aus dem Quelltresor mit dem Namen primary in einen Zieltresor mit dem Namen secondary kopiert:

aws backup start-copy-job --recovery-point-arn arn:aws:ec2:eu-west-1::snapshot/snap-0abcdaf2247b33dbc --source-backup-vault-name primary --destination-backup-vault-arn arn:aws:backup:eu-west-2:123456789:backup-vault:secondary --iam-role-arn arn:aws:iam::123456789:role/service-role/AWSBackupDefaultServiceRole --idempotency-token 5aac8974-78d2-11ea-bc55-0242ac130003 --lifecycle DeleteAfterDays=30 --region eu-west-1

Führen Sie den Befehl start-restore-job aus, um einen Wiederherstellungsauftrag zu starten. Gehen Sie folgendermaßen vor, um einen Wiederherstellungsauftrag für ein Amazon Elastic Block Store (Amazon EBS)-Volume zu initiieren:

1.Führen Sie den Befehl get-recovery-point-restore-metadata für den Wiederherstellungspunkt aus, den Sie wiederherstellen möchten:

aws backup get-recovery-point-restore-metadata --backup-vault-name primary --recovery-point-arn arn:aws:ec2:eu-west-1::snapshot/snap-0abcdaf2247b33dbc

2.Notieren Sie sich in der Ausgabe des Befehls die Werte für Volume-ID und Verschlüsselung.

3.Erstellen Sie eine JSON-Datei, die die Parameter für die erforderliche Option --metadata des Befehls start-restore-job festlegt. Geben Sie für encrypted und volumeId die Werte ein, die Sie in Schritt 2 erhalten haben.

{
   "availabilityZone":"eu-west-1a",
   "encrypted":"false",
   "volumeId":"vol-0ck270d4c0b2e44c9",
   "volumeSize":"100",
   "volumeType":"gp2"
}

4.Nachdem Sie die JSON-Datei erstellt haben, führen Sie den Befehl start-restore-job aus. Übergeben Sie dann die JSON-Datei als Eingabeparameter:

aws backup start-restore-job --recovery-point-arn arn:aws:ec2:eu-west-1::snapshot/snap-0abcdaf2247b33dbc  --metadata file:// --iam-role-arn arn:aws:iam::123456789:role/service-role/AWSBackupDefaultServiceRole --idempotency-token 52e602ce-78d2-11ea-bc55-0242ac130003 --resource-type EBS --region eu-west-1

Informationen zum Initiieren einer Wiederherstellung für ein Amazon Elastic File System (Amazon EFS) finden Sie unter Wie stelle ich ein Amazon EFS-Dateisystem von einem AWS Backup-Wiederherstellungspunkt mithilfe der AWS-CLI wieder her?


AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren