class Aws::ElastiCache::Types::ModifyReplicationGroupShardConfigurationMessage

Represents the input for a `ModifyReplicationGroupShardConfiguration` operation.

@note When making an API call, you may pass ModifyReplicationGroupShardConfigurationMessage

data as a hash:

    {
      replication_group_id: "String", # required
      node_group_count: 1, # required
      apply_immediately: false, # required
      resharding_configuration: [
        {
          node_group_id: "AllowedNodeGroupId",
          preferred_availability_zones: ["String"],
        },
      ],
      node_groups_to_remove: ["AllowedNodeGroupId"],
      node_groups_to_retain: ["AllowedNodeGroupId"],
    }

@!attribute [rw] replication_group_id

The name of the Redis (cluster mode enabled) cluster (replication
group) on which the shards are to be configured.
@return [String]

@!attribute [rw] node_group_count

The number of node groups (shards) that results from the
modification of the shard configuration.
@return [Integer]

@!attribute [rw] apply_immediately

Indicates that the shard reconfiguration process begins immediately.
At present, the only permitted value for this parameter is `true`.

Value: true
@return [Boolean]

@!attribute [rw] resharding_configuration

Specifies the preferred availability zones for each node group in
the cluster. If the value of `NodeGroupCount` is greater than the
current number of node groups (shards), you can use this parameter
to specify the preferred availability zones of the cluster's
shards. If you omit this parameter ElastiCache selects availability
zones for you.

You can specify this parameter only if the value of `NodeGroupCount`
is greater than the current number of node groups (shards).
@return [Array<Types::ReshardingConfiguration>]

@!attribute [rw] node_groups_to_remove

If the value of `NodeGroupCount` is less than the current number of
node groups (shards), then either `NodeGroupsToRemove` or
`NodeGroupsToRetain` is required. `NodeGroupsToRemove` is a list of
`NodeGroupId`s to remove from the cluster.

ElastiCache for Redis will attempt to remove all node groups listed
by `NodeGroupsToRemove` from the cluster.
@return [Array<String>]

@!attribute [rw] node_groups_to_retain

If the value of `NodeGroupCount` is less than the current number of
node groups (shards), then either `NodeGroupsToRemove` or
`NodeGroupsToRetain` is required. `NodeGroupsToRetain` is a list of
`NodeGroupId`s to retain in the cluster.

ElastiCache for Redis will attempt to remove all node groups except
those listed by `NodeGroupsToRetain` from the cluster.
@return [Array<String>]

@see docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroupShardConfigurationMessage AWS API Documentation

Constants

SENSITIVE