createBackup method
Creates a backup of an existing Amazon FSx for Windows File Server file system, Amazon FSx for Lustre file system, Amazon FSx for NetApp ONTAP volume, or Amazon FSx for OpenZFS file system. We recommend creating regular backups so that you can restore a file system or volume from a backup if an issue arises with the original file system or volume.
For Amazon FSx for Lustre file systems, you can create a backup only for file systems that have the following configuration:
- A Persistent deployment type
- Are not linked to a data repository
- For Amazon FSx for Lustre, see Working with FSx for Lustre backups.
- For Amazon FSx for Windows, see Working with FSx for Windows backups.
- For Amazon FSx for NetApp ONTAP, see Working with FSx for NetApp ONTAP backups.
- For Amazon FSx for OpenZFS, see Working with FSx for OpenZFS backups.
IncompatibleParameterError. If a backup with the specified
client request token doesn't exist, CreateBackup does the
following:
-
Creates a new Amazon FSx backup with an assigned ID, and an initial
lifecycle state of
CREATING. - Returns the description of the backup.
CreateBackup operation without the risk of creating an extra
backup. This approach can be useful when an initial call fails in a way
that makes it unclear whether a backup was created. If you use the same
client request token and the initial call created a backup, the operation
returns a successful result because all the parameters are the same.
The CreateBackup operation returns while the backup's
lifecycle state is still CREATING. You can check the backup
creation status by calling the DescribeBackups
operation, which returns the backup state along with other information.
May throw BackupInProgress.
May throw BadRequest.
May throw FileSystemNotFound.
May throw IncompatibleParameterError.
May throw InternalServerError.
May throw ServiceLimitExceeded.
May throw UnsupportedOperation.
May throw VolumeNotFound.
Parameter clientRequestToken :
(Optional) A string of up to 63 ASCII characters that Amazon FSx uses to
ensure idempotent creation. This string is automatically filled on your
behalf when you use the Command Line Interface (CLI) or an Amazon Web
Services SDK.
Parameter fileSystemId :
The ID of the file system to back up.
Parameter tags :
(Optional) The tags to apply to the backup at backup creation. The key
value of the Name tag appears in the console as the backup
name. If you have set CopyTagsToBackups to true,
and you specify one or more tags using the CreateBackup
operation, no existing file system tags are copied from the file system to
the backup.
Parameter volumeId :
(Optional) The ID of the FSx for ONTAP volume to back up.
Implementation
Future<CreateBackupResponse> createBackup({
String? clientRequestToken,
String? fileSystemId,
List<Tag>? tags,
String? volumeId,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AWSSimbaAPIService_v20180301.CreateBackup'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'ClientRequestToken':
clientRequestToken ?? _s.generateIdempotencyToken(),
if (fileSystemId != null) 'FileSystemId': fileSystemId,
if (tags != null) 'Tags': tags,
if (volumeId != null) 'VolumeId': volumeId,
},
);
return CreateBackupResponse.fromJson(jsonResponse.body);
}