aws_sdk_memorydb/client/
update_cluster.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`UpdateCluster`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`cluster_name(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::cluster_name) / [`set_cluster_name(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_cluster_name):<br>required: **true**<br><p>The name of the cluster to update.</p><br>
7    ///   - [`description(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_description):<br>required: **false**<br><p>The description of the cluster to update.</p><br>
8    ///   - [`security_group_ids(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::security_group_ids) / [`set_security_group_ids(Option<Vec::<String>>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_security_group_ids):<br>required: **false**<br><p>The SecurityGroupIds to update.</p><br>
9    ///   - [`maintenance_window(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::maintenance_window) / [`set_maintenance_window(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_maintenance_window):<br>required: **false**<br><p>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.</p> <p>Valid values for <code>ddd</code> are:</p> <ul>  <li>   <p><code>sun</code></p></li>  <li>   <p><code>mon</code></p></li>  <li>   <p><code>tue</code></p></li>  <li>   <p><code>wed</code></p></li>  <li>   <p><code>thu</code></p></li>  <li>   <p><code>fri</code></p></li>  <li>   <p><code>sat</code></p></li> </ul> <p>Example: <code>sun:23:00-mon:01:30</code></p><br>
10    ///   - [`sns_topic_arn(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::sns_topic_arn) / [`set_sns_topic_arn(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_sns_topic_arn):<br>required: **false**<br><p>The SNS topic ARN to update.</p><br>
11    ///   - [`sns_topic_status(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::sns_topic_status) / [`set_sns_topic_status(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_sns_topic_status):<br>required: **false**<br><p>The status of the Amazon SNS notification topic. Notifications are sent only if the status is active.</p><br>
12    ///   - [`parameter_group_name(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::parameter_group_name) / [`set_parameter_group_name(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_parameter_group_name):<br>required: **false**<br><p>The name of the parameter group to update.</p><br>
13    ///   - [`snapshot_window(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::snapshot_window) / [`set_snapshot_window(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_snapshot_window):<br>required: **false**<br><p>The daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your cluster.</p><br>
14    ///   - [`snapshot_retention_limit(i32)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::snapshot_retention_limit) / [`set_snapshot_retention_limit(Option<i32>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_snapshot_retention_limit):<br>required: **false**<br><p>The number of days for which MemoryDB retains automatic cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days before being deleted.</p><br>
15    ///   - [`node_type(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::node_type) / [`set_node_type(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_node_type):<br>required: **false**<br><p>A valid node type that you want to scale this cluster up or down to.</p><br>
16    ///   - [`engine(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::engine) / [`set_engine(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_engine):<br>required: **false**<br><p>The name of the engine to be used for the cluster.</p><br>
17    ///   - [`engine_version(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::engine_version) / [`set_engine_version(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_engine_version):<br>required: **false**<br><p>The upgraded version of the engine to be run on the nodes. You can upgrade to a newer engine 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 and create it anew with the earlier engine version.</p><br>
18    ///   - [`replica_configuration(ReplicaConfigurationRequest)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::replica_configuration) / [`set_replica_configuration(Option<ReplicaConfigurationRequest>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_replica_configuration):<br>required: **false**<br><p>The number of replicas that will reside in each shard.</p><br>
19    ///   - [`shard_configuration(ShardConfigurationRequest)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::shard_configuration) / [`set_shard_configuration(Option<ShardConfigurationRequest>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_shard_configuration):<br>required: **false**<br><p>The number of shards in the cluster.</p><br>
20    ///   - [`acl_name(impl Into<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::acl_name) / [`set_acl_name(Option<String>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_acl_name):<br>required: **false**<br><p>The Access Control List that is associated with the cluster.</p><br>
21    ///   - [`ip_discovery(IpDiscovery)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::ip_discovery) / [`set_ip_discovery(Option<IpDiscovery>)`](crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::set_ip_discovery):<br>required: **false**<br><p>The mechanism for discovering IP addresses for the cluster discovery protocol. Valid values are 'ipv4' or 'ipv6'. When set to 'ipv4', cluster discovery functions such as cluster slots, cluster shards, and cluster nodes will return IPv4 addresses for cluster nodes. When set to 'ipv6', the cluster discovery functions return IPv6 addresses for cluster nodes. The value must be compatible with the NetworkType parameter. If not specified, the default is 'ipv4'.</p><br>
22    /// - On success, responds with [`UpdateClusterOutput`](crate::operation::update_cluster::UpdateClusterOutput) with field(s):
23    ///   - [`cluster(Option<Cluster>)`](crate::operation::update_cluster::UpdateClusterOutput::cluster): <p>The updated cluster.</p>
24    /// - On failure, responds with [`SdkError<UpdateClusterError>`](crate::operation::update_cluster::UpdateClusterError)
25    pub fn update_cluster(&self) -> crate::operation::update_cluster::builders::UpdateClusterFluentBuilder {
26        crate::operation::update_cluster::builders::UpdateClusterFluentBuilder::new(self.handle.clone())
27    }
28}