#[non_exhaustive]
pub struct CacheCluster {
Show 30 fields pub cache_cluster_id: Option<String>, pub configuration_endpoint: Option<Endpoint>, pub client_download_landing_page: Option<String>, pub cache_node_type: Option<String>, pub engine: Option<String>, pub engine_version: Option<String>, pub cache_cluster_status: Option<String>, pub num_cache_nodes: Option<i32>, pub preferred_availability_zone: Option<String>, pub preferred_outpost_arn: Option<String>, pub cache_cluster_create_time: Option<DateTime>, pub preferred_maintenance_window: Option<String>, pub pending_modified_values: Option<PendingModifiedValues>, pub notification_configuration: Option<NotificationConfiguration>, pub cache_security_groups: Option<Vec<CacheSecurityGroupMembership>>, pub cache_parameter_group: Option<CacheParameterGroupStatus>, pub cache_subnet_group_name: Option<String>, pub cache_nodes: Option<Vec<CacheNode>>, pub auto_minor_version_upgrade: bool, pub security_groups: Option<Vec<SecurityGroupMembership>>, pub replication_group_id: Option<String>, pub snapshot_retention_limit: Option<i32>, pub snapshot_window: 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 arn: Option<String>, pub replication_group_log_delivery_enabled: bool, pub log_delivery_configurations: Option<Vec<LogDeliveryConfiguration>>,
}
Expand description

Contains all of the attributes of a specific cluster.

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.
cache_cluster_id: Option<String>

The user-supplied identifier of the cluster. This identifier is a unique key that identifies a cluster.

configuration_endpoint: Option<Endpoint>

Represents a Memcached cluster endpoint which can be used by an application to connect to any node in the cluster. The configuration endpoint will always have .cfg in it.

Example: mem-3.9dvc4r.cfg.usw2.cache.amazonaws.com:11211

client_download_landing_page: Option<String>

The URL of the web page where you can download the latest ElastiCache client library.

cache_node_type: Option<String>

The name of the compute and memory capacity node type for the cluster.

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 for 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)

      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)

      C1 node types: cache.c1.xlarge

  • Memory optimized with data tiering:

    • Current generation:

      R6gd node types (available only for Redis engine version 6.2 onward).

      cache.r6gd.xlarge, cache.r6gd.2xlarge, cache.r6gd.4xlarge, cache.r6gd.8xlarge, cache.r6gd.12xlarge, cache.r6gd.16xlarge

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

      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.

engine: Option<String>

The name of the cache engine (memcached or redis) to be used for this cluster.

engine_version: Option<String>

The version of the cache engine that is used in this cluster.

cache_cluster_status: Option<String>

The current state of this cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cluster nodes, restore-failed, or snapshotting.

num_cache_nodes: Option<i32>

The number of cache nodes in the cluster.

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

preferred_availability_zone: Option<String>

The name of the Availability Zone in which the cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.

preferred_outpost_arn: Option<String>

The outpost ARN in which the cache cluster is created.

cache_cluster_create_time: Option<DateTime>

The date and time when the cluster was created.

preferred_maintenance_window: Option<String>

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.

Valid values for ddd are:

  • sun

  • mon

  • tue

  • wed

  • thu

  • fri

  • sat

Example: sun:23:00-mon:01:30

pending_modified_values: Option<PendingModifiedValues>

A group of settings that are applied to the cluster in the future, or that are currently being applied.

notification_configuration: Option<NotificationConfiguration>

Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

cache_security_groups: Option<Vec<CacheSecurityGroupMembership>>

A list of cache security group elements, composed of name and status sub-elements.

cache_parameter_group: Option<CacheParameterGroupStatus>

Status of the cache parameter group.

cache_subnet_group_name: Option<String>

The name of the cache subnet group associated with the cluster.

cache_nodes: Option<Vec<CacheNode>>

A list of cache nodes that are members of the cluster.

auto_minor_version_upgrade: 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. 

security_groups: Option<Vec<SecurityGroupMembership>>

A list of VPC Security Groups associated with the cluster.

replication_group_id: Option<String>

The replication group to which this cluster belongs. If this field is empty, the cluster is not associated with any 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 cluster.

Example: 05:00-09:00

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.

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 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 at-rest encryption 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

arn: Option<String>

The ARN (Amazon Resource Name) of the cache cluster.

replication_group_log_delivery_enabled: bool

A boolean value indicating whether log delivery is enabled for the replication group.

log_delivery_configurations: Option<Vec<LogDeliveryConfiguration>>

Returns the destination, format and type of the logs.

Implementations

The user-supplied identifier of the cluster. This identifier is a unique key that identifies a cluster.

Represents a Memcached cluster endpoint which can be used by an application to connect to any node in the cluster. The configuration endpoint will always have .cfg in it.

Example: mem-3.9dvc4r.cfg.usw2.cache.amazonaws.com:11211

The URL of the web page where you can download the latest ElastiCache client library.

The name of the compute and memory capacity node type for the cluster.

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 for 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)

      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)

      C1 node types: cache.c1.xlarge

  • Memory optimized with data tiering:

    • Current generation:

      R6gd node types (available only for Redis engine version 6.2 onward).

      cache.r6gd.xlarge, cache.r6gd.2xlarge, cache.r6gd.4xlarge, cache.r6gd.8xlarge, cache.r6gd.12xlarge, cache.r6gd.16xlarge

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

      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.

The name of the cache engine (memcached or redis) to be used for this cluster.

The version of the cache engine that is used in this cluster.

The current state of this cluster, one of the following values: available, creating, deleted, deleting, incompatible-network, modifying, rebooting cluster nodes, restore-failed, or snapshotting.

The number of cache nodes in the cluster.

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

The name of the Availability Zone in which the cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.

The outpost ARN in which the cache cluster is created.

The date and time when the cluster was created.

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.

Valid values for ddd are:

  • sun

  • mon

  • tue

  • wed

  • thu

  • fri

  • sat

Example: sun:23:00-mon:01:30

A group of settings that are applied to the cluster in the future, or that are currently being applied.

Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

A list of cache security group elements, composed of name and status sub-elements.

Status of the cache parameter group.

The name of the cache subnet group associated with the cluster.

A list of cache nodes that are members of the cluster.

 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. 

A list of VPC Security Groups associated with the cluster.

The replication group to which this cluster belongs. If this field is empty, the cluster is not associated with any replication group.

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.

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

Example: 05:00-09:00

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

Default: false

The date the auth token was last modified

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 replication group in an Amazon VPC using redis version 3.2.6, 4.x or later.

Default: false

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 at-rest encryption 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

The ARN (Amazon Resource Name) of the cache cluster.

A boolean value indicating whether log delivery is enabled for the replication group.

Returns the destination, format and type of the logs.

Creates a new builder-style object to manufacture CacheCluster

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

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

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

Performs the conversion.

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

Performs the conversion.

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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