aws-sdk-ec2 1.180.0 → 1.185.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.
@@ -353,6 +353,7 @@ module Aws::EC2
353
353
  # ],
354
354
  # secondary_private_ip_address_count: 1,
355
355
  # subnet_id: "String",
356
+ # associate_carrier_ip_address: false,
356
357
  # interface_type: "String",
357
358
  # },
358
359
  # ],
@@ -405,6 +406,7 @@ module Aws::EC2
405
406
  # capacity_reservation_preference: "open", # accepts open, none
406
407
  # capacity_reservation_target: {
407
408
  # capacity_reservation_id: "CapacityReservationId",
409
+ # capacity_reservation_resource_group_arn: "String",
408
410
  # },
409
411
  # },
410
412
  # hibernation_options: {
@@ -329,7 +329,7 @@ module Aws::EC2
329
329
  include Aws::Structure
330
330
  end
331
331
 
332
- # Describes an Elastic IP address.
332
+ # Describes an Elastic IP address, or a carrier IP address.
333
333
  #
334
334
  # @!attribute [rw] instance_id
335
335
  # The ID of the instance that the address is associated with (if any).
@@ -375,7 +375,8 @@ module Aws::EC2
375
375
  # @return [String]
376
376
  #
377
377
  # @!attribute [rw] network_border_group
378
- # The name of the location from which the IP address is advertised.
378
+ # The name of the unique set of Availability Zones, Local Zones, or
379
+ # Wavelength Zones from which AWS advertises IP addresses.
379
380
  # @return [String]
380
381
  #
381
382
  # @!attribute [rw] customer_owned_ip
@@ -386,6 +387,12 @@ module Aws::EC2
386
387
  # The ID of the customer-owned address pool.
387
388
  # @return [String]
388
389
  #
390
+ # @!attribute [rw] carrier_ip
391
+ # The carrier IP address associated. This option is only available for
392
+ # network interfaces which reside in a subnet in a Wavelength Zone
393
+ # (for example an EC2 instance).
394
+ # @return [String]
395
+ #
389
396
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Address AWS API Documentation
390
397
  #
391
398
  class Address < Struct.new(
@@ -401,7 +408,8 @@ module Aws::EC2
401
408
  :public_ipv_4_pool,
402
409
  :network_border_group,
403
410
  :customer_owned_ip,
404
- :customer_owned_ipv_4_pool)
411
+ :customer_owned_ipv_4_pool,
412
+ :carrier_ip)
405
413
  SENSITIVE = []
406
414
  include Aws::Structure
407
415
  end
@@ -481,13 +489,10 @@ module Aws::EC2
481
489
  # @return [String]
482
490
  #
483
491
  # @!attribute [rw] network_border_group
484
- # The location from which the IP address is advertised. Use this
485
- # parameter to limit the address to this location.
486
- #
487
- # A network border group is a unique set of Availability Zones or
488
- # Local Zones from where AWS advertises IP addresses and limits the
489
- # addresses to the group. IP addresses cannot move between network
490
- # border groups.
492
+ # A unique set of Availability Zones, Local Zones, or Wavelength Zones
493
+ # from which AWS advertises IP addresses. Use this parameter to limit
494
+ # the IP address to this location. IP addresses cannot move between
495
+ # network border groups.
491
496
  #
492
497
  # Use [DescribeAvailabilityZones][1] to view the network border
493
498
  # groups.
@@ -545,7 +550,8 @@ module Aws::EC2
545
550
  # @return [String]
546
551
  #
547
552
  # @!attribute [rw] network_border_group
548
- # The location from which the IP address is advertised.
553
+ # The set of Availability Zones, Local Zones, or Wavelength Zones from
554
+ # which AWS advertises IP addresses.
549
555
  # @return [String]
550
556
  #
551
557
  # @!attribute [rw] domain
@@ -561,6 +567,12 @@ module Aws::EC2
561
567
  # The ID of the customer-owned address pool.
562
568
  # @return [String]
563
569
  #
570
+ # @!attribute [rw] carrier_ip
571
+ # The carrier IP address. This option is only available for network
572
+ # interfaces which reside in a subnet in a Wavelength Zone (for
573
+ # example an EC2 instance).
574
+ # @return [String]
575
+ #
564
576
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateAddressResult AWS API Documentation
565
577
  #
566
578
  class AllocateAddressResult < Struct.new(
@@ -570,7 +582,8 @@ module Aws::EC2
570
582
  :network_border_group,
571
583
  :domain,
572
584
  :customer_owned_ip,
573
- :customer_owned_ipv_4_pool)
585
+ :customer_owned_ipv_4_pool,
586
+ :carrier_ip)
574
587
  SENSITIVE = []
575
588
  include Aws::Structure
576
589
  end
@@ -1365,7 +1378,7 @@ module Aws::EC2
1365
1378
  #
1366
1379
  # @!attribute [rw] ipv_6_cidr_block_network_border_group
1367
1380
  # The name of the location from which we advertise the IPV6 CIDR
1368
- # block. Use this parameter to limit the CiDR block to this location.
1381
+ # block. Use this parameter to limit the CIDR block to this location.
1369
1382
  #
1370
1383
  # You must set `AmazonProvidedIpv6CidrBlock` to `true` to use this
1371
1384
  # parameter.
@@ -2133,22 +2146,23 @@ module Aws::EC2
2133
2146
  include Aws::Structure
2134
2147
  end
2135
2148
 
2136
- # Describes a Zone.
2149
+ # Describes Availability Zones, Local Zones, and Wavelength Zones.
2137
2150
  #
2138
2151
  # @!attribute [rw] state
2139
- # The state of the Zone.
2152
+ # The state of the Availability Zone, Local Zone, or Wavelength Zone.
2140
2153
  # @return [String]
2141
2154
  #
2142
2155
  # @!attribute [rw] opt_in_status
2143
2156
  # For Availability Zones, this parameter always has the value of
2144
2157
  # `opt-in-not-required`.
2145
2158
  #
2146
- # For Local Zones, this parameter is the opt in status. The possible
2147
- # values are `opted-in`, and `not-opted-in`.
2159
+ # For Local Zones and Wavelength Zones, this parameter is the opt-in
2160
+ # status. The possible values are `opted-in`, and `not-opted-in`.
2148
2161
  # @return [String]
2149
2162
  #
2150
2163
  # @!attribute [rw] messages
2151
- # Any messages about the Zone.
2164
+ # Any messages about the Availability Zone, Local Zone, or Wavelength
2165
+ # Zone.
2152
2166
  # @return [Array<Types::AvailabilityZoneMessage>]
2153
2167
  #
2154
2168
  # @!attribute [rw] region_name
@@ -2156,11 +2170,11 @@ module Aws::EC2
2156
2170
  # @return [String]
2157
2171
  #
2158
2172
  # @!attribute [rw] zone_name
2159
- # The name of the Zone.
2173
+ # The name of the Availability Zone, Local Zone, or Wavelength Zone.
2160
2174
  # @return [String]
2161
2175
  #
2162
2176
  # @!attribute [rw] zone_id
2163
- # The ID of the Zone.
2177
+ # The ID of the Availability Zone, Local Zone, or Wavelength Zone.
2164
2178
  # @return [String]
2165
2179
  #
2166
2180
  # @!attribute [rw] group_name
@@ -2169,25 +2183,28 @@ module Aws::EC2
2169
2183
  #
2170
2184
  # For Local Zones, the name of the associated group, for example
2171
2185
  # `us-west-2-lax-1`.
2186
+ #
2187
+ # For Wavelength Zones, the name of the associated group, for example
2188
+ # `us-east-1-wl1-bos-wlz-1`.
2172
2189
  # @return [String]
2173
2190
  #
2174
2191
  # @!attribute [rw] network_border_group
2175
- # The name of the location from which the address is advertised.
2192
+ # The name of the network border group.
2176
2193
  # @return [String]
2177
2194
  #
2178
2195
  # @!attribute [rw] zone_type
2179
- # The type of zone. The valid values are `availability-zone` and
2180
- # `local-zone`.
2196
+ # The type of zone. The valid values are `availability-zone`,
2197
+ # `local-zone`, and `wavelength-zone`.
2181
2198
  # @return [String]
2182
2199
  #
2183
2200
  # @!attribute [rw] parent_zone_name
2184
- # The name of the zone that handles some of the Local Zone control
2185
- # plane operations, such as API calls.
2201
+ # The name of the zone that handles some of the Local Zone or
2202
+ # Wavelength Zone control plane operations, such as API calls.
2186
2203
  # @return [String]
2187
2204
  #
2188
2205
  # @!attribute [rw] parent_zone_id
2189
- # The ID of the zone that handles some of the Local Zone control plane
2190
- # operations, such as API calls.
2206
+ # The ID of the zone that handles some of the Local Zone or Wavelength
2207
+ # Zone control plane operations, such as API calls.
2191
2208
  # @return [String]
2192
2209
  #
2193
2210
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZone AWS API Documentation
@@ -2208,10 +2225,12 @@ module Aws::EC2
2208
2225
  include Aws::Structure
2209
2226
  end
2210
2227
 
2211
- # Describes a message about a Zone.
2228
+ # Describes a message about an Availability Zone, Local Zone, or
2229
+ # Wavelength Zone.
2212
2230
  #
2213
2231
  # @!attribute [rw] message
2214
- # The message about the Zone.
2232
+ # The message about the Availability Zone, Local Zone, or Wavelength
2233
+ # Zone.
2215
2234
  # @return [String]
2216
2235
  #
2217
2236
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZoneMessage AWS API Documentation
@@ -3066,6 +3085,26 @@ module Aws::EC2
3066
3085
  include Aws::Structure
3067
3086
  end
3068
3087
 
3088
+ # Describes a resource group to which a Capacity Reservation has been
3089
+ # added.
3090
+ #
3091
+ # @!attribute [rw] group_arn
3092
+ # The ARN of the resource group.
3093
+ # @return [String]
3094
+ #
3095
+ # @!attribute [rw] owner_id
3096
+ # The ID of the AWS account that owns the resource group.
3097
+ # @return [String]
3098
+ #
3099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationGroup AWS API Documentation
3100
+ #
3101
+ class CapacityReservationGroup < Struct.new(
3102
+ :group_arn,
3103
+ :owner_id)
3104
+ SENSITIVE = []
3105
+ include Aws::Structure
3106
+ end
3107
+
3069
3108
  # Describes the strategy for using unused Capacity Reservations for
3070
3109
  # fulfilling On-Demand capacity.
3071
3110
  #
@@ -3170,7 +3209,8 @@ module Aws::EC2
3170
3209
  # instance to run as an On-Demand Instance or to run in any `open`
3171
3210
  # Capacity Reservation that has matching attributes (instance type,
3172
3211
  # platform, Availability Zone). Use the `CapacityReservationTarget`
3173
- # parameter to explicitly target a specific Capacity Reservation.
3212
+ # parameter to explicitly target a specific Capacity Reservation or a
3213
+ # Capacity Reservation group.
3174
3214
  #
3175
3215
  # @note When making an API call, you may pass CapacityReservationSpecification
3176
3216
  # data as a hash:
@@ -3179,6 +3219,7 @@ module Aws::EC2
3179
3219
  # capacity_reservation_preference: "open", # accepts open, none
3180
3220
  # capacity_reservation_target: {
3181
3221
  # capacity_reservation_id: "CapacityReservationId",
3222
+ # capacity_reservation_resource_group_arn: "String",
3182
3223
  # },
3183
3224
  # }
3184
3225
  #
@@ -3193,13 +3234,11 @@ module Aws::EC2
3193
3234
  # * `none` - The instance avoids running in a Capacity Reservation
3194
3235
  # even if one is available. The instance runs as an On-Demand
3195
3236
  # Instance.
3196
- #
3197
- # When `CapacityReservationPreference` is not specified, it defaults
3198
- # to `open`.
3199
3237
  # @return [String]
3200
3238
  #
3201
3239
  # @!attribute [rw] capacity_reservation_target
3202
- # Information about the target Capacity Reservation.
3240
+ # Information about the target Capacity Reservation or Capacity
3241
+ # Reservation group.
3203
3242
  # @return [Types::CapacityReservationTarget]
3204
3243
  #
3205
3244
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationSpecification AWS API Documentation
@@ -3217,7 +3256,8 @@ module Aws::EC2
3217
3256
  # if it is configured in run in any `open` Capacity Reservation that has
3218
3257
  # matching attributes (instance type, platform, Availability Zone). The
3219
3258
  # action returns the `capacityReservationTarget` response element if the
3220
- # instance explicily targets a specific Capacity Reservation.
3259
+ # instance explicily targets a specific Capacity Reservation or Capacity
3260
+ # Reservation group.
3221
3261
  #
3222
3262
  # @!attribute [rw] capacity_reservation_preference
3223
3263
  # Describes the instance's Capacity Reservation preferences. Possible
@@ -3232,7 +3272,8 @@ module Aws::EC2
3232
3272
  # @return [String]
3233
3273
  #
3234
3274
  # @!attribute [rw] capacity_reservation_target
3235
- # Information about the targeted Capacity Reservation.
3275
+ # Information about the targeted Capacity Reservation or Capacity
3276
+ # Reservation group.
3236
3277
  # @return [Types::CapacityReservationTargetResponse]
3237
3278
  #
3238
3279
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationSpecificationResponse AWS API Documentation
@@ -3244,37 +3285,83 @@ module Aws::EC2
3244
3285
  include Aws::Structure
3245
3286
  end
3246
3287
 
3247
- # Describes a target Capacity Reservation.
3288
+ # Describes a target Capacity Reservation or Capacity Reservation group.
3248
3289
  #
3249
3290
  # @note When making an API call, you may pass CapacityReservationTarget
3250
3291
  # data as a hash:
3251
3292
  #
3252
3293
  # {
3253
3294
  # capacity_reservation_id: "CapacityReservationId",
3295
+ # capacity_reservation_resource_group_arn: "String",
3254
3296
  # }
3255
3297
  #
3256
3298
  # @!attribute [rw] capacity_reservation_id
3257
- # The ID of the Capacity Reservation.
3299
+ # The ID of the Capacity Reservation in which to run the instance.
3300
+ # @return [String]
3301
+ #
3302
+ # @!attribute [rw] capacity_reservation_resource_group_arn
3303
+ # The ARN of the Capacity Reservation resource group in which to run
3304
+ # the instance.
3258
3305
  # @return [String]
3259
3306
  #
3260
3307
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationTarget AWS API Documentation
3261
3308
  #
3262
3309
  class CapacityReservationTarget < Struct.new(
3263
- :capacity_reservation_id)
3310
+ :capacity_reservation_id,
3311
+ :capacity_reservation_resource_group_arn)
3264
3312
  SENSITIVE = []
3265
3313
  include Aws::Structure
3266
3314
  end
3267
3315
 
3268
- # Describes a target Capacity Reservation.
3316
+ # Describes a target Capacity Reservation or Capacity Reservation group.
3269
3317
  #
3270
3318
  # @!attribute [rw] capacity_reservation_id
3271
- # The ID of the Capacity Reservation.
3319
+ # The ID of the targeted Capacity Reservation.
3320
+ # @return [String]
3321
+ #
3322
+ # @!attribute [rw] capacity_reservation_resource_group_arn
3323
+ # The ARN of the targeted Capacity Reservation group.
3272
3324
  # @return [String]
3273
3325
  #
3274
3326
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationTargetResponse AWS API Documentation
3275
3327
  #
3276
3328
  class CapacityReservationTargetResponse < Struct.new(
3277
- :capacity_reservation_id)
3329
+ :capacity_reservation_id,
3330
+ :capacity_reservation_resource_group_arn)
3331
+ SENSITIVE = []
3332
+ include Aws::Structure
3333
+ end
3334
+
3335
+ # Describes a carrier gateway.
3336
+ #
3337
+ # @!attribute [rw] carrier_gateway_id
3338
+ # The ID of the carrier gateway.
3339
+ # @return [String]
3340
+ #
3341
+ # @!attribute [rw] vpc_id
3342
+ # The ID of the VPC associated with the carrier gateway.
3343
+ # @return [String]
3344
+ #
3345
+ # @!attribute [rw] state
3346
+ # The state of the carrier gateway.
3347
+ # @return [String]
3348
+ #
3349
+ # @!attribute [rw] owner_id
3350
+ # The AWS account ID of the owner of the carrier gateway.
3351
+ # @return [String]
3352
+ #
3353
+ # @!attribute [rw] tags
3354
+ # The tags assigned to the carrier gateway.
3355
+ # @return [Array<Types::Tag>]
3356
+ #
3357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CarrierGateway AWS API Documentation
3358
+ #
3359
+ class CarrierGateway < Struct.new(
3360
+ :carrier_gateway_id,
3361
+ :vpc_id,
3362
+ :state,
3363
+ :owner_id,
3364
+ :tags)
3278
3365
  SENSITIVE = []
3279
3366
  include Aws::Structure
3280
3367
  end
@@ -4653,8 +4740,6 @@ module Aws::EC2
4653
4740
  # idempotency of the request. For more information, see [How to Ensure
4654
4741
  # Idempotency][1].
4655
4742
  #
4656
- # Constraint: Maximum 64 ASCII characters.
4657
- #
4658
4743
  #
4659
4744
  #
4660
4745
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
@@ -4804,6 +4889,77 @@ module Aws::EC2
4804
4889
  include Aws::Structure
4805
4890
  end
4806
4891
 
4892
+ # @note When making an API call, you may pass CreateCarrierGatewayRequest
4893
+ # data as a hash:
4894
+ #
4895
+ # {
4896
+ # vpc_id: "VpcId", # required
4897
+ # tag_specifications: [
4898
+ # {
4899
+ # resource_type: "client-vpn-endpoint", # accepts client-vpn-endpoint, customer-gateway, dedicated-host, dhcp-options, 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, 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-multicast-domain, transit-gateway-route-table, volume, vpc, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log
4900
+ # tags: [
4901
+ # {
4902
+ # key: "String",
4903
+ # value: "String",
4904
+ # },
4905
+ # ],
4906
+ # },
4907
+ # ],
4908
+ # dry_run: false,
4909
+ # client_token: "String",
4910
+ # }
4911
+ #
4912
+ # @!attribute [rw] vpc_id
4913
+ # The ID of the VPC to associate with the carrier gateway.
4914
+ # @return [String]
4915
+ #
4916
+ # @!attribute [rw] tag_specifications
4917
+ # The tags to associate with the carrier gateway.
4918
+ # @return [Array<Types::TagSpecification>]
4919
+ #
4920
+ # @!attribute [rw] dry_run
4921
+ # Checks whether you have the required permissions for the action,
4922
+ # without actually making the request, and provides an error response.
4923
+ # If you have the required permissions, the error response is
4924
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
4925
+ # @return [Boolean]
4926
+ #
4927
+ # @!attribute [rw] client_token
4928
+ # Unique, case-sensitive identifier that you provide to ensure the
4929
+ # idempotency of the request. For more information, see [How to Ensure
4930
+ # Idempotency][1].
4931
+ #
4932
+ # **A suitable default value is auto-generated.** You should normally
4933
+ # not need to pass this option.
4934
+ #
4935
+ #
4936
+ #
4937
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html
4938
+ # @return [String]
4939
+ #
4940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCarrierGatewayRequest AWS API Documentation
4941
+ #
4942
+ class CreateCarrierGatewayRequest < Struct.new(
4943
+ :vpc_id,
4944
+ :tag_specifications,
4945
+ :dry_run,
4946
+ :client_token)
4947
+ SENSITIVE = []
4948
+ include Aws::Structure
4949
+ end
4950
+
4951
+ # @!attribute [rw] carrier_gateway
4952
+ # Information about the carrier gateway.
4953
+ # @return [Types::CarrierGateway]
4954
+ #
4955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCarrierGatewayResult AWS API Documentation
4956
+ #
4957
+ class CreateCarrierGatewayResult < Struct.new(
4958
+ :carrier_gateway)
4959
+ SENSITIVE = []
4960
+ include Aws::Structure
4961
+ end
4962
+
4807
4963
  # @note When making an API call, you may pass CreateClientVpnEndpointRequest
4808
4964
  # data as a hash:
4809
4965
  #
@@ -6272,6 +6428,7 @@ module Aws::EC2
6272
6428
  # ],
6273
6429
  # network_interfaces: [
6274
6430
  # {
6431
+ # associate_carrier_ip_address: false,
6275
6432
  # associate_public_ip_address: false,
6276
6433
  # delete_on_termination: false,
6277
6434
  # description: "String",
@@ -6361,6 +6518,7 @@ module Aws::EC2
6361
6518
  # capacity_reservation_preference: "open", # accepts open, none
6362
6519
  # capacity_reservation_target: {
6363
6520
  # capacity_reservation_id: "CapacityReservationId",
6521
+ # capacity_reservation_resource_group_arn: "String",
6364
6522
  # },
6365
6523
  # },
6366
6524
  # license_specifications: [
@@ -6492,6 +6650,7 @@ module Aws::EC2
6492
6650
  # ],
6493
6651
  # network_interfaces: [
6494
6652
  # {
6653
+ # associate_carrier_ip_address: false,
6495
6654
  # associate_public_ip_address: false,
6496
6655
  # delete_on_termination: false,
6497
6656
  # description: "String",
@@ -6581,6 +6740,7 @@ module Aws::EC2
6581
6740
  # capacity_reservation_preference: "open", # accepts open, none
6582
6741
  # capacity_reservation_target: {
6583
6742
  # capacity_reservation_id: "CapacityReservationId",
6743
+ # capacity_reservation_resource_group_arn: "String",
6584
6744
  # },
6585
6745
  # },
6586
6746
  # license_specifications: [
@@ -7504,6 +7664,7 @@ module Aws::EC2
7504
7664
  # nat_gateway_id: "NatGatewayId",
7505
7665
  # transit_gateway_id: "TransitGatewayId",
7506
7666
  # local_gateway_id: "LocalGatewayId",
7667
+ # carrier_gateway_id: "CarrierGatewayId",
7507
7668
  # network_interface_id: "NetworkInterfaceId",
7508
7669
  # route_table_id: "RouteTableId", # required
7509
7670
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
@@ -7559,6 +7720,13 @@ module Aws::EC2
7559
7720
  # The ID of the local gateway.
7560
7721
  # @return [String]
7561
7722
  #
7723
+ # @!attribute [rw] carrier_gateway_id
7724
+ # The ID of the carrier gateway.
7725
+ #
7726
+ # You can only use this option when the VPC contains a subnet which is
7727
+ # associated with a Wavelength Zone.
7728
+ # @return [String]
7729
+ #
7562
7730
  # @!attribute [rw] network_interface_id
7563
7731
  # The ID of a network interface.
7564
7732
  # @return [String]
@@ -7584,6 +7752,7 @@ module Aws::EC2
7584
7752
  :nat_gateway_id,
7585
7753
  :transit_gateway_id,
7586
7754
  :local_gateway_id,
7755
+ :carrier_gateway_id,
7587
7756
  :network_interface_id,
7588
7757
  :route_table_id,
7589
7758
  :vpc_peering_connection_id)
@@ -10003,6 +10172,46 @@ module Aws::EC2
10003
10172
  include Aws::Structure
10004
10173
  end
10005
10174
 
10175
+ # @note When making an API call, you may pass DeleteCarrierGatewayRequest
10176
+ # data as a hash:
10177
+ #
10178
+ # {
10179
+ # carrier_gateway_id: "CarrierGatewayId", # required
10180
+ # dry_run: false,
10181
+ # }
10182
+ #
10183
+ # @!attribute [rw] carrier_gateway_id
10184
+ # The ID of the carrier gateway.
10185
+ # @return [String]
10186
+ #
10187
+ # @!attribute [rw] dry_run
10188
+ # Checks whether you have the required permissions for the action,
10189
+ # without actually making the request, and provides an error response.
10190
+ # If you have the required permissions, the error response is
10191
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10192
+ # @return [Boolean]
10193
+ #
10194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayRequest AWS API Documentation
10195
+ #
10196
+ class DeleteCarrierGatewayRequest < Struct.new(
10197
+ :carrier_gateway_id,
10198
+ :dry_run)
10199
+ SENSITIVE = []
10200
+ include Aws::Structure
10201
+ end
10202
+
10203
+ # @!attribute [rw] carrier_gateway
10204
+ # Information about the carrier gateway.
10205
+ # @return [Types::CarrierGateway]
10206
+ #
10207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayResult AWS API Documentation
10208
+ #
10209
+ class DeleteCarrierGatewayResult < Struct.new(
10210
+ :carrier_gateway)
10211
+ SENSITIVE = []
10212
+ include Aws::Structure
10213
+ end
10214
+
10006
10215
  # @note When making an API call, you may pass DeleteClientVpnEndpointRequest
10007
10216
  # data as a hash:
10008
10217
  #
@@ -12305,8 +12514,8 @@ module Aws::EC2
12305
12514
  # * `instance-id` - The ID of the instance the address is associated
12306
12515
  # with, if any.
12307
12516
  #
12308
- # * `network-border-group` - The location from where the IP address is
12309
- # advertised.
12517
+ # * `network-border-group` - A unique set of Availability Zones, Local
12518
+ # Zones, or Wavelength Zones from where AWS advertises IP addresses.
12310
12519
  #
12311
12520
  # * `network-interface-id` - \[EC2-VPC\] The ID of the network
12312
12521
  # interface that the address is associated with, if any.
@@ -12316,7 +12525,7 @@ module Aws::EC2
12316
12525
  # * `private-ip-address` - \[EC2-VPC\] The private IP address
12317
12526
  # associated with the Elastic IP address.
12318
12527
  #
12319
- # * `public-ip` - The Elastic IP address.
12528
+ # * `public-ip` - The Elastic IP address, or the carrier IP address.
12320
12529
  #
12321
12530
  # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned
12322
12531
  # to the resource. Use the tag key in the filter name and the tag
@@ -12431,45 +12640,56 @@ module Aws::EC2
12431
12640
  #
12432
12641
  # * `group-name` - For Availability Zones, use the Region name. For
12433
12642
  # Local Zones, use the name of the group associated with the Local
12434
- # Zone (for example, `us-west-2-lax-1`).
12643
+ # Zone (for example, `us-west-2-lax-1`) For Wavelength Zones, use
12644
+ # the name of the group associated with the Wavelength Zone (for
12645
+ # example, `us-east-1-wl1-bos-wlz-1`).
12435
12646
  #
12436
12647
  # * `message` - The Zone message.
12437
12648
  #
12438
- # * `opt-in-status` - The opt in status (`opted-in`, and
12649
+ # * `opt-in-status` - The opt-in status (`opted-in`, and
12439
12650
  # `not-opted-in` \| `opt-in-not-required`).
12440
12651
  #
12441
- # * The ID of the zone that handles some of the Local Zone control
12442
- # plane operations, such as API calls.
12652
+ # * `parent-zoneID` - The ID of the zone that handles some of the
12653
+ # Local Zone and Wavelength Zone control plane operations, such as
12654
+ # API calls.
12655
+ #
12656
+ # * `parent-zoneName` - The ID of the zone that handles some of the
12657
+ # Local Zone and Wavelength Zone control plane operations, such as
12658
+ # API calls.
12443
12659
  #
12444
12660
  # * `region-name` - The name of the Region for the Zone (for example,
12445
12661
  # `us-east-1`).
12446
12662
  #
12447
- # * `state` - The state of the Availability Zone or Local Zone
12448
- # (`available` \| `information` \| `impaired` \| `unavailable`).
12663
+ # * `state` - The state of the Availability Zone, the Local Zone, or
12664
+ # the Wavelength Zone (`available` \| `information` \| `impaired` \|
12665
+ # `unavailable`).
12449
12666
  #
12450
12667
  # * `zone-id` - The ID of the Availability Zone (for example,
12451
- # `use1-az1`) or the Local Zone (for example, use `usw2-lax1-az1`).
12668
+ # `use1-az1`), the Local Zone (for example, `usw2-lax1-az1`), or the
12669
+ # Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`).
12452
12670
  #
12453
12671
  # * `zone-type` - The type of zone, for example, `local-zone`.
12454
12672
  #
12455
12673
  # * `zone-name` - The name of the Availability Zone (for example,
12456
- # `us-east-1a`) or the Local Zone (for example, use
12457
- # `us-west-2-lax-1a`).
12674
+ # `us-east-1a`), the Local Zone (for example, `us-west-2-lax-1a`),
12675
+ # or the Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`).
12458
12676
  #
12459
12677
  # * `zone-type` - The type of zone, for example, `local-zone`.
12460
12678
  # @return [Array<Types::Filter>]
12461
12679
  #
12462
12680
  # @!attribute [rw] zone_names
12463
- # The names of the Zones.
12681
+ # The names of the Availability Zones, Local Zones, and Wavelength
12682
+ # Zones.
12464
12683
  # @return [Array<String>]
12465
12684
  #
12466
12685
  # @!attribute [rw] zone_ids
12467
- # The IDs of the Zones.
12686
+ # The IDs of the Availability Zones, Local Zones, and Wavelength
12687
+ # Zones.
12468
12688
  # @return [Array<String>]
12469
12689
  #
12470
12690
  # @!attribute [rw] all_availability_zones
12471
- # Include all Availability Zones and Local Zones regardless of your
12472
- # opt in status.
12691
+ # Include all Availability Zones, Local Zones, and Wavelength Zones
12692
+ # regardless of your opt-in status.
12473
12693
  #
12474
12694
  # If you do not use this parameter, the results include only the zones
12475
12695
  # for the Regions where you have chosen the option to opt in.
@@ -12495,7 +12715,8 @@ module Aws::EC2
12495
12715
  end
12496
12716
 
12497
12717
  # @!attribute [rw] availability_zones
12498
- # Information about the Zones.
12718
+ # Information about the Availability Zones, Local Zones, and
12719
+ # Wavelength Zones.
12499
12720
  # @return [Array<Types::AvailabilityZone>]
12500
12721
  #
12501
12722
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAvailabilityZonesResult AWS API Documentation
@@ -12658,13 +12879,15 @@ module Aws::EC2
12658
12879
  # @return [Array<String>]
12659
12880
  #
12660
12881
  # @!attribute [rw] next_token
12661
- # The token to retrieve the next page of results.
12882
+ # The token to use to retrieve the next page of results.
12662
12883
  # @return [String]
12663
12884
  #
12664
12885
  # @!attribute [rw] max_results
12665
12886
  # The maximum number of results to return for the request in a single
12666
12887
  # page. The remaining results can be seen by sending another request
12667
- # with the returned nextToken value.
12888
+ # with the returned `nextToken` value. This value can be between 5 and
12889
+ # 500. If `maxResults` is given a larger value than 500, you receive
12890
+ # an error.
12668
12891
  # @return [Integer]
12669
12892
  #
12670
12893
  # @!attribute [rw] filters
@@ -12787,6 +13010,97 @@ module Aws::EC2
12787
13010
  include Aws::Structure
12788
13011
  end
12789
13012
 
13013
+ # @note When making an API call, you may pass DescribeCarrierGatewaysRequest
13014
+ # data as a hash:
13015
+ #
13016
+ # {
13017
+ # carrier_gateway_ids: ["CarrierGatewayId"],
13018
+ # filters: [
13019
+ # {
13020
+ # name: "String",
13021
+ # values: ["String"],
13022
+ # },
13023
+ # ],
13024
+ # max_results: 1,
13025
+ # next_token: "String",
13026
+ # dry_run: false,
13027
+ # }
13028
+ #
13029
+ # @!attribute [rw] carrier_gateway_ids
13030
+ # One or more carrier gateway IDs.
13031
+ # @return [Array<String>]
13032
+ #
13033
+ # @!attribute [rw] filters
13034
+ # One or more filters.
13035
+ #
13036
+ # * `carrier-gateway-id` - The ID of the carrier gateway.
13037
+ #
13038
+ # * `state` - The state of the carrier gateway (`pending` \| `failed`
13039
+ # \| `available` \| `deleting` \| `deleted`).
13040
+ #
13041
+ # * `owner-id` - The AWS account ID of the owner of the carrier
13042
+ # gateway.
13043
+ #
13044
+ # * `tag`\:&lt;key&gt; - The key/value combination of a tag assigned
13045
+ # to the resource. Use the tag key in the filter name and the tag
13046
+ # value as the filter value. For example, to find all resources that
13047
+ # have a tag with the key `Owner` and the value `TeamA`, specify
13048
+ # `tag:Owner` for the filter name and `TeamA` for the filter value.
13049
+ #
13050
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
13051
+ # filter to find all resources assigned a tag with a specific key,
13052
+ # regardless of the tag value.
13053
+ #
13054
+ # * `vpc-id` - The ID of the VPC associated with the carrier gateway.
13055
+ # @return [Array<Types::Filter>]
13056
+ #
13057
+ # @!attribute [rw] max_results
13058
+ # The maximum number of results to return with a single call. To
13059
+ # retrieve the remaining results, make another call with the returned
13060
+ # `nextToken` value.
13061
+ # @return [Integer]
13062
+ #
13063
+ # @!attribute [rw] next_token
13064
+ # The token for the next page of results.
13065
+ # @return [String]
13066
+ #
13067
+ # @!attribute [rw] dry_run
13068
+ # Checks whether you have the required permissions for the action,
13069
+ # without actually making the request, and provides an error response.
13070
+ # If you have the required permissions, the error response is
13071
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
13072
+ # @return [Boolean]
13073
+ #
13074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysRequest AWS API Documentation
13075
+ #
13076
+ class DescribeCarrierGatewaysRequest < Struct.new(
13077
+ :carrier_gateway_ids,
13078
+ :filters,
13079
+ :max_results,
13080
+ :next_token,
13081
+ :dry_run)
13082
+ SENSITIVE = []
13083
+ include Aws::Structure
13084
+ end
13085
+
13086
+ # @!attribute [rw] carrier_gateways
13087
+ # Information about the carrier gateway.
13088
+ # @return [Array<Types::CarrierGateway>]
13089
+ #
13090
+ # @!attribute [rw] next_token
13091
+ # The token to use to retrieve the next page of results. This value is
13092
+ # `null` when there are no more results to return.
13093
+ # @return [String]
13094
+ #
13095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysResult AWS API Documentation
13096
+ #
13097
+ class DescribeCarrierGatewaysResult < Struct.new(
13098
+ :carrier_gateways,
13099
+ :next_token)
13100
+ SENSITIVE = []
13101
+ include Aws::Structure
13102
+ end
13103
+
12790
13104
  # @note When making an API call, you may pass DescribeClassicLinkInstancesRequest
12791
13105
  # data as a hash:
12792
13106
  #
@@ -23987,7 +24301,7 @@ module Aws::EC2
23987
24301
  # Cloud User Guide*.
23988
24302
  #
23989
24303
  # Constraints: Range is 100-16,000 IOPS for `gp2` volumes and 100 to
23990
- # 64,000IOPS for `io1` volumes in most Regions. Maximum `io1` IOPS of
24304
+ # 64,000 IOPS for `io1` volumes in most Regions. Maximum `io1` IOPS of
23991
24305
  # 64,000 is guaranteed only on [Nitro-based instances][2]. Other
23992
24306
  # instance families guarantee performance up to 32,000 IOPS. For more
23993
24307
  # information, see [Amazon EBS Volume Types][1] in the *Amazon Elastic
@@ -26416,13 +26730,15 @@ module Aws::EC2
26416
26730
  # @return [String]
26417
26731
  #
26418
26732
  # @!attribute [rw] next_token
26419
- # The token to retrieve the next page of results.
26733
+ # The token to use to retrieve the next page of results.
26420
26734
  # @return [String]
26421
26735
  #
26422
26736
  # @!attribute [rw] max_results
26423
26737
  # The maximum number of results to return for the request in a single
26424
26738
  # page. The remaining results can be seen by sending another request
26425
- # with the returned nextToken value.
26739
+ # with the returned `nextToken` value. This value can be between 5 and
26740
+ # 500. If `maxResults` is given a larger value than 500, you receive
26741
+ # an error.
26426
26742
  #
26427
26743
  # Valid range: Minimum value of 1. Maximum value of 1000.
26428
26744
  # @return [Integer]
@@ -26824,6 +27140,69 @@ module Aws::EC2
26824
27140
  include Aws::Structure
26825
27141
  end
26826
27142
 
27143
+ # @note When making an API call, you may pass GetGroupsForCapacityReservationRequest
27144
+ # data as a hash:
27145
+ #
27146
+ # {
27147
+ # capacity_reservation_id: "CapacityReservationId", # required
27148
+ # next_token: "String",
27149
+ # max_results: 1,
27150
+ # dry_run: false,
27151
+ # }
27152
+ #
27153
+ # @!attribute [rw] capacity_reservation_id
27154
+ # The ID of the Capacity Reservation.
27155
+ # @return [String]
27156
+ #
27157
+ # @!attribute [rw] next_token
27158
+ # The token to use to retrieve the next page of results.
27159
+ # @return [String]
27160
+ #
27161
+ # @!attribute [rw] max_results
27162
+ # The maximum number of results to return for the request in a single
27163
+ # page. The remaining results can be seen by sending another request
27164
+ # with the returned `nextToken` value. This value can be between 5 and
27165
+ # 500. If `maxResults` is given a larger value than 500, you receive
27166
+ # an error.
27167
+ # @return [Integer]
27168
+ #
27169
+ # @!attribute [rw] dry_run
27170
+ # Checks whether you have the required permissions for the action,
27171
+ # without actually making the request, and provides an error response.
27172
+ # If you have the required permissions, the error response is
27173
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
27174
+ # @return [Boolean]
27175
+ #
27176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetGroupsForCapacityReservationRequest AWS API Documentation
27177
+ #
27178
+ class GetGroupsForCapacityReservationRequest < Struct.new(
27179
+ :capacity_reservation_id,
27180
+ :next_token,
27181
+ :max_results,
27182
+ :dry_run)
27183
+ SENSITIVE = []
27184
+ include Aws::Structure
27185
+ end
27186
+
27187
+ # @!attribute [rw] next_token
27188
+ # The token to use to retrieve the next page of results. This value is
27189
+ # `null` when there are no more results to return.
27190
+ # @return [String]
27191
+ #
27192
+ # @!attribute [rw] capacity_reservation_groups
27193
+ # Information about the resource groups to which the Capacity
27194
+ # Reservation has been added.
27195
+ # @return [Array<Types::CapacityReservationGroup>]
27196
+ #
27197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetGroupsForCapacityReservationResult AWS API Documentation
27198
+ #
27199
+ class GetGroupsForCapacityReservationResult < Struct.new(
27200
+ :next_token,
27201
+ :capacity_reservation_groups)
27202
+ SENSITIVE = []
27203
+ include Aws::Structure
27204
+ end
27205
+
26827
27206
  # @note When making an API call, you may pass GetHostReservationPurchasePreviewRequest
26828
27207
  # data as a hash:
26829
27208
  #
@@ -29667,7 +30046,11 @@ module Aws::EC2
29667
30046
  # @return [String]
29668
30047
  #
29669
30048
  # @!attribute [rw] public_ip_address
29670
- # The public IPv4 address assigned to the instance, if applicable.
30049
+ # The public IPv4 address, or the Carrier IP address assigned to the
30050
+ # instance, if applicable.
30051
+ #
30052
+ # A Carrier IP address only applies to an instance launched in a
30053
+ # subnet associated with a Wavelength Zone.
29671
30054
  # @return [String]
29672
30055
  #
29673
30056
  # @!attribute [rw] ramdisk_id
@@ -30476,6 +30859,10 @@ module Aws::EC2
30476
30859
 
30477
30860
  # Describes association information for an Elastic IP address (IPv4).
30478
30861
  #
30862
+ # @!attribute [rw] carrier_ip
30863
+ # The carrier IP address associated with the network interface.
30864
+ # @return [String]
30865
+ #
30479
30866
  # @!attribute [rw] ip_owner_id
30480
30867
  # The ID of the owner of the Elastic IP address.
30481
30868
  # @return [String]
@@ -30492,6 +30879,7 @@ module Aws::EC2
30492
30879
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceAssociation AWS API Documentation
30493
30880
  #
30494
30881
  class InstanceNetworkInterfaceAssociation < Struct.new(
30882
+ :carrier_ip,
30495
30883
  :ip_owner_id,
30496
30884
  :public_dns_name,
30497
30885
  :public_ip)
@@ -30562,6 +30950,7 @@ module Aws::EC2
30562
30950
  # ],
30563
30951
  # secondary_private_ip_address_count: 1,
30564
30952
  # subnet_id: "String",
30953
+ # associate_carrier_ip_address: false,
30565
30954
  # interface_type: "String",
30566
30955
  # }
30567
30956
  #
@@ -30659,6 +31048,16 @@ module Aws::EC2
30659
31048
  # only if creating a network interface when launching an instance.
30660
31049
  # @return [String]
30661
31050
  #
31051
+ # @!attribute [rw] associate_carrier_ip_address
31052
+ # Indicates whether to assign a carrier IP address to the network
31053
+ # interface.
31054
+ #
31055
+ # You can only assign a carrier IP address to a network interface that
31056
+ # is in a subnet in a Wavelength Zone. For more information about
31057
+ # carrier IP addresses, see Carrier IP addresses in the AWS Wavelength
31058
+ # Developer Guide.
31059
+ # @return [Boolean]
31060
+ #
30662
31061
  # @!attribute [rw] interface_type
30663
31062
  # The type of network interface. To create an Elastic Fabric Adapter
30664
31063
  # (EFA), specify `efa`. For more information, see [Elastic Fabric
@@ -30689,6 +31088,7 @@ module Aws::EC2
30689
31088
  :private_ip_addresses,
30690
31089
  :secondary_private_ip_address_count,
30691
31090
  :subnet_id,
31091
+ :associate_carrier_ip_address,
30692
31092
  :interface_type)
30693
31093
  SENSITIVE = []
30694
31094
  include Aws::Structure
@@ -31860,7 +32260,8 @@ module Aws::EC2
31860
32260
  # run in On-Demand capacity or to run in any `open` Capacity Reservation
31861
32261
  # that has matching attributes (instance type, platform, Availability
31862
32262
  # Zone). Use the `CapacityReservationTarget` parameter to explicitly
31863
- # target a specific Capacity Reservation.
32263
+ # target a specific Capacity Reservation or a Capacity Reservation
32264
+ # group.
31864
32265
  #
31865
32266
  # @note When making an API call, you may pass LaunchTemplateCapacityReservationSpecificationRequest
31866
32267
  # data as a hash:
@@ -31869,6 +32270,7 @@ module Aws::EC2
31869
32270
  # capacity_reservation_preference: "open", # accepts open, none
31870
32271
  # capacity_reservation_target: {
31871
32272
  # capacity_reservation_id: "CapacityReservationId",
32273
+ # capacity_reservation_resource_group_arn: "String",
31872
32274
  # },
31873
32275
  # }
31874
32276
  #
@@ -31885,7 +32287,8 @@ module Aws::EC2
31885
32287
  # @return [String]
31886
32288
  #
31887
32289
  # @!attribute [rw] capacity_reservation_target
31888
- # Information about the target Capacity Reservation.
32290
+ # Information about the target Capacity Reservation or Capacity
32291
+ # Reservation group.
31889
32292
  # @return [Types::CapacityReservationTarget]
31890
32293
  #
31891
32294
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateCapacityReservationSpecificationRequest AWS API Documentation
@@ -31912,7 +32315,8 @@ module Aws::EC2
31912
32315
  # @return [String]
31913
32316
  #
31914
32317
  # @!attribute [rw] capacity_reservation_target
31915
- # Information about the target Capacity Reservation.
32318
+ # Information about the target Capacity Reservation or Capacity
32319
+ # Reservation group.
31916
32320
  # @return [Types::CapacityReservationTargetResponse]
31917
32321
  #
31918
32322
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateCapacityReservationSpecificationResponse AWS API Documentation
@@ -32472,6 +32876,20 @@ module Aws::EC2
32472
32876
 
32473
32877
  # Describes a network interface.
32474
32878
  #
32879
+ # @!attribute [rw] associate_carrier_ip_address
32880
+ # Indicates whether to associate a Carrier IP address with eth0 for a
32881
+ # new network interface.
32882
+ #
32883
+ # Use this option when you launch an instance in a Wavelength Zone and
32884
+ # want to associate a Carrier IP address with the network interface.
32885
+ # For more information about Carrier IP addresses, see [Carrier IP
32886
+ # addresses][1] in the *AWS Wavelength Developer Guide*.
32887
+ #
32888
+ #
32889
+ #
32890
+ # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
32891
+ # @return [Boolean]
32892
+ #
32475
32893
  # @!attribute [rw] associate_public_ip_address
32476
32894
  # Indicates whether to associate a public IPv4 address with eth0 for a
32477
32895
  # new network interface.
@@ -32530,6 +32948,7 @@ module Aws::EC2
32530
32948
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecification AWS API Documentation
32531
32949
  #
32532
32950
  class LaunchTemplateInstanceNetworkInterfaceSpecification < Struct.new(
32951
+ :associate_carrier_ip_address,
32533
32952
  :associate_public_ip_address,
32534
32953
  :delete_on_termination,
32535
32954
  :description,
@@ -32553,6 +32972,7 @@ module Aws::EC2
32553
32972
  # data as a hash:
32554
32973
  #
32555
32974
  # {
32975
+ # associate_carrier_ip_address: false,
32556
32976
  # associate_public_ip_address: false,
32557
32977
  # delete_on_termination: false,
32558
32978
  # description: "String",
@@ -32577,6 +32997,20 @@ module Aws::EC2
32577
32997
  # subnet_id: "SubnetId",
32578
32998
  # }
32579
32999
  #
33000
+ # @!attribute [rw] associate_carrier_ip_address
33001
+ # Associates a Carrier IP address with eth0 for a new network
33002
+ # interface.
33003
+ #
33004
+ # Use this option when you launch an instance in a Wavelength Zone and
33005
+ # want to associate a Carrier IP address with the network interface.
33006
+ # For more information about Carrier IP addresses, see [Carrier IP
33007
+ # addresses][1] in the *AWS Wavelength Developer Guide*.
33008
+ #
33009
+ #
33010
+ #
33011
+ # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
33012
+ # @return [Boolean]
33013
+ #
32580
33014
  # @!attribute [rw] associate_public_ip_address
32581
33015
  # Associates a public IPv4 address with eth0 for a new network
32582
33016
  # interface.
@@ -32651,6 +33085,7 @@ module Aws::EC2
32651
33085
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest AWS API Documentation
32652
33086
  #
32653
33087
  class LaunchTemplateInstanceNetworkInterfaceSpecificationRequest < Struct.new(
33088
+ :associate_carrier_ip_address,
32654
33089
  :associate_public_ip_address,
32655
33090
  :delete_on_termination,
32656
33091
  :description,
@@ -33656,13 +34091,15 @@ module Aws::EC2
33656
34091
  # }
33657
34092
  #
33658
34093
  # @!attribute [rw] group_name
33659
- # The name of the Availability Zone Group.
34094
+ # The name of the Availability Zone group, Local Zone group, or
34095
+ # Wavelength Zone group.
33660
34096
  # @return [String]
33661
34097
  #
33662
34098
  # @!attribute [rw] opt_in_status
33663
- # Indicates whether to enable or disable membership. The valid values
33664
- # are `opted-in`. You must contact [AWS Support][1] to disable an
33665
- # Availability Zone group.
34099
+ # Indicates whether you are opted in to the Local Zone group or
34100
+ # Wavelength Zone group. The only valid value is `opted-in`. You must
34101
+ # contact [AWS Support][1] to opt out of a Local Zone group, or
34102
+ # Wavelength Zone group.
33666
34103
  #
33667
34104
  #
33668
34105
  #
@@ -34641,6 +35078,7 @@ module Aws::EC2
34641
35078
  # capacity_reservation_preference: "open", # accepts open, none
34642
35079
  # capacity_reservation_target: {
34643
35080
  # capacity_reservation_id: "CapacityReservationId",
35081
+ # capacity_reservation_resource_group_arn: "String",
34644
35082
  # },
34645
35083
  # },
34646
35084
  # dry_run: false,
@@ -35376,10 +35814,6 @@ module Aws::EC2
35376
35814
  # value: false,
35377
35815
  # },
35378
35816
  # subnet_id: "SubnetId", # required
35379
- # map_customer_owned_ip_on_launch: {
35380
- # value: false,
35381
- # },
35382
- # customer_owned_ipv_4_pool: "CoipPoolId",
35383
35817
  # }
35384
35818
  #
35385
35819
  # @!attribute [rw] assign_ipv_6_address_on_creation
@@ -35403,30 +35837,12 @@ module Aws::EC2
35403
35837
  # The ID of the subnet.
35404
35838
  # @return [String]
35405
35839
  #
35406
- # @!attribute [rw] map_customer_owned_ip_on_launch
35407
- # Specify `true` to indicate that network interfaces attached to
35408
- # instances created in the specified subnet should be assigned a
35409
- # customer-owned IPv4 address.
35410
- #
35411
- # When this value is `true`, you must specify the customer-owned IP
35412
- # pool using `CustomerOwnedIpv4Pool`.
35413
- # @return [Types::AttributeBooleanValue]
35414
- #
35415
- # @!attribute [rw] customer_owned_ipv_4_pool
35416
- # The customer-owned IPv4 address pool associated with the subnet.
35417
- #
35418
- # You must set this value when you specify `true` for
35419
- # `MapCustomerOwnedIpOnLaunch`.
35420
- # @return [String]
35421
- #
35422
35840
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySubnetAttributeRequest AWS API Documentation
35423
35841
  #
35424
35842
  class ModifySubnetAttributeRequest < Struct.new(
35425
35843
  :assign_ipv_6_address_on_creation,
35426
35844
  :map_public_ip_on_launch,
35427
- :subnet_id,
35428
- :map_customer_owned_ip_on_launch,
35429
- :customer_owned_ipv_4_pool)
35845
+ :subnet_id)
35430
35846
  SENSITIVE = []
35431
35847
  include Aws::Structure
35432
35848
  end
@@ -37310,7 +37726,8 @@ module Aws::EC2
37310
37726
  end
37311
37727
 
37312
37728
  # Describes association information for an Elastic IP address (IPv4
37313
- # only).
37729
+ # only), or a Carrier IP address (for a network interface which resides
37730
+ # in a subnet in a Wavelength Zone).
37314
37731
  #
37315
37732
  # @!attribute [rw] allocation_id
37316
37733
  # The allocation ID.
@@ -37329,8 +37746,15 @@ module Aws::EC2
37329
37746
  # @return [String]
37330
37747
  #
37331
37748
  # @!attribute [rw] public_ip
37332
- # The address of the Elastic IP address bound to the network
37333
- # interface.
37749
+ # The address of the Elastic IP address or Carrier IP address bound to
37750
+ # the network interface.
37751
+ # @return [String]
37752
+ #
37753
+ # @!attribute [rw] carrier_ip
37754
+ # The carrier IP address associated with the network interface.
37755
+ #
37756
+ # This option is only available when the network interface is in a
37757
+ # subnet which is associated with a Wavelength Zone.
37334
37758
  # @return [String]
37335
37759
  #
37336
37760
  # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceAssociation AWS API Documentation
@@ -37340,7 +37764,8 @@ module Aws::EC2
37340
37764
  :association_id,
37341
37765
  :ip_owner_id,
37342
37766
  :public_dns_name,
37343
- :public_ip)
37767
+ :public_ip,
37768
+ :carrier_ip)
37344
37769
  SENSITIVE = []
37345
37770
  include Aws::Structure
37346
37771
  end
@@ -39730,7 +40155,8 @@ module Aws::EC2
39730
40155
  # @return [String]
39731
40156
  #
39732
40157
  # @!attribute [rw] network_border_group
39733
- # The location that the IP address is released from.
40158
+ # The set of Availability Zones, Local Zones, or Wavelength Zones from
40159
+ # which AWS advertises IP addresses.
39734
40160
  #
39735
40161
  # If you provide an incorrect network border group, you will receive
39736
40162
  # an `InvalidAddress.NotFound` error. For more information, see [Error
@@ -40023,6 +40449,7 @@ module Aws::EC2
40023
40449
  # nat_gateway_id: "NatGatewayId",
40024
40450
  # transit_gateway_id: "TransitGatewayId",
40025
40451
  # local_gateway_id: "LocalGatewayId",
40452
+ # carrier_gateway_id: "CarrierGatewayId",
40026
40453
  # network_interface_id: "NetworkInterfaceId",
40027
40454
  # route_table_id: "RouteTableId", # required
40028
40455
  # vpc_peering_connection_id: "VpcPeeringConnectionId",
@@ -40080,6 +40507,10 @@ module Aws::EC2
40080
40507
  # The ID of the local gateway.
40081
40508
  # @return [String]
40082
40509
  #
40510
+ # @!attribute [rw] carrier_gateway_id
40511
+ # \[IPv4 traffic only\] The ID of a carrier gateway.
40512
+ # @return [String]
40513
+ #
40083
40514
  # @!attribute [rw] network_interface_id
40084
40515
  # The ID of a network interface.
40085
40516
  # @return [String]
@@ -40106,6 +40537,7 @@ module Aws::EC2
40106
40537
  :nat_gateway_id,
40107
40538
  :transit_gateway_id,
40108
40539
  :local_gateway_id,
40540
+ :carrier_gateway_id,
40109
40541
  :network_interface_id,
40110
40542
  :route_table_id,
40111
40543
  :vpc_peering_connection_id)
@@ -40336,6 +40768,7 @@ module Aws::EC2
40336
40768
  # ],
40337
40769
  # network_interfaces: [
40338
40770
  # {
40771
+ # associate_carrier_ip_address: false,
40339
40772
  # associate_public_ip_address: false,
40340
40773
  # delete_on_termination: false,
40341
40774
  # description: "String",
@@ -40425,6 +40858,7 @@ module Aws::EC2
40425
40858
  # capacity_reservation_preference: "open", # accepts open, none
40426
40859
  # capacity_reservation_target: {
40427
40860
  # capacity_reservation_id: "CapacityReservationId",
40861
+ # capacity_reservation_resource_group_arn: "String",
40428
40862
  # },
40429
40863
  # },
40430
40864
  # license_specifications: [
@@ -40754,6 +41188,7 @@ module Aws::EC2
40754
41188
  # ],
40755
41189
  # secondary_private_ip_address_count: 1,
40756
41190
  # subnet_id: "String",
41191
+ # associate_carrier_ip_address: false,
40757
41192
  # interface_type: "String",
40758
41193
  # },
40759
41194
  # ],
@@ -40942,6 +41377,7 @@ module Aws::EC2
40942
41377
  # ],
40943
41378
  # secondary_private_ip_address_count: 1,
40944
41379
  # subnet_id: "String",
41380
+ # associate_carrier_ip_address: false,
40945
41381
  # interface_type: "String",
40946
41382
  # },
40947
41383
  # ],
@@ -41189,6 +41625,7 @@ module Aws::EC2
41189
41625
  # ],
41190
41626
  # secondary_private_ip_address_count: 1,
41191
41627
  # subnet_id: "String",
41628
+ # associate_carrier_ip_address: false,
41192
41629
  # interface_type: "String",
41193
41630
  # },
41194
41631
  # ],
@@ -42683,6 +43120,10 @@ module Aws::EC2
42683
43120
  # The ID of the local gateway.
42684
43121
  # @return [String]
42685
43122
  #
43123
+ # @!attribute [rw] carrier_gateway_id
43124
+ # The ID of the carrier gateway.
43125
+ # @return [String]
43126
+ #
42686
43127
  # @!attribute [rw] network_interface_id
42687
43128
  # The ID of the network interface.
42688
43129
  # @return [String]
@@ -42723,6 +43164,7 @@ module Aws::EC2
42723
43164
  :nat_gateway_id,
42724
43165
  :transit_gateway_id,
42725
43166
  :local_gateway_id,
43167
+ :carrier_gateway_id,
42726
43168
  :network_interface_id,
42727
43169
  :origin,
42728
43170
  :state,
@@ -42942,6 +43384,7 @@ module Aws::EC2
42942
43384
  # ],
42943
43385
  # secondary_private_ip_address_count: 1,
42944
43386
  # subnet_id: "String",
43387
+ # associate_carrier_ip_address: false,
42945
43388
  # interface_type: "String",
42946
43389
  # },
42947
43390
  # ],
@@ -42994,6 +43437,7 @@ module Aws::EC2
42994
43437
  # capacity_reservation_preference: "open", # accepts open, none
42995
43438
  # capacity_reservation_target: {
42996
43439
  # capacity_reservation_id: "CapacityReservationId",
43440
+ # capacity_reservation_resource_group_arn: "String",
42997
43441
  # },
42998
43442
  # },
42999
43443
  # hibernation_options: {
@@ -45416,6 +45860,7 @@ module Aws::EC2
45416
45860
  # ],
45417
45861
  # secondary_private_ip_address_count: 1,
45418
45862
  # subnet_id: "String",
45863
+ # associate_carrier_ip_address: false,
45419
45864
  # interface_type: "String",
45420
45865
  # },
45421
45866
  # ],
@@ -45710,6 +46155,7 @@ module Aws::EC2
45710
46155
  # ],
45711
46156
  # secondary_private_ip_address_count: 1,
45712
46157
  # subnet_id: "String",
46158
+ # associate_carrier_ip_address: false,
45713
46159
  # interface_type: "String",
45714
46160
  # },
45715
46161
  # ],
@@ -49897,8 +50343,7 @@ module Aws::EC2
49897
50343
  # @return [String]
49898
50344
  #
49899
50345
  # @!attribute [rw] dhcp_options_id
49900
- # The ID of the set of DHCP options you've associated with the VPC
49901
- # (or `default` if the default options are associated with the VPC).
50346
+ # The ID of the set of DHCP options you've associated with the VPC.
49902
50347
  # @return [String]
49903
50348
  #
49904
50349
  # @!attribute [rw] state
@@ -50195,8 +50640,9 @@ module Aws::EC2
50195
50640
  # @return [Types::VpcCidrBlockState]
50196
50641
  #
50197
50642
  # @!attribute [rw] network_border_group
50198
- # The name of the location from which we advertise the IPV6 CIDR
50199
- # block.
50643
+ # The name of the unique set of Availability Zones, Local Zones, or
50644
+ # Wavelength Zones from which AWS advertises IP addresses, for
50645
+ # example, `us-east-1-wl1-bos-wlz-1`.
50200
50646
  # @return [String]
50201
50647
  #
50202
50648
  # @!attribute [rw] ipv_6_pool