pub struct Builder { /* private fields */ }
Expand description

A builder for CreateCacheClusterInput.

Implementations§

The node group (shard) identifier. This parameter is stored as a lowercase string.

Constraints:

  • A name must contain from 1 to 50 alphanumeric characters or hyphens.

  • The first character must be a letter.

  • A name cannot end with a hyphen or contain two consecutive hyphens.

Examples found in repository?
src/client.rs (line 1855)
1854
1855
1856
1857
        pub fn cache_cluster_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.cache_cluster_id(input.into());
            self
        }

The node group (shard) identifier. This parameter is stored as a lowercase string.

Constraints:

  • A name must contain from 1 to 50 alphanumeric characters or hyphens.

  • The first character must be a letter.

  • A name cannot end with a hyphen or contain two consecutive hyphens.

Examples found in repository?
src/client.rs (line 1869)
1865
1866
1867
1868
1869
1870
1871
        pub fn set_cache_cluster_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_cache_cluster_id(input);
            self
        }

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is 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 cluster is created in Availability Zones that provide the best spread of read replicas across Availability Zones.

This parameter is only valid if the Engine parameter is redis.

Examples found in repository?
src/client.rs (line 1877)
1876
1877
1878
1879
        pub fn replication_group_id(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.replication_group_id(input.into());
            self
        }

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is 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 cluster is created in Availability Zones that provide the best spread of read replicas across Availability Zones.

This parameter is only valid if the Engine parameter is redis.

Examples found in repository?
src/client.rs (line 1888)
1884
1885
1886
1887
1888
1889
1890
        pub fn set_replication_group_id(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_replication_group_id(input);
            self
        }

Specifies whether the nodes in this Memcached cluster 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 clusters.

If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

Examples found in repository?
src/client.rs (line 1895)
1894
1895
1896
1897
        pub fn az_mode(mut self, input: crate::model::AzMode) -> Self {
            self.inner = self.inner.az_mode(input);
            self
        }

Specifies whether the nodes in this Memcached cluster 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 clusters.

If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache assumes single-az mode.

Examples found in repository?
src/client.rs (line 1902)
1901
1902
1903
1904
        pub fn set_az_mode(mut self, input: std::option::Option<crate::model::AzMode>) -> Self {
            self.inner = self.inner.set_az_mode(input);
            self
        }

The EC2 Availability Zone in which the cluster is created.

All nodes belonging to this 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.

Examples found in repository?
src/client.rs (line 1912)
1908
1909
1910
1911
1912
1913
1914
        pub fn preferred_availability_zone(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self.inner.preferred_availability_zone(input.into());
            self
        }

The EC2 Availability Zone in which the cluster is created.

All nodes belonging to this 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.

Examples found in repository?
src/client.rs (line 1922)
1918
1919
1920
1921
1922
1923
1924
        pub fn set_preferred_availability_zone(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_preferred_availability_zone(input);
            self
        }

Appends an item to preferred_availability_zones.

To override the contents of this collection use set_preferred_availability_zones.

A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

This option is only supported on Memcached.

If you are creating your 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.

Examples found in repository?
src/client.rs (line 1940)
1936
1937
1938
1939
1940
1941
1942
        pub fn preferred_availability_zones(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self.inner.preferred_availability_zones(input.into());
            self
        }

A list of the Availability Zones in which cache nodes are created. The order of the zones in the list is not important.

This option is only supported on Memcached.

If you are creating your 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.

Examples found in repository?
src/client.rs (line 1954)
1950
1951
1952
1953
1954
1955
1956
        pub fn set_preferred_availability_zones(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_preferred_availability_zones(input);
            self
        }

The initial number of cache nodes that the cluster has.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.

If you need more than 40 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/.

Examples found in repository?
src/client.rs (line 1961)
1960
1961
1962
1963
        pub fn num_cache_nodes(mut self, input: i32) -> Self {
            self.inner = self.inner.num_cache_nodes(input);
            self
        }

The initial number of cache nodes that the cluster has.

For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.

If you need more than 40 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/.

Examples found in repository?
src/client.rs (line 1968)
1967
1968
1969
1970
        pub fn set_num_cache_nodes(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_num_cache_nodes(input);
            self
        }

The compute and memory capacity of the nodes in the node group (shard).

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

Examples found in repository?
src/client.rs (line 2001)
2000
2001
2002
2003
        pub fn cache_node_type(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.cache_node_type(input.into());
            self
        }

The compute and memory capacity of the nodes in the node group (shard).

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose:

    • Current generation:

      M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge

      For region availability, see Supported Node Types

      M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge

      M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge

      T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium

      T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium

      T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      T1 node types: cache.t1.micro

      M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge

      M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized:

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      C1 node types: cache.c1.xlarge

  • Memory optimized:

    • Current generation:

      R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).

      cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge

      For region availability, see Supported Node Types

      R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge

      R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge

    • Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)

      M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge

      R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

Examples found in repository?
src/client.rs (line 2037)
2033
2034
2035
2036
2037
2038
2039
        pub fn set_cache_node_type(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_cache_node_type(input);
            self
        }

The name of the cache engine to be used for this cluster.

Valid values for this parameter are: memcached | redis

Examples found in repository?
src/client.rs (line 2043)
2042
2043
2044
2045
        pub fn engine(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.engine(input.into());
            self
        }

The name of the cache engine to be used for this cluster.

Valid values for this parameter are: memcached | redis

Examples found in repository?
src/client.rs (line 2049)
2048
2049
2050
2051
        pub fn set_engine(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_engine(input);
            self
        }

The version number of the cache engine to be used for this cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.

Examples found in repository?
src/client.rs (line 2055)
2054
2055
2056
2057
        pub fn engine_version(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.engine_version(input.into());
            self
        }

The version number of the cache engine to be used for this cluster. To view the supported cache engine versions, use the DescribeCacheEngineVersions operation.

Important: You can upgrade to a newer engine version (see Selecting a Cache Engine and Version), but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.

Examples found in repository?
src/client.rs (line 2064)
2060
2061
2062
2063
2064
2065
2066
        pub fn set_engine_version(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_engine_version(input);
            self
        }

The name of the parameter group to associate with this cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes' when creating a cluster.

Examples found in repository?
src/client.rs (line 2069)
2068
2069
2070
2071
        pub fn cache_parameter_group_name(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.cache_parameter_group_name(input.into());
            self
        }

The name of the parameter group to associate with this cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes' when creating a cluster.

Examples found in repository?
src/client.rs (line 2077)
2073
2074
2075
2076
2077
2078
2079
        pub fn set_cache_parameter_group_name(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_cache_parameter_group_name(input);
            self
        }

The name of the subnet group to be used for the cluster.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.

Examples found in repository?
src/client.rs (line 2085)
2084
2085
2086
2087
        pub fn cache_subnet_group_name(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.cache_subnet_group_name(input.into());
            self
        }

The name of the subnet group to be used for the cluster.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.

Examples found in repository?
src/client.rs (line 2096)
2092
2093
2094
2095
2096
2097
2098
        pub fn set_cache_subnet_group_name(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_cache_subnet_group_name(input);
            self
        }

Appends an item to cache_security_group_names.

To override the contents of this collection use set_cache_security_group_names.

A list of security group names to associate with this cluster.

Use this parameter only when you are creating a cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

Examples found in repository?
src/client.rs (line 2106)
2105
2106
2107
2108
        pub fn cache_security_group_names(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.cache_security_group_names(input.into());
            self
        }

A list of security group names to associate with this cluster.

Use this parameter only when you are creating a cluster outside of an Amazon Virtual Private Cloud (Amazon VPC).

Examples found in repository?
src/client.rs (line 2115)
2111
2112
2113
2114
2115
2116
2117
        pub fn set_cache_security_group_names(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_cache_security_group_names(input);
            self
        }

Appends an item to security_group_ids.

To override the contents of this collection use set_security_group_ids.

One or more VPC security groups associated with the cluster.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

Examples found in repository?
src/client.rs (line 2125)
2124
2125
2126
2127
        pub fn security_group_ids(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.security_group_ids(input.into());
            self
        }

One or more VPC security groups associated with the cluster.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).

Examples found in repository?
src/client.rs (line 2134)
2130
2131
2132
2133
2134
2135
2136
        pub fn set_security_group_ids(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_security_group_ids(input);
            self
        }

Appends an item to tags.

To override the contents of this collection use set_tags.

A list of tags to be added to this resource.

Examples found in repository?
src/client.rs (line 2143)
2142
2143
2144
2145
        pub fn tags(mut self, input: crate::model::Tag) -> Self {
            self.inner = self.inner.tags(input);
            self
        }

A list of tags to be added to this resource.

Examples found in repository?
src/client.rs (line 2151)
2147
2148
2149
2150
2151
2152
2153
        pub fn set_tags(
            mut self,
            input: std::option::Option<std::vec::Vec<crate::model::Tag>>,
        ) -> Self {
            self.inner = self.inner.set_tags(input);
            self
        }

Appends an item to snapshot_arns.

To override the contents of this collection use set_snapshot_arns.

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 is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

This parameter is only valid if the Engine parameter is redis.

Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

Examples found in repository?
src/client.rs (line 2163)
2162
2163
2164
2165
        pub fn snapshot_arns(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.snapshot_arns(input.into());
            self
        }

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 is used to populate the node group (shard). The Amazon S3 object name in the ARN cannot contain any commas.

This parameter is only valid if the Engine parameter is redis.

Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb

Examples found in repository?
src/client.rs (line 2174)
2170
2171
2172
2173
2174
2175
2176
        pub fn set_snapshot_arns(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_snapshot_arns(input);
            self
        }

The name of a Redis snapshot from which to restore data into the new node group (shard). The snapshot status changes to restoring while the new node group (shard) is being created.

This parameter is only valid if the Engine parameter is redis.

Examples found in repository?
src/client.rs (line 2181)
2180
2181
2182
2183
        pub fn snapshot_name(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.snapshot_name(input.into());
            self
        }

The name of a Redis snapshot from which to restore data into the new node group (shard). The snapshot status changes to restoring while the new node group (shard) is being created.

This parameter is only valid if the Engine parameter is redis.

Examples found in repository?
src/client.rs (line 2191)
2187
2188
2189
2190
2191
2192
2193
        pub fn set_snapshot_name(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_snapshot_name(input);
            self
        }

Specifies the weekly time range during which maintenance on the 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.

Examples found in repository?
src/client.rs (line 2199)
2195
2196
2197
2198
2199
2200
2201
        pub fn preferred_maintenance_window(
            mut self,
            input: impl Into<std::string::String>,
        ) -> Self {
            self.inner = self.inner.preferred_maintenance_window(input.into());
            self
        }

Specifies the weekly time range during which maintenance on the 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.

Examples found in repository?
src/client.rs (line 2207)
2203
2204
2205
2206
2207
2208
2209
        pub fn set_preferred_maintenance_window(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_preferred_maintenance_window(input);
            self
        }

The port number on which each of the cache nodes accepts connections.

Examples found in repository?
src/client.rs (line 2212)
2211
2212
2213
2214
        pub fn port(mut self, input: i32) -> Self {
            self.inner = self.inner.port(input);
            self
        }

The port number on which each of the cache nodes accepts connections.

Examples found in repository?
src/client.rs (line 2217)
2216
2217
2218
2219
        pub fn set_port(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_port(input);
            self
        }

The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

The Amazon SNS topic owner must be the same as the cluster owner.

Examples found in repository?
src/client.rs (line 2224)
2223
2224
2225
2226
        pub fn notification_topic_arn(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.notification_topic_arn(input.into());
            self
        }

The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.

The Amazon SNS topic owner must be the same as the cluster owner.

Examples found in repository?
src/client.rs (line 2234)
2230
2231
2232
2233
2234
2235
2236
        pub fn set_notification_topic_arn(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_notification_topic_arn(input);
            self
        }

 If you are running Redis engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next auto minor version upgrade campaign. This parameter is disabled for previous versions. 

Examples found in repository?
src/client.rs (line 2239)
2238
2239
2240
2241
        pub fn auto_minor_version_upgrade(mut self, input: bool) -> Self {
            self.inner = self.inner.auto_minor_version_upgrade(input);
            self
        }

 If you are running Redis engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next auto minor version upgrade campaign. This parameter is disabled for previous versions. 

Examples found in repository?
src/client.rs (line 2244)
2243
2244
2245
2246
        pub fn set_auto_minor_version_upgrade(mut self, input: std::option::Option<bool>) -> Self {
            self.inner = self.inner.set_auto_minor_version_upgrade(input);
            self
        }

The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot taken today is retained for 5 days before being deleted.

This parameter is only valid if the Engine parameter is redis.

Default: 0 (i.e., automatic backups are disabled for this cache cluster).

Examples found in repository?
src/client.rs (line 2252)
2251
2252
2253
2254
        pub fn snapshot_retention_limit(mut self, input: i32) -> Self {
            self.inner = self.inner.snapshot_retention_limit(input);
            self
        }

The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot taken today is retained for 5 days before being deleted.

This parameter is only valid if the Engine parameter is redis.

Default: 0 (i.e., automatic backups are disabled for this cache cluster).

Examples found in repository?
src/client.rs (line 2260)
2259
2260
2261
2262
        pub fn set_snapshot_retention_limit(mut self, input: std::option::Option<i32>) -> Self {
            self.inner = self.inner.set_snapshot_retention_limit(input);
            self
        }

The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

Example: 05:00-09:00

If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

This parameter is only valid if the Engine parameter is redis.

Examples found in repository?
src/client.rs (line 2269)
2268
2269
2270
2271
        pub fn snapshot_window(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.snapshot_window(input.into());
            self
        }

The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).

Example: 05:00-09:00

If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.

This parameter is only valid if the Engine parameter is redis.

Examples found in repository?
src/client.rs (line 2281)
2277
2278
2279
2280
2281
2282
2283
        pub fn set_snapshot_window(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_snapshot_window(input);
            self
        }

Reserved parameter. The password used to access a password protected server.

Password constraints:

  • Must be only printable ASCII characters.

  • Must be at least 16 characters and no more than 128 characters in length.

  • The only permitted printable special characters are !, &, #, $, ^, <, >, and -. Other printable special characters cannot be used in the AUTH token.

For more information, see AUTH password at http://redis.io/commands/AUTH.

Examples found in repository?
src/client.rs (line 2293)
2292
2293
2294
2295
        pub fn auth_token(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.auth_token(input.into());
            self
        }

Reserved parameter. The password used to access a password protected server.

Password constraints:

  • Must be only printable ASCII characters.

  • Must be at least 16 characters and no more than 128 characters in length.

  • The only permitted printable special characters are !, &, #, $, ^, <, >, and -. Other printable special characters cannot be used in the AUTH token.

For more information, see AUTH password at http://redis.io/commands/AUTH.

Examples found in repository?
src/client.rs (line 2305)
2304
2305
2306
2307
        pub fn set_auth_token(mut self, input: std::option::Option<std::string::String>) -> Self {
            self.inner = self.inner.set_auth_token(input);
            self
        }

Specifies whether the nodes in the cluster are created in a single outpost or across multiple outposts.

Examples found in repository?
src/client.rs (line 2310)
2309
2310
2311
2312
        pub fn outpost_mode(mut self, input: crate::model::OutpostMode) -> Self {
            self.inner = self.inner.outpost_mode(input);
            self
        }

Specifies whether the nodes in the cluster are created in a single outpost or across multiple outposts.

Examples found in repository?
src/client.rs (line 2318)
2314
2315
2316
2317
2318
2319
2320
        pub fn set_outpost_mode(
            mut self,
            input: std::option::Option<crate::model::OutpostMode>,
        ) -> Self {
            self.inner = self.inner.set_outpost_mode(input);
            self
        }

The outpost ARN in which the cache cluster is created.

Examples found in repository?
src/client.rs (line 2323)
2322
2323
2324
2325
        pub fn preferred_outpost_arn(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.preferred_outpost_arn(input.into());
            self
        }

The outpost ARN in which the cache cluster is created.

Examples found in repository?
src/client.rs (line 2331)
2327
2328
2329
2330
2331
2332
2333
        pub fn set_preferred_outpost_arn(
            mut self,
            input: std::option::Option<std::string::String>,
        ) -> Self {
            self.inner = self.inner.set_preferred_outpost_arn(input);
            self
        }

Appends an item to preferred_outpost_arns.

To override the contents of this collection use set_preferred_outpost_arns.

The outpost ARNs in which the cache cluster is created.

Examples found in repository?
src/client.rs (line 2340)
2339
2340
2341
2342
        pub fn preferred_outpost_arns(mut self, input: impl Into<std::string::String>) -> Self {
            self.inner = self.inner.preferred_outpost_arns(input.into());
            self
        }

The outpost ARNs in which the cache cluster is created.

Examples found in repository?
src/client.rs (line 2348)
2344
2345
2346
2347
2348
2349
2350
        pub fn set_preferred_outpost_arns(
            mut self,
            input: std::option::Option<std::vec::Vec<std::string::String>>,
        ) -> Self {
            self.inner = self.inner.set_preferred_outpost_arns(input);
            self
        }

Appends an item to log_delivery_configurations.

To override the contents of this collection use set_log_delivery_configurations.

Specifies the destination, format and type of the logs.

Examples found in repository?
src/client.rs (line 2360)
2356
2357
2358
2359
2360
2361
2362
        pub fn log_delivery_configurations(
            mut self,
            input: crate::model::LogDeliveryConfigurationRequest,
        ) -> Self {
            self.inner = self.inner.log_delivery_configurations(input);
            self
        }

Specifies the destination, format and type of the logs.

Examples found in repository?
src/client.rs (line 2370)
2364
2365
2366
2367
2368
2369
2370
2371
2372
        pub fn set_log_delivery_configurations(
            mut self,
            input: std::option::Option<
                std::vec::Vec<crate::model::LogDeliveryConfigurationRequest>,
            >,
        ) -> Self {
            self.inner = self.inner.set_log_delivery_configurations(input);
            self
        }

A flag that enables in-transit encryption when set to true. You cannot modify the value of TransitEncryptionEnabled after the cluster is created. To enable in-transit encryption on a cluster you must set TransitEncryptionEnabled to true when you create a cluster.

Required: Only available when creating a cache cluster in an Amazon VPC using Memcached version 1.6.12 or later.

Examples found in repository?
src/client.rs (line 2376)
2375
2376
2377
2378
        pub fn transit_encryption_enabled(mut self, input: bool) -> Self {
            self.inner = self.inner.transit_encryption_enabled(input);
            self
        }

A flag that enables in-transit encryption when set to true. You cannot modify the value of TransitEncryptionEnabled after the cluster is created. To enable in-transit encryption on a cluster you must set TransitEncryptionEnabled to true when you create a cluster.

Required: Only available when creating a cache cluster in an Amazon VPC using Memcached version 1.6.12 or later.

Examples found in repository?
src/client.rs (line 2382)
2381
2382
2383
2384
        pub fn set_transit_encryption_enabled(mut self, input: std::option::Option<bool>) -> Self {
            self.inner = self.inner.set_transit_encryption_enabled(input);
            self
        }

Consumes the builder and constructs a CreateCacheClusterInput.

Examples found in repository?
src/client.rs (line 1816)
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
        pub async fn customize(
            self,
        ) -> std::result::Result<
            crate::operation::customize::CustomizableOperation<
                crate::operation::CreateCacheCluster,
                aws_http::retry::AwsResponseRetryClassifier,
            >,
            aws_smithy_http::result::SdkError<crate::error::CreateCacheClusterError>,
        > {
            let handle = self.handle.clone();
            let operation = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            Ok(crate::operation::customize::CustomizableOperation { handle, operation })
        }

        /// Sends the request and returns the response.
        ///
        /// If an error occurs, an `SdkError` will be returned with additional details that
        /// can be matched against.
        ///
        /// By default, any retryable failures will be retried twice. Retry behavior
        /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
        /// set when configuring the client.
        pub async fn send(
            self,
        ) -> std::result::Result<
            crate::output::CreateCacheClusterOutput,
            aws_smithy_http::result::SdkError<crate::error::CreateCacheClusterError>,
        > {
            let op = self
                .inner
                .build()
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?
                .make_operation(&self.handle.conf)
                .await
                .map_err(aws_smithy_http::result::SdkError::construction_failure)?;
            self.handle.client.call(op).await
        }

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more