Copyright | (c) 2013-2015 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
The CreateCacheCluster action creates a cache cluster. All nodes in the cache cluster run the same protocol-compliant cache engine software, either Memcached or Redis.
See: AWS API Reference for CreateCacheCluster.
- createCacheCluster :: Text -> CreateCacheCluster
- data CreateCacheCluster
- cccEngineVersion :: Lens' CreateCacheCluster (Maybe Text)
- cccCacheNodeType :: Lens' CreateCacheCluster (Maybe Text)
- cccSecurityGroupIds :: Lens' CreateCacheCluster [Text]
- cccSnapshotARNs :: Lens' CreateCacheCluster [Text]
- cccAutoMinorVersionUpgrade :: Lens' CreateCacheCluster (Maybe Bool)
- cccCacheParameterGroupName :: Lens' CreateCacheCluster (Maybe Text)
- cccSnapshotWindow :: Lens' CreateCacheCluster (Maybe Text)
- cccEngine :: Lens' CreateCacheCluster (Maybe Text)
- cccPreferredAvailabilityZones :: Lens' CreateCacheCluster [Text]
- cccPreferredMaintenanceWindow :: Lens' CreateCacheCluster (Maybe Text)
- cccCacheSubnetGroupName :: Lens' CreateCacheCluster (Maybe Text)
- cccPreferredAvailabilityZone :: Lens' CreateCacheCluster (Maybe Text)
- cccSnapshotRetentionLimit :: Lens' CreateCacheCluster (Maybe Int)
- cccAZMode :: Lens' CreateCacheCluster (Maybe AZMode)
- cccSnapshotName :: Lens' CreateCacheCluster (Maybe Text)
- cccReplicationGroupId :: Lens' CreateCacheCluster (Maybe Text)
- cccNotificationTopicARN :: Lens' CreateCacheCluster (Maybe Text)
- cccNumCacheNodes :: Lens' CreateCacheCluster (Maybe Int)
- cccTags :: Lens' CreateCacheCluster [Tag]
- cccPort :: Lens' CreateCacheCluster (Maybe Int)
- cccCacheSecurityGroupNames :: Lens' CreateCacheCluster [Text]
- cccCacheClusterId :: Lens' CreateCacheCluster Text
- createCacheClusterResponse :: Int -> CreateCacheClusterResponse
- data CreateCacheClusterResponse
- cccrsCacheCluster :: Lens' CreateCacheClusterResponse (Maybe CacheCluster)
- cccrsResponseStatus :: Lens' CreateCacheClusterResponse Int
Creating a Request
Creates a value of CreateCacheCluster
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
cccEngineVersion
cccCacheNodeType
cccSecurityGroupIds
cccSnapshotARNs
cccAutoMinorVersionUpgrade
cccCacheParameterGroupName
cccSnapshotWindow
cccEngine
cccPreferredAvailabilityZones
cccPreferredMaintenanceWindow
cccCacheSubnetGroupName
cccPreferredAvailabilityZone
cccSnapshotRetentionLimit
cccAZMode
cccSnapshotName
cccReplicationGroupId
cccNotificationTopicARN
cccNumCacheNodes
cccTags
cccPort
cccCacheSecurityGroupNames
cccCacheClusterId
data CreateCacheCluster Source
Represents the input of a CreateCacheCluster action.
See: createCacheCluster
smart constructor.
Request Lenses
cccEngineVersion :: Lens' CreateCacheCluster (Maybe Text) Source
The version number of the cache engine to be used for this cache cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions action.
cccCacheNodeType :: Lens' CreateCacheCluster (Maybe Text) Source
The compute and memory capacity of the nodes in the node group.
Valid node types are as follows:
- General purpose:
- Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge'
- Previous generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'
- Compute optimized: 'cache.c1.xlarge'
- Memory optimized
- Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'
- Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge'
Notes:
- All t2 instances are created in an Amazon Virtual Private Cloud (VPC).
- Redis backup/restore is not supported for t2 instances.
- Redis Append-only files (AOF) functionality is not supported for t1 or t2 instances.
For a complete listing of cache node types and specifications, see Amazon ElastiCache Product Features and Details and Cache Node Type-Specific Parameters for Memcached or Cache Node Type-Specific Parameters for Redis.
cccSecurityGroupIds :: Lens' CreateCacheCluster [Text] Source
One or more VPC security groups associated with the cache cluster.
Use this parameter only when you are creating a cache cluster in an Amazon Virtual Private Cloud (VPC).
cccSnapshotARNs :: Lens' CreateCacheCluster [Text] Source
A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The snapshot file will be used to populate the node group. The Amazon S3 object name in the ARN cannot contain any commas.
Note: This parameter is only valid if the Engine
parameter is
redis
.
Example of an Amazon S3 ARN: 'arn:aws:s3:::my_bucket\/snapshot1.rdb'
cccAutoMinorVersionUpgrade :: Lens' CreateCacheCluster (Maybe Bool) Source
This parameter is currently disabled.
cccCacheParameterGroupName :: Lens' CreateCacheCluster (Maybe Text) Source
The name of the parameter group to associate with this cache cluster. If this argument is omitted, the default parameter group for the specified engine is used.
cccSnapshotWindow :: Lens' CreateCacheCluster (Maybe Text) Source
The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your node group.
Example: '05:00-09:00'
If you do not specify this parameter, then ElastiCache will automatically choose an appropriate time range.
Note: This parameter is only valid if the Engine
parameter is
redis
.
cccEngine :: Lens' CreateCacheCluster (Maybe Text) Source
The name of the cache engine to be used for this cache cluster.
Valid values for this parameter are:
memcached
| redis
cccPreferredAvailabilityZones :: Lens' CreateCacheCluster [Text] Source
A list of the Availability Zones in which cache nodes will be created. The order of the zones in the list is not important.
This option is only supported on Memcached.
If you are creating your cache cluster in an Amazon VPC (recommended) you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group.
The number of Availability Zones listed must equal the value of
NumCacheNodes
.
If you want all the nodes in the same Availability Zone, use
PreferredAvailabilityZone
instead, or repeat the Availability Zone
multiple times in the list.
Default: System chosen Availability Zones.
Example: One Memcached node in each of three different Availability Zones: 'PreferredAvailabilityZones.member.1=us-west-2a&PreferredAvailabilityZones.member.2=us-west-2b&PreferredAvailabilityZones.member.3=us-west-2c'
Example: All three Memcached nodes in one Availability Zone: 'PreferredAvailabilityZones.member.1=us-west-2a&PreferredAvailabilityZones.member.2=us-west-2a&PreferredAvailabilityZones.member.3=us-west-2a'
cccPreferredMaintenanceWindow :: Lens' CreateCacheCluster (Maybe Text) Source
Specifies the weekly time range during which maintenance on the cache
cluster is performed. It is specified as a range in the format
ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window
is a 60 minute period. Valid values for ddd
are:
sun
mon
tue
wed
thu
fri
sat
Example: 'sun:05:00-sun:09:00'
cccCacheSubnetGroupName :: Lens' CreateCacheCluster (Maybe Text) Source
The name of the subnet group to be used for the cache cluster.
Use this parameter only when you are creating a cache cluster in an Amazon Virtual Private Cloud (VPC).
cccPreferredAvailabilityZone :: Lens' CreateCacheCluster (Maybe Text) Source
The EC2 Availability Zone in which the cache cluster will be created.
All nodes belonging to this Memcached cache cluster are placed in the
preferred Availability Zone. If you want to create your nodes across
multiple Availability Zones, use PreferredAvailabilityZones
.
Default: System chosen Availability Zone.
cccSnapshotRetentionLimit :: Lens' CreateCacheCluster (Maybe Int) Source
The number of days for which ElastiCache will retain automatic snapshots
before deleting them. For example, if you set SnapshotRetentionLimit
to 5, then a snapshot that was taken today will be retained for 5 days
before being deleted.
Note: This parameter is only valid if the Engine
parameter is
redis
.
Default: 0 (i.e., automatic backups are disabled for this cache cluster).
cccAZMode :: Lens' CreateCacheCluster (Maybe AZMode) Source
Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.
This parameter is only supported for Memcached cache clusters.
If the AZMode
and PreferredAvailabilityZones
are not specified,
ElastiCache assumes 'single-az' mode.
cccSnapshotName :: Lens' CreateCacheCluster (Maybe Text) Source
The name of a snapshot from which to restore data into the new node
group. The snapshot status changes to restoring
while the new node
group is being created.
Note: This parameter is only valid if the Engine
parameter is
redis
.
cccReplicationGroupId :: Lens' CreateCacheCluster (Maybe Text) Source
The ID of the replication group to which this cache cluster should belong. If this parameter is specified, the cache cluster will be added to the specified replication group as a read replica; otherwise, the cache cluster will be a standalone primary that is not part of any replication group.
If the specified replication group is Multi-AZ enabled and the availability zone is not specified, the cache cluster will be created in availability zones that provide the best spread of read replicas across availability zones.
Note: This parameter is only valid if the Engine
parameter is
redis
.
cccNotificationTopicARN :: Lens' CreateCacheCluster (Maybe Text) Source
The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications will be sent.
The Amazon SNS topic owner must be the same as the cache cluster owner.
cccNumCacheNodes :: Lens' CreateCacheCluster (Maybe Int) Source
The initial number of cache nodes that the cache cluster will have.
For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 20.
If you need more than 20 nodes for your Memcached cluster, please fill out the ElastiCache Limit Increase Request form at http://aws.amazon.com/contact-us/elasticache-node-limit-request/.
cccTags :: Lens' CreateCacheCluster [Tag] Source
A list of cost allocation tags to be added to this resource. A tag is a key-value pair. A tag key must be accompanied by a tag value.
cccPort :: Lens' CreateCacheCluster (Maybe Int) Source
The port number on which each of the cache nodes will accept connections.
cccCacheSecurityGroupNames :: Lens' CreateCacheCluster [Text] Source
A list of security group names to associate with this cache cluster.
Use this parameter only when you are creating a cache cluster outside of an Amazon Virtual Private Cloud (VPC).
cccCacheClusterId :: Lens' CreateCacheCluster Text Source
The node group identifier. This parameter is stored as a lowercase string.
Constraints:
- A name must contain from 1 to 20 alphanumeric characters or hyphens.
- The first character must be a letter.
- A name cannot end with a hyphen or contain two consecutive hyphens.
Destructuring the Response
createCacheClusterResponse Source
Creates a value of CreateCacheClusterResponse
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data CreateCacheClusterResponse Source
See: createCacheClusterResponse
smart constructor.
Response Lenses
cccrsCacheCluster :: Lens' CreateCacheClusterResponse (Maybe CacheCluster) Source
Undocumented member.
cccrsResponseStatus :: Lens' CreateCacheClusterResponse Int Source
The response status code.