2024/03/27 - Amazon ElastiCache - 4 updated api methods
Changes Added minimum capacity to Amazon ElastiCache Serverless. This feature allows customer to ensure minimum capacity even without current load
{'CacheUsageLimits': {'DataStorage': {'Minimum': 'integer'}, 'ECPUPerSecond': {'Minimum': 'integer'}}}Response
{'ServerlessCache': {'CacheUsageLimits': {'DataStorage': {'Minimum': 'integer'}, 'ECPUPerSecond': {'Minimum': 'integer'}}}}
Creates a serverless cache.
See also: AWS API Documentation
Request Syntax
client.create_serverless_cache( ServerlessCacheName='string', Description='string', Engine='string', MajorEngineVersion='string', CacheUsageLimits={ 'DataStorage': { 'Maximum': 123, 'Minimum': 123, 'Unit': 'GB' }, 'ECPUPerSecond': { 'Maximum': 123, 'Minimum': 123 } }, KmsKeyId='string', SecurityGroupIds=[ 'string', ], SnapshotArnsToRestore=[ 'string', ], Tags=[ { 'Key': 'string', 'Value': 'string' }, ], UserGroupId='string', SubnetIds=[ 'string', ], SnapshotRetentionLimit=123, DailySnapshotTime='string' )
string
[REQUIRED]
User-provided identifier for the serverless cache. This parameter is stored as a lowercase string.
string
User-provided description for the serverless cache. The default is NULL, i.e. if no description is provided then an empty string will be returned. The maximum length is 255 characters.
string
[REQUIRED]
The name of the cache engine to be used for creating the serverless cache.
string
The version of the cache engine that will be used to create the serverless cache.
dict
Sets the cache usage limits for storage and ElastiCache Processing Units for the cache.
DataStorage (dict) --
The maximum data storage limit in the cache, expressed in Gigabytes.
Maximum (integer) --
The upper limit for data storage the cache is set to use.
Minimum (integer) --
The lower limit for data storage the cache is set to use.
Unit (string) -- [REQUIRED]
The unit that the storage is measured in, in GB.
ECPUPerSecond (dict) --
The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.
Maximum (integer) --
The configuration for the maximum number of ECPUs the cache can consume per second.
Minimum (integer) --
The configuration for the minimum number of ECPUs the cache should be able consume per second.
string
ARN of the customer managed key for encrypting the data at rest. If no KMS key is provided, a default service key is used.
list
A list of the one or more VPC security groups to be associated with the serverless cache. The security group will authorize traffic access for the VPC end-point (private-link). If no other information is given this will be the VPC’s Default Security Group that is associated with the cluster VPC end-point.
(string) --
list
The ARN(s) of the snapshot that the new serverless cache will be created from. Available for Redis only.
(string) --
list
The list of tags (key, value) pairs to be added to the serverless cache resource. Default is NULL.
(dict) --
A tag that can be added to an ElastiCache cluster or replication group. Tags are composed of a Key/Value pair. You can use tags to categorize and track all your ElastiCache resources, with the exception of global replication group. When you add or remove tags on replication groups, those actions will be replicated to all nodes in the replication group. A tag with a null Value is permitted.
Key (string) --
The key for the tag. May not be null.
Value (string) --
The tag's value. May be null.
string
The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. Default is NULL.
list
A list of the identifiers of the subnets where the VPC endpoint for the serverless cache will be deployed. All the subnetIds must belong to the same VPC.
(string) --
integer
The number of snapshots that will be retained for the serverless cache that is being created. As new snapshots beyond this limit are added, the oldest snapshots will be deleted on a rolling basis. Available for Redis only.
string
The daily time that snapshots will be created from the new serverless cache. By default this number is populated with 0, i.e. no snapshots will be created on an automatic daily basis. Available for Redis only.
dict
Response Syntax
{ 'ServerlessCache': { 'ServerlessCacheName': 'string', 'Description': 'string', 'CreateTime': datetime(2015, 1, 1), 'Status': 'string', 'Engine': 'string', 'MajorEngineVersion': 'string', 'FullEngineVersion': 'string', 'CacheUsageLimits': { 'DataStorage': { 'Maximum': 123, 'Minimum': 123, 'Unit': 'GB' }, 'ECPUPerSecond': { 'Maximum': 123, 'Minimum': 123 } }, 'KmsKeyId': 'string', 'SecurityGroupIds': [ 'string', ], 'Endpoint': { 'Address': 'string', 'Port': 123 }, 'ReaderEndpoint': { 'Address': 'string', 'Port': 123 }, 'ARN': 'string', 'UserGroupId': 'string', 'SubnetIds': [ 'string', ], 'SnapshotRetentionLimit': 123, 'DailySnapshotTime': 'string' } }
Response Structure
(dict) --
ServerlessCache (dict) --
The response for the attempt to create the serverless cache.
ServerlessCacheName (string) --
The unique identifier of the serverless cache.
Description (string) --
A description of the serverless cache.
CreateTime (datetime) --
When the serverless cache was created.
Status (string) --
The current status of the serverless cache. The allowed values are CREATING, AVAILABLE, DELETING, CREATE-FAILED and MODIFYING.
Engine (string) --
The engine the serverless cache is compatible with.
MajorEngineVersion (string) --
The version number of the engine the serverless cache is compatible with.
FullEngineVersion (string) --
The name and version number of the engine the serverless cache is compatible with.
CacheUsageLimits (dict) --
The cache usage limit for the serverless cache.
DataStorage (dict) --
The maximum data storage limit in the cache, expressed in Gigabytes.
Maximum (integer) --
The upper limit for data storage the cache is set to use.
Minimum (integer) --
The lower limit for data storage the cache is set to use.
Unit (string) --
The unit that the storage is measured in, in GB.
ECPUPerSecond (dict) --
The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.
Maximum (integer) --
The configuration for the maximum number of ECPUs the cache can consume per second.
Minimum (integer) --
The configuration for the minimum number of ECPUs the cache should be able consume per second.
KmsKeyId (string) --
The ID of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt data at rest in the serverless cache.
SecurityGroupIds (list) --
The IDs of the EC2 security groups associated with the serverless cache.
(string) --
Endpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ReaderEndpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ARN (string) --
The Amazon Resource Name (ARN) of the serverless cache.
UserGroupId (string) --
The identifier of the user group associated with the serverless cache. Available for Redis only. Default is NULL.
SubnetIds (list) --
If no subnet IDs are given and your VPC is in us-west-1, then ElastiCache will select 2 default subnets across AZs in your VPC. For all other Regions, if no subnet IDs are given then ElastiCache will select 3 default subnets across AZs in your default VPC.
(string) --
SnapshotRetentionLimit (integer) --
The current setting for the number of serverless cache snapshots the system will retain. Available for Redis only.
DailySnapshotTime (string) --
The daily time that a cache snapshot will be created. Default is NULL, i.e. snapshots will not be created at a specific time on a daily basis. Available for Redis only.
{'ServerlessCache': {'CacheUsageLimits': {'DataStorage': {'Minimum': 'integer'}, 'ECPUPerSecond': {'Minimum': 'integer'}}}}
Deletes a specified existing serverless cache.
See also: AWS API Documentation
Request Syntax
client.delete_serverless_cache( ServerlessCacheName='string', FinalSnapshotName='string' )
string
[REQUIRED]
The identifier of the serverless cache to be deleted.
string
Name of the final snapshot to be taken before the serverless cache is deleted. Available for Redis only. Default: NULL, i.e. a final snapshot is not taken.
dict
Response Syntax
{ 'ServerlessCache': { 'ServerlessCacheName': 'string', 'Description': 'string', 'CreateTime': datetime(2015, 1, 1), 'Status': 'string', 'Engine': 'string', 'MajorEngineVersion': 'string', 'FullEngineVersion': 'string', 'CacheUsageLimits': { 'DataStorage': { 'Maximum': 123, 'Minimum': 123, 'Unit': 'GB' }, 'ECPUPerSecond': { 'Maximum': 123, 'Minimum': 123 } }, 'KmsKeyId': 'string', 'SecurityGroupIds': [ 'string', ], 'Endpoint': { 'Address': 'string', 'Port': 123 }, 'ReaderEndpoint': { 'Address': 'string', 'Port': 123 }, 'ARN': 'string', 'UserGroupId': 'string', 'SubnetIds': [ 'string', ], 'SnapshotRetentionLimit': 123, 'DailySnapshotTime': 'string' } }
Response Structure
(dict) --
ServerlessCache (dict) --
Provides the details of the specified serverless cache that is about to be deleted.
ServerlessCacheName (string) --
The unique identifier of the serverless cache.
Description (string) --
A description of the serverless cache.
CreateTime (datetime) --
When the serverless cache was created.
Status (string) --
The current status of the serverless cache. The allowed values are CREATING, AVAILABLE, DELETING, CREATE-FAILED and MODIFYING.
Engine (string) --
The engine the serverless cache is compatible with.
MajorEngineVersion (string) --
The version number of the engine the serverless cache is compatible with.
FullEngineVersion (string) --
The name and version number of the engine the serverless cache is compatible with.
CacheUsageLimits (dict) --
The cache usage limit for the serverless cache.
DataStorage (dict) --
The maximum data storage limit in the cache, expressed in Gigabytes.
Maximum (integer) --
The upper limit for data storage the cache is set to use.
Minimum (integer) --
The lower limit for data storage the cache is set to use.
Unit (string) --
The unit that the storage is measured in, in GB.
ECPUPerSecond (dict) --
The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.
Maximum (integer) --
The configuration for the maximum number of ECPUs the cache can consume per second.
Minimum (integer) --
The configuration for the minimum number of ECPUs the cache should be able consume per second.
KmsKeyId (string) --
The ID of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt data at rest in the serverless cache.
SecurityGroupIds (list) --
The IDs of the EC2 security groups associated with the serverless cache.
(string) --
Endpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ReaderEndpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ARN (string) --
The Amazon Resource Name (ARN) of the serverless cache.
UserGroupId (string) --
The identifier of the user group associated with the serverless cache. Available for Redis only. Default is NULL.
SubnetIds (list) --
If no subnet IDs are given and your VPC is in us-west-1, then ElastiCache will select 2 default subnets across AZs in your VPC. For all other Regions, if no subnet IDs are given then ElastiCache will select 3 default subnets across AZs in your default VPC.
(string) --
SnapshotRetentionLimit (integer) --
The current setting for the number of serverless cache snapshots the system will retain. Available for Redis only.
DailySnapshotTime (string) --
The daily time that a cache snapshot will be created. Default is NULL, i.e. snapshots will not be created at a specific time on a daily basis. Available for Redis only.
{'ServerlessCaches': {'CacheUsageLimits': {'DataStorage': {'Minimum': 'integer'}, 'ECPUPerSecond': {'Minimum': 'integer'}}}}
Returns information about a specific serverless cache. If no identifier is specified, then the API returns information on all the serverless caches belonging to this Amazon Web Services account.
See also: AWS API Documentation
Request Syntax
client.describe_serverless_caches( ServerlessCacheName='string', MaxResults=123, NextToken='string' )
string
The identifier for the serverless cache. If this parameter is specified, only information about that specific serverless cache is returned. Default: NULL
integer
The maximum number of records in the response. If more records exist than the specified max-records value, the next token is included in the response so that remaining results can be retrieved. The default is 50.
string
An optional marker returned from a prior request to support pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxResults.
dict
Response Syntax
{ 'NextToken': 'string', 'ServerlessCaches': [ { 'ServerlessCacheName': 'string', 'Description': 'string', 'CreateTime': datetime(2015, 1, 1), 'Status': 'string', 'Engine': 'string', 'MajorEngineVersion': 'string', 'FullEngineVersion': 'string', 'CacheUsageLimits': { 'DataStorage': { 'Maximum': 123, 'Minimum': 123, 'Unit': 'GB' }, 'ECPUPerSecond': { 'Maximum': 123, 'Minimum': 123 } }, 'KmsKeyId': 'string', 'SecurityGroupIds': [ 'string', ], 'Endpoint': { 'Address': 'string', 'Port': 123 }, 'ReaderEndpoint': { 'Address': 'string', 'Port': 123 }, 'ARN': 'string', 'UserGroupId': 'string', 'SubnetIds': [ 'string', ], 'SnapshotRetentionLimit': 123, 'DailySnapshotTime': 'string' }, ] }
Response Structure
(dict) --
NextToken (string) --
An optional marker returned from a prior request to support pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxResults.
ServerlessCaches (list) --
The serverless caches associated with a given description request.
(dict) --
The resource representing a serverless cache.
ServerlessCacheName (string) --
The unique identifier of the serverless cache.
Description (string) --
A description of the serverless cache.
CreateTime (datetime) --
When the serverless cache was created.
Status (string) --
The current status of the serverless cache. The allowed values are CREATING, AVAILABLE, DELETING, CREATE-FAILED and MODIFYING.
Engine (string) --
The engine the serverless cache is compatible with.
MajorEngineVersion (string) --
The version number of the engine the serverless cache is compatible with.
FullEngineVersion (string) --
The name and version number of the engine the serverless cache is compatible with.
CacheUsageLimits (dict) --
The cache usage limit for the serverless cache.
DataStorage (dict) --
The maximum data storage limit in the cache, expressed in Gigabytes.
Maximum (integer) --
The upper limit for data storage the cache is set to use.
Minimum (integer) --
The lower limit for data storage the cache is set to use.
Unit (string) --
The unit that the storage is measured in, in GB.
ECPUPerSecond (dict) --
The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.
Maximum (integer) --
The configuration for the maximum number of ECPUs the cache can consume per second.
Minimum (integer) --
The configuration for the minimum number of ECPUs the cache should be able consume per second.
KmsKeyId (string) --
The ID of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt data at rest in the serverless cache.
SecurityGroupIds (list) --
The IDs of the EC2 security groups associated with the serverless cache.
(string) --
Endpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ReaderEndpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ARN (string) --
The Amazon Resource Name (ARN) of the serverless cache.
UserGroupId (string) --
The identifier of the user group associated with the serverless cache. Available for Redis only. Default is NULL.
SubnetIds (list) --
If no subnet IDs are given and your VPC is in us-west-1, then ElastiCache will select 2 default subnets across AZs in your VPC. For all other Regions, if no subnet IDs are given then ElastiCache will select 3 default subnets across AZs in your default VPC.
(string) --
SnapshotRetentionLimit (integer) --
The current setting for the number of serverless cache snapshots the system will retain. Available for Redis only.
DailySnapshotTime (string) --
The daily time that a cache snapshot will be created. Default is NULL, i.e. snapshots will not be created at a specific time on a daily basis. Available for Redis only.
{'CacheUsageLimits': {'DataStorage': {'Minimum': 'integer'}, 'ECPUPerSecond': {'Minimum': 'integer'}}}Response
{'ServerlessCache': {'CacheUsageLimits': {'DataStorage': {'Minimum': 'integer'}, 'ECPUPerSecond': {'Minimum': 'integer'}}}}
This API modifies the attributes of a serverless cache.
See also: AWS API Documentation
Request Syntax
client.modify_serverless_cache( ServerlessCacheName='string', Description='string', CacheUsageLimits={ 'DataStorage': { 'Maximum': 123, 'Minimum': 123, 'Unit': 'GB' }, 'ECPUPerSecond': { 'Maximum': 123, 'Minimum': 123 } }, RemoveUserGroup=True|False, UserGroupId='string', SecurityGroupIds=[ 'string', ], SnapshotRetentionLimit=123, DailySnapshotTime='string' )
string
[REQUIRED]
User-provided identifier for the serverless cache to be modified.
string
User provided description for the serverless cache. Default = NULL, i.e. the existing description is not removed/modified. The description has a maximum length of 255 characters.
dict
Modify the cache usage limit for the serverless cache.
DataStorage (dict) --
The maximum data storage limit in the cache, expressed in Gigabytes.
Maximum (integer) --
The upper limit for data storage the cache is set to use.
Minimum (integer) --
The lower limit for data storage the cache is set to use.
Unit (string) -- [REQUIRED]
The unit that the storage is measured in, in GB.
ECPUPerSecond (dict) --
The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.
Maximum (integer) --
The configuration for the maximum number of ECPUs the cache can consume per second.
Minimum (integer) --
The configuration for the minimum number of ECPUs the cache should be able consume per second.
boolean
The identifier of the UserGroup to be removed from association with the Redis serverless cache. Available for Redis only. Default is NULL.
string
The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. Default is NULL - the existing UserGroup is not removed.
list
The new list of VPC security groups to be associated with the serverless cache. Populating this list means the current VPC security groups will be removed. This security group is used to authorize traffic access for the VPC end-point (private-link). Default = NULL - the existing list of VPC security groups is not removed.
(string) --
integer
The number of days for which Elasticache retains automatic snapshots before deleting them. Available for Redis only. Default = NULL, i.e. the existing snapshot-retention-limit will not be removed or modified. The maximum value allowed is 35 days.
string
The daily time during which Elasticache begins taking a daily snapshot of the serverless cache. Available for Redis only. The default is NULL, i.e. the existing snapshot time configured for the cluster is not removed.
dict
Response Syntax
{ 'ServerlessCache': { 'ServerlessCacheName': 'string', 'Description': 'string', 'CreateTime': datetime(2015, 1, 1), 'Status': 'string', 'Engine': 'string', 'MajorEngineVersion': 'string', 'FullEngineVersion': 'string', 'CacheUsageLimits': { 'DataStorage': { 'Maximum': 123, 'Minimum': 123, 'Unit': 'GB' }, 'ECPUPerSecond': { 'Maximum': 123, 'Minimum': 123 } }, 'KmsKeyId': 'string', 'SecurityGroupIds': [ 'string', ], 'Endpoint': { 'Address': 'string', 'Port': 123 }, 'ReaderEndpoint': { 'Address': 'string', 'Port': 123 }, 'ARN': 'string', 'UserGroupId': 'string', 'SubnetIds': [ 'string', ], 'SnapshotRetentionLimit': 123, 'DailySnapshotTime': 'string' } }
Response Structure
(dict) --
ServerlessCache (dict) --
The response for the attempt to modify the serverless cache.
ServerlessCacheName (string) --
The unique identifier of the serverless cache.
Description (string) --
A description of the serverless cache.
CreateTime (datetime) --
When the serverless cache was created.
Status (string) --
The current status of the serverless cache. The allowed values are CREATING, AVAILABLE, DELETING, CREATE-FAILED and MODIFYING.
Engine (string) --
The engine the serverless cache is compatible with.
MajorEngineVersion (string) --
The version number of the engine the serverless cache is compatible with.
FullEngineVersion (string) --
The name and version number of the engine the serverless cache is compatible with.
CacheUsageLimits (dict) --
The cache usage limit for the serverless cache.
DataStorage (dict) --
The maximum data storage limit in the cache, expressed in Gigabytes.
Maximum (integer) --
The upper limit for data storage the cache is set to use.
Minimum (integer) --
The lower limit for data storage the cache is set to use.
Unit (string) --
The unit that the storage is measured in, in GB.
ECPUPerSecond (dict) --
The configuration for the number of ElastiCache Processing Units (ECPU) the cache can consume per second.
Maximum (integer) --
The configuration for the maximum number of ECPUs the cache can consume per second.
Minimum (integer) --
The configuration for the minimum number of ECPUs the cache should be able consume per second.
KmsKeyId (string) --
The ID of the Amazon Web Services Key Management Service (KMS) key that is used to encrypt data at rest in the serverless cache.
SecurityGroupIds (list) --
The IDs of the EC2 security groups associated with the serverless cache.
(string) --
Endpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ReaderEndpoint (dict) --
Represents the information required for client programs to connect to a cache node. This value is read-only.
Address (string) --
The DNS hostname of the cache node.
Port (integer) --
The port number that the cache engine is listening on.
ARN (string) --
The Amazon Resource Name (ARN) of the serverless cache.
UserGroupId (string) --
The identifier of the user group associated with the serverless cache. Available for Redis only. Default is NULL.
SubnetIds (list) --
If no subnet IDs are given and your VPC is in us-west-1, then ElastiCache will select 2 default subnets across AZs in your VPC. For all other Regions, if no subnet IDs are given then ElastiCache will select 3 default subnets across AZs in your default VPC.
(string) --
SnapshotRetentionLimit (integer) --
The current setting for the number of serverless cache snapshots the system will retain. Available for Redis only.
DailySnapshotTime (string) --
The daily time that a cache snapshot will be created. Default is NULL, i.e. snapshots will not be created at a specific time on a daily basis. Available for Redis only.