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

Date de la dernière mise à jour : 27/03/2020

Je souhaite utiliser l'interface de ligne de commande AWS (AWS CLI) pour restaurer un système Amazon EFS (Amazon Elastic File System) à partir d'un point de récupération AWS Backup. Comment procéder ?

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 pour obtenir l'Amazon Resource Name (ARN) du système de fichiers EFS à restaurer. Vous devez disposer de l'ARN de la ressource pour 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 la valeur ResourceArn :

{
    "BackupJobs": [
        {
            "CompletionDate": 1584448353.589, 
            "BackupVaultArn": "arn:aws:backup:us-east-1:111222333444:backup-vault:Default", 
            "PercentDone": "0.0", 
            "RecoveryPointArn": "arn:aws:backup:us-east-1:111222333444:recovery-point:f29fe56c-8f44-4877-9ae6-9c6d5dce8935", 
            "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-c1234567", 
            "BackupJobId": "12ddf0b1-aed4-44ec-894f-0d74448949bd", 
            "StartBy": 1584451934.889, 
            "CreationDate": 1584448334.889, 
            "BackupVaultName": "Default"
        }, 
        {
            "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:09e9dafe-44a6-471a-b4e8-64c98219a480", 
            "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-gd1b761d", 
            "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-c1234567", "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-c1234567", "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 de la ressource pour 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 la valeur ResourceArn :

{
    "BackupJobs": [
        {
            "CompletionDate": 1584448353.589, 
            "BackupVaultArn": "arn:aws:backup:us-east-1:111222333444:backup-vault:Default", 
            "PercentDone": "0.0", 
            "RecoveryPointArn": "arn:aws:backup:us-east-1:111222333444:recovery-point:f29fe56c-8f44-4877-9ae6-9c6d5dce8935", 
            "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-c1234567", 
            "BackupJobId": "12ddf0b1-aed4-44ec-894f-0d74448949bd", 
            "StartBy": 1584451934.889, 
            "CreationDate": 1584448334.889, 
            "BackupVaultName": "Default"
        }, 
        {
            "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:09e9dafe-44a6-471a-b4e8-64c98219a480", 
            "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-gd1b761d", 
            "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-c1234567", "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-17dda397", "newFileSystem": "true", "CreationToken": "d0c12345-678d-4071-bf30-8e7e54ab65df", "Encrypted": "false", "PerformanceMode":"generalPurpose"}'

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

Cette page peut-elle être améliorée ?


Vous avez besoin d’aide ?