#[non_exhaustive]
pub struct ReplicationGroup {
Show 31 fields pub replication_group_id: Option<String>, pub description: Option<String>, pub global_replication_group_info: Option<GlobalReplicationGroupInfo>, pub status: Option<String>, pub pending_modified_values: Option<ReplicationGroupPendingModifiedValues>, pub member_clusters: Option<Vec<String>>, pub node_groups: Option<Vec<NodeGroup>>, pub snapshotting_cluster_id: Option<String>, pub automatic_failover: Option<AutomaticFailoverStatus>, pub multi_az: Option<MultiAzStatus>, pub configuration_endpoint: Option<Endpoint>, pub snapshot_retention_limit: Option<i32>, pub snapshot_window: Option<String>, pub cluster_enabled: Option<bool>, pub cache_node_type: Option<String>, pub auth_token_enabled: Option<bool>, pub auth_token_last_modified_date: Option<DateTime>, pub transit_encryption_enabled: Option<bool>, pub at_rest_encryption_enabled: Option<bool>, pub member_clusters_outpost_arns: Option<Vec<String>>, pub kms_key_id: Option<String>, pub arn: Option<String>, pub user_group_ids: Option<Vec<String>>, pub log_delivery_configurations: Option<Vec<LogDeliveryConfiguration>>, pub replication_group_create_time: Option<DateTime>, pub data_tiering: Option<DataTieringStatus>, pub auto_minor_version_upgrade: Option<bool>, pub network_type: Option<NetworkType>, pub ip_discovery: Option<IpDiscovery>, pub transit_encryption_mode: Option<TransitEncryptionMode>, pub cluster_mode: Option<ClusterMode>,
}
Expand description

Contains all of the attributes of a specific Redis replication group.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§replication_group_id: Option<String>

The identifier for the replication group.

§description: Option<String>

The user supplied description of the replication group.

§global_replication_group_info: Option<GlobalReplicationGroupInfo>

The name of the Global datastore and role of this replication group in the Global datastore.

§status: Option<String>

The current state of this replication group - creating, available, modifying, deleting, create-failed, snapshotting.

§pending_modified_values: Option<ReplicationGroupPendingModifiedValues>

A group of settings to be applied to the replication group, either immediately or during the next maintenance window.

§member_clusters: Option<Vec<String>>

The names of all the cache clusters that are part of this replication group.

§node_groups: Option<Vec<NodeGroup>>

A list of node groups in this replication group. For Redis (cluster mode disabled) replication groups, this is a single-element list. For Redis (cluster mode enabled) replication groups, the list contains an entry for each node group (shard).

§snapshotting_cluster_id: Option<String>

The cluster ID that is used as the daily snapshot source for the replication group.

§automatic_failover: Option<AutomaticFailoverStatus>

Indicates the status of automatic failover for this Redis replication group.

§multi_az: Option<MultiAzStatus>

A flag indicating if you have Multi-AZ enabled to enhance fault tolerance. For more information, see Minimizing Downtime: Multi-AZ

§configuration_endpoint: Option<Endpoint>

The configuration endpoint for this replication group. Use the configuration endpoint to connect to this replication group.

§snapshot_retention_limit: Option<i32>

The number of days for which ElastiCache 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.

If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

§snapshot_window: Option<String>

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.

§cluster_enabled: Option<bool>

A flag indicating whether or not this replication group is cluster enabled; i.e., whether its data can be partitioned across multiple shards (API/CLI: node groups).

Valid values: true | false

§cache_node_type: Option<String>

The name of the compute and memory capacity node type for each node in the replication group.

§auth_token_enabled: Option<bool>

A flag that enables using an AuthToken (password) when issuing Redis commands.

Default: false

§auth_token_last_modified_date: Option<DateTime>

The date the auth token was last modified

§transit_encryption_enabled: Option<bool>

A flag that enables in-transit encryption when set to true.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

§at_rest_encryption_enabled: Option<bool>

A flag that enables encryption at-rest when set to true.

You cannot modify the value of AtRestEncryptionEnabled after the cluster is created. To enable encryption at-rest on a cluster you must set AtRestEncryptionEnabled to true when you create a cluster.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

§member_clusters_outpost_arns: Option<Vec<String>>

The outpost ARNs of the replication group's member clusters.

§kms_key_id: Option<String>

The ID of the KMS key used to encrypt the disk in the cluster.

§arn: Option<String>

The ARN (Amazon Resource Name) of the replication group.

§user_group_ids: Option<Vec<String>>

The ID of the user group associated to the replication group.

§log_delivery_configurations: Option<Vec<LogDeliveryConfiguration>>

Returns the destination, format and type of the logs.

§replication_group_create_time: Option<DateTime>

The date and time when the cluster was created.

§data_tiering: Option<DataTieringStatus>

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when using r6gd nodes. For more information, see Data tiering.

§auto_minor_version_upgrade: Option<bool>

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.

§network_type: Option<NetworkType>

Must be either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system.

§ip_discovery: Option<IpDiscovery>

The network type you choose when modifying a cluster, either ipv4 | ipv6. IPv6 is supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system.

§transit_encryption_mode: Option<TransitEncryptionMode>

A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.

§cluster_mode: Option<ClusterMode>

Enabled or Disabled. To modify cluster mode from Disabled to Enabled, you must first set the cluster mode to Compatible. Compatible mode allows your Redis clients to connect using both cluster mode enabled and cluster mode disabled. After you migrate all Redis clients to use cluster mode enabled, you can then complete cluster mode configuration and set the cluster mode to Enabled.

Implementations§

source§

impl ReplicationGroup

source

pub fn replication_group_id(&self) -> Option<&str>

The identifier for the replication group.

source

pub fn description(&self) -> Option<&str>

The user supplied description of the replication group.

source

pub fn global_replication_group_info( &self ) -> Option<&GlobalReplicationGroupInfo>

The name of the Global datastore and role of this replication group in the Global datastore.

source

pub fn status(&self) -> Option<&str>

The current state of this replication group - creating, available, modifying, deleting, create-failed, snapshotting.

source

pub fn pending_modified_values( &self ) -> Option<&ReplicationGroupPendingModifiedValues>

A group of settings to be applied to the replication group, either immediately or during the next maintenance window.

source

pub fn member_clusters(&self) -> &[String]

The names of all the cache clusters that are part of this replication group.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .member_clusters.is_none().

source

pub fn node_groups(&self) -> &[NodeGroup]

A list of node groups in this replication group. For Redis (cluster mode disabled) replication groups, this is a single-element list. For Redis (cluster mode enabled) replication groups, the list contains an entry for each node group (shard).

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .node_groups.is_none().

source

pub fn snapshotting_cluster_id(&self) -> Option<&str>

The cluster ID that is used as the daily snapshot source for the replication group.

source

pub fn automatic_failover(&self) -> Option<&AutomaticFailoverStatus>

Indicates the status of automatic failover for this Redis replication group.

source

pub fn multi_az(&self) -> Option<&MultiAzStatus>

A flag indicating if you have Multi-AZ enabled to enhance fault tolerance. For more information, see Minimizing Downtime: Multi-AZ

source

pub fn configuration_endpoint(&self) -> Option<&Endpoint>

The configuration endpoint for this replication group. Use the configuration endpoint to connect to this replication group.

source

pub fn snapshot_retention_limit(&self) -> Option<i32>

The number of days for which ElastiCache 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.

If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.

source

pub fn snapshot_window(&self) -> Option<&str>

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.

source

pub fn cluster_enabled(&self) -> Option<bool>

A flag indicating whether or not this replication group is cluster enabled; i.e., whether its data can be partitioned across multiple shards (API/CLI: node groups).

Valid values: true | false

source

pub fn cache_node_type(&self) -> Option<&str>

The name of the compute and memory capacity node type for each node in the replication group.

source

pub fn auth_token_enabled(&self) -> Option<bool>

A flag that enables using an AuthToken (password) when issuing Redis commands.

Default: false

source

pub fn auth_token_last_modified_date(&self) -> Option<&DateTime>

The date the auth token was last modified

source

pub fn transit_encryption_enabled(&self) -> Option<bool>

A flag that enables in-transit encryption when set to true.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

source

pub fn at_rest_encryption_enabled(&self) -> Option<bool>

A flag that enables encryption at-rest when set to true.

You cannot modify the value of AtRestEncryptionEnabled after the cluster is created. To enable encryption at-rest on a cluster you must set AtRestEncryptionEnabled to true when you create a cluster.

Required: Only available when creating a replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

source

pub fn member_clusters_outpost_arns(&self) -> &[String]

The outpost ARNs of the replication group's member clusters.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .member_clusters_outpost_arns.is_none().

source

pub fn kms_key_id(&self) -> Option<&str>

The ID of the KMS key used to encrypt the disk in the cluster.

source

pub fn arn(&self) -> Option<&str>

The ARN (Amazon Resource Name) of the replication group.

source

pub fn user_group_ids(&self) -> &[String]

The ID of the user group associated to the replication group.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .user_group_ids.is_none().

source

pub fn log_delivery_configurations(&self) -> &[LogDeliveryConfiguration]

Returns the destination, format and type of the logs.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .log_delivery_configurations.is_none().

source

pub fn replication_group_create_time(&self) -> Option<&DateTime>

The date and time when the cluster was created.

source

pub fn data_tiering(&self) -> Option<&DataTieringStatus>

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when using r6gd nodes. For more information, see Data tiering.

source

pub fn auto_minor_version_upgrade(&self) -> Option<bool>

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.

source

pub fn network_type(&self) -> Option<&NetworkType>

Must be either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system.

source

pub fn ip_discovery(&self) -> Option<&IpDiscovery>

The network type you choose when modifying a cluster, either ipv4 | ipv6. IPv6 is supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system.

source

pub fn transit_encryption_mode(&self) -> Option<&TransitEncryptionMode>

A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.

source

pub fn cluster_mode(&self) -> Option<&ClusterMode>

Enabled or Disabled. To modify cluster mode from Disabled to Enabled, you must first set the cluster mode to Compatible. Compatible mode allows your Redis clients to connect using both cluster mode enabled and cluster mode disabled. After you migrate all Redis clients to use cluster mode enabled, you can then complete cluster mode configuration and set the cluster mode to Enabled.

source§

impl ReplicationGroup

source

pub fn builder() -> ReplicationGroupBuilder

Creates a new builder-style object to manufacture ReplicationGroup.

Trait Implementations§

source§

impl Clone for ReplicationGroup

source§

fn clone(&self) -> ReplicationGroup

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ReplicationGroup

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for ReplicationGroup

source§

fn eq(&self, other: &ReplicationGroup) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for ReplicationGroup

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more