@aws-sdk/client-ec2 3.624.0 → 3.627.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.
Files changed (54) hide show
  1. package/dist-cjs/index.js +149 -99
  2. package/dist-es/commands/GetInstanceTpmEkPubCommand.js +1 -1
  3. package/dist-es/commands/ModifyVpnTunnelOptionsCommand.js +1 -1
  4. package/dist-es/models/models_0.js +9 -0
  5. package/dist-es/models/models_3.js +0 -4
  6. package/dist-es/models/models_4.js +4 -6
  7. package/dist-es/models/models_5.js +7 -5
  8. package/dist-es/models/models_6.js +9 -8
  9. package/dist-es/models/models_7.js +10 -2
  10. package/dist-es/protocols/Aws_ec2.js +30 -0
  11. package/dist-types/commands/AssociateSubnetCidrBlockCommand.d.ts +2 -0
  12. package/dist-types/commands/AssociateVpcCidrBlockCommand.d.ts +2 -0
  13. package/dist-types/commands/CreateCapacityReservationFleetCommand.d.ts +2 -1
  14. package/dist-types/commands/CreateDefaultSubnetCommand.d.ts +2 -0
  15. package/dist-types/commands/CreateDefaultVpcCommand.d.ts +2 -0
  16. package/dist-types/commands/CreateIpamCommand.d.ts +2 -0
  17. package/dist-types/commands/CreateSubnetCommand.d.ts +2 -0
  18. package/dist-types/commands/CreateVpcCommand.d.ts +2 -0
  19. package/dist-types/commands/DeleteIpamCommand.d.ts +1 -0
  20. package/dist-types/commands/DeleteLocalGatewayRouteCommand.d.ts +2 -1
  21. package/dist-types/commands/DeleteLocalGatewayRouteTableCommand.d.ts +1 -2
  22. package/dist-types/commands/DescribeIpamsCommand.d.ts +1 -0
  23. package/dist-types/commands/DescribeSubnetsCommand.d.ts +2 -0
  24. package/dist-types/commands/DescribeVpcsCommand.d.ts +2 -0
  25. package/dist-types/commands/DisassociateSubnetCidrBlockCommand.d.ts +2 -0
  26. package/dist-types/commands/DisassociateVpcCidrBlockCommand.d.ts +2 -0
  27. package/dist-types/commands/GetInstanceTpmEkPubCommand.d.ts +1 -2
  28. package/dist-types/commands/GetIpamDiscoveredResourceCidrsCommand.d.ts +1 -0
  29. package/dist-types/commands/ModifyIpamCommand.d.ts +2 -0
  30. package/dist-types/commands/ModifyVpnTunnelOptionsCommand.d.ts +1 -1
  31. package/dist-types/commands/MonitorInstancesCommand.d.ts +1 -2
  32. package/dist-types/models/models_0.d.ts +45 -127
  33. package/dist-types/models/models_1.d.ts +138 -62
  34. package/dist-types/models/models_2.d.ts +62 -30
  35. package/dist-types/models/models_3.d.ts +31 -214
  36. package/dist-types/models/models_4.d.ts +215 -314
  37. package/dist-types/models/models_5.d.ts +312 -42
  38. package/dist-types/models/models_6.d.ts +67 -73
  39. package/dist-types/models/models_7.d.ts +75 -5
  40. package/dist-types/ts3.4/commands/CreateCapacityReservationFleetCommand.d.ts +2 -4
  41. package/dist-types/ts3.4/commands/DeleteLocalGatewayRouteCommand.d.ts +2 -4
  42. package/dist-types/ts3.4/commands/DeleteLocalGatewayRouteTableCommand.d.ts +4 -2
  43. package/dist-types/ts3.4/commands/GetInstanceTpmEkPubCommand.d.ts +4 -2
  44. package/dist-types/ts3.4/commands/ModifyVpnTunnelOptionsCommand.d.ts +1 -1
  45. package/dist-types/ts3.4/commands/MonitorInstancesCommand.d.ts +4 -2
  46. package/dist-types/ts3.4/models/models_0.d.ts +16 -26
  47. package/dist-types/ts3.4/models/models_1.d.ts +32 -12
  48. package/dist-types/ts3.4/models/models_2.d.ts +12 -10
  49. package/dist-types/ts3.4/models/models_3.d.ts +9 -43
  50. package/dist-types/ts3.4/models/models_4.d.ts +45 -41
  51. package/dist-types/ts3.4/models/models_5.d.ts +43 -12
  52. package/dist-types/ts3.4/models/models_6.d.ts +21 -22
  53. package/dist-types/ts3.4/models/models_7.d.ts +31 -3
  54. package/package.json +1 -1
@@ -1,8 +1,315 @@
1
- import { _InstanceType, ActivityStatus, AddressTransfer, AllowedPrincipal, AsnAssociation, AssociationStatus, BatchState, CapacityReservationState, CurrencyCodeValues, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpamResourceDiscoveryAssociation, NatGatewayAddress, ResourceType, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, TransitGatewayAssociation, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayAttachmentState, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, TrunkInterfaceAssociation, UserIdGroupPair, VerifiedAccessInstance, VerifiedAccessTrustProvider, VpcCidrBlockAssociation, VpcIpv6CidrBlockAssociation, VpcPeeringConnection } from "./models_0";
2
- import { BlockDeviceMapping, DiskImageFormat, InstanceInterruptionBehavior, SpotInstanceType, Subnet, VolumeType, Vpc } from "./models_1";
1
+ import { _InstanceType, ActivityStatus, AddressTransfer, AllocationStrategy, AllowedPrincipal, AsnAssociation, AssociationStatus, BatchState, CapacityReservationState, CurrencyCodeValues, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpamResourceDiscoveryAssociation, NatGatewayAddress, ResourceType, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, TransitGatewayAssociation, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayAttachmentState, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, TrunkInterfaceAssociation, UserIdGroupPair, VerifiedAccessInstance, VerifiedAccessTrustProvider, VpcCidrBlockAssociation, VpcIpv6CidrBlockAssociation, VpcPeeringConnection } from "./models_0";
2
+ import { BlockDeviceMapping, DiskImageFormat, FleetType, InstanceInterruptionBehavior, SpotInstanceType, Subnet, TargetCapacityUnitType, VolumeType, Vpc } from "./models_1";
3
3
  import { ConnectionNotification, DnsEntry, DnsNameState, GroupIdentifier, IpAddressType, PayerResponsibility, ServiceConfiguration, ServiceConnectivityType, ServiceTypeDetail, SpotInstanceStateFault, SSEType, State, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorSession, TrafficMirrorTarget, TransitGateway, TransitGatewayConnect, TransitGatewayConnectPeer, TransitGatewayMulticastDomain, TransitGatewayPolicyTable, TransitGatewayRouteTable, TransitGatewayRouteTableAnnouncement, VerifiedAccessEndpoint, VerifiedAccessGroup, Volume, VpcEndpoint, VpnConnection, VpnGateway } from "./models_2";
4
4
  import { ExportTaskS3Location, FastLaunchLaunchTemplateSpecificationResponse, FastLaunchResourceType, FastLaunchSnapshotConfigurationResponse, FastLaunchStateCode, FastSnapshotRestoreStateCode, Filter, MetricType, PaymentOption, PeriodType, ProductCode, StatisticType } from "./models_3";
5
- import { AttributeBooleanValue, HttpTokensState, InstanceMetadataEndpointState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, RIProductDescription, SpotFleetRequestConfigData, SpotPlacement } from "./models_4";
5
+ import { AttributeBooleanValue, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceMetadataEndpointState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, LaunchTemplateConfig, LoadBalancersConfig, OnDemandAllocationStrategy, RIProductDescription, SpotCapacityRebalance, SpotFleetLaunchSpecification, SpotPlacement } from "./models_4";
6
+ /**
7
+ * <p>The strategies for managing your Spot Instances that are at an elevated risk of being
8
+ * interrupted.</p>
9
+ * @public
10
+ */
11
+ export interface SpotMaintenanceStrategies {
12
+ /**
13
+ * <p>The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your
14
+ * Spot Instance is at an elevated risk of being interrupted. For more information, see
15
+ * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html">Capacity
16
+ * rebalancing</a> in the <i>Amazon EC2 User Guide</i>.</p>
17
+ * @public
18
+ */
19
+ CapacityRebalance?: SpotCapacityRebalance;
20
+ }
21
+ /**
22
+ * <p>Describes the configuration of a Spot Fleet request.</p>
23
+ * @public
24
+ */
25
+ export interface SpotFleetRequestConfigData {
26
+ /**
27
+ * <p>The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance
28
+ * pools specified by the Spot Fleet launch configuration. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html">Allocation
29
+ * strategies for Spot Instances</a> in the <i>Amazon EC2 User Guide</i>.</p>
30
+ * <dl>
31
+ * <dt>priceCapacityOptimized (recommended)</dt>
32
+ * <dd>
33
+ * <p>Spot Fleet identifies the pools with
34
+ * the highest capacity availability for the number of instances that are launching. This means
35
+ * that we will request Spot Instances from the pools that we believe have the lowest chance of interruption
36
+ * in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.</p>
37
+ * </dd>
38
+ * <dt>capacityOptimized</dt>
39
+ * <dd>
40
+ * <p>Spot Fleet identifies the pools with
41
+ * the highest capacity availability for the number of instances that are launching. This means
42
+ * that we will request Spot Instances from the pools that we believe have the lowest chance of interruption
43
+ * in the near term. To give certain
44
+ * instance types a higher chance of launching first, use
45
+ * <code>capacityOptimizedPrioritized</code>. Set a priority for each instance type by
46
+ * using the <code>Priority</code> parameter for <code>LaunchTemplateOverrides</code>. You can
47
+ * assign the same priority to different <code>LaunchTemplateOverrides</code>. EC2 implements
48
+ * the priorities on a best-effort basis, but optimizes for capacity first.
49
+ * <code>capacityOptimizedPrioritized</code> is supported only if your Spot Fleet uses a
50
+ * launch template. Note that if the <code>OnDemandAllocationStrategy</code> is set to
51
+ * <code>prioritized</code>, the same priority is applied when fulfilling On-Demand
52
+ * capacity.</p>
53
+ * </dd>
54
+ * <dt>diversified</dt>
55
+ * <dd>
56
+ * <p>Spot Fleet requests instances from all of the Spot Instance pools that you
57
+ * specify.</p>
58
+ * </dd>
59
+ * <dt>lowestPrice (not recommended)</dt>
60
+ * <dd>
61
+ * <important>
62
+ * <p>We don't recommend the <code>lowestPrice</code> allocation strategy because
63
+ * it has the highest risk of interruption for your Spot Instances.</p>
64
+ * </important>
65
+ * <p>Spot Fleet requests instances from the lowest priced Spot Instance pool that has available
66
+ * capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances
67
+ * come from the next lowest priced pool that has available capacity. If a pool runs
68
+ * out of capacity before fulfilling your desired capacity, Spot Fleet will continue to
69
+ * fulfill your request by drawing from the next lowest priced pool. To ensure that
70
+ * your desired capacity is met, you might receive Spot Instances from several pools. Because
71
+ * this strategy only considers instance price and not capacity availability, it
72
+ * might lead to high interruption rates.</p>
73
+ * </dd>
74
+ * </dl>
75
+ * <p>Default: <code>lowestPrice</code>
76
+ * </p>
77
+ * @public
78
+ */
79
+ AllocationStrategy?: AllocationStrategy;
80
+ /**
81
+ * <p>The order of the launch template overrides to use in fulfilling On-Demand capacity. If
82
+ * you specify <code>lowestPrice</code>, Spot Fleet uses price to determine the order, launching
83
+ * the lowest price first. If you specify <code>prioritized</code>, Spot Fleet uses the priority
84
+ * that you assign to each Spot Fleet launch template override, launching the highest priority
85
+ * first. If you do not specify a value, Spot Fleet defaults to <code>lowestPrice</code>.</p>
86
+ * @public
87
+ */
88
+ OnDemandAllocationStrategy?: OnDemandAllocationStrategy;
89
+ /**
90
+ * <p>The strategies for managing your Spot Instances that are at an elevated risk of being
91
+ * interrupted.</p>
92
+ * @public
93
+ */
94
+ SpotMaintenanceStrategies?: SpotMaintenanceStrategies;
95
+ /**
96
+ * <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of your
97
+ * listings. This helps to avoid duplicate listings. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring Idempotency</a>.</p>
98
+ * @public
99
+ */
100
+ ClientToken?: string;
101
+ /**
102
+ * <p>Indicates whether running instances should be terminated if you decrease the
103
+ * target capacity of the Spot Fleet request below the current size of the Spot Fleet.</p>
104
+ * <p>Supported only for fleets of type <code>maintain</code>.</p>
105
+ * @public
106
+ */
107
+ ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy;
108
+ /**
109
+ * <p>The number of units fulfilled by this request compared to the set target capacity. You
110
+ * cannot set this value.</p>
111
+ * @public
112
+ */
113
+ FulfilledCapacity?: number;
114
+ /**
115
+ * <p>The number of On-Demand units fulfilled by this request compared to the set target
116
+ * On-Demand capacity.</p>
117
+ * @public
118
+ */
119
+ OnDemandFulfilledCapacity?: number;
120
+ /**
121
+ * <p>The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role
122
+ * that grants the Spot Fleet the permission to request, launch, terminate, and tag instances
123
+ * on your behalf. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html#spot-fleet-prerequisites">Spot
124
+ * Fleet prerequisites</a> in the <i>Amazon EC2 User Guide</i>. Spot Fleet can
125
+ * terminate Spot Instances on your behalf when you cancel its Spot Fleet request using <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CancelSpotFleetRequests">CancelSpotFleetRequests</a> or when the Spot Fleet request expires, if you set
126
+ * <code>TerminateInstancesWithExpiration</code>.</p>
127
+ * @public
128
+ */
129
+ IamFleetRole: string | undefined;
130
+ /**
131
+ * <p>The launch specifications for the Spot Fleet request. If you specify
132
+ * <code>LaunchSpecifications</code>, you can't specify
133
+ * <code>LaunchTemplateConfigs</code>. If you include On-Demand capacity in your
134
+ * request, you must use <code>LaunchTemplateConfigs</code>.</p>
135
+ * <note>
136
+ * <p>If an AMI specified in a launch specification is deregistered or disabled, no new
137
+ * instances can be launched from the AMI. For fleets of type <code>maintain</code>, the
138
+ * target capacity will not be maintained.</p>
139
+ * </note>
140
+ * @public
141
+ */
142
+ LaunchSpecifications?: SpotFleetLaunchSpecification[];
143
+ /**
144
+ * <p>The launch template and overrides. If you specify <code>LaunchTemplateConfigs</code>,
145
+ * you can't specify <code>LaunchSpecifications</code>. If you include On-Demand capacity
146
+ * in your request, you must use <code>LaunchTemplateConfigs</code>.</p>
147
+ * @public
148
+ */
149
+ LaunchTemplateConfigs?: LaunchTemplateConfig[];
150
+ /**
151
+ * <p>The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend
152
+ * using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.</p>
153
+ * <important>
154
+ * <p>If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.</p>
155
+ * </important>
156
+ * @public
157
+ */
158
+ SpotPrice?: string;
159
+ /**
160
+ * <p>The number of units to request for the Spot Fleet. You can choose to set the target
161
+ * capacity in terms of instances or a performance characteristic that is important to your
162
+ * application workload, such as vCPUs, memory, or I/O. If the request type is
163
+ * <code>maintain</code>, you can specify a target capacity of 0 and add capacity
164
+ * later.</p>
165
+ * @public
166
+ */
167
+ TargetCapacity: number | undefined;
168
+ /**
169
+ * <p>The number of On-Demand units to request. You can choose to set the target capacity in
170
+ * terms of instances or a performance characteristic that is important to your application
171
+ * workload, such as vCPUs, memory, or I/O. If the request type is <code>maintain</code>,
172
+ * you can specify a target capacity of 0 and add capacity later.</p>
173
+ * @public
174
+ */
175
+ OnDemandTargetCapacity?: number;
176
+ /**
177
+ * <p>The maximum amount per hour for On-Demand Instances that you're willing to pay. You
178
+ * can use the <code>onDemandMaxTotalPrice</code> parameter, the
179
+ * <code>spotMaxTotalPrice</code> parameter, or both parameters to ensure that your
180
+ * fleet cost does not exceed your budget. If you set a maximum price per hour for the
181
+ * On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the
182
+ * maximum amount you're willing to pay. When the maximum amount you're willing to pay is
183
+ * reached, the fleet stops launching instances even if it hasn’t met the target
184
+ * capacity.</p>
185
+ * <note>
186
+ * <p>If your fleet includes T instances that are configured as <code>unlimited</code>,
187
+ * and if their average CPU usage exceeds the baseline utilization, you will incur a charge
188
+ * for surplus credits. The <code>onDemandMaxTotalPrice</code> does not account for surplus
189
+ * credits, and, if you use surplus credits, your final cost might be higher than what you
190
+ * specified for <code>onDemandMaxTotalPrice</code>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits">Surplus credits can incur charges</a> in the
191
+ * <i>Amazon EC2 User Guide</i>.</p>
192
+ * </note>
193
+ * @public
194
+ */
195
+ OnDemandMaxTotalPrice?: string;
196
+ /**
197
+ * <p>The maximum amount per hour for Spot Instances that you're willing to pay. You can use
198
+ * the <code>spotMaxTotalPrice</code> parameter, the <code>onDemandMaxTotalPrice</code>
199
+ * parameter, or both parameters to ensure that your fleet cost does not exceed your budget.
200
+ * If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will
201
+ * launch instances until it reaches the maximum amount you're willing to pay. When the
202
+ * maximum amount you're willing to pay is reached, the fleet stops launching instances even
203
+ * if it hasn’t met the target capacity.</p>
204
+ * <note>
205
+ * <p>If your fleet includes T instances that are configured as <code>unlimited</code>,
206
+ * and if their average CPU usage exceeds the baseline utilization, you will incur a charge
207
+ * for surplus credits. The <code>spotMaxTotalPrice</code> does not account for surplus
208
+ * credits, and, if you use surplus credits, your final cost might be higher than what you
209
+ * specified for <code>spotMaxTotalPrice</code>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits">Surplus credits can incur charges</a> in the
210
+ * <i>Amazon EC2 User Guide</i>.</p>
211
+ * </note>
212
+ * @public
213
+ */
214
+ SpotMaxTotalPrice?: string;
215
+ /**
216
+ * <p>Indicates whether running Spot Instances are terminated when the Spot Fleet request
217
+ * expires.</p>
218
+ * @public
219
+ */
220
+ TerminateInstancesWithExpiration?: boolean;
221
+ /**
222
+ * <p>The type of request. Indicates whether the Spot Fleet only requests the target
223
+ * capacity or also attempts to maintain it. When this value is <code>request</code>, the
224
+ * Spot Fleet only places the required requests. It does not attempt to replenish Spot
225
+ * Instances if capacity is diminished, nor does it submit requests in alternative Spot
226
+ * pools if capacity is not available. When this value is <code>maintain</code>, the Spot
227
+ * Fleet maintains the target capacity. The Spot Fleet places the required requests to meet
228
+ * capacity and automatically replenishes any interrupted instances. Default:
229
+ * <code>maintain</code>. <code>instant</code> is listed but is not used by Spot
230
+ * Fleet.</p>
231
+ * @public
232
+ */
233
+ Type?: FleetType;
234
+ /**
235
+ * <p>The start date and time of the request, in UTC format
236
+ * (<i>YYYY</i>-<i>MM</i>-<i>DD</i>T<i>HH</i>:<i>MM</i>:<i>SS</i>Z).
237
+ * By default, Amazon EC2 starts fulfilling the request immediately.</p>
238
+ * @public
239
+ */
240
+ ValidFrom?: Date;
241
+ /**
242
+ * <p>The end date and time of the request, in UTC format
243
+ * (<i>YYYY</i>-<i>MM</i>-<i>DD</i>T<i>HH</i>:<i>MM</i>:<i>SS</i>Z).
244
+ * After the end date and time, no new Spot Instance requests are placed or able to fulfill
245
+ * the request. If no value is specified, the Spot Fleet request remains until you cancel
246
+ * it.</p>
247
+ * @public
248
+ */
249
+ ValidUntil?: Date;
250
+ /**
251
+ * <p>Indicates whether Spot Fleet should replace unhealthy instances.</p>
252
+ * @public
253
+ */
254
+ ReplaceUnhealthyInstances?: boolean;
255
+ /**
256
+ * <p>The behavior when a Spot Instance is interrupted. The default is
257
+ * <code>terminate</code>.</p>
258
+ * @public
259
+ */
260
+ InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
261
+ /**
262
+ * <p>One or more Classic Load Balancers and target groups to attach to the Spot Fleet
263
+ * request. Spot Fleet registers the running Spot Instances with the specified Classic Load
264
+ * Balancers and target groups.</p>
265
+ * <p>With Network Load Balancers, Spot Fleet cannot register instances that have the
266
+ * following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2,
267
+ * M3, and T1.</p>
268
+ * @public
269
+ */
270
+ LoadBalancersConfig?: LoadBalancersConfig;
271
+ /**
272
+ * <p>The number of Spot pools across which to allocate your target Spot capacity. Valid
273
+ * only when Spot <b>AllocationStrategy</b> is set to
274
+ * <code>lowest-price</code>. Spot Fleet selects the cheapest Spot pools and evenly
275
+ * allocates your target Spot capacity across the number of Spot pools that you
276
+ * specify.</p>
277
+ * <p>Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a
278
+ * best effort basis. If a pool runs out of Spot capacity before fulfilling your target
279
+ * capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest
280
+ * pool. To ensure that your target capacity is met, you might receive Spot Instances from more than
281
+ * the number of pools that you specified. Similarly, if most of the pools have no Spot
282
+ * capacity, you might receive your full target capacity from fewer than the number of
283
+ * pools that you specified.</p>
284
+ * @public
285
+ */
286
+ InstancePoolsToUseCount?: number;
287
+ /**
288
+ * <p>Reserved.</p>
289
+ * @public
290
+ */
291
+ Context?: string;
292
+ /**
293
+ * <p>The unit for the target capacity. You can specify this parameter only when
294
+ * using attribute-based instance type selection.</p>
295
+ * <p>Default: <code>units</code> (the number of instances)</p>
296
+ * @public
297
+ */
298
+ TargetCapacityUnitType?: TargetCapacityUnitType;
299
+ /**
300
+ * <p>The key-value pair for tagging the Spot Fleet request on creation. The value for
301
+ * <code>ResourceType</code> must be <code>spot-fleet-request</code>, otherwise the
302
+ * Spot Fleet request fails. To tag instances at launch, specify the tags in the <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template">launch
303
+ * template</a> (valid only if you use <code>LaunchTemplateConfigs</code>) or in
304
+ * the <code>
305
+ * <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html">SpotFleetTagSpecification</a>
306
+ * </code> (valid only if you use
307
+ * <code>LaunchSpecifications</code>). For information about tagging after launch, see
308
+ * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources">Tag your resources</a>.</p>
309
+ * @public
310
+ */
311
+ TagSpecifications?: TagSpecification[];
312
+ }
6
313
  /**
7
314
  * <p>Describes a Spot Fleet request.</p>
8
315
  * @public
@@ -8108,46 +8415,9 @@ export declare const EkPubKeyFormat: {
8108
8415
  */
8109
8416
  export type EkPubKeyFormat = (typeof EkPubKeyFormat)[keyof typeof EkPubKeyFormat];
8110
8417
  /**
8111
- * @public
8112
- * @enum
8113
- */
8114
- export declare const EkPubKeyType: {
8115
- readonly ECC_SEC_P384: "ecc-sec-p384";
8116
- readonly RSA_2048: "rsa-2048";
8117
- };
8118
- /**
8119
- * @public
8120
- */
8121
- export type EkPubKeyType = (typeof EkPubKeyType)[keyof typeof EkPubKeyType];
8122
- /**
8123
- * @public
8418
+ * @internal
8124
8419
  */
8125
- export interface GetInstanceTpmEkPubRequest {
8126
- /**
8127
- * <p>The ID of the instance for which to get the public endorsement key.</p>
8128
- * @public
8129
- */
8130
- InstanceId: string | undefined;
8131
- /**
8132
- * <p>The required public endorsement key type.</p>
8133
- * @public
8134
- */
8135
- KeyType: EkPubKeyType | undefined;
8136
- /**
8137
- * <p>The required public endorsement key format. Specify <code>der</code> for a DER-encoded public
8138
- * key that is compatible with OpenSSL. Specify <code>tpmt</code> for a TPM 2.0 format that is
8139
- * compatible with tpm2-tools. The returned key is base64 encoded.</p>
8140
- * @public
8141
- */
8142
- KeyFormat: EkPubKeyFormat | undefined;
8143
- /**
8144
- * <p>Specify this parameter to verify whether the request will succeed, without actually making the
8145
- * request. If the request will succeed, the response is <code>DryRunOperation</code>. Otherwise,
8146
- * the response is <code>UnauthorizedOperation</code>.</p>
8147
- * @public
8148
- */
8149
- DryRun?: boolean;
8150
- }
8420
+ export declare const SpotFleetRequestConfigDataFilterSensitiveLog: (obj: SpotFleetRequestConfigData) => any;
8151
8421
  /**
8152
8422
  * @internal
8153
8423
  */
@@ -1,9 +1,50 @@
1
1
  import { _InstanceType, AccessScopeAnalysisFinding, AddedPrincipal, AddIpamOperatingRegion, AddPrefixListEntry, AddressAttribute, Affinity, ApplianceModeSupportValue, AutoPlacement, DnsSupportValue, EnaSrdSpecification, EndDateType, HostMaintenance, HostRecovery, InstanceEventWindow, IpamPoolAllocation, Ipv6SupportValue, SecurityGroupReferencingSupportValue, SubnetAssociation, Tag, TagSpecification, TargetConfigurationRequest, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, UnsuccessfulItem, VerifiedAccessInstance, VerifiedAccessSseSpecificationResponse, VerifiedAccessTrustProvider } from "./models_0";
2
2
  import { AttributeValue, CapacityReservationPreference, CapacityReservationTarget, ClientConnectOptions, ClientLoginBannerOptions, ConnectionLogOptions, ConnectionTrackingSpecificationRequest, DiskImageFormat, FleetExcessCapacityTerminationPolicy, FleetLaunchTemplateConfigRequest, HostnameType, InstanceEventWindowTimeRangeRequest, InstanceRequirementsRequest, Ipam, IpamPool, IpamResourceDiscovery, IpamResourceTag, IpamScope, IpamTier, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, NetworkInsightsAccessScopeContent, Placement, PlatformValues, RequestIpamResourceTag, ResponseLaunchTemplateData, SelfServicePortal, ShutdownBehavior, TargetCapacitySpecificationRequest, TargetCapacityUnitType, VolumeType } from "./models_1";
3
3
  import { AutoAcceptSharedAttachmentsValue, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, DnsOptionsSpecification, IKEVersionsRequestListValue, IpAddressType, PayerResponsibility, Phase1DHGroupNumbersRequestListValue, Phase1EncryptionAlgorithmsRequestListValue, Phase1IntegrityAlgorithmsRequestListValue, Phase2DHGroupNumbersRequestListValue, Phase2EncryptionAlgorithmsRequestListValue, Phase2IntegrityAlgorithmsRequestListValue, SubnetCidrReservation, SubnetConfiguration, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorNetworkService, TrafficMirrorPortRangeRequest, TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, TransitGatewayPrefixListReference, VerifiedAccessEndpoint, VerifiedAccessEndpointProtocol, VerifiedAccessGroup, VerifiedAccessSseSpecificationRequest, VpnConnection, VpnEcmpSupportValue, VpnTunnelLogOptionsSpecification } from "./models_2";
4
- import { ArchitectureValues, BootModeValues, ConversionTask, Filter, FpgaImageAttribute, FpgaImageAttributeName, IpamPoolCidr, LaunchPermission, PermissionGroup, VirtualizationType } from "./models_3";
5
- import { AnalysisStatus, ArchitectureType, AttributeBooleanValue, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, ImportImageLicenseConfigurationResponse, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceStatusEvent, LaunchTemplateConfig, LockState, ReservedInstancesConfiguration, SnapshotAttributeName, SnapshotDetail, SnapshotTaskDetail } from "./models_4";
6
- import { EkPubKeyFormat, EkPubKeyType, InstanceFamilyCreditSpecification, SnapshotBlockPublicAccessState, TransitGatewayPropagationState, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
4
+ import { ArchitectureValues, BootModeValues, ConversionTask, Filter, FpgaImageAttribute, FpgaImageAttributeName, IpamPoolCidr, LaunchPermission, PermissionGroup } from "./models_3";
5
+ import { AnalysisStatus, ArchitectureType, AttributeBooleanValue, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, ImportImageLicenseConfigurationResponse, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceStatusEvent, LaunchTemplateConfig, LockState, ReservedInstancesConfiguration, SnapshotAttributeName, SnapshotDetail, SnapshotTaskDetail, VirtualizationType } from "./models_4";
6
+ import { EkPubKeyFormat, InstanceFamilyCreditSpecification, SnapshotBlockPublicAccessState, TransitGatewayPropagationState, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
7
+ /**
8
+ * @public
9
+ * @enum
10
+ */
11
+ export declare const EkPubKeyType: {
12
+ readonly ECC_SEC_P384: "ecc-sec-p384";
13
+ readonly RSA_2048: "rsa-2048";
14
+ };
15
+ /**
16
+ * @public
17
+ */
18
+ export type EkPubKeyType = (typeof EkPubKeyType)[keyof typeof EkPubKeyType];
19
+ /**
20
+ * @public
21
+ */
22
+ export interface GetInstanceTpmEkPubRequest {
23
+ /**
24
+ * <p>The ID of the instance for which to get the public endorsement key.</p>
25
+ * @public
26
+ */
27
+ InstanceId: string | undefined;
28
+ /**
29
+ * <p>The required public endorsement key type.</p>
30
+ * @public
31
+ */
32
+ KeyType: EkPubKeyType | undefined;
33
+ /**
34
+ * <p>The required public endorsement key format. Specify <code>der</code> for a DER-encoded public
35
+ * key that is compatible with OpenSSL. Specify <code>tpmt</code> for a TPM 2.0 format that is
36
+ * compatible with tpm2-tools. The returned key is base64 encoded.</p>
37
+ * @public
38
+ */
39
+ KeyFormat: EkPubKeyFormat | undefined;
40
+ /**
41
+ * <p>Specify this parameter to verify whether the request will succeed, without actually making the
42
+ * request. If the request will succeed, the response is <code>DryRunOperation</code>. Otherwise,
43
+ * the response is <code>UnauthorizedOperation</code>.</p>
44
+ * @public
45
+ */
46
+ DryRun?: boolean;
47
+ }
7
48
  /**
8
49
  * @public
9
50
  */
@@ -716,6 +757,19 @@ export interface GetIpamDiscoveredResourceCidrsRequest {
716
757
  */
717
758
  MaxResults?: number;
718
759
  }
760
+ /**
761
+ * @public
762
+ * @enum
763
+ */
764
+ export declare const IpamResourceCidrIpSource: {
765
+ readonly amazon: "amazon";
766
+ readonly byoip: "byoip";
767
+ readonly none: "none";
768
+ };
769
+ /**
770
+ * @public
771
+ */
772
+ export type IpamResourceCidrIpSource = (typeof IpamResourceCidrIpSource)[keyof typeof IpamResourceCidrIpSource];
719
773
  /**
720
774
  * @public
721
775
  * @enum
@@ -774,6 +828,11 @@ export interface IpamDiscoveredResourceCidr {
774
828
  * @public
775
829
  */
776
830
  ResourceCidr?: string;
831
+ /**
832
+ * <p>The source that allocated the IP address space. <code>byoip</code> or <code>amazon</code> indicates public IP address space allocated by Amazon or space that you have allocated with Bring your own IP (BYOIP). <code>none</code> indicates private space.</p>
833
+ * @public
834
+ */
835
+ IpSource?: IpamResourceCidrIpSource;
777
836
  /**
778
837
  * <p>The resource type.</p>
779
838
  * @public
@@ -5538,6 +5597,11 @@ export interface ModifyIpamRequest {
5538
5597
  * @public
5539
5598
  */
5540
5599
  Tier?: IpamTier;
5600
+ /**
5601
+ * <p>Enable this option to use your own GUA ranges as private IPv6 addresses. This option is disabled by default.</p>
5602
+ * @public
5603
+ */
5604
+ EnablePrivateGua?: boolean;
5541
5605
  }
5542
5606
  /**
5543
5607
  * @public
@@ -8328,68 +8392,6 @@ export interface ModifyVpnTunnelOptionsSpecification {
8328
8392
  */
8329
8393
  EnableTunnelLifecycleControl?: boolean;
8330
8394
  }
8331
- /**
8332
- * @public
8333
- */
8334
- export interface ModifyVpnTunnelOptionsRequest {
8335
- /**
8336
- * <p>The ID of the Amazon Web Services Site-to-Site VPN connection.</p>
8337
- * @public
8338
- */
8339
- VpnConnectionId: string | undefined;
8340
- /**
8341
- * <p>The external IP address of the VPN tunnel.</p>
8342
- * @public
8343
- */
8344
- VpnTunnelOutsideIpAddress: string | undefined;
8345
- /**
8346
- * <p>The tunnel options to modify.</p>
8347
- * @public
8348
- */
8349
- TunnelOptions: ModifyVpnTunnelOptionsSpecification | undefined;
8350
- /**
8351
- * <p>Checks whether you have the required permissions for the action, without actually
8352
- * making the request, and provides an error response. If you have the required
8353
- * permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is
8354
- * <code>UnauthorizedOperation</code>.</p>
8355
- * @public
8356
- */
8357
- DryRun?: boolean;
8358
- /**
8359
- * <p>Choose whether or not to trigger immediate tunnel replacement. This is only applicable when turning on or off <code>EnableTunnelLifecycleControl</code>.</p>
8360
- * <p>Valid values: <code>True</code> | <code>False</code>
8361
- * </p>
8362
- * @public
8363
- */
8364
- SkipTunnelReplacement?: boolean;
8365
- }
8366
- /**
8367
- * @public
8368
- */
8369
- export interface ModifyVpnTunnelOptionsResult {
8370
- /**
8371
- * <p>Information about the VPN connection.</p>
8372
- * @public
8373
- */
8374
- VpnConnection?: VpnConnection;
8375
- }
8376
- /**
8377
- * @public
8378
- */
8379
- export interface MonitorInstancesRequest {
8380
- /**
8381
- * <p>The IDs of the instances.</p>
8382
- * @public
8383
- */
8384
- InstanceIds: string[] | undefined;
8385
- /**
8386
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
8387
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
8388
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8389
- * @public
8390
- */
8391
- DryRun?: boolean;
8392
- }
8393
8395
  /**
8394
8396
  * @internal
8395
8397
  */
@@ -8490,11 +8492,3 @@ export declare const ModifyVpnTunnelCertificateResultFilterSensitiveLog: (obj: M
8490
8492
  * @internal
8491
8493
  */
8492
8494
  export declare const ModifyVpnTunnelOptionsSpecificationFilterSensitiveLog: (obj: ModifyVpnTunnelOptionsSpecification) => any;
8493
- /**
8494
- * @internal
8495
- */
8496
- export declare const ModifyVpnTunnelOptionsRequestFilterSensitiveLog: (obj: ModifyVpnTunnelOptionsRequest) => any;
8497
- /**
8498
- * @internal
8499
- */
8500
- export declare const ModifyVpnTunnelOptionsResultFilterSensitiveLog: (obj: ModifyVpnTunnelOptionsResult) => any;
@@ -1,10 +1,72 @@
1
1
  import { _InstanceType, AddressAttribute, AddressAttributeName, ByoipCidr, CapacityReservation, CapacityReservationInstancePlatform, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, IamInstanceProfileAssociation, IamInstanceProfileSpecification, IpPermission, NatGatewayAddress, PortRange, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
2
2
  import { AmdSevSnpSpecification, BlockDeviceMapping, CreditSpecificationRequest, ElasticGpuSpecification, HostnameType, IcmpTypeCode, InstanceInterruptionBehavior, InstanceIpv6Address, LocalGatewayRoute, ManagedPrefixList, MarketType, Placement, RuleAction, ShutdownBehavior, SpotInstanceType } from "./models_1";
3
- import { SnapshotState, SSEType, TransitGatewayRoute } from "./models_2";
3
+ import { SnapshotState, SSEType, TransitGatewayRoute, VpnConnection } from "./models_2";
4
4
  import { ArchitectureValues, BootModeValues, Byoasn, ClientVpnConnectionStatus, Filter, ImdsSupportValues, InstanceTagNotificationAttribute, IpamPoolCidr, TpmSupportValues } from "./models_3";
5
- import { HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceState, Monitoring, NetworkInsightsAccessScopeAnalysis, NetworkInsightsAnalysis, PublicIpv4PoolRange, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotPlacement } from "./models_4";
6
- import { Purchase, RunInstancesMonitoringEnabled, SpotInstanceRequest } from "./models_5";
7
- import { CapacityReservationSpecification } from "./models_6";
5
+ import { HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceState, Monitoring, NetworkInsightsAccessScopeAnalysis, NetworkInsightsAnalysis, PublicIpv4PoolRange, ScheduledInstance, SnapshotAttributeName, SpotPlacement } from "./models_4";
6
+ import { Purchase, RunInstancesMonitoringEnabled, SpotFleetRequestConfigData, SpotInstanceRequest } from "./models_5";
7
+ import { CapacityReservationSpecification, ModifyVpnTunnelOptionsSpecification } from "./models_6";
8
+ /**
9
+ * @public
10
+ */
11
+ export interface ModifyVpnTunnelOptionsRequest {
12
+ /**
13
+ * <p>The ID of the Amazon Web Services Site-to-Site VPN connection.</p>
14
+ * @public
15
+ */
16
+ VpnConnectionId: string | undefined;
17
+ /**
18
+ * <p>The external IP address of the VPN tunnel.</p>
19
+ * @public
20
+ */
21
+ VpnTunnelOutsideIpAddress: string | undefined;
22
+ /**
23
+ * <p>The tunnel options to modify.</p>
24
+ * @public
25
+ */
26
+ TunnelOptions: ModifyVpnTunnelOptionsSpecification | undefined;
27
+ /**
28
+ * <p>Checks whether you have the required permissions for the action, without actually
29
+ * making the request, and provides an error response. If you have the required
30
+ * permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is
31
+ * <code>UnauthorizedOperation</code>.</p>
32
+ * @public
33
+ */
34
+ DryRun?: boolean;
35
+ /**
36
+ * <p>Choose whether or not to trigger immediate tunnel replacement. This is only applicable when turning on or off <code>EnableTunnelLifecycleControl</code>.</p>
37
+ * <p>Valid values: <code>True</code> | <code>False</code>
38
+ * </p>
39
+ * @public
40
+ */
41
+ SkipTunnelReplacement?: boolean;
42
+ }
43
+ /**
44
+ * @public
45
+ */
46
+ export interface ModifyVpnTunnelOptionsResult {
47
+ /**
48
+ * <p>Information about the VPN connection.</p>
49
+ * @public
50
+ */
51
+ VpnConnection?: VpnConnection;
52
+ }
53
+ /**
54
+ * @public
55
+ */
56
+ export interface MonitorInstancesRequest {
57
+ /**
58
+ * <p>The IDs of the instances.</p>
59
+ * @public
60
+ */
61
+ InstanceIds: string[] | undefined;
62
+ /**
63
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
64
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
65
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
66
+ * @public
67
+ */
68
+ DryRun?: boolean;
69
+ }
8
70
  /**
9
71
  * <p>Describes the monitoring of an instance.</p>
10
72
  * @public
@@ -368,7 +430,7 @@ export interface ProvisionPublicIpv4PoolCidrRequest {
368
430
  */
369
431
  PoolId: string | undefined;
370
432
  /**
371
- * <p>The netmask length of the CIDR you would like to allocate to the public IPv4 pool.</p>
433
+ * <p>The netmask length of the CIDR you would like to allocate to the public IPv4 pool. The least specific netmask length you can define is 24.</p>
372
434
  * @public
373
435
  */
374
436
  NetmaskLength: number | undefined;
@@ -4508,6 +4570,14 @@ export interface WithdrawByoipCidrResult {
4508
4570
  */
4509
4571
  ByoipCidr?: ByoipCidr;
4510
4572
  }
4573
+ /**
4574
+ * @internal
4575
+ */
4576
+ export declare const ModifyVpnTunnelOptionsRequestFilterSensitiveLog: (obj: ModifyVpnTunnelOptionsRequest) => any;
4577
+ /**
4578
+ * @internal
4579
+ */
4580
+ export declare const ModifyVpnTunnelOptionsResultFilterSensitiveLog: (obj: ModifyVpnTunnelOptionsResult) => any;
4511
4581
  /**
4512
4582
  * @internal
4513
4583
  */