aws-sdk-ec2 1.219.0 → 1.224.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -123,6 +123,18 @@ module Aws::EC2
123
123
  data[:owner_alias]
124
124
  end
125
125
 
126
+ # The ARN of the AWS Outpost on which the snapshot is stored. For more
127
+ # information, see [EBS Local Snapshot on Outposts][1] in the *Amazon
128
+ # Elastic Compute Cloud User Guide*.
129
+ #
130
+ #
131
+ #
132
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html
133
+ # @return [String]
134
+ def outpost_arn
135
+ data[:outpost_arn]
136
+ end
137
+
126
138
  # Any tags assigned to the snapshot.
127
139
  # @return [Array<Types::Tag>]
128
140
  def tags
@@ -285,6 +297,7 @@ module Aws::EC2
285
297
  #
286
298
  # snapshot.copy({
287
299
  # description: "String",
300
+ # destination_outpost_arn: "String",
288
301
  # destination_region: "String",
289
302
  # encrypted: false,
290
303
  # kms_key_id: "KmsKeyId",
@@ -306,6 +319,19 @@ module Aws::EC2
306
319
  # @param [Hash] options ({})
307
320
  # @option options [String] :description
308
321
  # A description for the EBS snapshot.
322
+ # @option options [String] :destination_outpost_arn
323
+ # The Amazon Resource Name (ARN) of the Outpost to which to copy the
324
+ # snapshot. Only specify this parameter when copying a snapshot from an
325
+ # AWS Region to an Outpost. The snapshot must be in the Region for the
326
+ # destination Outpost. You cannot copy a snapshot from an Outpost to a
327
+ # Region, from one Outpost to another, or within the same Outpost.
328
+ #
329
+ # For more information, see [ Copying snapshots from an AWS Region to an
330
+ # Outpost][1] in the *Amazon Elastic Compute Cloud User Guide*.
331
+ #
332
+ #
333
+ #
334
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#copy-snapshots
309
335
  # @option options [String] :destination_region
310
336
  # The destination Region to use in the `PresignedUrl` parameter of a
311
337
  # snapshot copy operation. This parameter is only valid for specifying
@@ -287,6 +287,7 @@ module Aws::EC2
287
287
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
288
288
  # kms_key_id: "String",
289
289
  # throughput: 1,
290
+ # outpost_arn: "String",
290
291
  # encrypted: false,
291
292
  # },
292
293
  # no_device: "String",
@@ -436,7 +437,7 @@ module Aws::EC2
436
437
  # must be specified here or in a launch template.
437
438
  # @option options [String] :instance_type
438
439
  # The instance type. For more information, see [Instance types][1] in
439
- # the *Amazon Elastic Compute Cloud User Guide*.
440
+ # the *Amazon EC2 User Guide*.
440
441
  #
441
442
  # Default: `m1.small`
442
443
  #
@@ -466,8 +467,8 @@ module Aws::EC2
466
467
  # The ID of the kernel.
467
468
  #
468
469
  # We recommend that you use PV-GRUB instead of kernels and RAM disks.
469
- # For more information, see [ PV-GRUB][1] in the *Amazon Elastic Compute
470
- # Cloud User Guide*.
470
+ # For more information, see [ PV-GRUB][1] in the *Amazon EC2 User
471
+ # Guide*.
471
472
  #
472
473
  #
473
474
  #
@@ -522,8 +523,8 @@ module Aws::EC2
522
523
  # go to the AWS Resource Center and search for the kernel ID.
523
524
  #
524
525
  # We recommend that you use PV-GRUB instead of kernels and RAM disks.
525
- # For more information, see [ PV-GRUB][1] in the *Amazon Elastic Compute
526
- # Cloud User Guide*.
526
+ # For more information, see [ PV-GRUB][1] in the *Amazon EC2 User
527
+ # Guide*.
527
528
  #
528
529
  #
529
530
  #
@@ -628,8 +629,7 @@ module Aws::EC2
628
629
  # An elastic GPU to associate with the instance. An Elastic GPU is a GPU
629
630
  # resource that you can attach to your Windows instance to accelerate
630
631
  # the graphics performance of your applications. For more information,
631
- # see [ Amazon EC2 Elastic GPUs][1] in the *Amazon Elastic Compute Cloud
632
- # User Guide*.
632
+ # see [Amazon EC2 Elastic GPUs][1] in the *Amazon EC2 User Guide*.
633
633
  #
634
634
  #
635
635
  #
@@ -667,7 +667,7 @@ module Aws::EC2
667
667
  # Valid values are `standard` and `unlimited`. To change this attribute
668
668
  # after launch, use [ ModifyInstanceCreditSpecification][1]. For more
669
669
  # information, see [Burstable performance instances][2] in the *Amazon
670
- # Elastic Compute Cloud User Guide*.
670
+ # EC2 User Guide*.
671
671
  #
672
672
  # Default: `standard` (T2 instances) or `unlimited` (T3/T3a instances)
673
673
  #
@@ -677,8 +677,7 @@ module Aws::EC2
677
677
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html
678
678
  # @option options [Types::CpuOptionsRequest] :cpu_options
679
679
  # The CPU options for the instance. For more information, see
680
- # [Optimizing CPU options][1] in the *Amazon Elastic Compute Cloud User
681
- # Guide*.
680
+ # [Optimizing CPU options][1] in the *Amazon EC2 User Guide*.
682
681
  #
683
682
  #
684
683
  #
@@ -691,8 +690,8 @@ module Aws::EC2
691
690
  # platform, Availability Zone).
692
691
  # @option options [Types::HibernationOptionsRequest] :hibernation_options
693
692
  # Indicates whether an instance is enabled for hibernation. For more
694
- # information, see [Hibernate your instance][1] in the *Amazon Elastic
695
- # Compute Cloud User Guide*.
693
+ # information, see [Hibernate your instance][1] in the *Amazon EC2 User
694
+ # Guide*.
696
695
  #
697
696
  # You can't enable hibernation and AWS Nitro Enclaves on the same
698
697
  # instance.
@@ -467,6 +467,35 @@ module Aws::EC2
467
467
  include Aws::Structure
468
468
  end
469
469
 
470
+ # The attributes associated with an Elastic IP address.
471
+ #
472
+ # @!attribute [rw] public_ip
473
+ # The public IP address.
474
+ # @return [String]
475
+ #
476
+ # @!attribute [rw] allocation_id
477
+ # \[EC2-VPC\] The allocation ID.
478
+ # @return [String]
479
+ #
480
+ # @!attribute [rw] ptr_record
481
+ # The pointer (PTR) record for the IP address.
482
+ # @return [String]
483
+ #
484
+ # @!attribute [rw] ptr_record_update
485
+ # The updated PTR record for the IP address.
486
+ # @return [Types::PtrUpdateStatus]
487
+ #
488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddressAttribute AWS API Documentation
489
+ #
490
+ class AddressAttribute < Struct.new(
491
+ :public_ip,
492
+ :allocation_id,
493
+ :ptr_record,
494
+ :ptr_record_update)
495
+ SENSITIVE = []
496
+ include Aws::Structure
497
+ end
498
+
470
499
  # @note When making an API call, you may pass AdvertiseByoipCidrRequest
471
500
  # data as a hash:
472
501
  #
@@ -519,6 +548,17 @@ module Aws::EC2
519
548
  # network_border_group: "String",
520
549
  # customer_owned_ipv_4_pool: "String",
521
550
  # dry_run: false,
551
+ # tag_specifications: [
552
+ # {
553
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
554
+ # tags: [
555
+ # {
556
+ # key: "String",
557
+ # value: "String",
558
+ # },
559
+ # ],
560
+ # },
561
+ # ],
522
562
  # }
523
563
  #
524
564
  # @!attribute [rw] domain
@@ -576,6 +616,10 @@ module Aws::EC2
576
616
  # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
577
617
  # @return [Boolean]
578
618
  #
619
+ # @!attribute [rw] tag_specifications
620
+ # The tags to assign to the Elastic IP address.
621
+ # @return [Array<Types::TagSpecification>]
622
+ #
579
623
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateAddressRequest AWS API Documentation
580
624
  #
581
625
  class AllocateAddressRequest < Struct.new(
@@ -584,7 +628,8 @@ module Aws::EC2
584
628
  :public_ipv_4_pool,
585
629
  :network_border_group,
586
630
  :customer_owned_ipv_4_pool,
587
- :dry_run)
631
+ :dry_run,
632
+ :tag_specifications)
588
633
  SENSITIVE = []
589
634
  include Aws::Structure
590
635
  end
@@ -669,8 +714,8 @@ module Aws::EC2
669
714
  # Indicates whether the host accepts any untargeted instance launches
670
715
  # that match its instance type configuration, or if it only accepts
671
716
  # Host tenancy instance launches that specify its unique host ID. For
672
- # more information, see [ Understanding Instance Placement and Host
673
- # Affinity][1] in the *Amazon EC2 User Guide for Linux Instances*.
717
+ # more information, see [ Understanding auto-placement and
718
+ # affinity][1] in the *Amazon EC2 User Guide*.
674
719
  #
675
720
  # Default: `on`
676
721
  #
@@ -685,7 +730,7 @@ module Aws::EC2
685
730
  #
686
731
  # @!attribute [rw] client_token
687
732
  # Unique, case-sensitive identifier that you provide to ensure the
688
- # idempotency of the request. For more information, see [How to Ensure
733
+ # idempotency of the request. For more information, see [Ensuring
689
734
  # Idempotency][1].
690
735
  #
691
736
  #
@@ -727,8 +772,7 @@ module Aws::EC2
727
772
  # @!attribute [rw] host_recovery
728
773
  # Indicates whether to enable or disable host recovery for the
729
774
  # Dedicated Host. Host recovery is disabled by default. For more
730
- # information, see [ Host Recovery][1] in the *Amazon Elastic Compute
731
- # Cloud User Guide*.
775
+ # information, see [ Host recovery][1] in the *Amazon EC2 User Guide*.
732
776
  #
733
777
  # Default: `off`
734
778
  #
@@ -2733,6 +2777,7 @@ module Aws::EC2
2733
2777
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
2734
2778
  # kms_key_id: "String",
2735
2779
  # throughput: 1,
2780
+ # outpost_arn: "String",
2736
2781
  # encrypted: false,
2737
2782
  # },
2738
2783
  # no_device: "String",
@@ -2766,8 +2811,8 @@ module Aws::EC2
2766
2811
  # @return [Types::EbsBlockDevice]
2767
2812
  #
2768
2813
  # @!attribute [rw] no_device
2769
- # Suppresses the specified device included in the block device mapping
2770
- # of the AMI.
2814
+ # To omit the device from the block device mapping, specify an empty
2815
+ # string.
2771
2816
  # @return [String]
2772
2817
  #
2773
2818
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BlockDeviceMapping AWS API Documentation
@@ -3438,8 +3483,8 @@ module Aws::EC2
3438
3483
  # date and time specified in your request. The reserved capacity is
3439
3484
  # no longer available for your use.
3440
3485
  #
3441
- # * `cancelled` - The Capacity Reservation was manually cancelled. The
3442
- # reserved capacity is no longer available for your use.
3486
+ # * `cancelled` - The Capacity Reservation was cancelled. The reserved
3487
+ # capacity is no longer available for your use.
3443
3488
  #
3444
3489
  # * `pending` - The Capacity Reservation request was successful but
3445
3490
  # the capacity provisioning is still pending.
@@ -3450,6 +3495,10 @@ module Aws::EC2
3450
3495
  # retained for 60 minutes.
3451
3496
  # @return [String]
3452
3497
  #
3498
+ # @!attribute [rw] start_date
3499
+ # The date and time at which the Capacity Reservation was started.
3500
+ # @return [Time]
3501
+ #
3453
3502
  # @!attribute [rw] end_date
3454
3503
  # The date and time at which the Capacity Reservation expires. When a
3455
3504
  # Capacity Reservation expires, the reserved capacity is released and
@@ -3510,6 +3559,7 @@ module Aws::EC2
3510
3559
  :ebs_optimized,
3511
3560
  :ephemeral_storage,
3512
3561
  :state,
3562
+ :start_date,
3513
3563
  :end_date,
3514
3564
  :end_date_type,
3515
3565
  :instance_match_criteria,
@@ -3547,10 +3597,9 @@ module Aws::EC2
3547
3597
  # </note>
3548
3598
  #
3549
3599
  # For more information about Capacity Reservations, see [On-Demand
3550
- # Capacity Reservations][1] in the *Amazon Elastic Compute Cloud User
3551
- # Guide*. For examples of using Capacity Reservations in an EC2 Fleet,
3552
- # see [EC2 Fleet example configurations][2] in the *Amazon Elastic
3553
- # Compute Cloud User Guide*.
3600
+ # Capacity Reservations][1] in the *Amazon EC2 User Guide*. For examples
3601
+ # of using Capacity Reservations in an EC2 Fleet, see [EC2 Fleet example
3602
+ # configurations][2] in the *Amazon EC2 User Guide*.
3554
3603
  #
3555
3604
  #
3556
3605
  #
@@ -3591,10 +3640,9 @@ module Aws::EC2
3591
3640
  # </note>
3592
3641
  #
3593
3642
  # For more information about Capacity Reservations, see [On-Demand
3594
- # Capacity Reservations][1] in the *Amazon Elastic Compute Cloud User
3595
- # Guide*. For examples of using Capacity Reservations in an EC2 Fleet,
3596
- # see [EC2 Fleet example configurations][2] in the *Amazon Elastic
3597
- # Compute Cloud User Guide*.
3643
+ # Capacity Reservations][1] in the *Amazon EC2 User Guide*. For examples
3644
+ # of using Capacity Reservations in an EC2 Fleet, see [EC2 Fleet example
3645
+ # configurations][2] in the *Amazon EC2 User Guide*.
3598
3646
  #
3599
3647
  #
3600
3648
  #
@@ -4919,6 +4967,7 @@ module Aws::EC2
4919
4967
  # name: "String", # required
4920
4968
  # source_image_id: "String", # required
4921
4969
  # source_region: "String", # required
4970
+ # destination_outpost_arn: "String",
4922
4971
  # dry_run: false,
4923
4972
  # }
4924
4973
  #
@@ -4990,6 +5039,21 @@ module Aws::EC2
4990
5039
  # The name of the Region that contains the AMI to copy.
4991
5040
  # @return [String]
4992
5041
  #
5042
+ # @!attribute [rw] destination_outpost_arn
5043
+ # The Amazon Resource Name (ARN) of the Outpost to which to copy the
5044
+ # AMI. Only specify this parameter when copying an AMI from an AWS
5045
+ # Region to an Outpost. The AMI must be in the Region of the
5046
+ # destination Outpost. You cannot copy an AMI from an Outpost to a
5047
+ # Region, from one Outpost to another, or within the same Outpost.
5048
+ #
5049
+ # For more information, see [ Copying AMIs from an AWS Region to an
5050
+ # Outpost][1] in the *Amazon Elastic Compute Cloud User Guide*.
5051
+ #
5052
+ #
5053
+ #
5054
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#copy-amis
5055
+ # @return [String]
5056
+ #
4993
5057
  # @!attribute [rw] dry_run
4994
5058
  # Checks whether you have the required permissions for the action,
4995
5059
  # without actually making the request, and provides an error response.
@@ -5007,6 +5071,7 @@ module Aws::EC2
5007
5071
  :name,
5008
5072
  :source_image_id,
5009
5073
  :source_region,
5074
+ :destination_outpost_arn,
5010
5075
  :dry_run)
5011
5076
  SENSITIVE = []
5012
5077
  include Aws::Structure
@@ -5031,6 +5096,7 @@ module Aws::EC2
5031
5096
  #
5032
5097
  # {
5033
5098
  # description: "String",
5099
+ # destination_outpost_arn: "String",
5034
5100
  # destination_region: "String",
5035
5101
  # encrypted: false,
5036
5102
  # kms_key_id: "KmsKeyId",
@@ -5055,6 +5121,22 @@ module Aws::EC2
5055
5121
  # A description for the EBS snapshot.
5056
5122
  # @return [String]
5057
5123
  #
5124
+ # @!attribute [rw] destination_outpost_arn
5125
+ # The Amazon Resource Name (ARN) of the Outpost to which to copy the
5126
+ # snapshot. Only specify this parameter when copying a snapshot from
5127
+ # an AWS Region to an Outpost. The snapshot must be in the Region for
5128
+ # the destination Outpost. You cannot copy a snapshot from an Outpost
5129
+ # to a Region, from one Outpost to another, or within the same
5130
+ # Outpost.
5131
+ #
5132
+ # For more information, see [ Copying snapshots from an AWS Region to
5133
+ # an Outpost][1] in the *Amazon Elastic Compute Cloud User Guide*.
5134
+ #
5135
+ #
5136
+ #
5137
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#copy-snapshots
5138
+ # @return [String]
5139
+ #
5058
5140
  # @!attribute [rw] destination_region
5059
5141
  # The destination Region to use in the `PresignedUrl` parameter of a
5060
5142
  # snapshot copy operation. This parameter is only valid for specifying
@@ -5151,6 +5233,7 @@ module Aws::EC2
5151
5233
  #
5152
5234
  class CopySnapshotRequest < Struct.new(
5153
5235
  :description,
5236
+ :destination_outpost_arn,
5154
5237
  :destination_region,
5155
5238
  :encrypted,
5156
5239
  :kms_key_id,
@@ -5261,7 +5344,7 @@ module Aws::EC2
5261
5344
  #
5262
5345
  # @!attribute [rw] client_token
5263
5346
  # Unique, case-sensitive identifier that you provide to ensure the
5264
- # idempotency of the request. For more information, see [How to Ensure
5347
+ # idempotency of the request. For more information, see [Ensure
5265
5348
  # Idempotency][1].
5266
5349
  #
5267
5350
  #
@@ -5271,8 +5354,7 @@ module Aws::EC2
5271
5354
  #
5272
5355
  # @!attribute [rw] instance_type
5273
5356
  # The instance type for which to reserve capacity. For more
5274
- # information, see [Instance Types][1] in the *Amazon Elastic Compute
5275
- # Cloud User Guide*.
5357
+ # information, see [Instance types][1] in the *Amazon EC2 User Guide*.
5276
5358
  #
5277
5359
  #
5278
5360
  #
@@ -6313,7 +6395,7 @@ module Aws::EC2
6313
6395
  # @!attribute [rw] type
6314
6396
  # The type of request. The default value is `maintain`.
6315
6397
  #
6316
- # * `maintain` - The EC2 Fleet plaees an asynchronous request for your
6398
+ # * `maintain` - The EC2 Fleet places an asynchronous request for your
6317
6399
  # desired capacity, and continues to maintain your desired Spot
6318
6400
  # capacity by replenishing interrupted Spot Instances.
6319
6401
  #
@@ -6327,7 +6409,7 @@ module Aws::EC2
6327
6409
  # that could not be launched.
6328
6410
  #
6329
6411
  # For more information, see [EC2 Fleet request types][1] in the
6330
- # *Amazon Elastic Compute Cloud User Guide*.
6412
+ # *Amazon EC2 User Guide*.
6331
6413
  #
6332
6414
  #
6333
6415
  #
@@ -6348,7 +6430,13 @@ module Aws::EC2
6348
6430
  # @return [Time]
6349
6431
  #
6350
6432
  # @!attribute [rw] replace_unhealthy_instances
6351
- # Indicates whether EC2 Fleet should replace unhealthy instances.
6433
+ # Indicates whether EC2 Fleet should replace unhealthy Spot Instances.
6434
+ # Supported only for fleets of type `maintain`. For more information,
6435
+ # see [EC2 Fleet health checks][1] in the *Amazon EC2 User Guide*.
6436
+ #
6437
+ #
6438
+ #
6439
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks
6352
6440
  # @return [Boolean]
6353
6441
  #
6354
6442
  # @!attribute [rw] tag_specifications
@@ -6714,6 +6802,7 @@ module Aws::EC2
6714
6802
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
6715
6803
  # kms_key_id: "String",
6716
6804
  # throughput: 1,
6805
+ # outpost_arn: "String",
6717
6806
  # encrypted: false,
6718
6807
  # },
6719
6808
  # no_device: "String",
@@ -8634,6 +8723,7 @@ module Aws::EC2
8634
8723
  #
8635
8724
  # {
8636
8725
  # description: "String",
8726
+ # outpost_arn: "String",
8637
8727
  # volume_id: "VolumeId", # required
8638
8728
  # tag_specifications: [
8639
8729
  # {
@@ -8653,6 +8743,30 @@ module Aws::EC2
8653
8743
  # A description for the snapshot.
8654
8744
  # @return [String]
8655
8745
  #
8746
+ # @!attribute [rw] outpost_arn
8747
+ # The Amazon Resource Name (ARN) of the AWS Outpost on which to create
8748
+ # a local snapshot.
8749
+ #
8750
+ # * To create a snapshot of a volume in a Region, omit this parameter.
8751
+ # The snapshot is created in the same Region as the volume.
8752
+ #
8753
+ # * To create a snapshot of a volume on an Outpost and store the
8754
+ # snapshot in the Region, omit this parameter. The snapshot is
8755
+ # created in the Region for the Outpost.
8756
+ #
8757
+ # * To create a snapshot of a volume on an Outpost and store the
8758
+ # snapshot on an Outpost, specify the ARN of the destination
8759
+ # Outpost. The snapshot must be created on the same Outpost as the
8760
+ # volume.
8761
+ #
8762
+ # For more information, see [ Creating local snapshots from volumes on
8763
+ # an Outpost][1] in the *Amazon Elastic Compute Cloud User Guide*.
8764
+ #
8765
+ #
8766
+ #
8767
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#create-snapshot
8768
+ # @return [String]
8769
+ #
8656
8770
  # @!attribute [rw] volume_id
8657
8771
  # The ID of the EBS volume.
8658
8772
  # @return [String]
@@ -8672,6 +8786,7 @@ module Aws::EC2
8672
8786
  #
8673
8787
  class CreateSnapshotRequest < Struct.new(
8674
8788
  :description,
8789
+ :outpost_arn,
8675
8790
  :volume_id,
8676
8791
  :tag_specifications,
8677
8792
  :dry_run)
@@ -8688,6 +8803,7 @@ module Aws::EC2
8688
8803
  # instance_id: "InstanceId",
8689
8804
  # exclude_boot_volume: false,
8690
8805
  # },
8806
+ # outpost_arn: "String",
8691
8807
  # tag_specifications: [
8692
8808
  # {
8693
8809
  # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, egress-only-internet-gateway, elastic-ip, elastic-gpu, export-image-task, export-instance-task, fleet, fpga-image, host-reservation, image, import-image-task, import-snapshot-task, instance, internet-gateway, key-pair, launch-template, local-gateway-route-table-vpc-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, placement-group, reserved-instances, route-table, security-group, snapshot, spot-fleet-request, spot-instances-request, subnet, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
@@ -8713,6 +8829,32 @@ module Aws::EC2
8713
8829
  # snapshots.
8714
8830
  # @return [Types::InstanceSpecification]
8715
8831
  #
8832
+ # @!attribute [rw] outpost_arn
8833
+ # The Amazon Resource Name (ARN) of the AWS Outpost on which to create
8834
+ # the local snapshots.
8835
+ #
8836
+ # * To create snapshots from an instance in a Region, omit this
8837
+ # parameter. The snapshots are created in the same Region as the
8838
+ # instance.
8839
+ #
8840
+ # * To create snapshots from an instance on an Outpost and store the
8841
+ # snapshots in the Region, omit this parameter. The snapshots are
8842
+ # created in the Region for the Outpost.
8843
+ #
8844
+ # * To create snapshots from an instance on an Outpost and store the
8845
+ # snapshots on an Outpost, specify the ARN of the destination
8846
+ # Outpost. The snapshots must be created on the same Outpost as the
8847
+ # instance.
8848
+ #
8849
+ # For more information, see [ Creating multi-volume local snapshots
8850
+ # from instances on an Outpost][1] in the *Amazon Elastic Compute
8851
+ # Cloud User Guide*.
8852
+ #
8853
+ #
8854
+ #
8855
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#create-multivol-snapshot
8856
+ # @return [String]
8857
+ #
8716
8858
  # @!attribute [rw] tag_specifications
8717
8859
  # Tags to apply to every snapshot specified by the instance.
8718
8860
  # @return [Array<Types::TagSpecification>]
@@ -8733,6 +8875,7 @@ module Aws::EC2
8733
8875
  class CreateSnapshotsRequest < Struct.new(
8734
8876
  :description,
8735
8877
  :instance_specification,
8878
+ :outpost_arn,
8736
8879
  :tag_specifications,
8737
8880
  :dry_run,
8738
8881
  :copy_tags_from_source)
@@ -10568,7 +10711,9 @@ module Aws::EC2
10568
10711
  # attributes to `true`\: `enableDnsHostnames` and `enableDnsSupport`.
10569
10712
  # Use ModifyVpcAttribute to set the VPC attributes.
10570
10713
  #
10571
- # Default: `true`
10714
+ # Private DNS is not supported for Amazon S3 interface endpoints.
10715
+ #
10716
+ # Default: `true` for supported endpoints
10572
10717
  # @return [Boolean]
10573
10718
  #
10574
10719
  # @!attribute [rw] tag_specifications
@@ -13768,6 +13913,72 @@ module Aws::EC2
13768
13913
  include Aws::Structure
13769
13914
  end
13770
13915
 
13916
+ # @note When making an API call, you may pass DescribeAddressesAttributeRequest
13917
+ # data as a hash:
13918
+ #
13919
+ # {
13920
+ # allocation_ids: ["AllocationId"],
13921
+ # attribute: "domain-name", # accepts domain-name
13922
+ # next_token: "NextToken",
13923
+ # max_results: 1,
13924
+ # dry_run: false,
13925
+ # }
13926
+ #
13927
+ # @!attribute [rw] allocation_ids
13928
+ # \[EC2-VPC\] The allocation IDs.
13929
+ # @return [Array<String>]
13930
+ #
13931
+ # @!attribute [rw] attribute
13932
+ # The attribute of the IP address.
13933
+ # @return [String]
13934
+ #
13935
+ # @!attribute [rw] next_token
13936
+ # The token for the next page of results.
13937
+ # @return [String]
13938
+ #
13939
+ # @!attribute [rw] max_results
13940
+ # The maximum number of results to return with a single call. To
13941
+ # retrieve the remaining results, make another call with the returned
13942
+ # `nextToken` value.
13943
+ # @return [Integer]
13944
+ #
13945
+ # @!attribute [rw] dry_run
13946
+ # Checks whether you have the required permissions for the action,
13947
+ # without actually making the request, and provides an error response.
13948
+ # If you have the required permissions, the error response is
13949
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
13950
+ # @return [Boolean]
13951
+ #
13952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressesAttributeRequest AWS API Documentation
13953
+ #
13954
+ class DescribeAddressesAttributeRequest < Struct.new(
13955
+ :allocation_ids,
13956
+ :attribute,
13957
+ :next_token,
13958
+ :max_results,
13959
+ :dry_run)
13960
+ SENSITIVE = []
13961
+ include Aws::Structure
13962
+ end
13963
+
13964
+ # @!attribute [rw] addresses
13965
+ # Information about the IP addresses.
13966
+ # @return [Array<Types::AddressAttribute>]
13967
+ #
13968
+ # @!attribute [rw] next_token
13969
+ # The token to use to retrieve the next page of results. This value is
13970
+ # `null` when there are no more results to return.
13971
+ # @return [String]
13972
+ #
13973
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressesAttributeResult AWS API Documentation
13974
+ #
13975
+ class DescribeAddressesAttributeResult < Struct.new(
13976
+ :addresses,
13977
+ :next_token)
13978
+ SENSITIVE = []
13979
+ include Aws::Structure
13980
+ end
13981
+
13771
13982
  # @note When making an API call, you may pass DescribeAddressesRequest
13772
13983
  # data as a hash:
13773
13984
  #
@@ -14211,8 +14422,8 @@ module Aws::EC2
14211
14422
  # the date and time specified in your request. The reserved
14212
14423
  # capacity is no longer available for your use.
14213
14424
  #
14214
- # * `cancelled` - The Capacity Reservation was manually cancelled.
14215
- # The reserved capacity is no longer available for your use.
14425
+ # * `cancelled` - The Capacity Reservation was cancelled. The
14426
+ # reserved capacity is no longer available for your use.
14216
14427
  #
14217
14428
  # * `pending` - The Capacity Reservation request was successful but
14218
14429
  # the capacity provisioning is still pending.
@@ -16733,13 +16944,14 @@ module Aws::EC2
16733
16944
  #
16734
16945
  # * `name` - The name of the AMI (provided during image creation).
16735
16946
  #
16736
- # * `owner-alias` - The owner alias, from an Amazon-maintained list
16737
- # (`amazon` \| `aws-marketplace`). This is not the user-configured
16738
- # AWS account alias set using the IAM console. We recommend that you
16739
- # use the related parameter instead of this filter.
16947
+ # * `owner-alias` - The owner alias (`amazon` \| `aws-marketplace`).
16948
+ # The valid aliases are defined in an Amazon-maintained list. This
16949
+ # is not the AWS account alias that can be set using the IAM
16950
+ # console. We recommend that you use the **Owner** request parameter
16951
+ # instead of this filter.
16740
16952
  #
16741
16953
  # * `owner-id` - The AWS account ID of the owner. We recommend that
16742
- # you use the related parameter instead of this filter.
16954
+ # you use the **Owner** request parameter instead of this filter.
16743
16955
  #
16744
16956
  # * `platform` - The platform. To only list Windows-based AMIs, use
16745
16957
  # `windows`.
@@ -17354,8 +17566,8 @@ module Aws::EC2
17354
17566
  # @return [Boolean]
17355
17567
  #
17356
17568
  # @!attribute [rw] instance_types
17357
- # The instance types. For more information, see [Instance Types][1] in
17358
- # the *Amazon Elastic Compute Cloud User Guide*.
17569
+ # The instance types. For more information, see [Instance types][1] in
17570
+ # the *Amazon EC2 User Guide*.
17359
17571
  #
17360
17572
  #
17361
17573
  #
@@ -17519,8 +17731,8 @@ module Aws::EC2
17519
17731
  end
17520
17732
 
17521
17733
  # @!attribute [rw] instance_types
17522
- # The instance type. For more information, see [Instance Types][1] in
17523
- # the *Amazon Elastic Compute Cloud User Guide*.
17734
+ # The instance type. For more information, see [Instance types][1] in
17735
+ # the *Amazon EC2 User Guide*.
17524
17736
  #
17525
17737
  #
17526
17738
  #
@@ -20339,8 +20551,8 @@ module Aws::EC2
20339
20551
  #
20340
20552
  # @!attribute [rw] instance_type
20341
20553
  # The instance type that the reservation will cover (for example,
20342
- # `m1.small`). For more information, see [Instance Types][1] in the
20343
- # *Amazon Elastic Compute Cloud User Guide*.
20554
+ # `m1.small`). For more information, see [Instance types][1] in the
20555
+ # *Amazon EC2 User Guide*.
20344
20556
  #
20345
20557
  #
20346
20558
  #
@@ -25990,13 +26202,14 @@ module Aws::EC2
25990
26202
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
25991
26203
  # kms_key_id: "String",
25992
26204
  # throughput: 1,
26205
+ # outpost_arn: "String",
25993
26206
  # encrypted: false,
25994
26207
  # }
25995
26208
  #
25996
26209
  # @!attribute [rw] delete_on_termination
25997
26210
  # Indicates whether the EBS volume is deleted on instance termination.
25998
26211
  # For more information, see [Preserving Amazon EBS volumes on instance
25999
- # termination][1] in the Amazon Elastic Compute Cloud User Guide.
26212
+ # termination][1] in the *Amazon EC2 User Guide*.
26000
26213
  #
26001
26214
  #
26002
26215
  #
@@ -26047,18 +26260,15 @@ module Aws::EC2
26047
26260
  #
26048
26261
  # * `io1` and `io2`\: 4-16,384
26049
26262
  #
26050
- # * `st1`\: 500-16,384
26051
- #
26052
- # * `sc1`\: 500-16,384
26263
+ # * `st1` and `sc1`\: 125-16,384
26053
26264
  #
26054
26265
  # * `standard`\: 1-1,024
26055
26266
  # @return [Integer]
26056
26267
  #
26057
26268
  # @!attribute [rw] volume_type
26058
26269
  # The volume type. For more information, see [Amazon EBS volume
26059
- # types][1] in the *Amazon Elastic Compute Cloud User Guide*. If the
26060
- # volume type is `io1` or `io2`, you must specify the IOPS that the
26061
- # volume supports.
26270
+ # types][1] in the *Amazon EC2 User Guide*. If the volume type is
26271
+ # `io1` or `io2`, you must specify the IOPS that the volume supports.
26062
26272
  #
26063
26273
  #
26064
26274
  #
@@ -26088,13 +26298,17 @@ module Aws::EC2
26088
26298
  # Valid Range: Minimum value of 125. Maximum value of 1000.
26089
26299
  # @return [Integer]
26090
26300
  #
26301
+ # @!attribute [rw] outpost_arn
26302
+ # The ARN of the Outpost on which the snapshot is stored.
26303
+ # @return [String]
26304
+ #
26091
26305
  # @!attribute [rw] encrypted
26092
26306
  # Indicates whether the encryption state of an EBS volume is changed
26093
26307
  # while being restored from a backing snapshot. The effect of setting
26094
26308
  # the encryption state to `true` depends on the volume origin (new or
26095
26309
  # from a snapshot), starting encryption state, ownership, and whether
26096
26310
  # encryption by default is enabled. For more information, see [Amazon
26097
- # EBS Encryption][1] in the *Amazon Elastic Compute Cloud User Guide*.
26311
+ # EBS encryption][1] in the *Amazon EC2 User Guide*.
26098
26312
  #
26099
26313
  # In no case can you remove encryption from an encrypted volume.
26100
26314
  #
@@ -26120,6 +26334,7 @@ module Aws::EC2
26120
26334
  :volume_type,
26121
26335
  :kms_key_id,
26122
26336
  :throughput,
26337
+ :outpost_arn,
26123
26338
  :encrypted)
26124
26339
  SENSITIVE = []
26125
26340
  include Aws::Structure
@@ -26129,8 +26344,8 @@ module Aws::EC2
26129
26344
  #
26130
26345
  # @!attribute [rw] ebs_optimized_support
26131
26346
  # Indicates whether the instance type is Amazon EBS-optimized. For
26132
- # more information, see [Amazon EBS-Optimized Instances][1] in *Amazon
26133
- # EC2 User Guide for Linux Instances*.
26347
+ # more information, see [Amazon EBS-optimized instances][1] in *Amazon
26348
+ # EC2 User Guide*.
26134
26349
  #
26135
26350
  #
26136
26351
  #
@@ -28020,7 +28235,13 @@ module Aws::EC2
28020
28235
  # @return [Time]
28021
28236
  #
28022
28237
  # @!attribute [rw] replace_unhealthy_instances
28023
- # Indicates whether EC2 Fleet should replace unhealthy instances.
28238
+ # Indicates whether EC2 Fleet should replace unhealthy Spot Instances.
28239
+ # Supported only for fleets of type `maintain`. For more information,
28240
+ # see [EC2 Fleet health checks][1] in the *Amazon EC2 User Guide*.
28241
+ #
28242
+ #
28243
+ #
28244
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks
28024
28245
  # @return [Boolean]
28025
28246
  #
28026
28247
  # @!attribute [rw] spot_options
@@ -28324,8 +28545,7 @@ module Aws::EC2
28324
28545
  # Describes the Amazon EC2 launch template and the launch template
28325
28546
  # version that can be used by an EC2 Fleet to configure Amazon EC2
28326
28547
  # instances. For information about launch templates, see [Launching an
28327
- # instance from a launch template][1] in the *Amazon Elastic Compute
28328
- # Cloud User Guide*.
28548
+ # instance from a launch template][1] in the *Amazon EC2 User Guide*.
28329
28549
  #
28330
28550
  #
28331
28551
  #
@@ -28399,7 +28619,7 @@ module Aws::EC2
28399
28619
  # The Spot Instance replacement strategy to use when Amazon EC2 emits a
28400
28620
  # signal that your Spot Instance is at an elevated risk of being
28401
28621
  # interrupted. For more information, see [Capacity rebalancing][1] in
28402
- # the *Amazon Elastic Compute Cloud User Guide*.
28622
+ # the *Amazon EC2 User Guide*.
28403
28623
  #
28404
28624
  #
28405
28625
  #
@@ -28973,8 +29193,8 @@ module Aws::EC2
28973
29193
  # date and time specified in your request. The reserved capacity is
28974
29194
  # no longer available for your use.
28975
29195
  #
28976
- # * `cancelled` - The Capacity Reservation was manually cancelled. The
28977
- # reserved capacity is no longer available for your use.
29196
+ # * `cancelled` - The Capacity Reservation was cancelled. The reserved
29197
+ # capacity is no longer available for your use.
28978
29198
  #
28979
29199
  # * `pending` - The Capacity Reservation request was successful but
28980
29200
  # the capacity provisioning is still pending.
@@ -30251,7 +30471,7 @@ module Aws::EC2
30251
30471
  # Indicates whether your instance is configured for hibernation. This
30252
30472
  # parameter is valid only if the instance meets the [hibernation
30253
30473
  # prerequisites][1]. For more information, see [Hibernate your
30254
- # instance][2] in the *Amazon Elastic Compute Cloud User Guide*.
30474
+ # instance][2] in the *Amazon EC2 User Guide*.
30255
30475
  #
30256
30476
  #
30257
30477
  #
@@ -30274,7 +30494,7 @@ module Aws::EC2
30274
30494
  # Indicates whether your instance is configured for hibernation. This
30275
30495
  # parameter is valid only if the instance meets the [hibernation
30276
30496
  # prerequisites][1]. For more information, see [Hibernate your
30277
- # instance][2] in the *Amazon Elastic Compute Cloud User Guide*.
30497
+ # instance][2] in the *Amazon EC2 User Guide*.
30278
30498
  #
30279
30499
  #
30280
30500
  #
@@ -30378,7 +30598,7 @@ module Aws::EC2
30378
30598
  #
30379
30599
  # @!attribute [rw] client_token
30380
30600
  # Unique, case-sensitive identifier that you provide to ensure the
30381
- # idempotency of the request. For more information, see [How to Ensure
30601
+ # idempotency of the request. For more information, see [Ensuring
30382
30602
  # Idempotency][1].
30383
30603
  #
30384
30604
  #
@@ -30428,10 +30648,10 @@ module Aws::EC2
30428
30648
  #
30429
30649
  # @!attribute [rw] allows_multiple_instance_types
30430
30650
  # Indicates whether the Dedicated Host supports multiple instance
30431
- # types of the same instance family, or a specific instance type only.
30432
- # `one` indicates that the Dedicated Host supports multiple instance
30433
- # types in the instance family. `off` indicates that the Dedicated
30434
- # Host supports a single instance type only.
30651
+ # types of the same instance family. If the value is `on`, the
30652
+ # Dedicated Host supports multiple instance types in the instance
30653
+ # family. If the value is `off`, the Dedicated Host supports a single
30654
+ # instance type only.
30435
30655
  # @return [String]
30436
30656
  #
30437
30657
  # @!attribute [rw] owner_id
@@ -32419,7 +32639,7 @@ module Aws::EC2
32419
32639
  # the instance. A value of `true` means that checking is enabled, and
32420
32640
  # `false` means that checking is disabled. The value must be `false`
32421
32641
  # for the instance to perform NAT. For more information, see [NAT
32422
- # Instances][1] in the *Amazon Virtual Private Cloud User Guide*.
32642
+ # instances][1] in the *Amazon VPC User Guide*.
32423
32643
  #
32424
32644
  #
32425
32645
  #
@@ -33701,8 +33921,8 @@ module Aws::EC2
33701
33921
  # Describes the instance type.
33702
33922
  #
33703
33923
  # @!attribute [rw] instance_type
33704
- # The instance type. For more information, see [Instance Types][1] in
33705
- # the *Amazon Elastic Compute Cloud User Guide*.
33924
+ # The instance type. For more information, see [Instance types][1] in
33925
+ # the *Amazon EC2 User Guide*.
33706
33926
  #
33707
33927
  #
33708
33928
  #
@@ -33833,8 +34053,8 @@ module Aws::EC2
33833
34053
  # The instance types offered.
33834
34054
  #
33835
34055
  # @!attribute [rw] instance_type
33836
- # The instance type. For more information, see [Instance Types][1] in
33837
- # the *Amazon Elastic Compute Cloud User Guide*.
34056
+ # The instance type. For more information, see [Instance types][1] in
34057
+ # the *Amazon EC2 User Guide*.
33838
34058
  #
33839
34059
  #
33840
34060
  #
@@ -34262,6 +34482,9 @@ module Aws::EC2
34262
34482
  #
34263
34483
  # @!attribute [rw] user_id
34264
34484
  # The AWS account ID.
34485
+ #
34486
+ # Constraints: Up to 10 000 account IDs can be specified in a single
34487
+ # request.
34265
34488
  # @return [String]
34266
34489
  #
34267
34490
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchPermission AWS API Documentation
@@ -36534,6 +36757,52 @@ module Aws::EC2
36534
36757
  include Aws::Structure
36535
36758
  end
36536
36759
 
36760
+ # @note When making an API call, you may pass ModifyAddressAttributeRequest
36761
+ # data as a hash:
36762
+ #
36763
+ # {
36764
+ # allocation_id: "AllocationId", # required
36765
+ # domain_name: "String",
36766
+ # dry_run: false,
36767
+ # }
36768
+ #
36769
+ # @!attribute [rw] allocation_id
36770
+ # \[EC2-VPC\] The allocation ID.
36771
+ # @return [String]
36772
+ #
36773
+ # @!attribute [rw] domain_name
36774
+ # The domain name to modify for the IP address.
36775
+ # @return [String]
36776
+ #
36777
+ # @!attribute [rw] dry_run
36778
+ # Checks whether you have the required permissions for the action,
36779
+ # without actually making the request, and provides an error response.
36780
+ # If you have the required permissions, the error response is
36781
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
36782
+ # @return [Boolean]
36783
+ #
36784
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyAddressAttributeRequest AWS API Documentation
36785
+ #
36786
+ class ModifyAddressAttributeRequest < Struct.new(
36787
+ :allocation_id,
36788
+ :domain_name,
36789
+ :dry_run)
36790
+ SENSITIVE = []
36791
+ include Aws::Structure
36792
+ end
36793
+
36794
+ # @!attribute [rw] address
36795
+ # Information about the Elastic IP address.
36796
+ # @return [Types::AddressAttribute]
36797
+ #
36798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyAddressAttributeResult AWS API Documentation
36799
+ #
36800
+ class ModifyAddressAttributeResult < Struct.new(
36801
+ :address)
36802
+ SENSITIVE = []
36803
+ include Aws::Structure
36804
+ end
36805
+
36537
36806
  # @note When making an API call, you may pass ModifyAvailabilityZoneGroupRequest
36538
36807
  # data as a hash:
36539
36808
  #
@@ -36596,6 +36865,7 @@ module Aws::EC2
36596
36865
  # instance_count: 1,
36597
36866
  # end_date: Time.now,
36598
36867
  # end_date_type: "unlimited", # accepts unlimited, limited
36868
+ # accept: false,
36599
36869
  # dry_run: false,
36600
36870
  # }
36601
36871
  #
@@ -36636,6 +36906,11 @@ module Aws::EC2
36636
36906
  # `EndDateType` is `limited`.
36637
36907
  # @return [String]
36638
36908
  #
36909
+ # @!attribute [rw] accept
36910
+ # Reserved. Capacity Reservations you have created are accepted by
36911
+ # default.
36912
+ # @return [Boolean]
36913
+ #
36639
36914
  # @!attribute [rw] dry_run
36640
36915
  # Checks whether you have the required permissions for the action,
36641
36916
  # without actually making the request, and provides an error response.
@@ -36650,6 +36925,7 @@ module Aws::EC2
36650
36925
  :instance_count,
36651
36926
  :end_date,
36652
36927
  :end_date_type,
36928
+ :accept,
36653
36929
  :dry_run)
36654
36930
  SENSITIVE = []
36655
36931
  include Aws::Structure
@@ -37138,8 +37414,8 @@ module Aws::EC2
37138
37414
  #
37139
37415
  # @!attribute [rw] host_recovery
37140
37416
  # Indicates whether to enable or disable host recovery for the
37141
- # Dedicated Host. For more information, see [ Host Recovery][1] in the
37142
- # *Amazon Elastic Compute Cloud User Guide*.
37417
+ # Dedicated Host. For more information, see [ Host recovery][1] in the
37418
+ # *Amazon EC2 User Guide*.
37143
37419
  #
37144
37420
  #
37145
37421
  #
@@ -37442,7 +37718,7 @@ module Aws::EC2
37442
37718
  # To add instance store volumes to an Amazon EBS-backed instance, you
37443
37719
  # must add them when you launch the instance. For more information,
37444
37720
  # see [Updating the block device mapping when launching an
37445
- # instance][1] in the *Amazon Elastic Compute Cloud User Guide*.
37721
+ # instance][1] in the *Amazon EC2 User Guide*.
37446
37722
  #
37447
37723
  #
37448
37724
  #
@@ -37498,8 +37774,9 @@ module Aws::EC2
37498
37774
  #
37499
37775
  # @!attribute [rw] instance_type
37500
37776
  # Changes the instance type to the specified value. For more
37501
- # information, see [Instance types][1]. If the instance type is not
37502
- # valid, the error returned is `InvalidInstanceAttributeValue`.
37777
+ # information, see [Instance types][1] in the *Amazon EC2 User Guide*.
37778
+ # If the instance type is not valid, the error returned is
37779
+ # `InvalidInstanceAttributeValue`.
37503
37780
  #
37504
37781
  #
37505
37782
  #
@@ -39295,6 +39572,8 @@ module Aws::EC2
39295
39572
  # @!attribute [rw] private_dns_enabled
39296
39573
  # (Interface endpoint) Indicates whether a private hosted zone is
39297
39574
  # associated with the VPC.
39575
+ #
39576
+ # Private DNS is not supported for Amazon S3 interface endpoints.
39298
39577
  # @return [Boolean]
39299
39578
  #
39300
39579
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointRequest AWS API Documentation
@@ -42355,6 +42634,31 @@ module Aws::EC2
42355
42634
  include Aws::Structure
42356
42635
  end
42357
42636
 
42637
+ # The status of an updated pointer (PTR) record for an Elastic IP
42638
+ # address.
42639
+ #
42640
+ # @!attribute [rw] value
42641
+ # The value for the PTR record update.
42642
+ # @return [String]
42643
+ #
42644
+ # @!attribute [rw] status
42645
+ # The status of the PTR record update.
42646
+ # @return [String]
42647
+ #
42648
+ # @!attribute [rw] reason
42649
+ # The reason for the PTR record update.
42650
+ # @return [String]
42651
+ #
42652
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PtrUpdateStatus AWS API Documentation
42653
+ #
42654
+ class PtrUpdateStatus < Struct.new(
42655
+ :value,
42656
+ :status,
42657
+ :reason)
42658
+ SENSITIVE = []
42659
+ include Aws::Structure
42660
+ end
42661
+
42358
42662
  # Describes an IPv4 address pool.
42359
42663
  #
42360
42664
  # @!attribute [rw] pool_id
@@ -42505,7 +42809,7 @@ module Aws::EC2
42505
42809
  #
42506
42810
  # @!attribute [rw] client_token
42507
42811
  # Unique, case-sensitive identifier that you provide to ensure the
42508
- # idempotency of the request. For more information, see [How to Ensure
42812
+ # idempotency of the request. For more information, see [Ensuring
42509
42813
  # Idempotency][1].
42510
42814
  #
42511
42815
  #
@@ -42557,7 +42861,7 @@ module Aws::EC2
42557
42861
 
42558
42862
  # @!attribute [rw] client_token
42559
42863
  # Unique, case-sensitive identifier that you provide to ensure the
42560
- # idempotency of the request. For more information, see [How to Ensure
42864
+ # idempotency of the request. For more information, see [Ensuring
42561
42865
  # Idempotency][1].
42562
42866
  #
42563
42867
  #
@@ -42846,6 +43150,7 @@ module Aws::EC2
42846
43150
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
42847
43151
  # kms_key_id: "String",
42848
43152
  # throughput: 1,
43153
+ # outpost_arn: "String",
42849
43154
  # encrypted: false,
42850
43155
  # },
42851
43156
  # no_device: "String",
@@ -42884,6 +43189,17 @@ module Aws::EC2
42884
43189
  #
42885
43190
  # @!attribute [rw] block_device_mappings
42886
43191
  # The block device mapping entries.
43192
+ #
43193
+ # If you create an AMI on an Outpost, then all backing snapshots must
43194
+ # be on the same Outpost or in the Region of that Outpost. AMIs on an
43195
+ # Outpost that include local snapshots can be used to launch instances
43196
+ # on the same Outpost only. For more information, [ Amazon EBS local
43197
+ # snapshots on Outposts][1] in the *Amazon Elastic Compute Cloud User
43198
+ # Guide*.
43199
+ #
43200
+ #
43201
+ #
43202
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#ami
42887
43203
  # @return [Array<Types::BlockDeviceMapping>]
42888
43204
  #
42889
43205
  # @!attribute [rw] description
@@ -44429,6 +44745,7 @@ module Aws::EC2
44429
44745
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
44430
44746
  # kms_key_id: "String",
44431
44747
  # throughput: 1,
44748
+ # outpost_arn: "String",
44432
44749
  # encrypted: false,
44433
44750
  # },
44434
44751
  # no_device: "String",
@@ -44620,6 +44937,7 @@ module Aws::EC2
44620
44937
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
44621
44938
  # kms_key_id: "String",
44622
44939
  # throughput: 1,
44940
+ # outpost_arn: "String",
44623
44941
  # encrypted: false,
44624
44942
  # },
44625
44943
  # no_device: "String",
@@ -44880,6 +45198,7 @@ module Aws::EC2
44880
45198
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
44881
45199
  # kms_key_id: "String",
44882
45200
  # throughput: 1,
45201
+ # outpost_arn: "String",
44883
45202
  # encrypted: false,
44884
45203
  # },
44885
45204
  # no_device: "String",
@@ -45564,6 +45883,52 @@ module Aws::EC2
45564
45883
  include Aws::Structure
45565
45884
  end
45566
45885
 
45886
+ # @note When making an API call, you may pass ResetAddressAttributeRequest
45887
+ # data as a hash:
45888
+ #
45889
+ # {
45890
+ # allocation_id: "AllocationId", # required
45891
+ # attribute: "domain-name", # required, accepts domain-name
45892
+ # dry_run: false,
45893
+ # }
45894
+ #
45895
+ # @!attribute [rw] allocation_id
45896
+ # \[EC2-VPC\] The allocation ID.
45897
+ # @return [String]
45898
+ #
45899
+ # @!attribute [rw] attribute
45900
+ # The attribute of the IP address.
45901
+ # @return [String]
45902
+ #
45903
+ # @!attribute [rw] dry_run
45904
+ # Checks whether you have the required permissions for the action,
45905
+ # without actually making the request, and provides an error response.
45906
+ # If you have the required permissions, the error response is
45907
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
45908
+ # @return [Boolean]
45909
+ #
45910
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetAddressAttributeRequest AWS API Documentation
45911
+ #
45912
+ class ResetAddressAttributeRequest < Struct.new(
45913
+ :allocation_id,
45914
+ :attribute,
45915
+ :dry_run)
45916
+ SENSITIVE = []
45917
+ include Aws::Structure
45918
+ end
45919
+
45920
+ # @!attribute [rw] address
45921
+ # Information about the IP address.
45922
+ # @return [Types::AddressAttribute]
45923
+ #
45924
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetAddressAttributeResult AWS API Documentation
45925
+ #
45926
+ class ResetAddressAttributeResult < Struct.new(
45927
+ :address)
45928
+ SENSITIVE = []
45929
+ include Aws::Structure
45930
+ end
45931
+
45567
45932
  # @note When making an API call, you may pass ResetEbsDefaultKmsKeyIdRequest
45568
45933
  # data as a hash:
45569
45934
  #
@@ -46658,6 +47023,7 @@ module Aws::EC2
46658
47023
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
46659
47024
  # kms_key_id: "String",
46660
47025
  # throughput: 1,
47026
+ # outpost_arn: "String",
46661
47027
  # encrypted: false,
46662
47028
  # },
46663
47029
  # no_device: "String",
@@ -46812,7 +47178,7 @@ module Aws::EC2
46812
47178
  #
46813
47179
  # @!attribute [rw] instance_type
46814
47180
  # The instance type. For more information, see [Instance types][1] in
46815
- # the *Amazon Elastic Compute Cloud User Guide*.
47181
+ # the *Amazon EC2 User Guide*.
46816
47182
  #
46817
47183
  # Default: `m1.small`
46818
47184
  #
@@ -46848,8 +47214,8 @@ module Aws::EC2
46848
47214
  # The ID of the kernel.
46849
47215
  #
46850
47216
  # We recommend that you use PV-GRUB instead of kernels and RAM disks.
46851
- # For more information, see [ PV-GRUB][1] in the *Amazon Elastic
46852
- # Compute Cloud User Guide*.
47217
+ # For more information, see [ PV-GRUB][1] in the *Amazon EC2 User
47218
+ # Guide*.
46853
47219
  #
46854
47220
  #
46855
47221
  #
@@ -46917,8 +47283,8 @@ module Aws::EC2
46917
47283
  # kernel ID.
46918
47284
  #
46919
47285
  # We recommend that you use PV-GRUB instead of kernels and RAM disks.
46920
- # For more information, see [ PV-GRUB][1] in the *Amazon Elastic
46921
- # Compute Cloud User Guide*.
47286
+ # For more information, see [ PV-GRUB][1] in the *Amazon EC2 User
47287
+ # Guide*.
46922
47288
  #
46923
47289
  #
46924
47290
  #
@@ -47060,8 +47426,8 @@ module Aws::EC2
47060
47426
  # An elastic GPU to associate with the instance. An Elastic GPU is a
47061
47427
  # GPU resource that you can attach to your Windows instance to
47062
47428
  # accelerate the graphics performance of your applications. For more
47063
- # information, see [ Amazon EC2 Elastic GPUs][1] in the *Amazon
47064
- # Elastic Compute Cloud User Guide*.
47429
+ # information, see [Amazon EC2 Elastic GPUs][1] in the *Amazon EC2
47430
+ # User Guide*.
47065
47431
  #
47066
47432
  #
47067
47433
  #
@@ -47109,8 +47475,7 @@ module Aws::EC2
47109
47475
  # instance. Valid values are `standard` and `unlimited`. To change
47110
47476
  # this attribute after launch, use [
47111
47477
  # ModifyInstanceCreditSpecification][1]. For more information, see
47112
- # [Burstable performance instances][2] in the *Amazon Elastic Compute
47113
- # Cloud User Guide*.
47478
+ # [Burstable performance instances][2] in the *Amazon EC2 User Guide*.
47114
47479
  #
47115
47480
  # Default: `standard` (T2 instances) or `unlimited` (T3/T3a instances)
47116
47481
  #
@@ -47122,8 +47487,7 @@ module Aws::EC2
47122
47487
  #
47123
47488
  # @!attribute [rw] cpu_options
47124
47489
  # The CPU options for the instance. For more information, see
47125
- # [Optimizing CPU options][1] in the *Amazon Elastic Compute Cloud
47126
- # User Guide*.
47490
+ # [Optimizing CPU options][1] in the *Amazon EC2 User Guide*.
47127
47491
  #
47128
47492
  #
47129
47493
  #
@@ -47140,8 +47504,8 @@ module Aws::EC2
47140
47504
  #
47141
47505
  # @!attribute [rw] hibernation_options
47142
47506
  # Indicates whether an instance is enabled for hibernation. For more
47143
- # information, see [Hibernate your instance][1] in the *Amazon Elastic
47144
- # Compute Cloud User Guide*.
47507
+ # information, see [Hibernate your instance][1] in the *Amazon EC2
47508
+ # User Guide*.
47145
47509
  #
47146
47510
  # You can't enable hibernation and AWS Nitro Enclaves on the same
47147
47511
  # instance.
@@ -47693,8 +48057,8 @@ module Aws::EC2
47693
48057
  # @return [Types::ScheduledInstancesEbs]
47694
48058
  #
47695
48059
  # @!attribute [rw] no_device
47696
- # Suppresses the specified device included in the block device mapping
47697
- # of the AMI.
48060
+ # To omit the device from the block device mapping, specify an empty
48061
+ # string.
47698
48062
  # @return [String]
47699
48063
  #
47700
48064
  # @!attribute [rw] virtual_name
@@ -47750,9 +48114,9 @@ module Aws::EC2
47750
48114
  # `io1` or `io2` volume, with a maximum ratio of 50 IOPS/GiB for
47751
48115
  # `io1`, and 500 IOPS/GiB for `io2`. Range is 100 to 64,000 IOPS for
47752
48116
  # volumes in most Regions. Maximum IOPS of 64,000 is guaranteed only
47753
- # on [Nitro-based instances][1]. Other instance families guarantee
47754
- # performance up to 32,000 IOPS. For more information, see [Amazon EBS
47755
- # Volume Types][2] in the *Amazon Elastic Compute Cloud User Guide*.
48117
+ # on [instances built on the Nitro System][1]. Other instance families
48118
+ # guarantee performance up to 32,000 IOPS. For more information, see
48119
+ # [Amazon EBS volume types][2] in the *Amazon EC2 User Guide*.
47756
48120
  #
47757
48121
  # This parameter is valid only for Provisioned IOPS SSD (`io1` and
47758
48122
  # `io2`) volumes.
@@ -48871,6 +49235,16 @@ module Aws::EC2
48871
49235
  # console.
48872
49236
  # @return [String]
48873
49237
  #
49238
+ # @!attribute [rw] outpost_arn
49239
+ # The ARN of the AWS Outpost on which the snapshot is stored. For more
49240
+ # information, see [EBS Local Snapshot on Outposts][1] in the *Amazon
49241
+ # Elastic Compute Cloud User Guide*.
49242
+ #
49243
+ #
49244
+ #
49245
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html
49246
+ # @return [String]
49247
+ #
48874
49248
  # @!attribute [rw] tags
48875
49249
  # Any tags assigned to the snapshot.
48876
49250
  # @return [Array<Types::Tag>]
@@ -48891,6 +49265,7 @@ module Aws::EC2
48891
49265
  :volume_id,
48892
49266
  :volume_size,
48893
49267
  :owner_alias,
49268
+ :outpost_arn,
48894
49269
  :tags)
48895
49270
  SENSITIVE = []
48896
49271
  include Aws::Structure
@@ -49044,6 +49419,16 @@ module Aws::EC2
49044
49419
  # Snapshot id that can be used to describe this snapshot.
49045
49420
  # @return [String]
49046
49421
  #
49422
+ # @!attribute [rw] outpost_arn
49423
+ # The ARN of the AWS Outpost on which the snapshot is stored. For more
49424
+ # information, see [EBS Local Snapshot on Outposts][1] in the *Amazon
49425
+ # Elastic Compute Cloud User Guide*.
49426
+ #
49427
+ #
49428
+ #
49429
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html
49430
+ # @return [String]
49431
+ #
49047
49432
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotInfo AWS API Documentation
49048
49433
  #
49049
49434
  class SnapshotInfo < Struct.new(
@@ -49056,7 +49441,8 @@ module Aws::EC2
49056
49441
  :start_time,
49057
49442
  :progress,
49058
49443
  :owner_id,
49059
- :snapshot_id)
49444
+ :snapshot_id,
49445
+ :outpost_arn)
49060
49446
  SENSITIVE = []
49061
49447
  include Aws::Structure
49062
49448
  end
@@ -49234,6 +49620,7 @@ module Aws::EC2
49234
49620
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
49235
49621
  # kms_key_id: "String",
49236
49622
  # throughput: 1,
49623
+ # outpost_arn: "String",
49237
49624
  # encrypted: false,
49238
49625
  # },
49239
49626
  # no_device: "String",
@@ -49546,6 +49933,7 @@ module Aws::EC2
49546
49933
  # volume_type: "standard", # accepts standard, io1, io2, gp2, sc1, st1, gp3
49547
49934
  # kms_key_id: "String",
49548
49935
  # throughput: 1,
49936
+ # outpost_arn: "String",
49549
49937
  # encrypted: false,
49550
49938
  # },
49551
49939
  # no_device: "String",
@@ -50177,9 +50565,8 @@ module Aws::EC2
50177
50565
  #
50178
50566
  # @!attribute [rw] spot_instance_type
50179
50567
  # The Spot Instance request type. For [RunInstances][1], persistent
50180
- # Spot Instance requests are only supported when
50181
- # **InstanceInterruptionBehavior** is set to either `hibernate` or
50182
- # `stop`.
50568
+ # Spot Instance requests are only supported when the instance
50569
+ # interruption behavior is either `hibernate` or `stop`.
50183
50570
  #
50184
50571
  #
50185
50572
  #
@@ -50806,7 +51193,7 @@ module Aws::EC2
50806
51193
  # Hibernates the instance if the instance was enabled for hibernation
50807
51194
  # at launch. If the instance cannot hibernate successfully, a normal
50808
51195
  # shutdown occurs. For more information, see [Hibernate your
50809
- # instance][1] in the *Amazon Elastic Compute Cloud User Guide*.
51196
+ # instance][1] in the *Amazon EC2 User Guide*.
50810
51197
  #
50811
51198
  # Default: `false`
50812
51199
  #
@@ -51183,22 +51570,24 @@ module Aws::EC2
51183
51570
  # The type of resource to tag. Currently, the resource types that
51184
51571
  # support tagging on creation are: `capacity-reservation` \|
51185
51572
  # `carrier-gateway` \| `client-vpn-endpoint` \| `customer-gateway` \|
51186
- # `dedicated-host` \| `dhcp-options` \| `export-image-task` \|
51573
+ # `dedicated-host` \| `dhcp-options` \| `egress-only-internet-gateway`
51574
+ # \| `elastic-ip` \| `elastic-gpu` \| `export-image-task` \|
51187
51575
  # `export-instance-task` \| `fleet` \| `fpga-image` \|
51188
- # `host-reservation` \| `import-image-task` \| `import-snapshot-task`
51189
- # \| `instance` \| `internet-gateway` \| `ipv4pool-ec2` \|
51190
- # `ipv6pool-ec2` \| `key-pair` \| `launch-template` \|
51191
- # `placement-group` \| `prefix-list` \| `natgateway` \| `network-acl`
51192
- # \| `route-table` \| `security-group` \| `spot-fleet-request` \|
51576
+ # `host-reservation` \| `image`\| `import-image-task` \|
51577
+ # `import-snapshot-task` \| `instance` \| `internet-gateway` \|
51578
+ # `ipv4pool-ec2` \| `ipv6pool-ec2` \| `key-pair` \| `launch-template`
51579
+ # \| `local-gateway-route-table-vpc-association` \| `placement-group`
51580
+ # \| `prefix-list` \| `natgateway` \| `network-acl` \|
51581
+ # `network-interface` \| `reserved-instances` \|`route-table` \|
51582
+ # `security-group`\| `snapshot` \| `spot-fleet-request` \|
51193
51583
  # `spot-instances-request` \| `snapshot` \| `subnet` \|
51194
51584
  # `traffic-mirror-filter` \| `traffic-mirror-session` \|
51195
51585
  # `traffic-mirror-target` \| `transit-gateway` \|
51196
- # `transit-gateway-attachment` \| `transit-gateway-connect-peer` \|
51197
- # `transit-gateway-multicast-domain` \| `transit-gateway-route-table`
51198
- # \| `volume` \|`vpc` \| ` vpc-peering-connection` \| `vpc-endpoint`
51199
- # (for interface and gateway endpoints) \| `vpc-endpoint-service` (for
51200
- # AWS PrivateLink) \| `vpc-flow-log` \| `vpn-connection` \|
51201
- # `vpn-gateway`.
51586
+ # `transit-gateway-attachment` \| `transit-gateway-multicast-domain`
51587
+ # \| `transit-gateway-route-table` \| `volume` \|`vpc` \| `
51588
+ # vpc-peering-connection` \| `vpc-endpoint` (for interface and gateway
51589
+ # endpoints) \| `vpc-endpoint-service` (for AWS PrivateLink) \|
51590
+ # `vpc-flow-log` \| `vpn-connection` \| `vpn-gateway`.
51202
51591
  #
51203
51592
  # To tag a resource after it has been created, see [CreateTags][1].
51204
51593
  #
@@ -51234,7 +51623,7 @@ module Aws::EC2
51234
51623
  # willing to pay. When the maximum amount you're willing to pay is
51235
51624
  # reached, the fleet stops launching instances even if it hasn’t met the
51236
51625
  # target capacity. The `MaxTotalPrice` parameters are located in
51237
- # [OnDemandOptions][1] and [SpotOptions][2]
51626
+ # [OnDemandOptions][1] and [SpotOptions][2].
51238
51627
  #
51239
51628
  #
51240
51629
  #