aws-sdk-kafka 1.44.0 → 1.48.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -81,13 +81,21 @@ module Aws::Kafka
81
81
  #
82
82
  # {
83
83
  # kafka_broker_node_id: "__string", # required
84
- # volume_size_gb: 1, # required
84
+ # provisioned_throughput: {
85
+ # enabled: false,
86
+ # volume_throughput: 1,
87
+ # },
88
+ # volume_size_gb: 1,
85
89
  # }
86
90
  #
87
91
  # @!attribute [rw] kafka_broker_node_id
88
92
  # The ID of the broker to update.
89
93
  # @return [String]
90
94
  #
95
+ # @!attribute [rw] provisioned_throughput
96
+ # EBS volume provisioned throughput information.
97
+ # @return [Types::ProvisionedThroughput]
98
+ #
91
99
  # @!attribute [rw] volume_size_gb
92
100
  # Size of the EBS volume to update.
93
101
  # @return [Integer]
@@ -96,6 +104,7 @@ module Aws::Kafka
96
104
  #
97
105
  class BrokerEBSVolumeInfo < Struct.new(
98
106
  :kafka_broker_node_id,
107
+ :provisioned_throughput,
99
108
  :volume_size_gb)
100
109
  SENSITIVE = []
101
110
  include Aws::Structure
@@ -158,6 +167,10 @@ module Aws::Kafka
158
167
  # security_groups: ["__string"],
159
168
  # storage_info: {
160
169
  # ebs_storage_info: {
170
+ # provisioned_throughput: {
171
+ # enabled: false,
172
+ # volume_throughput: 1,
173
+ # },
161
174
  # volume_size: 1,
162
175
  # },
163
176
  # },
@@ -736,6 +749,10 @@ module Aws::Kafka
736
749
  # security_groups: ["__string"],
737
750
  # storage_info: {
738
751
  # ebs_storage_info: {
752
+ # provisioned_throughput: {
753
+ # enabled: false,
754
+ # volume_throughput: 1,
755
+ # },
739
756
  # volume_size: 1,
740
757
  # },
741
758
  # },
@@ -1300,9 +1317,17 @@ module Aws::Kafka
1300
1317
  # data as a hash:
1301
1318
  #
1302
1319
  # {
1320
+ # provisioned_throughput: {
1321
+ # enabled: false,
1322
+ # volume_throughput: 1,
1323
+ # },
1303
1324
  # volume_size: 1,
1304
1325
  # }
1305
1326
  #
1327
+ # @!attribute [rw] provisioned_throughput
1328
+ # EBS volume provisioned throughput information.
1329
+ # @return [Types::ProvisionedThroughput]
1330
+ #
1306
1331
  # @!attribute [rw] volume_size
1307
1332
  # The size in GiB of the EBS volume for the data drive on each broker
1308
1333
  # node.
@@ -1311,6 +1336,7 @@ module Aws::Kafka
1311
1336
  # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/EBSStorageInfo AWS API Documentation
1312
1337
  #
1313
1338
  class EBSStorageInfo < Struct.new(
1339
+ :provisioned_throughput,
1314
1340
  :volume_size)
1315
1341
  SENSITIVE = []
1316
1342
  include Aws::Structure
@@ -1696,6 +1722,690 @@ module Aws::Kafka
1696
1722
  include Aws::Structure
1697
1723
  end
1698
1724
 
1725
+ # @note When making an API call, you may pass ListClustersV2Request
1726
+ # data as a hash:
1727
+ #
1728
+ # {
1729
+ # cluster_name_filter: "__string",
1730
+ # cluster_type_filter: "__string",
1731
+ # max_results: 1,
1732
+ # next_token: "__string",
1733
+ # }
1734
+ #
1735
+ # @!attribute [rw] cluster_name_filter
1736
+ # Specify a prefix of the names of the clusters that you want to list.
1737
+ # The service lists all the clusters whose names start with this
1738
+ # prefix.
1739
+ # @return [String]
1740
+ #
1741
+ # @!attribute [rw] cluster_type_filter
1742
+ # Specify either PROVISIONED or SERVERLESS.
1743
+ # @return [String]
1744
+ #
1745
+ # @!attribute [rw] max_results
1746
+ # The maximum number of results to return in the response. If there
1747
+ # are more results, the response includes a NextToken parameter.
1748
+ # @return [Integer]
1749
+ #
1750
+ # @!attribute [rw] next_token
1751
+ # The paginated results marker. When the result of the operation is
1752
+ # truncated, the call returns NextToken in the response. To get the
1753
+ # next batch, provide this token in your next request.
1754
+ # @return [String]
1755
+ #
1756
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ListClustersV2Request AWS API Documentation
1757
+ #
1758
+ class ListClustersV2Request < Struct.new(
1759
+ :cluster_name_filter,
1760
+ :cluster_type_filter,
1761
+ :max_results,
1762
+ :next_token)
1763
+ SENSITIVE = []
1764
+ include Aws::Structure
1765
+ end
1766
+
1767
+ # The response contains an array containing cluster information and a
1768
+ # next token if the response is truncated.
1769
+ #
1770
+ # @!attribute [rw] cluster_info_list
1771
+ # Information on each of the MSK clusters in the response.
1772
+ # @return [Array<Types::Cluster>]
1773
+ #
1774
+ # @!attribute [rw] next_token
1775
+ # The paginated results marker. When the result of a ListClusters
1776
+ # operation is truncated, the call returns NextToken in the response.
1777
+ # To get another batch of clusters, provide this token in your next
1778
+ # request.
1779
+ # @return [String]
1780
+ #
1781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ListClustersV2Response AWS API Documentation
1782
+ #
1783
+ class ListClustersV2Response < Struct.new(
1784
+ :cluster_info_list,
1785
+ :next_token)
1786
+ SENSITIVE = []
1787
+ include Aws::Structure
1788
+ end
1789
+
1790
+ # Creates a new Amazon MSK cluster of either the provisioned or the
1791
+ # serverless type.
1792
+ #
1793
+ # @note When making an API call, you may pass CreateClusterV2Request
1794
+ # data as a hash:
1795
+ #
1796
+ # {
1797
+ # cluster_name: "__stringMin1Max64", # required
1798
+ # tags: {
1799
+ # "__string" => "__string",
1800
+ # },
1801
+ # provisioned: {
1802
+ # broker_node_group_info: { # required
1803
+ # broker_az_distribution: "DEFAULT", # accepts DEFAULT
1804
+ # client_subnets: ["__string"], # required
1805
+ # instance_type: "__stringMin5Max32", # required
1806
+ # security_groups: ["__string"],
1807
+ # storage_info: {
1808
+ # ebs_storage_info: {
1809
+ # provisioned_throughput: {
1810
+ # enabled: false,
1811
+ # volume_throughput: 1,
1812
+ # },
1813
+ # volume_size: 1,
1814
+ # },
1815
+ # },
1816
+ # connectivity_info: {
1817
+ # public_access: {
1818
+ # type: "__string",
1819
+ # },
1820
+ # },
1821
+ # },
1822
+ # client_authentication: {
1823
+ # sasl: {
1824
+ # scram: {
1825
+ # enabled: false,
1826
+ # },
1827
+ # iam: {
1828
+ # enabled: false,
1829
+ # },
1830
+ # },
1831
+ # tls: {
1832
+ # certificate_authority_arn_list: ["__string"],
1833
+ # enabled: false,
1834
+ # },
1835
+ # unauthenticated: {
1836
+ # enabled: false,
1837
+ # },
1838
+ # },
1839
+ # configuration_info: {
1840
+ # arn: "__string", # required
1841
+ # revision: 1, # required
1842
+ # },
1843
+ # encryption_info: {
1844
+ # encryption_at_rest: {
1845
+ # data_volume_kms_key_id: "__string", # required
1846
+ # },
1847
+ # encryption_in_transit: {
1848
+ # client_broker: "TLS", # accepts TLS, TLS_PLAINTEXT, PLAINTEXT
1849
+ # in_cluster: false,
1850
+ # },
1851
+ # },
1852
+ # enhanced_monitoring: "DEFAULT", # accepts DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, PER_TOPIC_PER_PARTITION
1853
+ # open_monitoring: {
1854
+ # prometheus: { # required
1855
+ # jmx_exporter: {
1856
+ # enabled_in_broker: false, # required
1857
+ # },
1858
+ # node_exporter: {
1859
+ # enabled_in_broker: false, # required
1860
+ # },
1861
+ # },
1862
+ # },
1863
+ # kafka_version: "__stringMin1Max128", # required
1864
+ # logging_info: {
1865
+ # broker_logs: { # required
1866
+ # cloud_watch_logs: {
1867
+ # enabled: false, # required
1868
+ # log_group: "__string",
1869
+ # },
1870
+ # firehose: {
1871
+ # delivery_stream: "__string",
1872
+ # enabled: false, # required
1873
+ # },
1874
+ # s3: {
1875
+ # bucket: "__string",
1876
+ # enabled: false, # required
1877
+ # prefix: "__string",
1878
+ # },
1879
+ # },
1880
+ # },
1881
+ # number_of_broker_nodes: 1, # required
1882
+ # },
1883
+ # serverless: {
1884
+ # vpc_configs: [ # required
1885
+ # {
1886
+ # subnet_ids: ["__string"], # required
1887
+ # security_group_ids: ["__string"],
1888
+ # },
1889
+ # ],
1890
+ # client_authentication: {
1891
+ # sasl: {
1892
+ # iam: {
1893
+ # enabled: false,
1894
+ # },
1895
+ # },
1896
+ # },
1897
+ # },
1898
+ # }
1899
+ #
1900
+ # @!attribute [rw] cluster_name
1901
+ # The name of the cluster.
1902
+ # @return [String]
1903
+ #
1904
+ # @!attribute [rw] tags
1905
+ # A map of tags that you want the cluster to have.
1906
+ # @return [Hash<String,String>]
1907
+ #
1908
+ # @!attribute [rw] provisioned
1909
+ # Creates a provisioned cluster.
1910
+ # @return [Types::ProvisionedRequest]
1911
+ #
1912
+ # @!attribute [rw] serverless
1913
+ # Creates a serverless cluster.
1914
+ # @return [Types::ServerlessRequest]
1915
+ #
1916
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/CreateClusterV2Request AWS API Documentation
1917
+ #
1918
+ class CreateClusterV2Request < Struct.new(
1919
+ :cluster_name,
1920
+ :tags,
1921
+ :provisioned,
1922
+ :serverless)
1923
+ SENSITIVE = []
1924
+ include Aws::Structure
1925
+ end
1926
+
1927
+ # Returns information about the created cluster of either the
1928
+ # provisioned or the serverless type.
1929
+ #
1930
+ # @!attribute [rw] cluster_arn
1931
+ # The Amazon Resource Name (ARN) of the cluster.
1932
+ # @return [String]
1933
+ #
1934
+ # @!attribute [rw] cluster_name
1935
+ # The name of the MSK cluster.
1936
+ # @return [String]
1937
+ #
1938
+ # @!attribute [rw] state
1939
+ # The state of the cluster. The possible states are ACTIVE, CREATING,
1940
+ # DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING\_BROKER, and
1941
+ # UPDATING.
1942
+ # @return [String]
1943
+ #
1944
+ # @!attribute [rw] cluster_type
1945
+ # The type of the cluster. The possible types are PROVISIONED or
1946
+ # SERVERLESS.
1947
+ # @return [String]
1948
+ #
1949
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/CreateClusterV2Response AWS API Documentation
1950
+ #
1951
+ class CreateClusterV2Response < Struct.new(
1952
+ :cluster_arn,
1953
+ :cluster_name,
1954
+ :state,
1955
+ :cluster_type)
1956
+ SENSITIVE = []
1957
+ include Aws::Structure
1958
+ end
1959
+
1960
+ # @note When making an API call, you may pass DescribeClusterV2Request
1961
+ # data as a hash:
1962
+ #
1963
+ # {
1964
+ # cluster_arn: "__string", # required
1965
+ # }
1966
+ #
1967
+ # @!attribute [rw] cluster_arn
1968
+ # The Amazon Resource Name (ARN) that uniquely identifies the cluster.
1969
+ # @return [String]
1970
+ #
1971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/DescribeClusterV2Request AWS API Documentation
1972
+ #
1973
+ class DescribeClusterV2Request < Struct.new(
1974
+ :cluster_arn)
1975
+ SENSITIVE = []
1976
+ include Aws::Structure
1977
+ end
1978
+
1979
+ # Returns information about a cluster of either the provisioned or the
1980
+ # serverless type.
1981
+ #
1982
+ # @!attribute [rw] cluster_info
1983
+ # The cluster information.
1984
+ # @return [Types::Cluster]
1985
+ #
1986
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/DescribeClusterV2Response AWS API Documentation
1987
+ #
1988
+ class DescribeClusterV2Response < Struct.new(
1989
+ :cluster_info)
1990
+ SENSITIVE = []
1991
+ include Aws::Structure
1992
+ end
1993
+
1994
+ # Returns information about a cluster of either the provisioned or the
1995
+ # serverless type.
1996
+ #
1997
+ # @!attribute [rw] active_operation_arn
1998
+ # The Amazon Resource Name (ARN) that uniquely identifies a cluster
1999
+ # operation.
2000
+ # @return [String]
2001
+ #
2002
+ # @!attribute [rw] cluster_type
2003
+ # Cluster Type.
2004
+ # @return [String]
2005
+ #
2006
+ # @!attribute [rw] cluster_arn
2007
+ # The Amazon Resource Name (ARN) that uniquely identifies the cluster.
2008
+ # @return [String]
2009
+ #
2010
+ # @!attribute [rw] cluster_name
2011
+ # The name of the cluster.
2012
+ # @return [String]
2013
+ #
2014
+ # @!attribute [rw] creation_time
2015
+ # The time when the cluster was created.
2016
+ # @return [Time]
2017
+ #
2018
+ # @!attribute [rw] current_version
2019
+ # The current version of the MSK cluster.
2020
+ # @return [String]
2021
+ #
2022
+ # @!attribute [rw] state
2023
+ # The state of the cluster. The possible states are ACTIVE, CREATING,
2024
+ # DELETING, FAILED, HEALING, MAINTENANCE, REBOOTING\_BROKER, and
2025
+ # UPDATING.
2026
+ # @return [String]
2027
+ #
2028
+ # @!attribute [rw] state_info
2029
+ # State Info for the Amazon MSK cluster.
2030
+ # @return [Types::StateInfo]
2031
+ #
2032
+ # @!attribute [rw] tags
2033
+ # Tags attached to the cluster.
2034
+ # @return [Hash<String,String>]
2035
+ #
2036
+ # @!attribute [rw] provisioned
2037
+ # Information about the provisioned cluster.
2038
+ # @return [Types::Provisioned]
2039
+ #
2040
+ # @!attribute [rw] serverless
2041
+ # Information about the serverless cluster.
2042
+ # @return [Types::Serverless]
2043
+ #
2044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/Cluster AWS API Documentation
2045
+ #
2046
+ class Cluster < Struct.new(
2047
+ :active_operation_arn,
2048
+ :cluster_type,
2049
+ :cluster_arn,
2050
+ :cluster_name,
2051
+ :creation_time,
2052
+ :current_version,
2053
+ :state,
2054
+ :state_info,
2055
+ :tags,
2056
+ :provisioned,
2057
+ :serverless)
2058
+ SENSITIVE = []
2059
+ include Aws::Structure
2060
+ end
2061
+
2062
+ # Creates a provisioned cluster.
2063
+ #
2064
+ # @note When making an API call, you may pass ProvisionedRequest
2065
+ # data as a hash:
2066
+ #
2067
+ # {
2068
+ # broker_node_group_info: { # required
2069
+ # broker_az_distribution: "DEFAULT", # accepts DEFAULT
2070
+ # client_subnets: ["__string"], # required
2071
+ # instance_type: "__stringMin5Max32", # required
2072
+ # security_groups: ["__string"],
2073
+ # storage_info: {
2074
+ # ebs_storage_info: {
2075
+ # provisioned_throughput: {
2076
+ # enabled: false,
2077
+ # volume_throughput: 1,
2078
+ # },
2079
+ # volume_size: 1,
2080
+ # },
2081
+ # },
2082
+ # connectivity_info: {
2083
+ # public_access: {
2084
+ # type: "__string",
2085
+ # },
2086
+ # },
2087
+ # },
2088
+ # client_authentication: {
2089
+ # sasl: {
2090
+ # scram: {
2091
+ # enabled: false,
2092
+ # },
2093
+ # iam: {
2094
+ # enabled: false,
2095
+ # },
2096
+ # },
2097
+ # tls: {
2098
+ # certificate_authority_arn_list: ["__string"],
2099
+ # enabled: false,
2100
+ # },
2101
+ # unauthenticated: {
2102
+ # enabled: false,
2103
+ # },
2104
+ # },
2105
+ # configuration_info: {
2106
+ # arn: "__string", # required
2107
+ # revision: 1, # required
2108
+ # },
2109
+ # encryption_info: {
2110
+ # encryption_at_rest: {
2111
+ # data_volume_kms_key_id: "__string", # required
2112
+ # },
2113
+ # encryption_in_transit: {
2114
+ # client_broker: "TLS", # accepts TLS, TLS_PLAINTEXT, PLAINTEXT
2115
+ # in_cluster: false,
2116
+ # },
2117
+ # },
2118
+ # enhanced_monitoring: "DEFAULT", # accepts DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, PER_TOPIC_PER_PARTITION
2119
+ # open_monitoring: {
2120
+ # prometheus: { # required
2121
+ # jmx_exporter: {
2122
+ # enabled_in_broker: false, # required
2123
+ # },
2124
+ # node_exporter: {
2125
+ # enabled_in_broker: false, # required
2126
+ # },
2127
+ # },
2128
+ # },
2129
+ # kafka_version: "__stringMin1Max128", # required
2130
+ # logging_info: {
2131
+ # broker_logs: { # required
2132
+ # cloud_watch_logs: {
2133
+ # enabled: false, # required
2134
+ # log_group: "__string",
2135
+ # },
2136
+ # firehose: {
2137
+ # delivery_stream: "__string",
2138
+ # enabled: false, # required
2139
+ # },
2140
+ # s3: {
2141
+ # bucket: "__string",
2142
+ # enabled: false, # required
2143
+ # prefix: "__string",
2144
+ # },
2145
+ # },
2146
+ # },
2147
+ # number_of_broker_nodes: 1, # required
2148
+ # }
2149
+ #
2150
+ # @!attribute [rw] broker_node_group_info
2151
+ # Information about the brokers.
2152
+ # @return [Types::BrokerNodeGroupInfo]
2153
+ #
2154
+ # @!attribute [rw] client_authentication
2155
+ # Includes all client authentication related information.
2156
+ # @return [Types::ClientAuthentication]
2157
+ #
2158
+ # @!attribute [rw] configuration_info
2159
+ # Represents the configuration that you want MSK to use for the
2160
+ # cluster.
2161
+ # @return [Types::ConfigurationInfo]
2162
+ #
2163
+ # @!attribute [rw] encryption_info
2164
+ # Includes all encryption-related information.
2165
+ # @return [Types::EncryptionInfo]
2166
+ #
2167
+ # @!attribute [rw] enhanced_monitoring
2168
+ # Specifies the level of monitoring for the MSK cluster. The possible
2169
+ # values are DEFAULT, PER\_BROKER, PER\_TOPIC\_PER\_BROKER, and
2170
+ # PER\_TOPIC\_PER\_PARTITION.
2171
+ # @return [String]
2172
+ #
2173
+ # @!attribute [rw] open_monitoring
2174
+ # The settings for open monitoring.
2175
+ # @return [Types::OpenMonitoringInfo]
2176
+ #
2177
+ # @!attribute [rw] kafka_version
2178
+ # The Apache Kafka version that you want for the cluster.
2179
+ # @return [String]
2180
+ #
2181
+ # @!attribute [rw] logging_info
2182
+ # LoggingInfo details.
2183
+ # @return [Types::LoggingInfo]
2184
+ #
2185
+ # @!attribute [rw] number_of_broker_nodes
2186
+ # The number of brokers in the cluster.
2187
+ # @return [Integer]
2188
+ #
2189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ProvisionedRequest AWS API Documentation
2190
+ #
2191
+ class ProvisionedRequest < Struct.new(
2192
+ :broker_node_group_info,
2193
+ :client_authentication,
2194
+ :configuration_info,
2195
+ :encryption_info,
2196
+ :enhanced_monitoring,
2197
+ :open_monitoring,
2198
+ :kafka_version,
2199
+ :logging_info,
2200
+ :number_of_broker_nodes)
2201
+ SENSITIVE = []
2202
+ include Aws::Structure
2203
+ end
2204
+
2205
+ # Describes the provisioned cluster.
2206
+ #
2207
+ # @!attribute [rw] broker_node_group_info
2208
+ # Information about the brokers.
2209
+ # @return [Types::BrokerNodeGroupInfo]
2210
+ #
2211
+ # @!attribute [rw] current_broker_software_info
2212
+ # Information about the version of software currently deployed on the
2213
+ # Apache Kafka brokers in the cluster.
2214
+ # @return [Types::BrokerSoftwareInfo]
2215
+ #
2216
+ # @!attribute [rw] client_authentication
2217
+ # Includes all client authentication information.
2218
+ # @return [Types::ClientAuthentication]
2219
+ #
2220
+ # @!attribute [rw] encryption_info
2221
+ # Includes all encryption-related information.
2222
+ # @return [Types::EncryptionInfo]
2223
+ #
2224
+ # @!attribute [rw] enhanced_monitoring
2225
+ # Specifies which metrics are gathered for the MSK cluster. This
2226
+ # property has the following possible values: DEFAULT, PER\_BROKER,
2227
+ # PER\_TOPIC\_PER\_BROKER, and PER\_TOPIC\_PER\_PARTITION. For a list
2228
+ # of the metrics associated with each of these levels of monitoring,
2229
+ # see [Monitoring][1].
2230
+ #
2231
+ #
2232
+ #
2233
+ # [1]: https://docs.aws.amazon.com/msk/latest/developerguide/monitoring.html
2234
+ # @return [String]
2235
+ #
2236
+ # @!attribute [rw] open_monitoring
2237
+ # Settings for open monitoring using Prometheus.
2238
+ # @return [Types::OpenMonitoringInfo]
2239
+ #
2240
+ # @!attribute [rw] logging_info
2241
+ # You can configure your MSK cluster to send broker logs to different
2242
+ # destination types. This is a container for the configuration details
2243
+ # related to broker logs.
2244
+ # @return [Types::LoggingInfo]
2245
+ #
2246
+ # @!attribute [rw] number_of_broker_nodes
2247
+ # The number of brokers in the cluster.
2248
+ # @return [Integer]
2249
+ #
2250
+ # @!attribute [rw] zookeeper_connect_string
2251
+ # The connection string to use to connect to the Apache ZooKeeper
2252
+ # cluster.
2253
+ # @return [String]
2254
+ #
2255
+ # @!attribute [rw] zookeeper_connect_string_tls
2256
+ # The connection string to use to connect to the Apache ZooKeeper
2257
+ # cluster on a TLS port.
2258
+ # @return [String]
2259
+ #
2260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/Provisioned AWS API Documentation
2261
+ #
2262
+ class Provisioned < Struct.new(
2263
+ :broker_node_group_info,
2264
+ :current_broker_software_info,
2265
+ :client_authentication,
2266
+ :encryption_info,
2267
+ :enhanced_monitoring,
2268
+ :open_monitoring,
2269
+ :logging_info,
2270
+ :number_of_broker_nodes,
2271
+ :zookeeper_connect_string,
2272
+ :zookeeper_connect_string_tls)
2273
+ SENSITIVE = []
2274
+ include Aws::Structure
2275
+ end
2276
+
2277
+ # The configuration of the Amazon VPCs for the cluster.
2278
+ #
2279
+ # @note When making an API call, you may pass VpcConfig
2280
+ # data as a hash:
2281
+ #
2282
+ # {
2283
+ # subnet_ids: ["__string"], # required
2284
+ # security_group_ids: ["__string"],
2285
+ # }
2286
+ #
2287
+ # @!attribute [rw] subnet_ids
2288
+ # The IDs of the subnets associated with the cluster.
2289
+ # @return [Array<String>]
2290
+ #
2291
+ # @!attribute [rw] security_group_ids
2292
+ # The IDs of the security groups associated with the cluster.
2293
+ # @return [Array<String>]
2294
+ #
2295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/VpcConfig AWS API Documentation
2296
+ #
2297
+ class VpcConfig < Struct.new(
2298
+ :subnet_ids,
2299
+ :security_group_ids)
2300
+ SENSITIVE = []
2301
+ include Aws::Structure
2302
+ end
2303
+
2304
+ # Creates serverless cluster.
2305
+ #
2306
+ # @note When making an API call, you may pass ServerlessRequest
2307
+ # data as a hash:
2308
+ #
2309
+ # {
2310
+ # vpc_configs: [ # required
2311
+ # {
2312
+ # subnet_ids: ["__string"], # required
2313
+ # security_group_ids: ["__string"],
2314
+ # },
2315
+ # ],
2316
+ # client_authentication: {
2317
+ # sasl: {
2318
+ # iam: {
2319
+ # enabled: false,
2320
+ # },
2321
+ # },
2322
+ # },
2323
+ # }
2324
+ #
2325
+ # @!attribute [rw] vpc_configs
2326
+ # Information on vpc config for the serverless cluster.
2327
+ # @return [Array<Types::VpcConfig>]
2328
+ #
2329
+ # @!attribute [rw] client_authentication
2330
+ # Information about the serverless cluster client authentication.
2331
+ # @return [Types::ServerlessClientAuthentication]
2332
+ #
2333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ServerlessRequest AWS API Documentation
2334
+ #
2335
+ class ServerlessRequest < Struct.new(
2336
+ :vpc_configs,
2337
+ :client_authentication)
2338
+ SENSITIVE = []
2339
+ include Aws::Structure
2340
+ end
2341
+
2342
+ # Describes the serverless cluster client authentication.
2343
+ #
2344
+ # @note When making an API call, you may pass ServerlessClientAuthentication
2345
+ # data as a hash:
2346
+ #
2347
+ # {
2348
+ # sasl: {
2349
+ # iam: {
2350
+ # enabled: false,
2351
+ # },
2352
+ # },
2353
+ # }
2354
+ #
2355
+ # @!attribute [rw] sasl
2356
+ # Serverless cluster SASL information.
2357
+ # @return [Types::ServerlessSasl]
2358
+ #
2359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ServerlessClientAuthentication AWS API Documentation
2360
+ #
2361
+ class ServerlessClientAuthentication < Struct.new(
2362
+ :sasl)
2363
+ SENSITIVE = []
2364
+ include Aws::Structure
2365
+ end
2366
+
2367
+ # Describes the serverless cluster SASL information.
2368
+ #
2369
+ # @note When making an API call, you may pass ServerlessSasl
2370
+ # data as a hash:
2371
+ #
2372
+ # {
2373
+ # iam: {
2374
+ # enabled: false,
2375
+ # },
2376
+ # }
2377
+ #
2378
+ # @!attribute [rw] iam
2379
+ # Indicates whether IAM access control is enabled.
2380
+ # @return [Types::Iam]
2381
+ #
2382
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ServerlessSasl AWS API Documentation
2383
+ #
2384
+ class ServerlessSasl < Struct.new(
2385
+ :iam)
2386
+ SENSITIVE = []
2387
+ include Aws::Structure
2388
+ end
2389
+
2390
+ # Describes the serverless cluster.
2391
+ #
2392
+ # @!attribute [rw] vpc_configs
2393
+ # Information on vpc config for the serverless cluster.
2394
+ # @return [Array<Types::VpcConfig>]
2395
+ #
2396
+ # @!attribute [rw] client_authentication
2397
+ # Information about the serverless cluster client authentication.
2398
+ # @return [Types::ServerlessClientAuthentication]
2399
+ #
2400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/Serverless AWS API Documentation
2401
+ #
2402
+ class Serverless < Struct.new(
2403
+ :vpc_configs,
2404
+ :client_authentication)
2405
+ SENSITIVE = []
2406
+ include Aws::Structure
2407
+ end
2408
+
1699
2409
  # @note When making an API call, you may pass ListClustersRequest
1700
2410
  # data as a hash:
1701
2411
  #
@@ -2283,6 +2993,10 @@ module Aws::Kafka
2283
2993
  #
2284
2994
  # {
2285
2995
  # ebs_storage_info: {
2996
+ # provisioned_throughput: {
2997
+ # enabled: false,
2998
+ # volume_throughput: 1,
2999
+ # },
2286
3000
  # volume_size: 1,
2287
3001
  # },
2288
3002
  # }
@@ -2567,7 +3281,11 @@ module Aws::Kafka
2567
3281
  # target_broker_ebs_volume_info: [ # required
2568
3282
  # {
2569
3283
  # kafka_broker_node_id: "__string", # required
2570
- # volume_size_gb: 1, # required
3284
+ # provisioned_throughput: {
3285
+ # enabled: false,
3286
+ # volume_throughput: 1,
3287
+ # },
3288
+ # volume_size_gb: 1,
2571
3289
  # },
2572
3290
  # ],
2573
3291
  # }
@@ -3140,6 +3858,35 @@ module Aws::Kafka
3140
3858
  include Aws::Structure
3141
3859
  end
3142
3860
 
3861
+ # Contains information about provisioned throughput for EBS storage
3862
+ # volumes attached to kafka broker nodes.
3863
+ #
3864
+ # @note When making an API call, you may pass ProvisionedThroughput
3865
+ # data as a hash:
3866
+ #
3867
+ # {
3868
+ # enabled: false,
3869
+ # volume_throughput: 1,
3870
+ # }
3871
+ #
3872
+ # @!attribute [rw] enabled
3873
+ # Provisioned throughput is enabled or not.
3874
+ # @return [Boolean]
3875
+ #
3876
+ # @!attribute [rw] volume_throughput
3877
+ # Throughput value of the EBS volumes for the data drive on each kafka
3878
+ # broker node in MiB per second.
3879
+ # @return [Integer]
3880
+ #
3881
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kafka-2018-11-14/ProvisionedThroughput AWS API Documentation
3882
+ #
3883
+ class ProvisionedThroughput < Struct.new(
3884
+ :enabled,
3885
+ :volume_throughput)
3886
+ SENSITIVE = []
3887
+ include Aws::Structure
3888
+ end
3889
+
3143
3890
  # Broker public access control.
3144
3891
  #
3145
3892
  # @note When making an API call, you may pass PublicAccess