aws-sdk-elasticache 1.40.0 → 1.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 490d271b0577d8dd860441e86e67d6b5807ee632ddb5d1f62f8a65a567d5b2fb
4
- data.tar.gz: 98d55a2e9bfcb86418145c9c54ed54d9dd5a56a8f862881683767388b40176ff
3
+ metadata.gz: 7a4aaeb90ecb9e6a532417fe2f58db4f9762871f085546a6ca51cfd4269e3831
4
+ data.tar.gz: 85c2fef15d90bee4e1e9a3d3815b70d59e8fdf2628a9edcca9a1ab073e0a1940
5
5
  SHA512:
6
- metadata.gz: 1584689ba0e4ae631bb84b43dafcd23bf82f4f0cdd40154d8ebe7a8aaae9ef6b5d5078581a8caa53b9e7e82390bda2be939cf66742c29179ad901df6fb784827
7
- data.tar.gz: 3ef3abe309ef219eff46b20483a382bab881346e7be1809eadf8f8262f6af96a9d4a64adf0b6e198e6938885f45ae51eef18190604bf3b21c204ce3c25a3218a
6
+ metadata.gz: 28f443def041c8994aa81833fa4e118b00cba399ba05cbd3ff0ee1ca12dc6ee51b19a3fbd41dcdcdc07f05b9b04e9ccb8e41ecc28622c1a445cb9bcf7d144d3a
7
+ data.tar.gz: 64a2733aae62ac74919792f916dcf956f4b3d8c688ea526773674602fe2fdf8a44c6f7e2f379065a378d0c6a7e599205bf1950d1f1032ee0ec7cf6a7f0b2a6fd
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -45,9 +46,9 @@ require_relative 'aws-sdk-elasticache/customizations'
45
46
  #
46
47
  # See {Errors} for more information.
47
48
  #
48
- # @service
49
+ # @!group service
49
50
  module Aws::ElastiCache
50
51
 
51
- GEM_VERSION = '1.40.0'
52
+ GEM_VERSION = '1.45.0'
52
53
 
53
54
  end
@@ -85,13 +85,28 @@ module Aws::ElastiCache
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::ElastiCache
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -613,6 +628,10 @@ module Aws::ElastiCache
613
628
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
614
629
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
615
630
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
631
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
632
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
633
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
634
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
616
635
  # resp.replication_group.member_clusters #=> Array
617
636
  # resp.replication_group.member_clusters[0] #=> String
618
637
  # resp.replication_group.node_groups #=> Array
@@ -629,6 +648,7 @@ module Aws::ElastiCache
629
648
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
630
649
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
631
650
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
651
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
632
652
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
633
653
  # resp.replication_group.snapshotting_cluster_id #=> String
634
654
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -643,8 +663,12 @@ module Aws::ElastiCache
643
663
  # resp.replication_group.auth_token_last_modified_date #=> Time
644
664
  # resp.replication_group.transit_encryption_enabled #=> Boolean
645
665
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
666
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
667
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
646
668
  # resp.replication_group.kms_key_id #=> String
647
669
  # resp.replication_group.arn #=> String
670
+ # resp.replication_group.user_group_ids #=> Array
671
+ # resp.replication_group.user_group_ids[0] #=> String
648
672
  #
649
673
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CompleteMigration AWS API Documentation
650
674
  #
@@ -755,7 +779,7 @@ module Aws::ElastiCache
755
779
  #
756
780
  #
757
781
  #
758
- # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups-exporting.html#backups-exporting-grant-access
782
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups-exporting.html#backups-exporting-grant-access
759
783
  # [2]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Snapshots.Exporting.html
760
784
  #
761
785
  # @option params [String] :kms_key_id
@@ -830,6 +854,7 @@ module Aws::ElastiCache
830
854
  # resp.snapshot.engine_version #=> String
831
855
  # resp.snapshot.num_cache_nodes #=> Integer
832
856
  # resp.snapshot.preferred_availability_zone #=> String
857
+ # resp.snapshot.preferred_outpost_arn #=> String
833
858
  # resp.snapshot.cache_cluster_create_time #=> Time
834
859
  # resp.snapshot.preferred_maintenance_window #=> String
835
860
  # resp.snapshot.topic_arn #=> String
@@ -852,6 +877,9 @@ module Aws::ElastiCache
852
877
  # resp.snapshot.node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
853
878
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
854
879
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
880
+ # resp.snapshot.node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
881
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
882
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
855
883
  # resp.snapshot.node_snapshots[0].cache_size #=> String
856
884
  # resp.snapshot.node_snapshots[0].cache_node_create_time #=> Time
857
885
  # resp.snapshot.node_snapshots[0].snapshot_create_time #=> Time
@@ -967,6 +995,19 @@ module Aws::ElastiCache
967
995
  #
968
996
  # * Current generation:
969
997
  #
998
+ # **M6g node types** (available only for Redis engine version 5.0.6
999
+ # onward and for Memcached engine version 1.5.16 onward).
1000
+ #
1001
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
1002
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
1003
+ # `cache.m6g.16xlarge`
1004
+ #
1005
+ # <note markdown="1"> At this time, M6g node types are available in the following
1006
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
1007
+ # and ap-northeast-1.
1008
+ #
1009
+ # </note>
1010
+ #
970
1011
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
971
1012
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
972
1013
  # `cache.m5.24xlarge`
@@ -1000,6 +1041,19 @@ module Aws::ElastiCache
1000
1041
  #
1001
1042
  # * Current generation:
1002
1043
  #
1044
+ # **R6g node types** (available only for Redis engine version 5.0.6
1045
+ # onward and for Memcached engine version 1.5.16 onward).
1046
+ #
1047
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
1048
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
1049
+ # `cache.r6g.16xlarge`
1050
+ #
1051
+ # <note markdown="1"> At this time, R6g node types are available in the following
1052
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
1053
+ # and ap-northeast-1.
1054
+ #
1055
+ # </note>
1056
+ #
1003
1057
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
1004
1058
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
1005
1059
  # `cache.r5.24xlarge`
@@ -1197,6 +1251,16 @@ module Aws::ElastiCache
1197
1251
  #
1198
1252
  # [1]: http://redis.io/commands/AUTH
1199
1253
  #
1254
+ # @option params [String] :outpost_mode
1255
+ # Specifies whether the nodes in the cluster are created in a single
1256
+ # outpost or across multiple outposts.
1257
+ #
1258
+ # @option params [String] :preferred_outpost_arn
1259
+ # The outpost ARN in which the cache cluster is created.
1260
+ #
1261
+ # @option params [Array<String>] :preferred_outpost_arns
1262
+ # The outpost ARNs in which the cache cluster is created.
1263
+ #
1200
1264
  # @return [Types::CreateCacheClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1201
1265
  #
1202
1266
  # * {Types::CreateCacheClusterResult#cache_cluster #cache_cluster} => Types::CacheCluster
@@ -1321,6 +1385,9 @@ module Aws::ElastiCache
1321
1385
  # snapshot_retention_limit: 1,
1322
1386
  # snapshot_window: "String",
1323
1387
  # auth_token: "String",
1388
+ # outpost_mode: "single-outpost", # accepts single-outpost, cross-outpost
1389
+ # preferred_outpost_arn: "String",
1390
+ # preferred_outpost_arns: ["String"],
1324
1391
  # })
1325
1392
  #
1326
1393
  # @example Response structure
@@ -1335,6 +1402,7 @@ module Aws::ElastiCache
1335
1402
  # resp.cache_cluster.cache_cluster_status #=> String
1336
1403
  # resp.cache_cluster.num_cache_nodes #=> Integer
1337
1404
  # resp.cache_cluster.preferred_availability_zone #=> String
1405
+ # resp.cache_cluster.preferred_outpost_arn #=> String
1338
1406
  # resp.cache_cluster.cache_cluster_create_time #=> Time
1339
1407
  # resp.cache_cluster.preferred_maintenance_window #=> String
1340
1408
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -1362,6 +1430,7 @@ module Aws::ElastiCache
1362
1430
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
1363
1431
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
1364
1432
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
1433
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
1365
1434
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
1366
1435
  # resp.cache_cluster.security_groups #=> Array
1367
1436
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -1411,7 +1480,7 @@ module Aws::ElastiCache
1411
1480
  # group can be used with.
1412
1481
  #
1413
1482
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
1414
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
1483
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0` \|
1415
1484
  #
1416
1485
  # @option params [required, String] :description
1417
1486
  # A user-specified description for the cache parameter group.
@@ -1614,6 +1683,7 @@ module Aws::ElastiCache
1614
1683
  # resp.cache_subnet_group.subnets #=> Array
1615
1684
  # resp.cache_subnet_group.subnets[0].subnet_identifier #=> String
1616
1685
  # resp.cache_subnet_group.subnets[0].subnet_availability_zone.name #=> String
1686
+ # resp.cache_subnet_group.subnets[0].subnet_outpost.subnet_outpost_arn #=> String
1617
1687
  # resp.cache_subnet_group.arn #=> String
1618
1688
  #
1619
1689
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateCacheSubnetGroup AWS API Documentation
@@ -1641,8 +1711,20 @@ module Aws::ElastiCache
1641
1711
  # secondary cluster.
1642
1712
  #
1643
1713
  # @option params [required, String] :global_replication_group_id_suffix
1644
- # The suffix name of a Global Datastore. The suffix guarantees
1645
- # uniqueness of the Global Datastore name across multiple regions.
1714
+ # The suffix name of a Global Datastore. Amazon ElastiCache
1715
+ # automatically applies a prefix to the Global Datastore ID when it is
1716
+ # created. Each AWS Region has its own prefix. For instance, a Global
1717
+ # Datastore ID created in the US-West-1 region will begin with "dsdfu"
1718
+ # along with the suffix name you provide. The suffix, combined with the
1719
+ # auto-generated prefix, guarantees uniqueness of the Global Datastore
1720
+ # name across multiple regions.
1721
+ #
1722
+ # For a full list of AWS Regions and their respective Global Datastore
1723
+ # iD prefixes, see [Using the AWS CLI with Global Datastores ][1].
1724
+ #
1725
+ #
1726
+ #
1727
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Redis-Global-Clusters-CLI.html
1646
1728
  #
1647
1729
  # @option params [String] :global_replication_group_description
1648
1730
  # Provides details of the Global Datastore
@@ -1845,6 +1927,19 @@ module Aws::ElastiCache
1845
1927
  #
1846
1928
  # * Current generation:
1847
1929
  #
1930
+ # **M6g node types** (available only for Redis engine version 5.0.6
1931
+ # onward and for Memcached engine version 1.5.16 onward).
1932
+ #
1933
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
1934
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
1935
+ # `cache.m6g.16xlarge`
1936
+ #
1937
+ # <note markdown="1"> At this time, M6g node types are available in the following
1938
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
1939
+ # and ap-northeast-1.
1940
+ #
1941
+ # </note>
1942
+ #
1848
1943
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
1849
1944
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
1850
1945
  # `cache.m5.24xlarge`
@@ -1878,6 +1973,19 @@ module Aws::ElastiCache
1878
1973
  #
1879
1974
  # * Current generation:
1880
1975
  #
1976
+ # **R6g node types** (available only for Redis engine version 5.0.6
1977
+ # onward and for Memcached engine version 1.5.16 onward).
1978
+ #
1979
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
1980
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
1981
+ # `cache.r6g.16xlarge`
1982
+ #
1983
+ # <note markdown="1"> At this time, R6g node types are available in the following
1984
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
1985
+ # and ap-northeast-1.
1986
+ #
1987
+ # </note>
1988
+ #
1881
1989
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
1882
1990
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
1883
1991
  # `cache.r5.24xlarge`
@@ -2123,6 +2231,9 @@ module Aws::ElastiCache
2123
2231
  # @option params [String] :kms_key_id
2124
2232
  # The ID of the KMS key used to encrypt the disk in the cluster.
2125
2233
  #
2234
+ # @option params [Array<String>] :user_group_ids
2235
+ # The list of user groups to associate with the replication group.
2236
+ #
2126
2237
  # @return [Types::CreateReplicationGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2127
2238
  #
2128
2239
  # * {Types::CreateReplicationGroupResult#replication_group #replication_group} => Types::ReplicationGroup
@@ -2238,6 +2349,8 @@ module Aws::ElastiCache
2238
2349
  # replica_count: 1,
2239
2350
  # primary_availability_zone: "String",
2240
2351
  # replica_availability_zones: ["String"],
2352
+ # primary_outpost_arn: "String",
2353
+ # replica_outpost_arns: ["String"],
2241
2354
  # },
2242
2355
  # ],
2243
2356
  # cache_node_type: "String",
@@ -2265,6 +2378,7 @@ module Aws::ElastiCache
2265
2378
  # transit_encryption_enabled: false,
2266
2379
  # at_rest_encryption_enabled: false,
2267
2380
  # kms_key_id: "String",
2381
+ # user_group_ids: ["UserGroupId"],
2268
2382
  # })
2269
2383
  #
2270
2384
  # @example Response structure
@@ -2278,6 +2392,10 @@ module Aws::ElastiCache
2278
2392
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
2279
2393
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
2280
2394
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
2395
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
2396
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
2397
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
2398
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
2281
2399
  # resp.replication_group.member_clusters #=> Array
2282
2400
  # resp.replication_group.member_clusters[0] #=> String
2283
2401
  # resp.replication_group.node_groups #=> Array
@@ -2294,6 +2412,7 @@ module Aws::ElastiCache
2294
2412
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
2295
2413
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
2296
2414
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
2415
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
2297
2416
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
2298
2417
  # resp.replication_group.snapshotting_cluster_id #=> String
2299
2418
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -2308,8 +2427,12 @@ module Aws::ElastiCache
2308
2427
  # resp.replication_group.auth_token_last_modified_date #=> Time
2309
2428
  # resp.replication_group.transit_encryption_enabled #=> Boolean
2310
2429
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
2430
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
2431
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
2311
2432
  # resp.replication_group.kms_key_id #=> String
2312
2433
  # resp.replication_group.arn #=> String
2434
+ # resp.replication_group.user_group_ids #=> Array
2435
+ # resp.replication_group.user_group_ids[0] #=> String
2313
2436
  #
2314
2437
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateReplicationGroup AWS API Documentation
2315
2438
  #
@@ -2492,6 +2615,7 @@ module Aws::ElastiCache
2492
2615
  # resp.snapshot.engine_version #=> String
2493
2616
  # resp.snapshot.num_cache_nodes #=> Integer
2494
2617
  # resp.snapshot.preferred_availability_zone #=> String
2618
+ # resp.snapshot.preferred_outpost_arn #=> String
2495
2619
  # resp.snapshot.cache_cluster_create_time #=> Time
2496
2620
  # resp.snapshot.preferred_maintenance_window #=> String
2497
2621
  # resp.snapshot.topic_arn #=> String
@@ -2514,6 +2638,9 @@ module Aws::ElastiCache
2514
2638
  # resp.snapshot.node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
2515
2639
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
2516
2640
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
2641
+ # resp.snapshot.node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
2642
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
2643
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
2517
2644
  # resp.snapshot.node_snapshots[0].cache_size #=> String
2518
2645
  # resp.snapshot.node_snapshots[0].cache_node_create_time #=> Time
2519
2646
  # resp.snapshot.node_snapshots[0].snapshot_create_time #=> Time
@@ -2529,6 +2656,134 @@ module Aws::ElastiCache
2529
2656
  req.send_request(options)
2530
2657
  end
2531
2658
 
2659
+ # For Redis engine version 6.x onwards: Creates a Redis user. For more
2660
+ # information, see [Using Role Based Access Control (RBAC)][1].
2661
+ #
2662
+ #
2663
+ #
2664
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
2665
+ #
2666
+ # @option params [required, String] :user_id
2667
+ # The ID of the user.
2668
+ #
2669
+ # @option params [required, String] :user_name
2670
+ # The username of the user.
2671
+ #
2672
+ # @option params [required, String] :engine
2673
+ # Must be Redis.
2674
+ #
2675
+ # @option params [Array<String>] :passwords
2676
+ # Passwords used for this user account. You can create up to two
2677
+ # passwords for each user.
2678
+ #
2679
+ # @option params [required, String] :access_string
2680
+ # Access permissions string used for this user account.
2681
+ #
2682
+ # @option params [Boolean] :no_password_required
2683
+ # Indicates a password is not required for this user account.
2684
+ #
2685
+ # @return [Types::User] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2686
+ #
2687
+ # * {Types::User#user_id #user_id} => String
2688
+ # * {Types::User#user_name #user_name} => String
2689
+ # * {Types::User#status #status} => String
2690
+ # * {Types::User#engine #engine} => String
2691
+ # * {Types::User#access_string #access_string} => String
2692
+ # * {Types::User#user_group_ids #user_group_ids} => Array&lt;String&gt;
2693
+ # * {Types::User#authentication #authentication} => Types::Authentication
2694
+ # * {Types::User#arn #arn} => String
2695
+ #
2696
+ # @example Request syntax with placeholder values
2697
+ #
2698
+ # resp = client.create_user({
2699
+ # user_id: "UserId", # required
2700
+ # user_name: "UserName", # required
2701
+ # engine: "EngineType", # required
2702
+ # passwords: ["String"],
2703
+ # access_string: "AccessString", # required
2704
+ # no_password_required: false,
2705
+ # })
2706
+ #
2707
+ # @example Response structure
2708
+ #
2709
+ # resp.user_id #=> String
2710
+ # resp.user_name #=> String
2711
+ # resp.status #=> String
2712
+ # resp.engine #=> String
2713
+ # resp.access_string #=> String
2714
+ # resp.user_group_ids #=> Array
2715
+ # resp.user_group_ids[0] #=> String
2716
+ # resp.authentication.type #=> String, one of "password", "no-password"
2717
+ # resp.authentication.password_count #=> Integer
2718
+ # resp.arn #=> String
2719
+ #
2720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUser AWS API Documentation
2721
+ #
2722
+ # @overload create_user(params = {})
2723
+ # @param [Hash] params ({})
2724
+ def create_user(params = {}, options = {})
2725
+ req = build_request(:create_user, params)
2726
+ req.send_request(options)
2727
+ end
2728
+
2729
+ # For Redis engine version 6.x onwards: Creates a Redis user group. For
2730
+ # more information, see [Using Role Based Access Control (RBAC)][1]
2731
+ #
2732
+ #
2733
+ #
2734
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
2735
+ #
2736
+ # @option params [required, String] :user_group_id
2737
+ # The ID of the user group.
2738
+ #
2739
+ # @option params [required, String] :engine
2740
+ # Must be Redis.
2741
+ #
2742
+ # @option params [Array<String>] :user_ids
2743
+ # The list of user IDs that belong to the user group.
2744
+ #
2745
+ # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2746
+ #
2747
+ # * {Types::UserGroup#user_group_id #user_group_id} => String
2748
+ # * {Types::UserGroup#status #status} => String
2749
+ # * {Types::UserGroup#engine #engine} => String
2750
+ # * {Types::UserGroup#user_ids #user_ids} => Array&lt;String&gt;
2751
+ # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
2752
+ # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
2753
+ # * {Types::UserGroup#arn #arn} => String
2754
+ #
2755
+ # @example Request syntax with placeholder values
2756
+ #
2757
+ # resp = client.create_user_group({
2758
+ # user_group_id: "String", # required
2759
+ # engine: "EngineType", # required
2760
+ # user_ids: ["UserId"],
2761
+ # })
2762
+ #
2763
+ # @example Response structure
2764
+ #
2765
+ # resp.user_group_id #=> String
2766
+ # resp.status #=> String
2767
+ # resp.engine #=> String
2768
+ # resp.user_ids #=> Array
2769
+ # resp.user_ids[0] #=> String
2770
+ # resp.pending_changes.user_ids_to_remove #=> Array
2771
+ # resp.pending_changes.user_ids_to_remove[0] #=> String
2772
+ # resp.pending_changes.user_ids_to_add #=> Array
2773
+ # resp.pending_changes.user_ids_to_add[0] #=> String
2774
+ # resp.replication_groups #=> Array
2775
+ # resp.replication_groups[0] #=> String
2776
+ # resp.arn #=> String
2777
+ #
2778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/CreateUserGroup AWS API Documentation
2779
+ #
2780
+ # @overload create_user_group(params = {})
2781
+ # @param [Hash] params ({})
2782
+ def create_user_group(params = {}, options = {})
2783
+ req = build_request(:create_user_group, params)
2784
+ req.send_request(options)
2785
+ end
2786
+
2532
2787
  # Decreases the number of node groups in a Global Datastore
2533
2788
  #
2534
2789
  # @option params [required, String] :global_replication_group_id
@@ -2658,6 +2913,7 @@ module Aws::ElastiCache
2658
2913
  # node_group_id: "AllowedNodeGroupId", # required
2659
2914
  # new_replica_count: 1, # required
2660
2915
  # preferred_availability_zones: ["String"],
2916
+ # preferred_outpost_arns: ["String"],
2661
2917
  # },
2662
2918
  # ],
2663
2919
  # replicas_to_remove: ["String"],
@@ -2675,6 +2931,10 @@ module Aws::ElastiCache
2675
2931
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
2676
2932
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
2677
2933
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
2934
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
2935
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
2936
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
2937
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
2678
2938
  # resp.replication_group.member_clusters #=> Array
2679
2939
  # resp.replication_group.member_clusters[0] #=> String
2680
2940
  # resp.replication_group.node_groups #=> Array
@@ -2691,6 +2951,7 @@ module Aws::ElastiCache
2691
2951
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
2692
2952
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
2693
2953
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
2954
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
2694
2955
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
2695
2956
  # resp.replication_group.snapshotting_cluster_id #=> String
2696
2957
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -2705,8 +2966,12 @@ module Aws::ElastiCache
2705
2966
  # resp.replication_group.auth_token_last_modified_date #=> Time
2706
2967
  # resp.replication_group.transit_encryption_enabled #=> Boolean
2707
2968
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
2969
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
2970
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
2708
2971
  # resp.replication_group.kms_key_id #=> String
2709
2972
  # resp.replication_group.arn #=> String
2973
+ # resp.replication_group.user_group_ids #=> Array
2974
+ # resp.replication_group.user_group_ids[0] #=> String
2710
2975
  #
2711
2976
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DecreaseReplicaCount AWS API Documentation
2712
2977
  #
@@ -2808,6 +3073,7 @@ module Aws::ElastiCache
2808
3073
  # resp.cache_cluster.cache_cluster_status #=> String
2809
3074
  # resp.cache_cluster.num_cache_nodes #=> Integer
2810
3075
  # resp.cache_cluster.preferred_availability_zone #=> String
3076
+ # resp.cache_cluster.preferred_outpost_arn #=> String
2811
3077
  # resp.cache_cluster.cache_cluster_create_time #=> Time
2812
3078
  # resp.cache_cluster.preferred_maintenance_window #=> String
2813
3079
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -2835,6 +3101,7 @@ module Aws::ElastiCache
2835
3101
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
2836
3102
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
2837
3103
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
3104
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
2838
3105
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
2839
3106
  # resp.cache_cluster.security_groups #=> Array
2840
3107
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -3114,6 +3381,10 @@ module Aws::ElastiCache
3114
3381
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
3115
3382
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
3116
3383
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
3384
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
3385
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
3386
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
3387
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
3117
3388
  # resp.replication_group.member_clusters #=> Array
3118
3389
  # resp.replication_group.member_clusters[0] #=> String
3119
3390
  # resp.replication_group.node_groups #=> Array
@@ -3130,6 +3401,7 @@ module Aws::ElastiCache
3130
3401
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
3131
3402
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
3132
3403
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
3404
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
3133
3405
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
3134
3406
  # resp.replication_group.snapshotting_cluster_id #=> String
3135
3407
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -3144,8 +3416,12 @@ module Aws::ElastiCache
3144
3416
  # resp.replication_group.auth_token_last_modified_date #=> Time
3145
3417
  # resp.replication_group.transit_encryption_enabled #=> Boolean
3146
3418
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
3419
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
3420
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
3147
3421
  # resp.replication_group.kms_key_id #=> String
3148
3422
  # resp.replication_group.arn #=> String
3423
+ # resp.replication_group.user_group_ids #=> Array
3424
+ # resp.replication_group.user_group_ids[0] #=> String
3149
3425
  #
3150
3426
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteReplicationGroup AWS API Documentation
3151
3427
  #
@@ -3231,6 +3507,7 @@ module Aws::ElastiCache
3231
3507
  # resp.snapshot.engine_version #=> String
3232
3508
  # resp.snapshot.num_cache_nodes #=> Integer
3233
3509
  # resp.snapshot.preferred_availability_zone #=> String
3510
+ # resp.snapshot.preferred_outpost_arn #=> String
3234
3511
  # resp.snapshot.cache_cluster_create_time #=> Time
3235
3512
  # resp.snapshot.preferred_maintenance_window #=> String
3236
3513
  # resp.snapshot.topic_arn #=> String
@@ -3253,6 +3530,9 @@ module Aws::ElastiCache
3253
3530
  # resp.snapshot.node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
3254
3531
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
3255
3532
  # resp.snapshot.node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
3533
+ # resp.snapshot.node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
3534
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
3535
+ # resp.snapshot.node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
3256
3536
  # resp.snapshot.node_snapshots[0].cache_size #=> String
3257
3537
  # resp.snapshot.node_snapshots[0].cache_node_create_time #=> Time
3258
3538
  # resp.snapshot.node_snapshots[0].snapshot_create_time #=> Time
@@ -3268,6 +3548,109 @@ module Aws::ElastiCache
3268
3548
  req.send_request(options)
3269
3549
  end
3270
3550
 
3551
+ # For Redis engine version 6.04 onwards: Deletes a user. The user will
3552
+ # be removed from all user groups and in turn removed from all
3553
+ # replication groups. For more information, see [Using Role Based Access
3554
+ # Control (RBAC)][1].
3555
+ #
3556
+ #
3557
+ #
3558
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
3559
+ #
3560
+ # @option params [required, String] :user_id
3561
+ # The ID of the user.
3562
+ #
3563
+ # @return [Types::User] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3564
+ #
3565
+ # * {Types::User#user_id #user_id} => String
3566
+ # * {Types::User#user_name #user_name} => String
3567
+ # * {Types::User#status #status} => String
3568
+ # * {Types::User#engine #engine} => String
3569
+ # * {Types::User#access_string #access_string} => String
3570
+ # * {Types::User#user_group_ids #user_group_ids} => Array&lt;String&gt;
3571
+ # * {Types::User#authentication #authentication} => Types::Authentication
3572
+ # * {Types::User#arn #arn} => String
3573
+ #
3574
+ # @example Request syntax with placeholder values
3575
+ #
3576
+ # resp = client.delete_user({
3577
+ # user_id: "UserId", # required
3578
+ # })
3579
+ #
3580
+ # @example Response structure
3581
+ #
3582
+ # resp.user_id #=> String
3583
+ # resp.user_name #=> String
3584
+ # resp.status #=> String
3585
+ # resp.engine #=> String
3586
+ # resp.access_string #=> String
3587
+ # resp.user_group_ids #=> Array
3588
+ # resp.user_group_ids[0] #=> String
3589
+ # resp.authentication.type #=> String, one of "password", "no-password"
3590
+ # resp.authentication.password_count #=> Integer
3591
+ # resp.arn #=> String
3592
+ #
3593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUser AWS API Documentation
3594
+ #
3595
+ # @overload delete_user(params = {})
3596
+ # @param [Hash] params ({})
3597
+ def delete_user(params = {}, options = {})
3598
+ req = build_request(:delete_user, params)
3599
+ req.send_request(options)
3600
+ end
3601
+
3602
+ # For Redis engine version 6.04 onwards: Deletes a ser group. The user
3603
+ # group must first be disassociated from the replcation group before it
3604
+ # can be deleted. For more information, see [Using Role Based Access
3605
+ # Control (RBAC)][1].
3606
+ #
3607
+ #
3608
+ #
3609
+ # [1]: http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Clusters.RBAC.html
3610
+ #
3611
+ # @option params [required, String] :user_group_id
3612
+ # The ID of the user group.
3613
+ #
3614
+ # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3615
+ #
3616
+ # * {Types::UserGroup#user_group_id #user_group_id} => String
3617
+ # * {Types::UserGroup#status #status} => String
3618
+ # * {Types::UserGroup#engine #engine} => String
3619
+ # * {Types::UserGroup#user_ids #user_ids} => Array&lt;String&gt;
3620
+ # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
3621
+ # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
3622
+ # * {Types::UserGroup#arn #arn} => String
3623
+ #
3624
+ # @example Request syntax with placeholder values
3625
+ #
3626
+ # resp = client.delete_user_group({
3627
+ # user_group_id: "String", # required
3628
+ # })
3629
+ #
3630
+ # @example Response structure
3631
+ #
3632
+ # resp.user_group_id #=> String
3633
+ # resp.status #=> String
3634
+ # resp.engine #=> String
3635
+ # resp.user_ids #=> Array
3636
+ # resp.user_ids[0] #=> String
3637
+ # resp.pending_changes.user_ids_to_remove #=> Array
3638
+ # resp.pending_changes.user_ids_to_remove[0] #=> String
3639
+ # resp.pending_changes.user_ids_to_add #=> Array
3640
+ # resp.pending_changes.user_ids_to_add[0] #=> String
3641
+ # resp.replication_groups #=> Array
3642
+ # resp.replication_groups[0] #=> String
3643
+ # resp.arn #=> String
3644
+ #
3645
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DeleteUserGroup AWS API Documentation
3646
+ #
3647
+ # @overload delete_user_group(params = {})
3648
+ # @param [Hash] params ({})
3649
+ def delete_user_group(params = {}, options = {})
3650
+ req = build_request(:delete_user_group, params)
3651
+ req.send_request(options)
3652
+ end
3653
+
3271
3654
  # Returns information about all provisioned clusters if no cluster
3272
3655
  # identifier is specified, or about a specific cache cluster if a
3273
3656
  # cluster identifier is supplied.
@@ -3464,6 +3847,7 @@ module Aws::ElastiCache
3464
3847
  # resp.cache_clusters[0].cache_cluster_status #=> String
3465
3848
  # resp.cache_clusters[0].num_cache_nodes #=> Integer
3466
3849
  # resp.cache_clusters[0].preferred_availability_zone #=> String
3850
+ # resp.cache_clusters[0].preferred_outpost_arn #=> String
3467
3851
  # resp.cache_clusters[0].cache_cluster_create_time #=> Time
3468
3852
  # resp.cache_clusters[0].preferred_maintenance_window #=> String
3469
3853
  # resp.cache_clusters[0].pending_modified_values.num_cache_nodes #=> Integer
@@ -3491,6 +3875,7 @@ module Aws::ElastiCache
3491
3875
  # resp.cache_clusters[0].cache_nodes[0].parameter_group_status #=> String
3492
3876
  # resp.cache_clusters[0].cache_nodes[0].source_cache_node_id #=> String
3493
3877
  # resp.cache_clusters[0].cache_nodes[0].customer_availability_zone #=> String
3878
+ # resp.cache_clusters[0].cache_nodes[0].customer_outpost_arn #=> String
3494
3879
  # resp.cache_clusters[0].auto_minor_version_upgrade #=> Boolean
3495
3880
  # resp.cache_clusters[0].security_groups #=> Array
3496
3881
  # resp.cache_clusters[0].security_groups[0].security_group_id #=> String
@@ -3534,7 +3919,7 @@ module Aws::ElastiCache
3534
3919
  # for.
3535
3920
  #
3536
3921
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
3537
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
3922
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0` \|
3538
3923
  #
3539
3924
  # Constraints:
3540
3925
  #
@@ -4497,6 +4882,7 @@ module Aws::ElastiCache
4497
4882
  # resp.cache_subnet_groups[0].subnets #=> Array
4498
4883
  # resp.cache_subnet_groups[0].subnets[0].subnet_identifier #=> String
4499
4884
  # resp.cache_subnet_groups[0].subnets[0].subnet_availability_zone.name #=> String
4885
+ # resp.cache_subnet_groups[0].subnets[0].subnet_outpost.subnet_outpost_arn #=> String
4500
4886
  # resp.cache_subnet_groups[0].arn #=> String
4501
4887
  #
4502
4888
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeCacheSubnetGroups AWS API Documentation
@@ -4515,7 +4901,7 @@ module Aws::ElastiCache
4515
4901
  # The name of the cache parameter group family.
4516
4902
  #
4517
4903
  # Valid values are: `memcached1.4` \| `memcached1.5` \| `redis2.6` \|
4518
- # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \|
4904
+ # `redis2.8` \| `redis3.2` \| `redis4.0` \| `redis5.0` \| `redis6.0` \|
4519
4905
  #
4520
4906
  # @option params [Integer] :max_records
4521
4907
  # The maximum number of records to include in the response. If more
@@ -5352,7 +5738,7 @@ module Aws::ElastiCache
5352
5738
  #
5353
5739
  # resp = client.describe_events({
5354
5740
  # source_identifier: "String",
5355
- # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group
5741
+ # source_type: "cache-cluster", # accepts cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group, replication-group, user, user-group
5356
5742
  # start_time: Time.now,
5357
5743
  # end_time: Time.now,
5358
5744
  # duration: 1,
@@ -5365,7 +5751,7 @@ module Aws::ElastiCache
5365
5751
  # resp.marker #=> String
5366
5752
  # resp.events #=> Array
5367
5753
  # resp.events[0].source_identifier #=> String
5368
- # resp.events[0].source_type #=> String, one of "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group"
5754
+ # resp.events[0].source_type #=> String, one of "cache-cluster", "cache-parameter-group", "cache-security-group", "cache-subnet-group", "replication-group", "user", "user-group"
5369
5755
  # resp.events[0].message #=> String
5370
5756
  # resp.events[0].date #=> Time
5371
5757
  #
@@ -5572,6 +5958,10 @@ module Aws::ElastiCache
5572
5958
  # resp.replication_groups[0].pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
5573
5959
  # resp.replication_groups[0].pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
5574
5960
  # resp.replication_groups[0].pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
5961
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_add #=> Array
5962
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
5963
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
5964
+ # resp.replication_groups[0].pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
5575
5965
  # resp.replication_groups[0].member_clusters #=> Array
5576
5966
  # resp.replication_groups[0].member_clusters[0] #=> String
5577
5967
  # resp.replication_groups[0].node_groups #=> Array
@@ -5588,6 +5978,7 @@ module Aws::ElastiCache
5588
5978
  # resp.replication_groups[0].node_groups[0].node_group_members[0].read_endpoint.address #=> String
5589
5979
  # resp.replication_groups[0].node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
5590
5980
  # resp.replication_groups[0].node_groups[0].node_group_members[0].preferred_availability_zone #=> String
5981
+ # resp.replication_groups[0].node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
5591
5982
  # resp.replication_groups[0].node_groups[0].node_group_members[0].current_role #=> String
5592
5983
  # resp.replication_groups[0].snapshotting_cluster_id #=> String
5593
5984
  # resp.replication_groups[0].automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -5602,8 +5993,12 @@ module Aws::ElastiCache
5602
5993
  # resp.replication_groups[0].auth_token_last_modified_date #=> Time
5603
5994
  # resp.replication_groups[0].transit_encryption_enabled #=> Boolean
5604
5995
  # resp.replication_groups[0].at_rest_encryption_enabled #=> Boolean
5996
+ # resp.replication_groups[0].member_clusters_outpost_arns #=> Array
5997
+ # resp.replication_groups[0].member_clusters_outpost_arns[0] #=> String
5605
5998
  # resp.replication_groups[0].kms_key_id #=> String
5606
5999
  # resp.replication_groups[0].arn #=> String
6000
+ # resp.replication_groups[0].user_group_ids #=> Array
6001
+ # resp.replication_groups[0].user_group_ids[0] #=> String
5607
6002
  #
5608
6003
  #
5609
6004
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -5644,6 +6039,19 @@ module Aws::ElastiCache
5644
6039
  #
5645
6040
  # * Current generation:
5646
6041
  #
6042
+ # **M6g node types** (available only for Redis engine version 5.0.6
6043
+ # onward and for Memcached engine version 1.5.16 onward).
6044
+ #
6045
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
6046
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
6047
+ # `cache.m6g.16xlarge`
6048
+ #
6049
+ # <note markdown="1"> At this time, M6g node types are available in the following
6050
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
6051
+ # and ap-northeast-1.
6052
+ #
6053
+ # </note>
6054
+ #
5647
6055
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
5648
6056
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
5649
6057
  # `cache.m5.24xlarge`
@@ -5677,6 +6085,19 @@ module Aws::ElastiCache
5677
6085
  #
5678
6086
  # * Current generation:
5679
6087
  #
6088
+ # **R6g node types** (available only for Redis engine version 5.0.6
6089
+ # onward and for Memcached engine version 1.5.16 onward).
6090
+ #
6091
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
6092
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
6093
+ # `cache.r6g.16xlarge`
6094
+ #
6095
+ # <note markdown="1"> At this time, R6g node types are available in the following
6096
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
6097
+ # and ap-northeast-1.
6098
+ #
6099
+ # </note>
6100
+ #
5680
6101
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
5681
6102
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
5682
6103
  # `cache.r5.24xlarge`
@@ -5722,7 +6143,7 @@ module Aws::ElastiCache
5722
6143
  # available offerings matching the specified offering type.
5723
6144
  #
5724
6145
  # Valid values: `"Light Utilization"|"Medium Utilization"|"Heavy
5725
- # Utilization"`
6146
+ # Utilization"|"All Upfront"|"Partial Upfront"| "No Upfront"`
5726
6147
  #
5727
6148
  # @option params [Integer] :max_records
5728
6149
  # The maximum number of records to include in the response. If more
@@ -5821,6 +6242,19 @@ module Aws::ElastiCache
5821
6242
  #
5822
6243
  # * Current generation:
5823
6244
  #
6245
+ # **M6g node types** (available only for Redis engine version 5.0.6
6246
+ # onward and for Memcached engine version 1.5.16 onward).
6247
+ #
6248
+ # `cache.m6g.large`, `cache.m6g.xlarge`, `cache.m6g.2xlarge`,
6249
+ # `cache.m6g.4xlarge`, `cache.m6g.8xlarge`, `cache.m6g.12xlarge`,
6250
+ # `cache.m6g.16xlarge`
6251
+ #
6252
+ # <note markdown="1"> At this time, M6g node types are available in the following
6253
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
6254
+ # and ap-northeast-1.
6255
+ #
6256
+ # </note>
6257
+ #
5824
6258
  # **M5 node types:** `cache.m5.large`, `cache.m5.xlarge`,
5825
6259
  # `cache.m5.2xlarge`, `cache.m5.4xlarge`, `cache.m5.12xlarge`,
5826
6260
  # `cache.m5.24xlarge`
@@ -5854,6 +6288,19 @@ module Aws::ElastiCache
5854
6288
  #
5855
6289
  # * Current generation:
5856
6290
  #
6291
+ # **R6g node types** (available only for Redis engine version 5.0.6
6292
+ # onward and for Memcached engine version 1.5.16 onward).
6293
+ #
6294
+ # `cache.r6g.large`, `cache.r6g.xlarge`, `cache.r6g.2xlarge`,
6295
+ # `cache.r6g.4xlarge`, `cache.r6g.8xlarge`, `cache.r6g.12xlarge`,
6296
+ # `cache.r6g.16xlarge`
6297
+ #
6298
+ # <note markdown="1"> At this time, R6g node types are available in the following
6299
+ # regions: us-east-1, us-west-2, us-east-2, eu-central-1, eu-west-1
6300
+ # and ap-northeast-1.
6301
+ #
6302
+ # </note>
6303
+ #
5857
6304
  # **R5 node types:** `cache.r5.large`, `cache.r5.xlarge`,
5858
6305
  # `cache.r5.2xlarge`, `cache.r5.4xlarge`, `cache.r5.12xlarge`,
5859
6306
  # `cache.r5.24xlarge`
@@ -6465,6 +6912,7 @@ module Aws::ElastiCache
6465
6912
  # resp.snapshots[0].engine_version #=> String
6466
6913
  # resp.snapshots[0].num_cache_nodes #=> Integer
6467
6914
  # resp.snapshots[0].preferred_availability_zone #=> String
6915
+ # resp.snapshots[0].preferred_outpost_arn #=> String
6468
6916
  # resp.snapshots[0].cache_cluster_create_time #=> Time
6469
6917
  # resp.snapshots[0].preferred_maintenance_window #=> String
6470
6918
  # resp.snapshots[0].topic_arn #=> String
@@ -6487,6 +6935,9 @@ module Aws::ElastiCache
6487
6935
  # resp.snapshots[0].node_snapshots[0].node_group_configuration.primary_availability_zone #=> String
6488
6936
  # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_availability_zones #=> Array
6489
6937
  # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_availability_zones[0] #=> String
6938
+ # resp.snapshots[0].node_snapshots[0].node_group_configuration.primary_outpost_arn #=> String
6939
+ # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_outpost_arns #=> Array
6940
+ # resp.snapshots[0].node_snapshots[0].node_group_configuration.replica_outpost_arns[0] #=> String
6490
6941
  # resp.snapshots[0].node_snapshots[0].cache_size #=> String
6491
6942
  # resp.snapshots[0].node_snapshots[0].cache_node_create_time #=> Time
6492
6943
  # resp.snapshots[0].node_snapshots[0].snapshot_create_time #=> Time
@@ -6614,6 +7065,133 @@ module Aws::ElastiCache
6614
7065
  req.send_request(options)
6615
7066
  end
6616
7067
 
7068
+ # Returns a list of user groups.
7069
+ #
7070
+ # @option params [String] :user_group_id
7071
+ # The ID of the user group.
7072
+ #
7073
+ # @option params [Integer] :max_records
7074
+ # The maximum number of records to include in the response. If more
7075
+ # records exist than the specified MaxRecords value, a marker is
7076
+ # included in the response so that the remaining results can be
7077
+ # retrieved.
7078
+ #
7079
+ # @option params [String] :marker
7080
+ # An optional marker returned from a prior request. Use this marker for
7081
+ # pagination of results from this operation. If this parameter is
7082
+ # specified, the response includes only records beyond the marker, up to
7083
+ # the value specified by MaxRecords. &gt;
7084
+ #
7085
+ # @return [Types::DescribeUserGroupsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7086
+ #
7087
+ # * {Types::DescribeUserGroupsResult#user_groups #user_groups} => Array&lt;Types::UserGroup&gt;
7088
+ # * {Types::DescribeUserGroupsResult#marker #marker} => String
7089
+ #
7090
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7091
+ #
7092
+ # @example Request syntax with placeholder values
7093
+ #
7094
+ # resp = client.describe_user_groups({
7095
+ # user_group_id: "String",
7096
+ # max_records: 1,
7097
+ # marker: "String",
7098
+ # })
7099
+ #
7100
+ # @example Response structure
7101
+ #
7102
+ # resp.user_groups #=> Array
7103
+ # resp.user_groups[0].user_group_id #=> String
7104
+ # resp.user_groups[0].status #=> String
7105
+ # resp.user_groups[0].engine #=> String
7106
+ # resp.user_groups[0].user_ids #=> Array
7107
+ # resp.user_groups[0].user_ids[0] #=> String
7108
+ # resp.user_groups[0].pending_changes.user_ids_to_remove #=> Array
7109
+ # resp.user_groups[0].pending_changes.user_ids_to_remove[0] #=> String
7110
+ # resp.user_groups[0].pending_changes.user_ids_to_add #=> Array
7111
+ # resp.user_groups[0].pending_changes.user_ids_to_add[0] #=> String
7112
+ # resp.user_groups[0].replication_groups #=> Array
7113
+ # resp.user_groups[0].replication_groups[0] #=> String
7114
+ # resp.user_groups[0].arn #=> String
7115
+ # resp.marker #=> String
7116
+ #
7117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUserGroups AWS API Documentation
7118
+ #
7119
+ # @overload describe_user_groups(params = {})
7120
+ # @param [Hash] params ({})
7121
+ def describe_user_groups(params = {}, options = {})
7122
+ req = build_request(:describe_user_groups, params)
7123
+ req.send_request(options)
7124
+ end
7125
+
7126
+ # Returns a list of users.
7127
+ #
7128
+ # @option params [String] :engine
7129
+ # The Redis engine.
7130
+ #
7131
+ # @option params [String] :user_id
7132
+ # The ID of the user.
7133
+ #
7134
+ # @option params [Array<Types::Filter>] :filters
7135
+ # Filter to determine the list of User IDs to return.
7136
+ #
7137
+ # @option params [Integer] :max_records
7138
+ # The maximum number of records to include in the response. If more
7139
+ # records exist than the specified MaxRecords value, a marker is
7140
+ # included in the response so that the remaining results can be
7141
+ # retrieved.
7142
+ #
7143
+ # @option params [String] :marker
7144
+ # An optional marker returned from a prior request. Use this marker for
7145
+ # pagination of results from this operation. If this parameter is
7146
+ # specified, the response includes only records beyond the marker, up to
7147
+ # the value specified by MaxRecords. &gt;
7148
+ #
7149
+ # @return [Types::DescribeUsersResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7150
+ #
7151
+ # * {Types::DescribeUsersResult#users #users} => Array&lt;Types::User&gt;
7152
+ # * {Types::DescribeUsersResult#marker #marker} => String
7153
+ #
7154
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7155
+ #
7156
+ # @example Request syntax with placeholder values
7157
+ #
7158
+ # resp = client.describe_users({
7159
+ # engine: "EngineType",
7160
+ # user_id: "UserId",
7161
+ # filters: [
7162
+ # {
7163
+ # name: "FilterName", # required
7164
+ # values: ["FilterValue"], # required
7165
+ # },
7166
+ # ],
7167
+ # max_records: 1,
7168
+ # marker: "String",
7169
+ # })
7170
+ #
7171
+ # @example Response structure
7172
+ #
7173
+ # resp.users #=> Array
7174
+ # resp.users[0].user_id #=> String
7175
+ # resp.users[0].user_name #=> String
7176
+ # resp.users[0].status #=> String
7177
+ # resp.users[0].engine #=> String
7178
+ # resp.users[0].access_string #=> String
7179
+ # resp.users[0].user_group_ids #=> Array
7180
+ # resp.users[0].user_group_ids[0] #=> String
7181
+ # resp.users[0].authentication.type #=> String, one of "password", "no-password"
7182
+ # resp.users[0].authentication.password_count #=> Integer
7183
+ # resp.users[0].arn #=> String
7184
+ # resp.marker #=> String
7185
+ #
7186
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/DescribeUsers AWS API Documentation
7187
+ #
7188
+ # @overload describe_users(params = {})
7189
+ # @param [Hash] params ({})
7190
+ def describe_users(params = {}, options = {})
7191
+ req = build_request(:describe_users, params)
7192
+ req.send_request(options)
7193
+ end
7194
+
6617
7195
  # Remove a secondary cluster from the Global Datastore using the Global
6618
7196
  # Datastore name. The secondary cluster will no longer receive updates
6619
7197
  # from the primary cluster, but will remain as a standalone cluster in
@@ -6845,6 +7423,7 @@ module Aws::ElastiCache
6845
7423
  # node_group_id: "AllowedNodeGroupId", # required
6846
7424
  # new_replica_count: 1, # required
6847
7425
  # preferred_availability_zones: ["String"],
7426
+ # preferred_outpost_arns: ["String"],
6848
7427
  # },
6849
7428
  # ],
6850
7429
  # apply_immediately: false, # required
@@ -6861,6 +7440,10 @@ module Aws::ElastiCache
6861
7440
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
6862
7441
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
6863
7442
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
7443
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
7444
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
7445
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
7446
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
6864
7447
  # resp.replication_group.member_clusters #=> Array
6865
7448
  # resp.replication_group.member_clusters[0] #=> String
6866
7449
  # resp.replication_group.node_groups #=> Array
@@ -6877,6 +7460,7 @@ module Aws::ElastiCache
6877
7460
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
6878
7461
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
6879
7462
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
7463
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
6880
7464
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
6881
7465
  # resp.replication_group.snapshotting_cluster_id #=> String
6882
7466
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -6891,8 +7475,12 @@ module Aws::ElastiCache
6891
7475
  # resp.replication_group.auth_token_last_modified_date #=> Time
6892
7476
  # resp.replication_group.transit_encryption_enabled #=> Boolean
6893
7477
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
7478
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
7479
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
6894
7480
  # resp.replication_group.kms_key_id #=> String
6895
7481
  # resp.replication_group.arn #=> String
7482
+ # resp.replication_group.user_group_ids #=> Array
7483
+ # resp.replication_group.user_group_ids[0] #=> String
6896
7484
  #
6897
7485
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/IncreaseReplicaCount AWS API Documentation
6898
7486
  #
@@ -7440,7 +8028,7 @@ module Aws::ElastiCache
7440
8028
  # snapshot_window: "String",
7441
8029
  # cache_node_type: "String",
7442
8030
  # auth_token: "String",
7443
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
8031
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
7444
8032
  # })
7445
8033
  #
7446
8034
  # @example Response structure
@@ -7455,6 +8043,7 @@ module Aws::ElastiCache
7455
8043
  # resp.cache_cluster.cache_cluster_status #=> String
7456
8044
  # resp.cache_cluster.num_cache_nodes #=> Integer
7457
8045
  # resp.cache_cluster.preferred_availability_zone #=> String
8046
+ # resp.cache_cluster.preferred_outpost_arn #=> String
7458
8047
  # resp.cache_cluster.cache_cluster_create_time #=> Time
7459
8048
  # resp.cache_cluster.preferred_maintenance_window #=> String
7460
8049
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -7482,6 +8071,7 @@ module Aws::ElastiCache
7482
8071
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
7483
8072
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
7484
8073
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
8074
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
7485
8075
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
7486
8076
  # resp.cache_cluster.security_groups #=> Array
7487
8077
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -7660,6 +8250,7 @@ module Aws::ElastiCache
7660
8250
  # resp.cache_subnet_group.subnets #=> Array
7661
8251
  # resp.cache_subnet_group.subnets[0].subnet_identifier #=> String
7662
8252
  # resp.cache_subnet_group.subnets[0].subnet_availability_zone.name #=> String
8253
+ # resp.cache_subnet_group.subnets[0].subnet_outpost.subnet_outpost_arn #=> String
7663
8254
  # resp.cache_subnet_group.arn #=> String
7664
8255
  #
7665
8256
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyCacheSubnetGroup AWS API Documentation
@@ -7948,6 +8539,16 @@ module Aws::ElastiCache
7948
8539
  #
7949
8540
  # [1]: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/auth.html
7950
8541
  #
8542
+ # @option params [Array<String>] :user_group_ids_to_add
8543
+ # A list of user group IDs.
8544
+ #
8545
+ # @option params [Array<String>] :user_group_ids_to_remove
8546
+ # A list of users groups to remove, meaning the users in the group no
8547
+ # longer can access thereplication group.
8548
+ #
8549
+ # @option params [Boolean] :remove_user_groups
8550
+ # Removes the user groups that can access this replication group.
8551
+ #
7951
8552
  # @return [Types::ModifyReplicationGroupResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7952
8553
  #
7953
8554
  # * {Types::ModifyReplicationGroupResult#replication_group #replication_group} => Types::ReplicationGroup
@@ -8046,7 +8647,10 @@ module Aws::ElastiCache
8046
8647
  # snapshot_window: "String",
8047
8648
  # cache_node_type: "String",
8048
8649
  # auth_token: "String",
8049
- # auth_token_update_strategy: "SET", # accepts SET, ROTATE
8650
+ # auth_token_update_strategy: "SET", # accepts SET, ROTATE, DELETE
8651
+ # user_group_ids_to_add: ["UserGroupId"],
8652
+ # user_group_ids_to_remove: ["UserGroupId"],
8653
+ # remove_user_groups: false,
8050
8654
  # })
8051
8655
  #
8052
8656
  # @example Response structure
@@ -8060,6 +8664,10 @@ module Aws::ElastiCache
8060
8664
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8061
8665
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8062
8666
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
8667
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
8668
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
8669
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
8670
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8063
8671
  # resp.replication_group.member_clusters #=> Array
8064
8672
  # resp.replication_group.member_clusters[0] #=> String
8065
8673
  # resp.replication_group.node_groups #=> Array
@@ -8076,6 +8684,7 @@ module Aws::ElastiCache
8076
8684
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8077
8685
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8078
8686
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
8687
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8079
8688
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8080
8689
  # resp.replication_group.snapshotting_cluster_id #=> String
8081
8690
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8090,8 +8699,12 @@ module Aws::ElastiCache
8090
8699
  # resp.replication_group.auth_token_last_modified_date #=> Time
8091
8700
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8092
8701
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
8702
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
8703
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8093
8704
  # resp.replication_group.kms_key_id #=> String
8094
8705
  # resp.replication_group.arn #=> String
8706
+ # resp.replication_group.user_group_ids #=> Array
8707
+ # resp.replication_group.user_group_ids[0] #=> String
8095
8708
  #
8096
8709
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroup AWS API Documentation
8097
8710
  #
@@ -8179,6 +8792,10 @@ module Aws::ElastiCache
8179
8792
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8180
8793
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8181
8794
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
8795
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
8796
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
8797
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
8798
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8182
8799
  # resp.replication_group.member_clusters #=> Array
8183
8800
  # resp.replication_group.member_clusters[0] #=> String
8184
8801
  # resp.replication_group.node_groups #=> Array
@@ -8195,6 +8812,7 @@ module Aws::ElastiCache
8195
8812
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8196
8813
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8197
8814
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
8815
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8198
8816
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8199
8817
  # resp.replication_group.snapshotting_cluster_id #=> String
8200
8818
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8209,8 +8827,12 @@ module Aws::ElastiCache
8209
8827
  # resp.replication_group.auth_token_last_modified_date #=> Time
8210
8828
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8211
8829
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
8830
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
8831
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8212
8832
  # resp.replication_group.kms_key_id #=> String
8213
8833
  # resp.replication_group.arn #=> String
8834
+ # resp.replication_group.user_group_ids #=> Array
8835
+ # resp.replication_group.user_group_ids[0] #=> String
8214
8836
  #
8215
8837
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyReplicationGroupShardConfiguration AWS API Documentation
8216
8838
  #
@@ -8221,6 +8843,120 @@ module Aws::ElastiCache
8221
8843
  req.send_request(options)
8222
8844
  end
8223
8845
 
8846
+ # Changes user password(s) and/or access string.
8847
+ #
8848
+ # @option params [required, String] :user_id
8849
+ # The ID of the user.
8850
+ #
8851
+ # @option params [String] :access_string
8852
+ # Access permissions string used for this user account.
8853
+ #
8854
+ # @option params [String] :append_access_string
8855
+ # Adds additional user permissions to the access string.
8856
+ #
8857
+ # @option params [Array<String>] :passwords
8858
+ # The passwords belonging to the user account. You are allowed up to
8859
+ # two.
8860
+ #
8861
+ # @option params [Boolean] :no_password_required
8862
+ # Indicates no password is required for the user account.
8863
+ #
8864
+ # @return [Types::User] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8865
+ #
8866
+ # * {Types::User#user_id #user_id} => String
8867
+ # * {Types::User#user_name #user_name} => String
8868
+ # * {Types::User#status #status} => String
8869
+ # * {Types::User#engine #engine} => String
8870
+ # * {Types::User#access_string #access_string} => String
8871
+ # * {Types::User#user_group_ids #user_group_ids} => Array&lt;String&gt;
8872
+ # * {Types::User#authentication #authentication} => Types::Authentication
8873
+ # * {Types::User#arn #arn} => String
8874
+ #
8875
+ # @example Request syntax with placeholder values
8876
+ #
8877
+ # resp = client.modify_user({
8878
+ # user_id: "UserId", # required
8879
+ # access_string: "AccessString",
8880
+ # append_access_string: "AccessString",
8881
+ # passwords: ["String"],
8882
+ # no_password_required: false,
8883
+ # })
8884
+ #
8885
+ # @example Response structure
8886
+ #
8887
+ # resp.user_id #=> String
8888
+ # resp.user_name #=> String
8889
+ # resp.status #=> String
8890
+ # resp.engine #=> String
8891
+ # resp.access_string #=> String
8892
+ # resp.user_group_ids #=> Array
8893
+ # resp.user_group_ids[0] #=> String
8894
+ # resp.authentication.type #=> String, one of "password", "no-password"
8895
+ # resp.authentication.password_count #=> Integer
8896
+ # resp.arn #=> String
8897
+ #
8898
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUser AWS API Documentation
8899
+ #
8900
+ # @overload modify_user(params = {})
8901
+ # @param [Hash] params ({})
8902
+ def modify_user(params = {}, options = {})
8903
+ req = build_request(:modify_user, params)
8904
+ req.send_request(options)
8905
+ end
8906
+
8907
+ # Changes the list of users that belong to the user group.
8908
+ #
8909
+ # @option params [required, String] :user_group_id
8910
+ # The ID of the user group.
8911
+ #
8912
+ # @option params [Array<String>] :user_ids_to_add
8913
+ # The list of user IDs to add to the user group.
8914
+ #
8915
+ # @option params [Array<String>] :user_ids_to_remove
8916
+ # The list of user IDs to remove from the user group.
8917
+ #
8918
+ # @return [Types::UserGroup] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8919
+ #
8920
+ # * {Types::UserGroup#user_group_id #user_group_id} => String
8921
+ # * {Types::UserGroup#status #status} => String
8922
+ # * {Types::UserGroup#engine #engine} => String
8923
+ # * {Types::UserGroup#user_ids #user_ids} => Array&lt;String&gt;
8924
+ # * {Types::UserGroup#pending_changes #pending_changes} => Types::UserGroupPendingChanges
8925
+ # * {Types::UserGroup#replication_groups #replication_groups} => Array&lt;String&gt;
8926
+ # * {Types::UserGroup#arn #arn} => String
8927
+ #
8928
+ # @example Request syntax with placeholder values
8929
+ #
8930
+ # resp = client.modify_user_group({
8931
+ # user_group_id: "String", # required
8932
+ # user_ids_to_add: ["UserId"],
8933
+ # user_ids_to_remove: ["UserId"],
8934
+ # })
8935
+ #
8936
+ # @example Response structure
8937
+ #
8938
+ # resp.user_group_id #=> String
8939
+ # resp.status #=> String
8940
+ # resp.engine #=> String
8941
+ # resp.user_ids #=> Array
8942
+ # resp.user_ids[0] #=> String
8943
+ # resp.pending_changes.user_ids_to_remove #=> Array
8944
+ # resp.pending_changes.user_ids_to_remove[0] #=> String
8945
+ # resp.pending_changes.user_ids_to_add #=> Array
8946
+ # resp.pending_changes.user_ids_to_add[0] #=> String
8947
+ # resp.replication_groups #=> Array
8948
+ # resp.replication_groups[0] #=> String
8949
+ # resp.arn #=> String
8950
+ #
8951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/ModifyUserGroup AWS API Documentation
8952
+ #
8953
+ # @overload modify_user_group(params = {})
8954
+ # @param [Hash] params ({})
8955
+ def modify_user_group(params = {}, options = {})
8956
+ req = build_request(:modify_user_group, params)
8957
+ req.send_request(options)
8958
+ end
8959
+
8224
8960
  # Allows you to purchase a reserved cache node offering.
8225
8961
  #
8226
8962
  # @option params [required, String] :reserved_cache_nodes_offering_id
@@ -8444,6 +9180,7 @@ module Aws::ElastiCache
8444
9180
  # resp.cache_cluster.cache_cluster_status #=> String
8445
9181
  # resp.cache_cluster.num_cache_nodes #=> Integer
8446
9182
  # resp.cache_cluster.preferred_availability_zone #=> String
9183
+ # resp.cache_cluster.preferred_outpost_arn #=> String
8447
9184
  # resp.cache_cluster.cache_cluster_create_time #=> Time
8448
9185
  # resp.cache_cluster.preferred_maintenance_window #=> String
8449
9186
  # resp.cache_cluster.pending_modified_values.num_cache_nodes #=> Integer
@@ -8471,6 +9208,7 @@ module Aws::ElastiCache
8471
9208
  # resp.cache_cluster.cache_nodes[0].parameter_group_status #=> String
8472
9209
  # resp.cache_cluster.cache_nodes[0].source_cache_node_id #=> String
8473
9210
  # resp.cache_cluster.cache_nodes[0].customer_availability_zone #=> String
9211
+ # resp.cache_cluster.cache_nodes[0].customer_outpost_arn #=> String
8474
9212
  # resp.cache_cluster.auto_minor_version_upgrade #=> Boolean
8475
9213
  # resp.cache_cluster.security_groups #=> Array
8476
9214
  # resp.cache_cluster.security_groups[0].security_group_id #=> String
@@ -8741,6 +9479,10 @@ module Aws::ElastiCache
8741
9479
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8742
9480
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8743
9481
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
9482
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
9483
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
9484
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
9485
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8744
9486
  # resp.replication_group.member_clusters #=> Array
8745
9487
  # resp.replication_group.member_clusters[0] #=> String
8746
9488
  # resp.replication_group.node_groups #=> Array
@@ -8757,6 +9499,7 @@ module Aws::ElastiCache
8757
9499
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8758
9500
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8759
9501
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
9502
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8760
9503
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8761
9504
  # resp.replication_group.snapshotting_cluster_id #=> String
8762
9505
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8771,8 +9514,12 @@ module Aws::ElastiCache
8771
9514
  # resp.replication_group.auth_token_last_modified_date #=> Time
8772
9515
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8773
9516
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
9517
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
9518
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8774
9519
  # resp.replication_group.kms_key_id #=> String
8775
9520
  # resp.replication_group.arn #=> String
9521
+ # resp.replication_group.user_group_ids #=> Array
9522
+ # resp.replication_group.user_group_ids[0] #=> String
8776
9523
  #
8777
9524
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/StartMigration AWS API Documentation
8778
9525
  #
@@ -8811,10 +9558,10 @@ module Aws::ElastiCache
8811
9558
  # 1. Replication group message: `Test Failover API called for node
8812
9559
  # group <node-group-id>`
8813
9560
  #
8814
- # 2. Cache cluster message: `Failover from master node
9561
+ # 2. Cache cluster message: `Failover from primary node
8815
9562
  # <primary-node-id> to replica node <node-id> completed`
8816
9563
  #
8817
- # 3. Replication group message: `Failover from master node
9564
+ # 3. Replication group message: `Failover from primary node
8818
9565
  # <primary-node-id> to replica node <node-id> completed`
8819
9566
  #
8820
9567
  # 4. Cache cluster message: `Recovering cache nodes <node-id>`
@@ -8868,6 +9615,10 @@ module Aws::ElastiCache
8868
9615
  # resp.replication_group.pending_modified_values.automatic_failover_status #=> String, one of "enabled", "disabled"
8869
9616
  # resp.replication_group.pending_modified_values.resharding.slot_migration.progress_percentage #=> Float
8870
9617
  # resp.replication_group.pending_modified_values.auth_token_status #=> String, one of "SETTING", "ROTATING"
9618
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add #=> Array
9619
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_add[0] #=> String
9620
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove #=> Array
9621
+ # resp.replication_group.pending_modified_values.user_groups.user_group_ids_to_remove[0] #=> String
8871
9622
  # resp.replication_group.member_clusters #=> Array
8872
9623
  # resp.replication_group.member_clusters[0] #=> String
8873
9624
  # resp.replication_group.node_groups #=> Array
@@ -8884,6 +9635,7 @@ module Aws::ElastiCache
8884
9635
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.address #=> String
8885
9636
  # resp.replication_group.node_groups[0].node_group_members[0].read_endpoint.port #=> Integer
8886
9637
  # resp.replication_group.node_groups[0].node_group_members[0].preferred_availability_zone #=> String
9638
+ # resp.replication_group.node_groups[0].node_group_members[0].preferred_outpost_arn #=> String
8887
9639
  # resp.replication_group.node_groups[0].node_group_members[0].current_role #=> String
8888
9640
  # resp.replication_group.snapshotting_cluster_id #=> String
8889
9641
  # resp.replication_group.automatic_failover #=> String, one of "enabled", "disabled", "enabling", "disabling"
@@ -8898,8 +9650,12 @@ module Aws::ElastiCache
8898
9650
  # resp.replication_group.auth_token_last_modified_date #=> Time
8899
9651
  # resp.replication_group.transit_encryption_enabled #=> Boolean
8900
9652
  # resp.replication_group.at_rest_encryption_enabled #=> Boolean
9653
+ # resp.replication_group.member_clusters_outpost_arns #=> Array
9654
+ # resp.replication_group.member_clusters_outpost_arns[0] #=> String
8901
9655
  # resp.replication_group.kms_key_id #=> String
8902
9656
  # resp.replication_group.arn #=> String
9657
+ # resp.replication_group.user_group_ids #=> Array
9658
+ # resp.replication_group.user_group_ids[0] #=> String
8903
9659
  #
8904
9660
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticache-2015-02-02/TestFailover AWS API Documentation
8905
9661
  #
@@ -8923,7 +9679,7 @@ module Aws::ElastiCache
8923
9679
  params: params,
8924
9680
  config: config)
8925
9681
  context[:gem_name] = 'aws-sdk-elasticache'
8926
- context[:gem_version] = '1.40.0'
9682
+ context[:gem_version] = '1.45.0'
8927
9683
  Seahorse::Client::Request.new(handlers, context)
8928
9684
  end
8929
9685