ElastiCache / Client / create_serverless_cache

create_serverless_cache#

ElastiCache.Client.create_serverless_cache(**kwargs)#

Creates a serverless cache.

See also: AWS API Documentation

Request Syntax

response = client.create_serverless_cache(
    ServerlessCacheName='string',
    Description='string',
    Engine='string',
    MajorEngineVersion='string',
    CacheUsageLimits={
        'DataStorage': {
            'Maximum': 123,
            'Unit': 'GB'
        },
        'ECPUPerSecond': {
            'Maximum': 123
        }
    },
    KmsKeyId='string',
    SecurityGroupIds=[
        'string',
    ],
    SnapshotArnsToRestore=[
        'string',
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    UserGroupId='string',
    SubnetIds=[
        'string',
    ],
    SnapshotRetentionLimit=123,
    DailySnapshotTime='string'
)
Parameters:
  • ServerlessCacheName (string) –

    [REQUIRED]

    User-provided identifier for the serverless cache. This parameter is stored as a lowercase string.

  • Description (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.

  • Engine (string) –

    [REQUIRED]

    The name of the cache engine to be used for creating the serverless cache.

  • MajorEngineVersion (string) – The version of the cache engine that will be used to create the serverless cache.

  • CacheUsageLimits (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) – [REQUIRED]

        The upper 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) – [REQUIRED]

        The configuration for the maximum number of ECPUs the cache can consume per second.

  • KmsKeyId (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.

  • SecurityGroupIds (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) –

  • SnapshotArnsToRestore (list) –

    The ARN(s) of the snapshot that the new serverless cache will be created from. Available for Redis only.

    • (string) –

  • Tags (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.

  • UserGroupId (string) – The identifier of the UserGroup to be associated with the serverless cache. Available for Redis only. Default is NULL.

  • SubnetIds (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) –

  • SnapshotRetentionLimit (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.

  • DailySnapshotTime (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.

Return type:

dict

Returns:

Response Syntax

{
    'ServerlessCache': {
        'ServerlessCacheName': 'string',
        'Description': 'string',
        'CreateTime': datetime(2015, 1, 1),
        'Status': 'string',
        'Engine': 'string',
        'MajorEngineVersion': 'string',
        'FullEngineVersion': 'string',
        'CacheUsageLimits': {
            'DataStorage': {
                'Maximum': 123,
                'Unit': 'GB'
            },
            'ECPUPerSecond': {
                'Maximum': 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.

          • 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.

      • 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.

        • 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.

        • 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 SFO, 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.

Exceptions

  • ElastiCache.Client.exceptions.ServerlessCacheNotFoundFault

  • ElastiCache.Client.exceptions.InvalidServerlessCacheStateFault

  • ElastiCache.Client.exceptions.ServerlessCacheAlreadyExistsFault

  • ElastiCache.Client.exceptions.ServerlessCacheQuotaForCustomerExceededFault

  • ElastiCache.Client.exceptions.InvalidParameterValueException

  • ElastiCache.Client.exceptions.InvalidParameterCombinationException

  • ElastiCache.Client.exceptions.InvalidCredentialsException

  • ElastiCache.Client.exceptions.InvalidUserGroupStateFault

  • ElastiCache.Client.exceptions.UserGroupNotFoundFault

  • ElastiCache.Client.exceptions.TagQuotaPerResourceExceeded

  • ElastiCache.Client.exceptions.ServiceLinkedRoleNotFoundFault