Comment puis-je utiliser AWS CLI pour créer un plan de sauvegarde AWS Backup ou exécuter une tâche à la demande ?

Lecture de 5 minute(s)
0

Je souhaite utiliser AWS Command Line Interface (AWS CLI) pour créer un plan de sauvegarde AWS Backup. - ou - Je souhaite utiliser AWS CLI pour exécuter une tâche à la demande sur AWS Backup.

Résolution

Créer un plan de sauvegarde AWS Backup

Remarque : l'exemple de plan de sauvegarde AWS Backup suivant est configuré avec une configuration de tâche de copie dans la règle de sauvegarde. Avec cette configuration, vous créez un coffre-fort de sauvegarde principal dans la région AWS source. Le coffre-fort principal héberge les points de récupération source. Ensuite, vous créez un coffre-fort secondaire dans la région de destination. Le coffre-fort secondaire stocke les points de récupération créés par AWS Backup dans le cadre de la configuration de la copie du plan de sauvegarde.

1.    Exécutez la commande create-backup-vault pour créer un coffre-fort principal dans la région source. Exécutez ensuite à nouveau la commande pour créer un coffre-fort secondaire dans la région de destination. Dans les exemples de commandes suivants, eu-west-1 est la Région source et eu-west-2 la région de destination.

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

Remarque : Si vous recevez des erreurs lors de l'exécution des commandes depuis AWS CLI, assurez-vous que vous utilisez la version AWS CLI la plus récente.

2.    Créez un fichier JSON avec les options et les paramètres de votre plan de sauvegarde. Exemple :

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

Remarque : pour le champ ScheduleExpression, définissez la valeur en fonction de l'objectif du point de récupération de votre organisation. Pour le champ Lifecycle, qui est facultatif, vous pouvez entrer une valeur basée sur la stratégie de rétention de votre stratégie de sauvegarde.

3.    Une fois que vous avez créé le fichier JSON, exécutez la commande create-backup-plan. Ensuite, transmettez le fichier JSON en tant que paramètre d'entrée :

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

4.    Dans la sortie de la commande, notez la valeur de BackupPlanId.

5.    Créez un fichier JSON qui définit les paramètres d'attribution des ressources au plan de sauvegarde, comme suit :

Remarque : vous pouvez utiliser des Amazon Resource Names (ARN), des balises ou les deux, pour spécifier les ressources d'un plan de sauvegarde. L'exemple suivant utilise à la fois un ARN et des balises.

{
    "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.    Une fois que vous avez créé le fichier JSON, exécutez la commande create-backup-selection. Ensuite, transmettez le fichier JSON en tant que paramètre d'entrée :

Remarque : pour la valeur de --backup-plan-id, entrez le BackupPlanId que vous avez obtenu à l'étape 4.

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

Exécuter une tâche à la demande sur AWS Backup

Pour exécuter une tâche de sauvegarde à la demande, exécutez la commande start-backup-job. L'exemple de commande suivant exécute une tâche de sauvegarde pour la ressource vol-0abcdef1234 :

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

Remarque : la commande précédente inclut une valeur pour --idempotency -token. Cette valeur est une chaîne unique que vous fournissez pour faire la distinction entre les appels StartBackupJob. Sur un système d'exploitation Linux, vous pouvez exécuter la commande uuid pour générer un identifiant unique :

uuid -r

Pour exécuter une tâche de copie à la demande, exécutez la commande start-copy-job. L'exemple de commande suivant exécute une tâche qui copie le point de récupération pour snap-0abcdaf2247b33dbc à partir du coffre-fort source nommé primary vers un coffre-fort de destination appelé secondary :

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

Pour lancer une tâche de restauration, exécutez la commande start-restore-job. Pour lancer une tâche de restauration pour un volume Amazon Elastic Block Store (Amazon EBS), procédez comme suit :

1.    Exécutez la commande get-recovery point-restore-metadata sur le point de récupération que vous souhaitez restaurer :

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

2.    Dans la sortie de la commande, notez les valeurs pour volume ID et encryption.

3.    Créez un fichier JSON qui définit les paramètres pour l'option --metadata de la commande start-restore-job requise. Pour encrypted et volumeId, entrez les valeurs que vous avez obtenues à l'étape 2.

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

4.    Une fois que vous avez créé le fichier JSON, exécutez la commande start-restore-job. Ensuite, transmettez le fichier JSON en tant que paramètre d'entrée :

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

Pour lancer une restauration pour un système de fichiers Amazon Elastic File System (Amazon EFS), consultez la section Comment restaurer un système de fichiers Amazon EFS à partir d'un point de récupération AWS Backup à l'aide de d'AWS CLI ?


AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 2 ans
Aucun commentaire