Comment restaurer un système de fichiers Amazon EFS à partir d'un point de récupération AWS Backup à l'aide d'AWS CLI ?

Dernière mise à jour : 05/01/2022

Je veux utiliser l'AWS Command Line Interface (AWS CLI) pour restaurer un Amazon Elastic File System (Amazon EFS) à partir d'un point de récupération AWS Backup.

Solution

Restauration sur place d'un système de fichiers EFS à partir d'un point de récupération AWS Backup

1.    Exécutez la commande list-backup-jobs afin d'obtenir l'Amazon Resource Name (ARN) du système de fichiers EFS à restaurer. Vous devez disposer de l'ARN du point de récupération afin d'effectuer une restauration du système de fichiers EFS à partir d'un point de récupération AWS Backup.

$ aws backup list-backup-jobs --by-resource-type EFS --region us-east-1

Remarque : en cas d'erreurs lors de l'exécution des commandes AWS CLI, vérifiez que vous utilisez la version la plus récente de l'AWS CLI.

2.    Dans la sortie de la commande, notez le paramètre RecoverypointArn :

{
    "BackupJobs": [
        {
            "CompletionDate": 1583305453.7, 
            "BackupVaultArn": "arn:aws:backup:us-east-1:111222333444:backup-vault:Default", 
            "PercentDone": "0.0", 
            "RecoveryPointArn": "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347", 
            "ResourceType": "EFS", 
            "BackupSizeInBytes": 73, 
            "State": "COMPLETED", 
            "IamRoleArn": "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole", 
            "ResourceArn": "arn:aws:elasticfilesystem:us-east-1:111222333444:file-system/fs-6a1dcba2", 
            "BackupJobId": "721ba96d-a656-4771-a1f4-78bcd0c930f8", 
            "StartBy": 1583309035.684, 
            "CreationDate": 1583305435.684, 
            "BackupVaultName": "Default"
        }
    ]
}

3.    Pour exécuter la commande start-restore-job, vous devez définir des métadonnées spécifiques pour restaurer une instance EFS. Vous pouvez définir les métadonnées dans un fichier JSON distinct ou les définir en tant que paramètres dans la commande.

Pour définir les métadonnées dans un fichier JSON distinct, créez un fichier JSON similaire à ce qui suit :

{"file-system-id": "fs-6a1dcba2", "newFileSystem": "false", "Encrypted": "false", "PerformanceMode":"generalPurpose"}

Exécutez ensuite la commande start-restore-job :

aws backup start-restore-job --region us-east-1 --recovery-point-arn "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347" --iam-role-arn "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole"  --metadata file://path_to_json_file

Pour définir les métadonnées en tant que paramètres dans la commande start-restore-job, exécutez la commande au format suivant :

aws backup start-restore-job --region us-east-1 --recovery-point-arn "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347" --iam-role-arn "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole" --metadata '{"file-system-id": "fs-6a1dcba2", "newFileSystem": "false", "Encrypted": "false", "PerformanceMode":"generalPurpose"}'

Restaurer un nouveau système de fichiers EFS à partir d'un point de récupération AWS Backup

1.    Exécutez la commande list-backup-jobs pour obtenir l'ARN du système de fichiers EFS à restaurer. Vous devez disposer de l'ARN du point de récupération afin d'effectuer une restauration du système de fichiers EFS à partir d'un point de récupération AWS Backup.

$ aws backup list-backup-jobs --by-resource-type EFS --region us-east-1

2.    Dans la sortie de la commande, notez le paramètre RecoverypointArn :

{
    "BackupJobs": [
        {
            "CompletionDate": 1583305453.7, 
            "BackupVaultArn": "arn:aws:backup:us-east-1:111222333444:backup-vault:Default", 
            "PercentDone": "0.0", 
            "RecoveryPointArn": "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347", 
            "ResourceType": "EFS", 
            "BackupSizeInBytes": 73, 
            "State": "COMPLETED", 
            "IamRoleArn": "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole", 
            "ResourceArn": "arn:aws:elasticfilesystem:us-east-1:111222333444:file-system/fs-6a1dcba2", 
            "BackupJobId": "721ba96d-a656-4771-a1f4-78bcd0c930f8", 
            "StartBy": 1583309035.684, 
            "CreationDate": 1583305435.684, 
            "BackupVaultName": "Default"
        }
    ]
}

3.    Pour restaurer un nouveau système de fichiers EFS, générez une valeur CreationToken qui applique l'unicité (idempotence) de la demande. Le jeton CreationToken peut correspondre à n'importe quelle valeur de votre choix. Sur un système d'exploitation Linux, vous pouvez exécuter la commande uuid pour générer un identifiant unique :

uuid -r

La sortie est un identifiant universel unique (UUID), similaire à ce qui suit :

d0c12345-678d-4071-bf30-8e7e54ab65df

4.    Pour exécuter la commande start-restore-job, vous devez définir des métadonnées spécifiques pour restaurer une instance EFS. Vous pouvez définir les métadonnées dans un fichier JSON distinct ou les définir en tant que paramètres dans la commande.

Pour définir les métadonnées dans un fichier JSON distinct, créez un fichier JSON similaire à ce qui suit :

Remarque : pour CreationToken, utilisez la valeur CreationToken que vous avez générée à l'étape 3.

{"file-system-id": "fs-6a1dcba2", "Encrypted": "false", "PerformanceMode": "generalPurpose", "CreationToken": "d0c12345-678d-4071-bf30-8e7e54ab65df", "newFileSystem": "true"}

Exécutez ensuite la commande start-restore-job :

Remarque : pour --metadata, saisissez le fichier JSON que vous avez créé à l'étape précédente.

aws backup start-restore-job --region us-east-1 --recovery-point-arn "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347" --iam-role-arn "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole"  --metadata file://path_to_json_file

Pour définir les métadonnées en tant que paramètres dans la commande start-restore-job, exécutez la commande au format suivant :

Remarque : pour CreationToken, utilisez la valeur CreationToken que vous avez générée à l'étape 3.

aws backup start-restore-job --region us-east-1 --recovery-point-arn "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347" --iam-role-arn "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole" --metadata '{"file-system-id": "fs-6a1dcba2", "newFileSystem": "true", "CreationToken": "d0c12345-678d-4071-bf30-8e7e54ab65df", "Encrypted": "false", "PerformanceMode":"generalPurpose"}'

Effectuer une restauration de système de fichiers EFS au niveau des éléments à partir d'un point de récupération AWS Backup

1.    Exécutez la commande list-backup-jobs afin d'obtenir l'Amazon Resource Name (ARN) du système de fichiers EFS à restaurer. Vous devez disposer de l'ARN du point de récupération afin d'effectuer une restauration du système de fichiers EFS à partir d'un point de récupération AWS Backup.
$ aws backup list-backup-jobs --by-resource-type EFS --region us-east-1

Remarque : en cas d'erreurs lors de l'exécution des commandes AWS CLI, vérifiez que vous utilisez la version la plus récente de l'AWS CLI.

2.    Dans la sortie de la commande, notez le paramètre RecoverypointArn :

{
    "BackupJobs": [
        {
            "AccountId": "686948106210",
            "BackupJobId": "261f13d0-5ede-458e-a00e-d83ed5de0afe",
            "BackupVaultName": "Default",
            "BackupVaultArn": "arn:aws:backup:us-east-1:111222333444:backup-vault:Default",
            "RecoveryPointArn": "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347",
            "ResourceArn": "arn:aws:elasticfilesystem:us-east-1:111222333444:file-system/fs-6a1dcba2",
            "CreationDate": "2021-08-23T07:52:56.652000+00:00",
            "CompletionDate": "2021-08-23T07:53:09.547000+00:00",
            "State": "COMPLETED",
            "PercentDone": "100.0",
            "BackupSizeInBytes": 75,
            "IamRoleArn": "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole",
            "StartBy": "2021-08-23T08:52:56.652000+00:00",
            "ResourceType": "EFS"
        }

3.    Pour exécuter la commande start-restore-job, vous devez définir des métadonnées spécifiques pour restaurer une instance EFS. Vous pouvez définir les métadonnées dans un fichier JSON distinct ou les définir en tant que paramètres dans la commande.

Pour définir les métadonnées dans un fichier JSON distinct, créez un fichier JSON similaire à ce qui suit :

{"file-system-id": "fs-6a1dcba2", "newFileSystem": "false", "Encrypted": "false", "PerformanceMode":"generalPurpose", "itemsToRestore":"[\"/my.test\"]"}

Exécutez ensuite la commande start-restore-job :

aws backup start-restore-job --region us-east-1 --recovery-point-arn "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347" --iam-role-arn "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole"  --metadata file://path_to_json_file

Pour définir les métadonnées en tant que paramètres dans la commande start-restore-job, exécutez la commande au format suivant :

aws backup start-restore-job --region us-east-1 --recovery-point-arn "arn:aws:backup:us-east-1:111222333444:recovery-point:123e4567-6cd9-464e-bb6b-13f70e79d347" --iam-role-arn "arn:aws:iam::111222333444:role/service-role/AWSBackupDefaultServiceRole" --metadata '{"file-system-id": "fs-6a1dcba2", "newFileSystem": "false", "Encrypted": "false", "PerformanceMode":"generalPurpose", "itemsToRestore":"[\"/my.test\"]"}'

Cet article vous a-t-il été utile ?


Avez-vous besoin d'aide pour une question technique ou de facturation ?