aws-sdk-ec2 1.362.0 → 1.364.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -697,7 +697,7 @@ module Aws::EC2
697
697
  # If you have the required permissions, the error response is
698
698
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
699
699
  #
700
- # @option params [String] :vpc_peering_connection_id
700
+ # @option params [required, String] :vpc_peering_connection_id
701
701
  # The ID of the VPC peering connection. You must specify this parameter
702
702
  # in the request.
703
703
  #
@@ -709,7 +709,7 @@ module Aws::EC2
709
709
  #
710
710
  # resp = client.accept_vpc_peering_connection({
711
711
  # dry_run: false,
712
- # vpc_peering_connection_id: "VpcPeeringConnectionIdWithResolver",
712
+ # vpc_peering_connection_id: "VpcPeeringConnectionIdWithResolver", # required
713
713
  # })
714
714
  #
715
715
  # @example Response structure
@@ -1454,6 +1454,68 @@ module Aws::EC2
1454
1454
  req.send_request(options)
1455
1455
  end
1456
1456
 
1457
+ # Assigns one or more private IPv4 addresses to a private NAT gateway.
1458
+ # For more information, see [Work with NAT gateways][1] in the *Amazon
1459
+ # Virtual Private Cloud User Guide*.
1460
+ #
1461
+ #
1462
+ #
1463
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with
1464
+ #
1465
+ # @option params [required, String] :nat_gateway_id
1466
+ # The NAT gateway ID.
1467
+ #
1468
+ # @option params [Array<String>] :private_ip_addresses
1469
+ # The private IPv4 addresses you want to assign to the private NAT
1470
+ # gateway.
1471
+ #
1472
+ # @option params [Integer] :private_ip_address_count
1473
+ # The number of private IP addresses to assign to the NAT gateway. You
1474
+ # can't specify this parameter when also specifying private IP
1475
+ # addresses.
1476
+ #
1477
+ # @option params [Boolean] :dry_run
1478
+ # Checks whether you have the required permissions for the action,
1479
+ # without actually making the request, and provides an error response.
1480
+ # If you have the required permissions, the error response is
1481
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1482
+ #
1483
+ # @return [Types::AssignPrivateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1484
+ #
1485
+ # * {Types::AssignPrivateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
1486
+ # * {Types::AssignPrivateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
1487
+ #
1488
+ # @example Request syntax with placeholder values
1489
+ #
1490
+ # resp = client.assign_private_nat_gateway_address({
1491
+ # nat_gateway_id: "NatGatewayId", # required
1492
+ # private_ip_addresses: ["String"],
1493
+ # private_ip_address_count: 1,
1494
+ # dry_run: false,
1495
+ # })
1496
+ #
1497
+ # @example Response structure
1498
+ #
1499
+ # resp.nat_gateway_id #=> String
1500
+ # resp.nat_gateway_addresses #=> Array
1501
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
1502
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
1503
+ # resp.nat_gateway_addresses[0].private_ip #=> String
1504
+ # resp.nat_gateway_addresses[0].public_ip #=> String
1505
+ # resp.nat_gateway_addresses[0].association_id #=> String
1506
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
1507
+ # resp.nat_gateway_addresses[0].failure_message #=> String
1508
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
1509
+ #
1510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateNatGatewayAddress AWS API Documentation
1511
+ #
1512
+ # @overload assign_private_nat_gateway_address(params = {})
1513
+ # @param [Hash] params ({})
1514
+ def assign_private_nat_gateway_address(params = {}, options = {})
1515
+ req = build_request(:assign_private_nat_gateway_address, params)
1516
+ req.send_request(options)
1517
+ end
1518
+
1457
1519
  # Associates an Elastic IP address, or carrier IP address (for instances
1458
1520
  # that are in subnets in Wavelength Zones) with an instance or a network
1459
1521
  # interface. Before you can use an Elastic IP address, you must allocate
@@ -1771,10 +1833,10 @@ module Aws::EC2
1771
1833
  # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html
1772
1834
  # [2]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html#add-policy
1773
1835
  #
1774
- # @option params [String] :certificate_arn
1836
+ # @option params [required, String] :certificate_arn
1775
1837
  # The ARN of the ACM certificate with which to associate the IAM role.
1776
1838
  #
1777
- # @option params [String] :role_arn
1839
+ # @option params [required, String] :role_arn
1778
1840
  # The ARN of the IAM role to associate with the ACM certificate. You can
1779
1841
  # associate up to 16 IAM roles with an ACM certificate.
1780
1842
  #
@@ -1793,8 +1855,8 @@ module Aws::EC2
1793
1855
  # @example Request syntax with placeholder values
1794
1856
  #
1795
1857
  # resp = client.associate_enclave_certificate_iam_role({
1796
- # certificate_arn: "CertificateId",
1797
- # role_arn: "RoleId",
1858
+ # certificate_arn: "CertificateId", # required
1859
+ # role_arn: "RoleId", # required
1798
1860
  # dry_run: false,
1799
1861
  # })
1800
1862
  #
@@ -1956,8 +2018,8 @@ module Aws::EC2
1956
2018
  end
1957
2019
 
1958
2020
  # Associates an IPAM resource discovery with an Amazon VPC IPAM. A
1959
- # resource discovery is an IPAM component that enables IPAM Service to
1960
- # manage and monitor resources that belong to the owning account.
2021
+ # resource discovery is an IPAM component that enables IPAM to manage
2022
+ # and monitor resources that belong to the owning account.
1961
2023
  #
1962
2024
  # @option params [Boolean] :dry_run
1963
2025
  # A check for whether you have the required permissions for the action
@@ -2029,6 +2091,72 @@ module Aws::EC2
2029
2091
  req.send_request(options)
2030
2092
  end
2031
2093
 
2094
+ # Associates Elastic IP addresses (EIPs) and private IPv4 addresses with
2095
+ # a public NAT gateway. For more information, see [Work with NAT
2096
+ # gateways][1] in the *Amazon Virtual Private Cloud User Guide*.
2097
+ #
2098
+ # By default, you can associate up to 2 Elastic IP addresses per public
2099
+ # NAT gateway. You can increase the limit by requesting a quota
2100
+ # adjustment. For more information, see [Elastic IP address quotas][2]
2101
+ # in the *Amazon Virtual Private Cloud User Guide*.
2102
+ #
2103
+ #
2104
+ #
2105
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with
2106
+ # [2]: https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-eips
2107
+ #
2108
+ # @option params [required, String] :nat_gateway_id
2109
+ # The NAT gateway ID.
2110
+ #
2111
+ # @option params [required, Array<String>] :allocation_ids
2112
+ # The allocation IDs of EIPs that you want to associate with your NAT
2113
+ # gateway.
2114
+ #
2115
+ # @option params [Array<String>] :private_ip_addresses
2116
+ # The private IPv4 addresses that you want to assign to the NAT gateway.
2117
+ #
2118
+ # @option params [Boolean] :dry_run
2119
+ # Checks whether you have the required permissions for the action,
2120
+ # without actually making the request, and provides an error response.
2121
+ # If you have the required permissions, the error response is
2122
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
2123
+ #
2124
+ # @return [Types::AssociateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2125
+ #
2126
+ # * {Types::AssociateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
2127
+ # * {Types::AssociateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
2128
+ #
2129
+ # @example Request syntax with placeholder values
2130
+ #
2131
+ # resp = client.associate_nat_gateway_address({
2132
+ # nat_gateway_id: "NatGatewayId", # required
2133
+ # allocation_ids: ["AllocationId"], # required
2134
+ # private_ip_addresses: ["String"],
2135
+ # dry_run: false,
2136
+ # })
2137
+ #
2138
+ # @example Response structure
2139
+ #
2140
+ # resp.nat_gateway_id #=> String
2141
+ # resp.nat_gateway_addresses #=> Array
2142
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
2143
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
2144
+ # resp.nat_gateway_addresses[0].private_ip #=> String
2145
+ # resp.nat_gateway_addresses[0].public_ip #=> String
2146
+ # resp.nat_gateway_addresses[0].association_id #=> String
2147
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
2148
+ # resp.nat_gateway_addresses[0].failure_message #=> String
2149
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
2150
+ #
2151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateNatGatewayAddress AWS API Documentation
2152
+ #
2153
+ # @overload associate_nat_gateway_address(params = {})
2154
+ # @param [Hash] params ({})
2155
+ def associate_nat_gateway_address(params = {}, options = {})
2156
+ req = build_request(:associate_nat_gateway_address, params)
2157
+ req.send_request(options)
2158
+ end
2159
+
2032
2160
  # Associates a subnet in your VPC or an internet gateway or virtual
2033
2161
  # private gateway attached to your VPC with a route table in your VPC.
2034
2162
  # This association causes traffic from the subnet or gateway to be
@@ -2153,14 +2281,14 @@ module Aws::EC2
2153
2281
  #
2154
2282
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTransitGatewayAttachments.html
2155
2283
  #
2156
- # @option params [String] :transit_gateway_multicast_domain_id
2284
+ # @option params [required, String] :transit_gateway_multicast_domain_id
2157
2285
  # The ID of the transit gateway multicast domain.
2158
2286
  #
2159
- # @option params [String] :transit_gateway_attachment_id
2287
+ # @option params [required, String] :transit_gateway_attachment_id
2160
2288
  # The ID of the transit gateway attachment to associate with the transit
2161
2289
  # gateway multicast domain.
2162
2290
  #
2163
- # @option params [Array<String>] :subnet_ids
2291
+ # @option params [required, Array<String>] :subnet_ids
2164
2292
  # The IDs of the subnets to associate with the transit gateway multicast
2165
2293
  # domain.
2166
2294
  #
@@ -2177,9 +2305,9 @@ module Aws::EC2
2177
2305
  # @example Request syntax with placeholder values
2178
2306
  #
2179
2307
  # resp = client.associate_transit_gateway_multicast_domain({
2180
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
2181
- # transit_gateway_attachment_id: "TransitGatewayAttachmentId",
2182
- # subnet_ids: ["SubnetId"],
2308
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
2309
+ # transit_gateway_attachment_id: "TransitGatewayAttachmentId", # required
2310
+ # subnet_ids: ["SubnetId"], # required
2183
2311
  # dry_run: false,
2184
2312
  # })
2185
2313
  #
@@ -4595,7 +4723,7 @@ module Aws::EC2
4595
4723
  # destination_region: "String",
4596
4724
  # encrypted: false,
4597
4725
  # kms_key_id: "KmsKeyId",
4598
- # presigned_url: "String",
4726
+ # presigned_url: "CopySnapshotRequestPSU",
4599
4727
  # source_region: "String", # required
4600
4728
  # source_snapshot_id: "String", # required
4601
4729
  # tag_specifications: [
@@ -6027,6 +6155,8 @@ module Aws::EC2
6027
6155
  # target capacity of the EC2 Fleet is decreased below the current size
6028
6156
  # of the EC2 Fleet.
6029
6157
  #
6158
+ # Supported only for fleets of type `maintain`.
6159
+ #
6030
6160
  # @option params [required, Array<Types::FleetLaunchTemplateConfigRequest>] :launch_template_configs
6031
6161
  # The configuration for the EC2 Fleet.
6032
6162
  #
@@ -7454,8 +7584,8 @@ module Aws::EC2
7454
7584
  end
7455
7585
 
7456
7586
  # Creates an IPAM resource discovery. A resource discovery is an IPAM
7457
- # component that enables IPAM Service to manage and monitor resources
7458
- # that belong to the owning account.
7587
+ # component that enables IPAM to manage and monitor resources that
7588
+ # belong to the owning account.
7459
7589
  #
7460
7590
  # @option params [Boolean] :dry_run
7461
7591
  # A check for whether you have the required permissions for the action
@@ -9019,7 +9149,7 @@ module Aws::EC2
9019
9149
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
9020
9150
  #
9021
9151
  # @option params [required, String] :subnet_id
9022
- # The subnet in which to create the NAT gateway.
9152
+ # The ID of the subnet in which to create the NAT gateway.
9023
9153
  #
9024
9154
  # @option params [Array<Types::TagSpecification>] :tag_specifications
9025
9155
  # The tags to assign to the NAT gateway.
@@ -9033,6 +9163,34 @@ module Aws::EC2
9033
9163
  # provide an address, a private IPv4 address will be automatically
9034
9164
  # assigned.
9035
9165
  #
9166
+ # @option params [Array<String>] :secondary_allocation_ids
9167
+ # Secondary EIP allocation IDs. For more information about secondary
9168
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
9169
+ # Private Cloud User Guide*.
9170
+ #
9171
+ #
9172
+ #
9173
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9174
+ #
9175
+ # @option params [Array<String>] :secondary_private_ip_addresses
9176
+ # Secondary private IPv4 addresses. For more information about secondary
9177
+ # addresses, see [Create a NAT gateway][1] in the *Amazon Virtual
9178
+ # Private Cloud User Guide*.
9179
+ #
9180
+ #
9181
+ #
9182
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9183
+ #
9184
+ # @option params [Integer] :secondary_private_ip_address_count
9185
+ # \[Private NAT gateway only\] The number of secondary private IPv4
9186
+ # addresses you want to assign to the NAT gateway. For more information
9187
+ # about secondary addresses, see [Create a NAT gateway][1] in the
9188
+ # *Amazon Virtual Private Cloud User Guide*.
9189
+ #
9190
+ #
9191
+ #
9192
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating
9193
+ #
9036
9194
  # @return [Types::CreateNatGatewayResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9037
9195
  #
9038
9196
  # * {Types::CreateNatGatewayResult#client_token #client_token} => String
@@ -9085,6 +9243,9 @@ module Aws::EC2
9085
9243
  # ],
9086
9244
  # connectivity_type: "private", # accepts private, public
9087
9245
  # private_ip_address: "String",
9246
+ # secondary_allocation_ids: ["AllocationId"],
9247
+ # secondary_private_ip_addresses: ["String"],
9248
+ # secondary_private_ip_address_count: 1,
9088
9249
  # })
9089
9250
  #
9090
9251
  # @example Response structure
@@ -9099,6 +9260,10 @@ module Aws::EC2
9099
9260
  # resp.nat_gateway.nat_gateway_addresses[0].network_interface_id #=> String
9100
9261
  # resp.nat_gateway.nat_gateway_addresses[0].private_ip #=> String
9101
9262
  # resp.nat_gateway.nat_gateway_addresses[0].public_ip #=> String
9263
+ # resp.nat_gateway.nat_gateway_addresses[0].association_id #=> String
9264
+ # resp.nat_gateway.nat_gateway_addresses[0].is_primary #=> Boolean
9265
+ # resp.nat_gateway.nat_gateway_addresses[0].failure_message #=> String
9266
+ # resp.nat_gateway.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
9102
9267
  # resp.nat_gateway.nat_gateway_id #=> String
9103
9268
  # resp.nat_gateway.provisioned_bandwidth.provision_time #=> Time
9104
9269
  # resp.nat_gateway.provisioned_bandwidth.provisioned #=> String
@@ -13554,6 +13719,9 @@ module Aws::EC2
13554
13719
  #
13555
13720
  # * Magnetic: `standard`
13556
13721
  #
13722
+ # Throughput Optimized HDD (`st1`) and Cold HDD (`sc1`) volumes can't
13723
+ # be used as boot volumes.
13724
+ #
13557
13725
  # For more information, see [Amazon EBS volume types][1] in the *Amazon
13558
13726
  # Elastic Compute Cloud User Guide*.
13559
13727
  #
@@ -14344,7 +14512,7 @@ module Aws::EC2
14344
14512
  # The ID of the VPC with which you are creating the VPC peering
14345
14513
  # connection. You must specify this parameter in the request.
14346
14514
  #
14347
- # @option params [String] :vpc_id
14515
+ # @option params [required, String] :vpc_id
14348
14516
  # The ID of the requester VPC. You must specify this parameter in the
14349
14517
  # request.
14350
14518
  #
@@ -14367,7 +14535,7 @@ module Aws::EC2
14367
14535
  # dry_run: false,
14368
14536
  # peer_owner_id: "String",
14369
14537
  # peer_vpc_id: "String",
14370
- # vpc_id: "VpcId",
14538
+ # vpc_id: "VpcId", # required
14371
14539
  # peer_region: "String",
14372
14540
  # tag_specifications: [
14373
14541
  # {
@@ -15502,8 +15670,8 @@ module Aws::EC2
15502
15670
  end
15503
15671
 
15504
15672
  # Deletes an IPAM resource discovery. A resource discovery is an IPAM
15505
- # component that enables IPAM Service to manage and monitor resources
15506
- # that belong to the owning account.
15673
+ # component that enables IPAM to manage and monitor resources that
15674
+ # belong to the owning account.
15507
15675
  #
15508
15676
  # @option params [Boolean] :dry_run
15509
15677
  # A check for whether you have the required permissions for the action
@@ -24794,8 +24962,8 @@ module Aws::EC2
24794
24962
  end
24795
24963
 
24796
24964
  # Describes IPAM resource discoveries. A resource discovery is an IPAM
24797
- # component that enables IPAM Service to manage and monitor resources
24798
- # that belong to the owning account.
24965
+ # component that enables IPAM to manage and monitor resources that
24966
+ # belong to the owning account.
24799
24967
  #
24800
24968
  # @option params [Boolean] :dry_run
24801
24969
  # A check for whether you have the required permissions for the action
@@ -26542,6 +26710,10 @@ module Aws::EC2
26542
26710
  # resp.nat_gateways[0].nat_gateway_addresses[0].network_interface_id #=> String
26543
26711
  # resp.nat_gateways[0].nat_gateway_addresses[0].private_ip #=> String
26544
26712
  # resp.nat_gateways[0].nat_gateway_addresses[0].public_ip #=> String
26713
+ # resp.nat_gateways[0].nat_gateway_addresses[0].association_id #=> String
26714
+ # resp.nat_gateways[0].nat_gateway_addresses[0].is_primary #=> Boolean
26715
+ # resp.nat_gateways[0].nat_gateway_addresses[0].failure_message #=> String
26716
+ # resp.nat_gateways[0].nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
26545
26717
  # resp.nat_gateways[0].nat_gateway_id #=> String
26546
26718
  # resp.nat_gateways[0].provisioned_bandwidth.provision_time #=> Time
26547
26719
  # resp.nat_gateways[0].provisioned_bandwidth.provisioned #=> String
@@ -36935,11 +37107,11 @@ module Aws::EC2
36935
37107
  # used to encrypt the private key. This effectively revokes the role's
36936
37108
  # permission to use the certificate.
36937
37109
  #
36938
- # @option params [String] :certificate_arn
37110
+ # @option params [required, String] :certificate_arn
36939
37111
  # The ARN of the ACM certificate from which to disassociate the IAM
36940
37112
  # role.
36941
37113
  #
36942
- # @option params [String] :role_arn
37114
+ # @option params [required, String] :role_arn
36943
37115
  # The ARN of the IAM role to disassociate.
36944
37116
  #
36945
37117
  # @option params [Boolean] :dry_run
@@ -36955,8 +37127,8 @@ module Aws::EC2
36955
37127
  # @example Request syntax with placeholder values
36956
37128
  #
36957
37129
  # resp = client.disassociate_enclave_certificate_iam_role({
36958
- # certificate_arn: "CertificateId",
36959
- # role_arn: "RoleId",
37130
+ # certificate_arn: "CertificateId", # required
37131
+ # role_arn: "RoleId", # required
36960
37132
  # dry_run: false,
36961
37133
  # })
36962
37134
  #
@@ -37105,8 +37277,8 @@ module Aws::EC2
37105
37277
  end
37106
37278
 
37107
37279
  # Disassociates a resource discovery from an Amazon VPC IPAM. A resource
37108
- # discovery is an IPAM component that enables IPAM Service to manage and
37109
- # monitor resources that belong to the owning account.
37280
+ # discovery is an IPAM component that enables IPAM to manage and monitor
37281
+ # resources that belong to the owning account.
37110
37282
  #
37111
37283
  # @option params [Boolean] :dry_run
37112
37284
  # A check for whether you have the required permissions for the action
@@ -37153,6 +37325,80 @@ module Aws::EC2
37153
37325
  req.send_request(options)
37154
37326
  end
37155
37327
 
37328
+ # Disassociates secondary Elastic IP addresses (EIPs) from a public NAT
37329
+ # gateway. You cannot disassociate your primary EIP. For more
37330
+ # information, see [Edit secondary IP address associations][1] in the
37331
+ # *Amazon Virtual Private Cloud User Guide*.
37332
+ #
37333
+ # While disassociating is in progress, you cannot associate/disassociate
37334
+ # additional EIPs while the connections are being drained. You are,
37335
+ # however, allowed to delete the NAT gateway.
37336
+ #
37337
+ # An EIP will only be released at the end of MaxDrainDurationSeconds.
37338
+ # The EIPs stay associated and support the existing connections but do
37339
+ # not support any new connections (new connections are distributed
37340
+ # across the remaining associated EIPs). As the existing connections
37341
+ # drain out, the EIPs (and the corresponding private IPs mapped to them)
37342
+ # get released.
37343
+ #
37344
+ #
37345
+ #
37346
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary
37347
+ #
37348
+ # @option params [required, String] :nat_gateway_id
37349
+ # The NAT gateway ID.
37350
+ #
37351
+ # @option params [required, Array<String>] :association_ids
37352
+ # The association IDs of EIPs that have been associated with the NAT
37353
+ # gateway.
37354
+ #
37355
+ # @option params [Integer] :max_drain_duration_seconds
37356
+ # The maximum amount of time to wait (in seconds) before forcibly
37357
+ # releasing the IP addresses if connections are still in progress.
37358
+ # Default value is 350 seconds.
37359
+ #
37360
+ # @option params [Boolean] :dry_run
37361
+ # Checks whether you have the required permissions for the action,
37362
+ # without actually making the request, and provides an error response.
37363
+ # If you have the required permissions, the error response is
37364
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
37365
+ #
37366
+ # @return [Types::DisassociateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
37367
+ #
37368
+ # * {Types::DisassociateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
37369
+ # * {Types::DisassociateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
37370
+ #
37371
+ # @example Request syntax with placeholder values
37372
+ #
37373
+ # resp = client.disassociate_nat_gateway_address({
37374
+ # nat_gateway_id: "NatGatewayId", # required
37375
+ # association_ids: ["ElasticIpAssociationId"], # required
37376
+ # max_drain_duration_seconds: 1,
37377
+ # dry_run: false,
37378
+ # })
37379
+ #
37380
+ # @example Response structure
37381
+ #
37382
+ # resp.nat_gateway_id #=> String
37383
+ # resp.nat_gateway_addresses #=> Array
37384
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
37385
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
37386
+ # resp.nat_gateway_addresses[0].private_ip #=> String
37387
+ # resp.nat_gateway_addresses[0].public_ip #=> String
37388
+ # resp.nat_gateway_addresses[0].association_id #=> String
37389
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
37390
+ # resp.nat_gateway_addresses[0].failure_message #=> String
37391
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
37392
+ #
37393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddress AWS API Documentation
37394
+ #
37395
+ # @overload disassociate_nat_gateway_address(params = {})
37396
+ # @param [Hash] params ({})
37397
+ def disassociate_nat_gateway_address(params = {}, options = {})
37398
+ req = build_request(:disassociate_nat_gateway_address, params)
37399
+ req.send_request(options)
37400
+ end
37401
+
37156
37402
  # Disassociates a subnet or gateway from a route table.
37157
37403
  #
37158
37404
  # After you perform this action, the subnet no longer uses the routes in
@@ -37240,13 +37486,13 @@ module Aws::EC2
37240
37486
  # Disassociates the specified subnets from the transit gateway multicast
37241
37487
  # domain.
37242
37488
  #
37243
- # @option params [String] :transit_gateway_multicast_domain_id
37489
+ # @option params [required, String] :transit_gateway_multicast_domain_id
37244
37490
  # The ID of the transit gateway multicast domain.
37245
37491
  #
37246
- # @option params [String] :transit_gateway_attachment_id
37492
+ # @option params [required, String] :transit_gateway_attachment_id
37247
37493
  # The ID of the attachment.
37248
37494
  #
37249
- # @option params [Array<String>] :subnet_ids
37495
+ # @option params [required, Array<String>] :subnet_ids
37250
37496
  # The IDs of the subnets;
37251
37497
  #
37252
37498
  # @option params [Boolean] :dry_run
@@ -37262,9 +37508,9 @@ module Aws::EC2
37262
37508
  # @example Request syntax with placeholder values
37263
37509
  #
37264
37510
  # resp = client.disassociate_transit_gateway_multicast_domain({
37265
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
37266
- # transit_gateway_attachment_id: "TransitGatewayAttachmentId",
37267
- # subnet_ids: ["SubnetId"],
37511
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
37512
+ # transit_gateway_attachment_id: "TransitGatewayAttachmentId", # required
37513
+ # subnet_ids: ["SubnetId"], # required
37268
37514
  # dry_run: false,
37269
37515
  # })
37270
37516
  #
@@ -38479,7 +38725,7 @@ module Aws::EC2
38479
38725
  # encrypted private key bundle are stored, and the ARN of the KMS key
38480
38726
  # that's used to encrypt the private key.
38481
38727
  #
38482
- # @option params [String] :certificate_arn
38728
+ # @option params [required, String] :certificate_arn
38483
38729
  # The ARN of the ACM certificate for which to view the associated IAM
38484
38730
  # roles, encryption keys, and Amazon S3 object information.
38485
38731
  #
@@ -38496,7 +38742,7 @@ module Aws::EC2
38496
38742
  # @example Request syntax with placeholder values
38497
38743
  #
38498
38744
  # resp = client.get_associated_enclave_certificate_iam_roles({
38499
- # certificate_arn: "CertificateId",
38745
+ # certificate_arn: "CertificateId", # required
38500
38746
  # dry_run: false,
38501
38747
  # })
38502
38748
  #
@@ -39784,8 +40030,8 @@ module Aws::EC2
39784
40030
  # Returns resource CIDRs managed by IPAM in a given scope. If an IPAM is
39785
40031
  # associated with more than one resource discovery, the resource CIDRs
39786
40032
  # across all of the resource discoveries is returned. A resource
39787
- # discovery is an IPAM component that enables IPAM Service to manage and
39788
- # monitor resources that belong to the owning account.
40033
+ # discovery is an IPAM component that enables IPAM to manage and monitor
40034
+ # resources that belong to the owning account.
39789
40035
  #
39790
40036
  # @option params [Boolean] :dry_run
39791
40037
  # A check for whether you have the required permissions for the action
@@ -41154,7 +41400,7 @@ module Aws::EC2
41154
41400
  # Gets information about the associations for the transit gateway
41155
41401
  # multicast domain.
41156
41402
  #
41157
- # @option params [String] :transit_gateway_multicast_domain_id
41403
+ # @option params [required, String] :transit_gateway_multicast_domain_id
41158
41404
  # The ID of the transit gateway multicast domain.
41159
41405
  #
41160
41406
  # @option params [Array<Types::Filter>] :filters
@@ -41197,7 +41443,7 @@ module Aws::EC2
41197
41443
  # @example Request syntax with placeholder values
41198
41444
  #
41199
41445
  # resp = client.get_transit_gateway_multicast_domain_associations({
41200
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
41446
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
41201
41447
  # filters: [
41202
41448
  # {
41203
41449
  # name: "String",
@@ -43245,6 +43491,8 @@ module Aws::EC2
43245
43491
  # target capacity of the EC2 Fleet is decreased below the current size
43246
43492
  # of the EC2 Fleet.
43247
43493
  #
43494
+ # Supported only for fleets of type `maintain`.
43495
+ #
43248
43496
  # @option params [Array<Types::FleetLaunchTemplateConfigRequest>] :launch_template_configs
43249
43497
  # The launch template and overrides.
43250
43498
  #
@@ -44161,7 +44409,7 @@ module Aws::EC2
44161
44409
  # client_token: "String",
44162
44410
  # instance_credit_specifications: [ # required
44163
44411
  # {
44164
- # instance_id: "InstanceId",
44412
+ # instance_id: "InstanceId", # required
44165
44413
  # cpu_credits: "String",
44166
44414
  # },
44167
44415
  # ],
@@ -44908,8 +45156,8 @@ module Aws::EC2
44908
45156
  end
44909
45157
 
44910
45158
  # Modifies a resource discovery. A resource discovery is an IPAM
44911
- # component that enables IPAM Service to manage and monitor resources
44912
- # that belong to the owning account.
45159
+ # component that enables IPAM to manage and monitor resources that
45160
+ # belong to the owning account.
44913
45161
  #
44914
45162
  # @option params [Boolean] :dry_run
44915
45163
  # A check for whether you have the required permissions for the action
@@ -45405,7 +45653,7 @@ module Aws::EC2
45405
45653
  # If you have the required permissions, the error response is
45406
45654
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
45407
45655
  #
45408
- # @option params [String] :instance_id
45656
+ # @option params [required, String] :instance_id
45409
45657
  # The ID of the instance.
45410
45658
  #
45411
45659
  # @option params [String] :private_dns_hostname_type
@@ -45431,7 +45679,7 @@ module Aws::EC2
45431
45679
  #
45432
45680
  # resp = client.modify_private_dns_name_options({
45433
45681
  # dry_run: false,
45434
- # instance_id: "InstanceId",
45682
+ # instance_id: "InstanceId", # required
45435
45683
  # private_dns_hostname_type: "ip-name", # accepts ip-name, resource-name
45436
45684
  # enable_resource_name_dns_a_record: false,
45437
45685
  # enable_resource_name_dns_aaaa_record: false,
@@ -45542,7 +45790,7 @@ module Aws::EC2
45542
45790
  # group_id: "SecurityGroupId", # required
45543
45791
  # security_group_rules: [ # required
45544
45792
  # {
45545
- # security_group_rule_id: "SecurityGroupRuleId",
45793
+ # security_group_rule_id: "SecurityGroupRuleId", # required
45546
45794
  # security_group_rule: {
45547
45795
  # ip_protocol: "String",
45548
45796
  # from_port: 1,
@@ -45772,9 +46020,11 @@ module Aws::EC2
45772
46020
  # again later, you can set the target capacity to 0.
45773
46021
  #
45774
46022
  # @option params [String] :excess_capacity_termination_policy
45775
- # Indicates whether running Spot Instances should be terminated if the
45776
- # target capacity of the Spot Fleet request is decreased below the
45777
- # current size of the Spot Fleet.
46023
+ # Indicates whether running instances should be terminated if the target
46024
+ # capacity of the Spot Fleet request is decreased below the current size
46025
+ # of the Spot Fleet.
46026
+ #
46027
+ # Supported only for fleets of type `maintain`.
45778
46028
  #
45779
46029
  # @option params [Array<Types::LaunchTemplateConfig>] :launch_template_configs
45780
46030
  # The launch template and overrides. You can only use this parameter if
@@ -49479,13 +49729,13 @@ module Aws::EC2
49479
49729
  # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-limits.html#multicast-limits
49480
49730
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html
49481
49731
  #
49482
- # @option params [String] :transit_gateway_multicast_domain_id
49732
+ # @option params [required, String] :transit_gateway_multicast_domain_id
49483
49733
  # The ID of the transit gateway multicast domain.
49484
49734
  #
49485
49735
  # @option params [String] :group_ip_address
49486
49736
  # The IP address assigned to the transit gateway multicast group.
49487
49737
  #
49488
- # @option params [Array<String>] :network_interface_ids
49738
+ # @option params [required, Array<String>] :network_interface_ids
49489
49739
  # The group members' network interface IDs to register with the transit
49490
49740
  # gateway multicast group.
49491
49741
  #
@@ -49502,9 +49752,9 @@ module Aws::EC2
49502
49752
  # @example Request syntax with placeholder values
49503
49753
  #
49504
49754
  # resp = client.register_transit_gateway_multicast_group_members({
49505
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
49755
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
49506
49756
  # group_ip_address: "String",
49507
- # network_interface_ids: ["NetworkInterfaceId"],
49757
+ # network_interface_ids: ["NetworkInterfaceId"], # required
49508
49758
  # dry_run: false,
49509
49759
  # })
49510
49760
  #
@@ -49540,13 +49790,13 @@ module Aws::EC2
49540
49790
  # [1]: https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-limits.html#multicast-limits
49541
49791
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html
49542
49792
  #
49543
- # @option params [String] :transit_gateway_multicast_domain_id
49793
+ # @option params [required, String] :transit_gateway_multicast_domain_id
49544
49794
  # The ID of the transit gateway multicast domain.
49545
49795
  #
49546
49796
  # @option params [String] :group_ip_address
49547
49797
  # The IP address assigned to the transit gateway multicast group.
49548
49798
  #
49549
- # @option params [Array<String>] :network_interface_ids
49799
+ # @option params [required, Array<String>] :network_interface_ids
49550
49800
  # The group sources' network interface IDs to register with the transit
49551
49801
  # gateway multicast group.
49552
49802
  #
@@ -49563,9 +49813,9 @@ module Aws::EC2
49563
49813
  # @example Request syntax with placeholder values
49564
49814
  #
49565
49815
  # resp = client.register_transit_gateway_multicast_group_sources({
49566
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
49816
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
49567
49817
  # group_ip_address: "String",
49568
- # network_interface_ids: ["NetworkInterfaceId"],
49818
+ # network_interface_ids: ["NetworkInterfaceId"], # required
49569
49819
  # dry_run: false,
49570
49820
  # })
49571
49821
  #
@@ -53583,7 +53833,7 @@ module Aws::EC2
53583
53833
  # Searches one or more transit gateway multicast groups and returns the
53584
53834
  # group membership information.
53585
53835
  #
53586
- # @option params [String] :transit_gateway_multicast_domain_id
53836
+ # @option params [required, String] :transit_gateway_multicast_domain_id
53587
53837
  # The ID of the transit gateway multicast domain.
53588
53838
  #
53589
53839
  # @option params [Array<Types::Filter>] :filters
@@ -53638,7 +53888,7 @@ module Aws::EC2
53638
53888
  # @example Request syntax with placeholder values
53639
53889
  #
53640
53890
  # resp = client.search_transit_gateway_multicast_groups({
53641
- # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId",
53891
+ # transit_gateway_multicast_domain_id: "TransitGatewayMulticastDomainId", # required
53642
53892
  # filters: [
53643
53893
  # {
53644
53894
  # name: "String",
@@ -55164,6 +55414,83 @@ module Aws::EC2
55164
55414
  req.send_request(options)
55165
55415
  end
55166
55416
 
55417
+ # Unassigns secondary private NAT gateway IPv4 addresses from a private
55418
+ # NAT gateway. You cannot unassign your primary private IP. For more
55419
+ # information, see [Edit secondary IP address associations][1] in the
55420
+ # *Amazon Virtual Private Cloud User Guide*.
55421
+ #
55422
+ # While unassigning is in progress, you cannot assign/unassign
55423
+ # additional IP addresses while the connections are being drained. You
55424
+ # are, however, allowed to delete the NAT gateway.
55425
+ #
55426
+ # A private IP address will only be released at the end of
55427
+ # MaxDrainDurationSeconds. The private IP addresses stay associated and
55428
+ # support the existing connections but do not support any new
55429
+ # connections (new connections are distributed across the remaining
55430
+ # assigned private IP address). After the existing connections drain
55431
+ # out, the private IP addresses get released.
55432
+ #
55433
+ #
55434
+ #
55435
+ #
55436
+ #
55437
+ #
55438
+ #
55439
+ # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-edit-secondary
55440
+ #
55441
+ # @option params [required, String] :nat_gateway_id
55442
+ # The NAT gateway ID.
55443
+ #
55444
+ # @option params [required, Array<String>] :private_ip_addresses
55445
+ # The private IPv4 addresses you want to unassign.
55446
+ #
55447
+ # @option params [Integer] :max_drain_duration_seconds
55448
+ # The maximum amount of time to wait (in seconds) before forcibly
55449
+ # releasing the IP addresses if connections are still in progress.
55450
+ # Default value is 350 seconds.
55451
+ #
55452
+ # @option params [Boolean] :dry_run
55453
+ # Checks whether you have the required permissions for the action,
55454
+ # without actually making the request, and provides an error response.
55455
+ # If you have the required permissions, the error response is
55456
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
55457
+ #
55458
+ # @return [Types::UnassignPrivateNatGatewayAddressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
55459
+ #
55460
+ # * {Types::UnassignPrivateNatGatewayAddressResult#nat_gateway_id #nat_gateway_id} => String
55461
+ # * {Types::UnassignPrivateNatGatewayAddressResult#nat_gateway_addresses #nat_gateway_addresses} => Array&lt;Types::NatGatewayAddress&gt;
55462
+ #
55463
+ # @example Request syntax with placeholder values
55464
+ #
55465
+ # resp = client.unassign_private_nat_gateway_address({
55466
+ # nat_gateway_id: "NatGatewayId", # required
55467
+ # private_ip_addresses: ["String"], # required
55468
+ # max_drain_duration_seconds: 1,
55469
+ # dry_run: false,
55470
+ # })
55471
+ #
55472
+ # @example Response structure
55473
+ #
55474
+ # resp.nat_gateway_id #=> String
55475
+ # resp.nat_gateway_addresses #=> Array
55476
+ # resp.nat_gateway_addresses[0].allocation_id #=> String
55477
+ # resp.nat_gateway_addresses[0].network_interface_id #=> String
55478
+ # resp.nat_gateway_addresses[0].private_ip #=> String
55479
+ # resp.nat_gateway_addresses[0].public_ip #=> String
55480
+ # resp.nat_gateway_addresses[0].association_id #=> String
55481
+ # resp.nat_gateway_addresses[0].is_primary #=> Boolean
55482
+ # resp.nat_gateway_addresses[0].failure_message #=> String
55483
+ # resp.nat_gateway_addresses[0].status #=> String, one of "assigning", "unassigning", "associating", "disassociating", "succeeded", "failed"
55484
+ #
55485
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddress AWS API Documentation
55486
+ #
55487
+ # @overload unassign_private_nat_gateway_address(params = {})
55488
+ # @param [Hash] params ({})
55489
+ def unassign_private_nat_gateway_address(params = {}, options = {})
55490
+ req = build_request(:unassign_private_nat_gateway_address, params)
55491
+ req.send_request(options)
55492
+ end
55493
+
55167
55494
  # Disables detailed monitoring for a running instance. For more
55168
55495
  # information, see [Monitoring your instances and volumes][1] in the
55169
55496
  # *Amazon EC2 User Guide*.
@@ -55513,7 +55840,7 @@ module Aws::EC2
55513
55840
  params: params,
55514
55841
  config: config)
55515
55842
  context[:gem_name] = 'aws-sdk-ec2'
55516
- context[:gem_version] = '1.362.0'
55843
+ context[:gem_version] = '1.364.0'
55517
55844
  Seahorse::Client::Request.new(handlers, context)
55518
55845
  end
55519
55846