2019/03/27 - AWS Storage Gateway - 5 updated api methods
Changes This change allows you to select a pool for archiving virtual tapes. Pools are associated with S3 storage classes. You can now choose to archive virtual tapes in either S3 Glacier or S3 Glacier Deep Archive storage class. CreateTapes API now takes a new PoolId parameter which can either be GLACIER or DEEP_ARCHIVE. Tapes created with this parameter will be archived in the corresponding storage class.
{'PoolId': 'string'}
Creates a virtual tape by using your own barcode. You write data to the virtual tape and then archive the tape. A barcode is unique and can not be reused if it has already been used on a tape . This applies to barcodes used on deleted tapes. This operation is only supported in the tape gateway type.
Note
Cache storage must be allocated to the gateway before you can create a virtual tape. Use the AddCache operation to add cache storage to a gateway.
See also: AWS API Documentation
Request Syntax
client.create_tape_with_barcode( GatewayARN='string', TapeSizeInBytes=123, TapeBarcode='string', KMSEncrypted=True|False, KMSKey='string', PoolId='string' )
string
[REQUIRED]
The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tape with. Use the ListGateways operation to return a list of gateways for your account and region.
integer
[REQUIRED]
The size, in bytes, of the virtual tape that you want to create.
Note
The size must be aligned by gigabyte (1024*1024*1024 byte).
string
[REQUIRED]
The barcode that you want to assign to the tape.
Note
Barcodes cannot be reused. This includes barcodes used for tapes that have been deleted.
boolean
True to use Amazon S3 server side encryption with your own AWS KMS key, or false to use a key managed by Amazon S3. Optional.
string
The Amazon Resource Name (ARN) of the AWS KMS Key used for Amazon S3 server side encryption. This value can only be set when KMSEncrypted is true. Optional.
string
The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (Glacier or Deep Archive) that corresponds to the pool.
Valid values: "GLACIER", "DEEP_ARCHIVE"
dict
Response Syntax
{ 'TapeARN': 'string' }
Response Structure
(dict) --
CreateTapeOutput
TapeARN (string) --
A unique Amazon Resource Name (ARN) that represents the virtual tape that was created.
{'PoolId': 'string'}
Creates one or more virtual tapes. You write data to the virtual tapes and then archive the tapes. This operation is only supported in the tape gateway type.
Note
Cache storage must be allocated to the gateway before you can create virtual tapes. Use the AddCache operation to add cache storage to a gateway.
See also: AWS API Documentation
Request Syntax
client.create_tapes( GatewayARN='string', TapeSizeInBytes=123, ClientToken='string', NumTapesToCreate=123, TapeBarcodePrefix='string', KMSEncrypted=True|False, KMSKey='string', PoolId='string' )
string
[REQUIRED]
The unique Amazon Resource Name (ARN) that represents the gateway to associate the virtual tapes with. Use the ListGateways operation to return a list of gateways for your account and region.
integer
[REQUIRED]
The size, in bytes, of the virtual tapes that you want to create.
Note
The size must be aligned by gigabyte (1024*1024*1024 byte).
string
[REQUIRED]
A unique identifier that you use to retry a request. If you retry a request, use the same ClientToken you specified in the initial request.
Note
Using the same ClientToken prevents creating the tape multiple times.
integer
[REQUIRED]
The number of virtual tapes that you want to create.
string
[REQUIRED]
A prefix that you append to the barcode of the virtual tape you are creating. This prefix makes the barcode unique.
Note
The prefix must be 1 to 4 characters in length and must be one of the uppercase letters from A to Z.
boolean
True to use Amazon S3 server side encryption with your own AWS KMS key, or false to use a key managed by Amazon S3. Optional.
string
The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. This value can only be set when KMSEncrypted is true. Optional.
string
The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class you chose when you created the tape. When you use your backup application to eject the tape, the tape is archived directly into the storage class (Glacier or Deep Archive).
Valid values: "GLACIER", "DEEP_ARCHIVE"
dict
Response Syntax
{ 'TapeARNs': [ 'string', ] }
Response Structure
(dict) --
CreateTapeOutput
TapeARNs (list) --
A list of unique Amazon Resource Names (ARNs) that represents the virtual tapes that were created.
(string) --
{'TapeArchives': {'PoolId': 'string'}}
Returns a description of specified virtual tapes in the virtual tape shelf (VTS). This operation is only supported in the tape gateway type.
If a specific TapeARN is not specified, AWS Storage Gateway returns a description of all virtual tapes found in the VTS associated with your account.
See also: AWS API Documentation
Request Syntax
client.describe_tape_archives( TapeARNs=[ 'string', ], Marker='string', Limit=123 )
list
Specifies one or more unique Amazon Resource Names (ARNs) that represent the virtual tapes you want to describe.
(string) --
string
An opaque string that indicates the position at which to begin describing virtual tapes.
integer
Specifies that the number of virtual tapes descried be limited to the specified number.
dict
Response Syntax
{ 'TapeArchives': [ { 'TapeARN': 'string', 'TapeBarcode': 'string', 'TapeCreatedDate': datetime(2015, 1, 1), 'TapeSizeInBytes': 123, 'CompletionTime': datetime(2015, 1, 1), 'RetrievedTo': 'string', 'TapeStatus': 'string', 'TapeUsedInBytes': 123, 'KMSKey': 'string', 'PoolId': 'string' }, ], 'Marker': 'string' }
Response Structure
(dict) --
DescribeTapeArchivesOutput
TapeArchives (list) --
An array of virtual tape objects in the virtual tape shelf (VTS). The description includes of the Amazon Resource Name (ARN) of the virtual tapes. The information returned includes the Amazon Resource Names (ARNs) of the tapes, size of the tapes, status of the tapes, progress of the description and tape barcode.
(dict) --
Represents a virtual tape that is archived in the virtual tape shelf (VTS).
TapeARN (string) --
The Amazon Resource Name (ARN) of an archived virtual tape.
TapeBarcode (string) --
The barcode that identifies the archived virtual tape.
TapeCreatedDate (datetime) --
The date the virtual tape was created.
TapeSizeInBytes (integer) --
The size, in bytes, of the archived virtual tape.
CompletionTime (datetime) --
The time that the archiving of the virtual tape was completed.
The default time stamp format is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.
RetrievedTo (string) --
The Amazon Resource Name (ARN) of the tape gateway that the virtual tape is being retrieved to.
The virtual tape is retrieved from the virtual tape shelf (VTS).
TapeStatus (string) --
The current state of the archived virtual tape.
TapeUsedInBytes (integer) --
The size, in bytes, of data stored on the virtual tape.
Note
This value is not available for tapes created prior to May 13, 2015.
KMSKey (string) --
The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. This value can only be set when KMSEncrypted is true. Optional.
PoolId (string) --
The ID of the pool that was used to archive the tape. The tapes in this pool are archived in the S3 storage class that is associated with the pool.
Valid values: "GLACIER", "DEEP_ARCHIVE"
Marker (string) --
An opaque string that indicates the position at which the virtual tapes that were fetched for description ended. Use this marker in your next request to fetch the next set of virtual tapes in the virtual tape shelf (VTS). If there are no more virtual tapes to describe, this field does not appear in the response.
{'Tapes': {'PoolId': 'string'}}
Returns a description of the specified Amazon Resource Name (ARN) of virtual tapes. If a TapeARN is not specified, returns a description of all virtual tapes associated with the specified gateway. This operation is only supported in the tape gateway type.
See also: AWS API Documentation
Request Syntax
client.describe_tapes( GatewayARN='string', TapeARNs=[ 'string', ], Marker='string', Limit=123 )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and region.
list
Specifies one or more unique Amazon Resource Names (ARNs) that represent the virtual tapes you want to describe. If this parameter is not specified, Tape gateway returns a description of all virtual tapes associated with the specified gateway.
(string) --
string
A marker value, obtained in a previous call to DescribeTapes . This marker indicates which page of results to retrieve.
If not specified, the first page of results is retrieved.
integer
Specifies that the number of virtual tapes described be limited to the specified number.
Note
Amazon Web Services may impose its own limit, if this field is not set.
dict
Response Syntax
{ 'Tapes': [ { 'TapeARN': 'string', 'TapeBarcode': 'string', 'TapeCreatedDate': datetime(2015, 1, 1), 'TapeSizeInBytes': 123, 'TapeStatus': 'string', 'VTLDevice': 'string', 'Progress': 123.0, 'TapeUsedInBytes': 123, 'KMSKey': 'string', 'PoolId': 'string' }, ], 'Marker': 'string' }
Response Structure
(dict) --
DescribeTapesOutput
Tapes (list) --
An array of virtual tape descriptions.
(dict) --
Describes a virtual tape object.
TapeARN (string) --
The Amazon Resource Name (ARN) of the virtual tape.
TapeBarcode (string) --
The barcode that identifies a specific virtual tape.
TapeCreatedDate (datetime) --
The date the virtual tape was created.
TapeSizeInBytes (integer) --
The size, in bytes, of the virtual tape capacity.
TapeStatus (string) --
The current state of the virtual tape.
VTLDevice (string) --
The virtual tape library (VTL) device that the virtual tape is associated with.
Progress (float) --
For archiving virtual tapes, indicates how much data remains to be uploaded before archiving is complete.
Range: 0 (not started) to 100 (complete).
TapeUsedInBytes (integer) --
The size, in bytes, of data stored on the virtual tape.
Note
This value is not available for tapes created prior to May 13, 2015.
KMSKey (string) --
The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. This value can only be set when KMSEncrypted is true. Optional.
PoolId (string) --
The ID of the pool that contains tapes that will be archived. The tapes in this pool are archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (Glacier or Deep Archive) that corresponds to the pool.
Valid values: "GLACIER", "DEEP_ARCHIVE"
Marker (string) --
An opaque string which can be used as part of a subsequent DescribeTapes call to retrieve the next page of results.
If a response does not contain a marker, then there are no more results to be retrieved.
{'TapeInfos': {'PoolId': 'string'}}
Lists virtual tapes in your virtual tape library (VTL) and your virtual tape shelf (VTS). You specify the tapes to list by specifying one or more tape Amazon Resource Names (ARNs). If you don't specify a tape ARN, the operation lists all virtual tapes in both your VTL and VTS.
This operation supports pagination. By default, the operation returns a maximum of up to 100 tapes. You can optionally specify the Limit parameter in the body to limit the number of tapes in the response. If the number of tapes returned in the response is truncated, the response includes a Marker element that you can use in your subsequent request to retrieve the next set of tapes. This operation is only supported in the tape gateway type.
See also: AWS API Documentation
Request Syntax
client.list_tapes( TapeARNs=[ 'string', ], Marker='string', Limit=123 )
list
The Amazon Resource Name (ARN) of each of the tapes you want to list. If you don't specify a tape ARN, the response lists all tapes in both your VTL and VTS.
(string) --
string
A string that indicates the position at which to begin the returned list of tapes.
integer
An optional number limit for the tapes in the list returned by this call.
dict
Response Syntax
{ 'TapeInfos': [ { 'TapeARN': 'string', 'TapeBarcode': 'string', 'TapeSizeInBytes': 123, 'TapeStatus': 'string', 'GatewayARN': 'string', 'PoolId': 'string' }, ], 'Marker': 'string' }
Response Structure
(dict) --
A JSON object containing the following fields:
ListTapesOutput$Marker
ListTapesOutput$VolumeInfos
TapeInfos (list) --
An array of TapeInfo objects, where each object describes an a single tape. If there not tapes in the tape library or VTS, then the TapeInfos is an empty array.
(dict) --
Describes a virtual tape.
TapeARN (string) --
The Amazon Resource Name (ARN) of a virtual tape.
TapeBarcode (string) --
The barcode that identifies a specific virtual tape.
TapeSizeInBytes (integer) --
The size, in bytes, of a virtual tape.
TapeStatus (string) --
The status of the tape.
GatewayARN (string) --
The Amazon Resource Name (ARN) of the gateway. Use the ListGateways operation to return a list of gateways for your account and region.
PoolId (string) --
The ID of the pool that you want to add your tape to for archiving. The tape in this pool is archived in the S3 storage class that is associated with the pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class (Glacier or Deep Archive) that corresponds to the pool.
Valid values: "GLACIER", "DEEP_ARCHIVE"
Marker (string) --
A string that indicates the position at which to begin returning the next list of tapes. Use the marker in your next request to continue pagination of tapes. If there are no more tapes to list, this element does not appear in the response body.