aws-sdk-ec2 1.431.0 → 1.522.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +465 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +26 -16
  5. data/lib/aws-sdk-ec2/client.rb +10867 -4155
  6. data/lib/aws-sdk-ec2/client_api.rb +2924 -510
  7. data/lib/aws-sdk-ec2/customizations/instance.rb +18 -1
  8. data/lib/aws-sdk-ec2/customizations/resource.rb +46 -3
  9. data/lib/aws-sdk-ec2/customizations/tag.rb +13 -0
  10. data/lib/aws-sdk-ec2/customizations.rb +0 -22
  11. data/lib/aws-sdk-ec2/dhcp_options.rb +12 -12
  12. data/lib/aws-sdk-ec2/endpoint_parameters.rb +9 -6
  13. data/lib/aws-sdk-ec2/endpoint_provider.rb +14 -18
  14. data/lib/aws-sdk-ec2/endpoints.rb +2 -8608
  15. data/lib/aws-sdk-ec2/image.rb +166 -95
  16. data/lib/aws-sdk-ec2/instance.rb +425 -356
  17. data/lib/aws-sdk-ec2/internet_gateway.rb +7 -7
  18. data/lib/aws-sdk-ec2/key_pair.rb +14 -14
  19. data/lib/aws-sdk-ec2/key_pair_info.rb +30 -30
  20. data/lib/aws-sdk-ec2/nat_gateway.rb +7 -8
  21. data/lib/aws-sdk-ec2/network_acl.rb +70 -70
  22. data/lib/aws-sdk-ec2/network_interface.rb +94 -78
  23. data/lib/aws-sdk-ec2/network_interface_association.rb +3 -3
  24. data/lib/aws-sdk-ec2/placement_group.rb +37 -19
  25. data/lib/aws-sdk-ec2/plugins/endpoints.rb +20 -1242
  26. data/lib/aws-sdk-ec2/resource.rb +944 -811
  27. data/lib/aws-sdk-ec2/route.rb +34 -34
  28. data/lib/aws-sdk-ec2/route_table.rb +44 -44
  29. data/lib/aws-sdk-ec2/route_table_association.rb +3 -3
  30. data/lib/aws-sdk-ec2/security_group.rb +212 -201
  31. data/lib/aws-sdk-ec2/snapshot.rb +169 -105
  32. data/lib/aws-sdk-ec2/subnet.rb +391 -359
  33. data/lib/aws-sdk-ec2/tag.rb +7 -4
  34. data/lib/aws-sdk-ec2/types.rb +13807 -4774
  35. data/lib/aws-sdk-ec2/volume.rb +157 -119
  36. data/lib/aws-sdk-ec2/vpc.rb +278 -224
  37. data/lib/aws-sdk-ec2/vpc_address.rb +31 -21
  38. data/lib/aws-sdk-ec2/vpc_peering_connection.rb +6 -6
  39. data/lib/aws-sdk-ec2.rb +40 -36
  40. data/sig/classic_address.rbs +105 -0
  41. data/sig/client.rbs +14622 -0
  42. data/sig/dhcp_options.rbs +84 -0
  43. data/sig/errors.rbs +16 -0
  44. data/sig/image.rbs +228 -0
  45. data/sig/instance.rbs +564 -0
  46. data/sig/internet_gateway.rbs +91 -0
  47. data/sig/key_pair.rbs +54 -0
  48. data/sig/key_pair_info.rbs +63 -0
  49. data/sig/nat_gateway.rbs +107 -0
  50. data/sig/network_acl.rbs +144 -0
  51. data/sig/network_interface.rbs +239 -0
  52. data/sig/network_interface_association.rbs +62 -0
  53. data/sig/placement_group.rbs +78 -0
  54. data/sig/resource.rbs +1042 -0
  55. data/sig/route.rbs +113 -0
  56. data/sig/route_table.rbs +117 -0
  57. data/sig/route_table_association.rbs +69 -0
  58. data/sig/security_group.rbs +311 -0
  59. data/sig/snapshot.rbs +204 -0
  60. data/sig/subnet.rbs +436 -0
  61. data/sig/tag.rbs +63 -0
  62. data/sig/types.rbs +16812 -0
  63. data/sig/volume.rbs +210 -0
  64. data/sig/vpc.rbs +404 -0
  65. data/sig/vpc_address.rbs +101 -0
  66. data/sig/vpc_peering_connection.rbs +84 -0
  67. data/sig/waiters.rbs +664 -0
  68. metadata +44 -18
@@ -35,38 +35,12 @@ module Aws::EC2
35
35
  end
36
36
  alias :subnet_id :id
37
37
 
38
- # The Availability Zone of the subnet.
39
- # @return [String]
40
- def availability_zone
41
- data[:availability_zone]
42
- end
43
-
44
38
  # The AZ ID of the subnet.
45
39
  # @return [String]
46
40
  def availability_zone_id
47
41
  data[:availability_zone_id]
48
42
  end
49
43
 
50
- # The number of unused private IPv4 addresses in the subnet. The IPv4
51
- # addresses for any stopped instances are considered unavailable.
52
- # @return [Integer]
53
- def available_ip_address_count
54
- data[:available_ip_address_count]
55
- end
56
-
57
- # The IPv4 CIDR block assigned to the subnet.
58
- # @return [String]
59
- def cidr_block
60
- data[:cidr_block]
61
- end
62
-
63
- # Indicates whether this is the default subnet for the Availability
64
- # Zone.
65
- # @return [Boolean]
66
- def default_for_az
67
- data[:default_for_az]
68
- end
69
-
70
44
  # Indicates the device position for local network interfaces in this
71
45
  # subnet. For example, `1` indicates local network interfaces in this
72
46
  # subnet are the secondary network interface (eth1).
@@ -75,13 +49,6 @@ module Aws::EC2
75
49
  data[:enable_lni_at_device_index]
76
50
  end
77
51
 
78
- # Indicates whether instances launched in this subnet receive a public
79
- # IPv4 address.
80
- # @return [Boolean]
81
- def map_public_ip_on_launch
82
- data[:map_public_ip_on_launch]
83
- end
84
-
85
52
  # Indicates whether a network interface created in this subnet
86
53
  # (including a network interface created by RunInstances) receives a
87
54
  # customer-owned IPv4 address.
@@ -96,18 +63,6 @@ module Aws::EC2
96
63
  data[:customer_owned_ipv_4_pool]
97
64
  end
98
65
 
99
- # The current state of the subnet.
100
- # @return [String]
101
- def state
102
- data[:state]
103
- end
104
-
105
- # The ID of the VPC the subnet is in.
106
- # @return [String]
107
- def vpc_id
108
- data[:vpc_id]
109
- end
110
-
111
66
  # The ID of the Amazon Web Services account that owns the subnet.
112
67
  # @return [String]
113
68
  def owner_id
@@ -168,6 +123,66 @@ module Aws::EC2
168
123
  data[:private_dns_name_options_on_launch]
169
124
  end
170
125
 
126
+ # The state of VPC Block Public Access (BPA).
127
+ # @return [Types::BlockPublicAccessStates]
128
+ def block_public_access_states
129
+ data[:block_public_access_states]
130
+ end
131
+
132
+ # The current state of the subnet.
133
+ # @return [String]
134
+ def state
135
+ data[:state]
136
+ end
137
+
138
+ # The ID of the VPC the subnet is in.
139
+ # @return [String]
140
+ def vpc_id
141
+ data[:vpc_id]
142
+ end
143
+
144
+ # The IPv4 CIDR block assigned to the subnet.
145
+ # @return [String]
146
+ def cidr_block
147
+ data[:cidr_block]
148
+ end
149
+
150
+ # The number of unused private IPv4 addresses in the subnet. The IPv4
151
+ # addresses for any stopped instances are considered unavailable.
152
+ # @return [Integer]
153
+ def available_ip_address_count
154
+ data[:available_ip_address_count]
155
+ end
156
+
157
+ # The Availability Zone of the subnet.
158
+ # @return [String]
159
+ def availability_zone
160
+ data[:availability_zone]
161
+ end
162
+
163
+ # Indicates whether this is the default subnet for the Availability
164
+ # Zone.
165
+ # @return [Boolean]
166
+ def default_for_az
167
+ data[:default_for_az]
168
+ end
169
+
170
+ # Indicates whether instances launched in this subnet receive a public
171
+ # IPv4 address.
172
+ #
173
+ # Amazon Web Services charges for all public IPv4 addresses, including
174
+ # public IPv4 addresses associated with running instances and Elastic IP
175
+ # addresses. For more information, see the *Public IPv4 Address* tab on
176
+ # the [Amazon VPC pricing page][1].
177
+ #
178
+ #
179
+ #
180
+ # [1]: http://aws.amazon.com/vpc/pricing/
181
+ # @return [Boolean]
182
+ def map_public_ip_on_launch
183
+ data[:map_public_ip_on_launch]
184
+ end
185
+
171
186
  # @!endgroup
172
187
 
173
188
  # @return [Client]
@@ -182,7 +197,7 @@ module Aws::EC2
182
197
  #
183
198
  # @return [self]
184
199
  def load
185
- resp = Aws::Plugins::UserAgent.feature('resource') do
200
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
186
201
  @client.describe_subnets(subnet_ids: [@id])
187
202
  end
188
203
  @data = resp.subnets[0]
@@ -299,7 +314,7 @@ module Aws::EC2
299
314
  :retry
300
315
  end
301
316
  end
302
- Aws::Plugins::UserAgent.feature('resource') do
317
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
303
318
  Aws::Waiters::Waiter.new(options).wait({})
304
319
  end
305
320
  end
@@ -311,8 +326,6 @@ module Aws::EC2
311
326
  # instance = subnet.create_instances({
312
327
  # block_device_mappings: [
313
328
  # {
314
- # device_name: "String",
315
- # virtual_name: "String",
316
329
  # ebs: {
317
330
  # delete_on_termination: false,
318
331
  # iops: 1,
@@ -323,12 +336,15 @@ module Aws::EC2
323
336
  # throughput: 1,
324
337
  # outpost_arn: "String",
325
338
  # encrypted: false,
339
+ # volume_initialization_rate: 1,
326
340
  # },
327
341
  # no_device: "String",
342
+ # device_name: "String",
343
+ # virtual_name: "String",
328
344
  # },
329
345
  # ],
330
346
  # image_id: "ImageId",
331
- # instance_type: "a1.medium", # accepts a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge, a1.metal, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.12xlarge, c5.18xlarge, c5.24xlarge, c5.metal, c5a.large, c5a.xlarge, c5a.2xlarge, c5a.4xlarge, c5a.8xlarge, c5a.12xlarge, c5a.16xlarge, c5a.24xlarge, c5ad.large, c5ad.xlarge, c5ad.2xlarge, c5ad.4xlarge, c5ad.8xlarge, c5ad.12xlarge, c5ad.16xlarge, c5ad.24xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.12xlarge, c5d.18xlarge, c5d.24xlarge, c5d.metal, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, c5n.metal, c6g.medium, c6g.large, c6g.xlarge, c6g.2xlarge, c6g.4xlarge, c6g.8xlarge, c6g.12xlarge, c6g.16xlarge, c6g.metal, c6gd.medium, c6gd.large, c6gd.xlarge, c6gd.2xlarge, c6gd.4xlarge, c6gd.8xlarge, c6gd.12xlarge, c6gd.16xlarge, c6gd.metal, c6gn.medium, c6gn.large, c6gn.xlarge, c6gn.2xlarge, c6gn.4xlarge, c6gn.8xlarge, c6gn.12xlarge, c6gn.16xlarge, c6i.large, c6i.xlarge, c6i.2xlarge, c6i.4xlarge, c6i.8xlarge, c6i.12xlarge, c6i.16xlarge, c6i.24xlarge, c6i.32xlarge, c6i.metal, cc1.4xlarge, cc2.8xlarge, cg1.4xlarge, cr1.8xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, d3.xlarge, d3.2xlarge, d3.4xlarge, d3.8xlarge, d3en.xlarge, d3en.2xlarge, d3en.4xlarge, d3en.6xlarge, d3en.8xlarge, d3en.12xlarge, dl1.24xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, g4ad.xlarge, g4ad.2xlarge, g4ad.4xlarge, g4ad.8xlarge, g4ad.16xlarge, g4dn.xlarge, g4dn.2xlarge, g4dn.4xlarge, g4dn.8xlarge, g4dn.12xlarge, g4dn.16xlarge, g4dn.metal, g5.xlarge, g5.2xlarge, g5.4xlarge, g5.8xlarge, g5.12xlarge, g5.16xlarge, g5.24xlarge, g5.48xlarge, g5g.xlarge, g5g.2xlarge, g5g.4xlarge, g5g.8xlarge, g5g.16xlarge, g5g.metal, hi1.4xlarge, hpc6a.48xlarge, hs1.8xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, i3.metal, i3en.large, i3en.xlarge, i3en.2xlarge, i3en.3xlarge, i3en.6xlarge, i3en.12xlarge, i3en.24xlarge, i3en.metal, im4gn.large, im4gn.xlarge, im4gn.2xlarge, im4gn.4xlarge, im4gn.8xlarge, im4gn.16xlarge, inf1.xlarge, inf1.2xlarge, inf1.6xlarge, inf1.24xlarge, is4gen.medium, is4gen.large, is4gen.xlarge, is4gen.2xlarge, is4gen.4xlarge, is4gen.8xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.8xlarge, m5.12xlarge, m5.16xlarge, m5.24xlarge, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.8xlarge, m5a.12xlarge, m5a.16xlarge, m5a.24xlarge, m5ad.large, m5ad.xlarge, m5ad.2xlarge, m5ad.4xlarge, m5ad.8xlarge, m5ad.12xlarge, m5ad.16xlarge, m5ad.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.8xlarge, m5d.12xlarge, m5d.16xlarge, m5d.24xlarge, m5d.metal, m5dn.large, m5dn.xlarge, m5dn.2xlarge, m5dn.4xlarge, m5dn.8xlarge, m5dn.12xlarge, m5dn.16xlarge, m5dn.24xlarge, m5dn.metal, m5n.large, m5n.xlarge, m5n.2xlarge, m5n.4xlarge, m5n.8xlarge, m5n.12xlarge, m5n.16xlarge, m5n.24xlarge, m5n.metal, m5zn.large, m5zn.xlarge, m5zn.2xlarge, m5zn.3xlarge, m5zn.6xlarge, m5zn.12xlarge, m5zn.metal, m6a.large, m6a.xlarge, m6a.2xlarge, m6a.4xlarge, m6a.8xlarge, m6a.12xlarge, m6a.16xlarge, m6a.24xlarge, m6a.32xlarge, m6a.48xlarge, m6g.metal, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, m6g.4xlarge, m6g.8xlarge, m6g.12xlarge, m6g.16xlarge, m6gd.metal, m6gd.medium, m6gd.large, m6gd.xlarge, m6gd.2xlarge, m6gd.4xlarge, m6gd.8xlarge, m6gd.12xlarge, m6gd.16xlarge, m6i.large, m6i.xlarge, m6i.2xlarge, m6i.4xlarge, m6i.8xlarge, m6i.12xlarge, m6i.16xlarge, m6i.24xlarge, m6i.32xlarge, m6i.metal, mac1.metal, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, p4d.24xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.8xlarge, r5.12xlarge, r5.16xlarge, r5.24xlarge, r5.metal, r5a.large, r5a.xlarge, r5a.2xlarge, r5a.4xlarge, r5a.8xlarge, r5a.12xlarge, r5a.16xlarge, r5a.24xlarge, r5ad.large, r5ad.xlarge, r5ad.2xlarge, r5ad.4xlarge, r5ad.8xlarge, r5ad.12xlarge, r5ad.16xlarge, r5ad.24xlarge, r5b.large, r5b.xlarge, r5b.2xlarge, r5b.4xlarge, r5b.8xlarge, r5b.12xlarge, r5b.16xlarge, r5b.24xlarge, r5b.metal, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, r5dn.large, r5dn.xlarge, r5dn.2xlarge, r5dn.4xlarge, r5dn.8xlarge, r5dn.12xlarge, r5dn.16xlarge, r5dn.24xlarge, r5dn.metal, r5n.large, r5n.xlarge, r5n.2xlarge, r5n.4xlarge, r5n.8xlarge, r5n.12xlarge, r5n.16xlarge, r5n.24xlarge, r5n.metal, r6g.medium, r6g.large, r6g.xlarge, r6g.2xlarge, r6g.4xlarge, r6g.8xlarge, r6g.12xlarge, r6g.16xlarge, r6g.metal, r6gd.medium, r6gd.large, r6gd.xlarge, r6gd.2xlarge, r6gd.4xlarge, r6gd.8xlarge, r6gd.12xlarge, r6gd.16xlarge, r6gd.metal, r6i.large, r6i.xlarge, r6i.2xlarge, r6i.4xlarge, r6i.8xlarge, r6i.12xlarge, r6i.16xlarge, r6i.24xlarge, r6i.32xlarge, r6i.metal, t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, t3.nano, t3.micro, t3.small, t3.medium, t3.large, t3.xlarge, t3.2xlarge, t3a.nano, t3a.micro, t3a.small, t3a.medium, t3a.large, t3a.xlarge, t3a.2xlarge, t4g.nano, t4g.micro, t4g.small, t4g.medium, t4g.large, t4g.xlarge, t4g.2xlarge, u-6tb1.56xlarge, u-6tb1.112xlarge, u-9tb1.112xlarge, u-12tb1.112xlarge, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, vt1.3xlarge, vt1.6xlarge, vt1.24xlarge, x1.16xlarge, x1.32xlarge, x1e.xlarge, x1e.2xlarge, x1e.4xlarge, x1e.8xlarge, x1e.16xlarge, x1e.32xlarge, x2iezn.2xlarge, x2iezn.4xlarge, x2iezn.6xlarge, x2iezn.8xlarge, x2iezn.12xlarge, x2iezn.metal, x2gd.medium, x2gd.large, x2gd.xlarge, x2gd.2xlarge, x2gd.4xlarge, x2gd.8xlarge, x2gd.12xlarge, x2gd.16xlarge, x2gd.metal, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, z1d.metal, x2idn.16xlarge, x2idn.24xlarge, x2idn.32xlarge, x2iedn.xlarge, x2iedn.2xlarge, x2iedn.4xlarge, x2iedn.8xlarge, x2iedn.16xlarge, x2iedn.24xlarge, x2iedn.32xlarge, c6a.large, c6a.xlarge, c6a.2xlarge, c6a.4xlarge, c6a.8xlarge, c6a.12xlarge, c6a.16xlarge, c6a.24xlarge, c6a.32xlarge, c6a.48xlarge, c6a.metal, m6a.metal, i4i.large, i4i.xlarge, i4i.2xlarge, i4i.4xlarge, i4i.8xlarge, i4i.16xlarge, i4i.32xlarge, i4i.metal, x2idn.metal, x2iedn.metal, c7g.medium, c7g.large, c7g.xlarge, c7g.2xlarge, c7g.4xlarge, c7g.8xlarge, c7g.12xlarge, c7g.16xlarge, mac2.metal, c6id.large, c6id.xlarge, c6id.2xlarge, c6id.4xlarge, c6id.8xlarge, c6id.12xlarge, c6id.16xlarge, c6id.24xlarge, c6id.32xlarge, c6id.metal, m6id.large, m6id.xlarge, m6id.2xlarge, m6id.4xlarge, m6id.8xlarge, m6id.12xlarge, m6id.16xlarge, m6id.24xlarge, m6id.32xlarge, m6id.metal, r6id.large, r6id.xlarge, r6id.2xlarge, r6id.4xlarge, r6id.8xlarge, r6id.12xlarge, r6id.16xlarge, r6id.24xlarge, r6id.32xlarge, r6id.metal, r6a.large, r6a.xlarge, r6a.2xlarge, r6a.4xlarge, r6a.8xlarge, r6a.12xlarge, r6a.16xlarge, r6a.24xlarge, r6a.32xlarge, r6a.48xlarge, r6a.metal, p4de.24xlarge, u-3tb1.56xlarge, u-18tb1.112xlarge, u-24tb1.112xlarge, trn1.2xlarge, trn1.32xlarge, hpc6id.32xlarge, c6in.large, c6in.xlarge, c6in.2xlarge, c6in.4xlarge, c6in.8xlarge, c6in.12xlarge, c6in.16xlarge, c6in.24xlarge, c6in.32xlarge, m6in.large, m6in.xlarge, m6in.2xlarge, m6in.4xlarge, m6in.8xlarge, m6in.12xlarge, m6in.16xlarge, m6in.24xlarge, m6in.32xlarge, m6idn.large, m6idn.xlarge, m6idn.2xlarge, m6idn.4xlarge, m6idn.8xlarge, m6idn.12xlarge, m6idn.16xlarge, m6idn.24xlarge, m6idn.32xlarge, r6in.large, r6in.xlarge, r6in.2xlarge, r6in.4xlarge, r6in.8xlarge, r6in.12xlarge, r6in.16xlarge, r6in.24xlarge, r6in.32xlarge, r6idn.large, r6idn.xlarge, r6idn.2xlarge, r6idn.4xlarge, r6idn.8xlarge, r6idn.12xlarge, r6idn.16xlarge, r6idn.24xlarge, r6idn.32xlarge, c7g.metal, m7g.medium, m7g.large, m7g.xlarge, m7g.2xlarge, m7g.4xlarge, m7g.8xlarge, m7g.12xlarge, m7g.16xlarge, m7g.metal, r7g.medium, r7g.large, r7g.xlarge, r7g.2xlarge, r7g.4xlarge, r7g.8xlarge, r7g.12xlarge, r7g.16xlarge, r7g.metal, c6in.metal, m6in.metal, m6idn.metal, r6in.metal, r6idn.metal, inf2.xlarge, inf2.8xlarge, inf2.24xlarge, inf2.48xlarge, trn1n.32xlarge, i4g.large, i4g.xlarge, i4g.2xlarge, i4g.4xlarge, i4g.8xlarge, i4g.16xlarge, hpc7g.4xlarge, hpc7g.8xlarge, hpc7g.16xlarge, c7gn.medium, c7gn.large, c7gn.xlarge, c7gn.2xlarge, c7gn.4xlarge, c7gn.8xlarge, c7gn.12xlarge, c7gn.16xlarge, p5.48xlarge, m7i.large, m7i.xlarge, m7i.2xlarge, m7i.4xlarge, m7i.8xlarge, m7i.12xlarge, m7i.16xlarge, m7i.24xlarge, m7i.48xlarge, m7i-flex.large, m7i-flex.xlarge, m7i-flex.2xlarge, m7i-flex.4xlarge, m7i-flex.8xlarge, m7a.medium, m7a.large, m7a.xlarge, m7a.2xlarge, m7a.4xlarge, m7a.8xlarge, m7a.12xlarge, m7a.16xlarge, m7a.24xlarge, m7a.32xlarge, m7a.48xlarge, m7a.metal-48xl, hpc7a.12xlarge, hpc7a.24xlarge, hpc7a.48xlarge, hpc7a.96xlarge, c7gd.medium, c7gd.large, c7gd.xlarge, c7gd.2xlarge, c7gd.4xlarge, c7gd.8xlarge, c7gd.12xlarge, c7gd.16xlarge, m7gd.medium, m7gd.large, m7gd.xlarge, m7gd.2xlarge, m7gd.4xlarge, m7gd.8xlarge, m7gd.12xlarge, m7gd.16xlarge, r7gd.medium, r7gd.large, r7gd.xlarge, r7gd.2xlarge, r7gd.4xlarge, r7gd.8xlarge, r7gd.12xlarge, r7gd.16xlarge, r7a.medium, r7a.large, r7a.xlarge, r7a.2xlarge, r7a.4xlarge, r7a.8xlarge, r7a.12xlarge, r7a.16xlarge, r7a.24xlarge, r7a.32xlarge, r7a.48xlarge, c7i.large, c7i.xlarge, c7i.2xlarge, c7i.4xlarge, c7i.8xlarge, c7i.12xlarge, c7i.16xlarge, c7i.24xlarge, c7i.48xlarge, mac2-m2pro.metal, r7iz.large, r7iz.xlarge, r7iz.2xlarge, r7iz.4xlarge, r7iz.8xlarge, r7iz.12xlarge, r7iz.16xlarge, r7iz.32xlarge, c7a.medium, c7a.large, c7a.xlarge, c7a.2xlarge, c7a.4xlarge, c7a.8xlarge, c7a.12xlarge, c7a.16xlarge, c7a.24xlarge, c7a.32xlarge, c7a.48xlarge, c7a.metal-48xl, r7a.metal-48xl, r7i.large, r7i.xlarge, r7i.2xlarge, r7i.4xlarge, r7i.8xlarge, r7i.12xlarge, r7i.16xlarge, r7i.24xlarge, r7i.48xlarge, dl2q.24xlarge, mac2-m2.metal, i4i.12xlarge, i4i.24xlarge, c7i.metal-24xl, c7i.metal-48xl, m7i.metal-24xl, m7i.metal-48xl, r7i.metal-24xl, r7i.metal-48xl
347
+ # instance_type: "a1.medium", # accepts a1.medium, a1.large, a1.xlarge, a1.2xlarge, a1.4xlarge, a1.metal, c1.medium, c1.xlarge, c3.large, c3.xlarge, c3.2xlarge, c3.4xlarge, c3.8xlarge, c4.large, c4.xlarge, c4.2xlarge, c4.4xlarge, c4.8xlarge, c5.large, c5.xlarge, c5.2xlarge, c5.4xlarge, c5.9xlarge, c5.12xlarge, c5.18xlarge, c5.24xlarge, c5.metal, c5a.large, c5a.xlarge, c5a.2xlarge, c5a.4xlarge, c5a.8xlarge, c5a.12xlarge, c5a.16xlarge, c5a.24xlarge, c5ad.large, c5ad.xlarge, c5ad.2xlarge, c5ad.4xlarge, c5ad.8xlarge, c5ad.12xlarge, c5ad.16xlarge, c5ad.24xlarge, c5d.large, c5d.xlarge, c5d.2xlarge, c5d.4xlarge, c5d.9xlarge, c5d.12xlarge, c5d.18xlarge, c5d.24xlarge, c5d.metal, c5n.large, c5n.xlarge, c5n.2xlarge, c5n.4xlarge, c5n.9xlarge, c5n.18xlarge, c5n.metal, c6g.medium, c6g.large, c6g.xlarge, c6g.2xlarge, c6g.4xlarge, c6g.8xlarge, c6g.12xlarge, c6g.16xlarge, c6g.metal, c6gd.medium, c6gd.large, c6gd.xlarge, c6gd.2xlarge, c6gd.4xlarge, c6gd.8xlarge, c6gd.12xlarge, c6gd.16xlarge, c6gd.metal, c6gn.medium, c6gn.large, c6gn.xlarge, c6gn.2xlarge, c6gn.4xlarge, c6gn.8xlarge, c6gn.12xlarge, c6gn.16xlarge, c6i.large, c6i.xlarge, c6i.2xlarge, c6i.4xlarge, c6i.8xlarge, c6i.12xlarge, c6i.16xlarge, c6i.24xlarge, c6i.32xlarge, c6i.metal, cc1.4xlarge, cc2.8xlarge, cg1.4xlarge, cr1.8xlarge, d2.xlarge, d2.2xlarge, d2.4xlarge, d2.8xlarge, d3.xlarge, d3.2xlarge, d3.4xlarge, d3.8xlarge, d3en.xlarge, d3en.2xlarge, d3en.4xlarge, d3en.6xlarge, d3en.8xlarge, d3en.12xlarge, dl1.24xlarge, f1.2xlarge, f1.4xlarge, f1.16xlarge, g2.2xlarge, g2.8xlarge, g3.4xlarge, g3.8xlarge, g3.16xlarge, g3s.xlarge, g4ad.xlarge, g4ad.2xlarge, g4ad.4xlarge, g4ad.8xlarge, g4ad.16xlarge, g4dn.xlarge, g4dn.2xlarge, g4dn.4xlarge, g4dn.8xlarge, g4dn.12xlarge, g4dn.16xlarge, g4dn.metal, g5.xlarge, g5.2xlarge, g5.4xlarge, g5.8xlarge, g5.12xlarge, g5.16xlarge, g5.24xlarge, g5.48xlarge, g5g.xlarge, g5g.2xlarge, g5g.4xlarge, g5g.8xlarge, g5g.16xlarge, g5g.metal, hi1.4xlarge, hpc6a.48xlarge, hs1.8xlarge, h1.2xlarge, h1.4xlarge, h1.8xlarge, h1.16xlarge, i2.xlarge, i2.2xlarge, i2.4xlarge, i2.8xlarge, i3.large, i3.xlarge, i3.2xlarge, i3.4xlarge, i3.8xlarge, i3.16xlarge, i3.metal, i3en.large, i3en.xlarge, i3en.2xlarge, i3en.3xlarge, i3en.6xlarge, i3en.12xlarge, i3en.24xlarge, i3en.metal, im4gn.large, im4gn.xlarge, im4gn.2xlarge, im4gn.4xlarge, im4gn.8xlarge, im4gn.16xlarge, inf1.xlarge, inf1.2xlarge, inf1.6xlarge, inf1.24xlarge, is4gen.medium, is4gen.large, is4gen.xlarge, is4gen.2xlarge, is4gen.4xlarge, is4gen.8xlarge, m1.small, m1.medium, m1.large, m1.xlarge, m2.xlarge, m2.2xlarge, m2.4xlarge, m3.medium, m3.large, m3.xlarge, m3.2xlarge, m4.large, m4.xlarge, m4.2xlarge, m4.4xlarge, m4.10xlarge, m4.16xlarge, m5.large, m5.xlarge, m5.2xlarge, m5.4xlarge, m5.8xlarge, m5.12xlarge, m5.16xlarge, m5.24xlarge, m5.metal, m5a.large, m5a.xlarge, m5a.2xlarge, m5a.4xlarge, m5a.8xlarge, m5a.12xlarge, m5a.16xlarge, m5a.24xlarge, m5ad.large, m5ad.xlarge, m5ad.2xlarge, m5ad.4xlarge, m5ad.8xlarge, m5ad.12xlarge, m5ad.16xlarge, m5ad.24xlarge, m5d.large, m5d.xlarge, m5d.2xlarge, m5d.4xlarge, m5d.8xlarge, m5d.12xlarge, m5d.16xlarge, m5d.24xlarge, m5d.metal, m5dn.large, m5dn.xlarge, m5dn.2xlarge, m5dn.4xlarge, m5dn.8xlarge, m5dn.12xlarge, m5dn.16xlarge, m5dn.24xlarge, m5dn.metal, m5n.large, m5n.xlarge, m5n.2xlarge, m5n.4xlarge, m5n.8xlarge, m5n.12xlarge, m5n.16xlarge, m5n.24xlarge, m5n.metal, m5zn.large, m5zn.xlarge, m5zn.2xlarge, m5zn.3xlarge, m5zn.6xlarge, m5zn.12xlarge, m5zn.metal, m6a.large, m6a.xlarge, m6a.2xlarge, m6a.4xlarge, m6a.8xlarge, m6a.12xlarge, m6a.16xlarge, m6a.24xlarge, m6a.32xlarge, m6a.48xlarge, m6g.metal, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, m6g.4xlarge, m6g.8xlarge, m6g.12xlarge, m6g.16xlarge, m6gd.metal, m6gd.medium, m6gd.large, m6gd.xlarge, m6gd.2xlarge, m6gd.4xlarge, m6gd.8xlarge, m6gd.12xlarge, m6gd.16xlarge, m6i.large, m6i.xlarge, m6i.2xlarge, m6i.4xlarge, m6i.8xlarge, m6i.12xlarge, m6i.16xlarge, m6i.24xlarge, m6i.32xlarge, m6i.metal, mac1.metal, p2.xlarge, p2.8xlarge, p2.16xlarge, p3.2xlarge, p3.8xlarge, p3.16xlarge, p3dn.24xlarge, p4d.24xlarge, r3.large, r3.xlarge, r3.2xlarge, r3.4xlarge, r3.8xlarge, r4.large, r4.xlarge, r4.2xlarge, r4.4xlarge, r4.8xlarge, r4.16xlarge, r5.large, r5.xlarge, r5.2xlarge, r5.4xlarge, r5.8xlarge, r5.12xlarge, r5.16xlarge, r5.24xlarge, r5.metal, r5a.large, r5a.xlarge, r5a.2xlarge, r5a.4xlarge, r5a.8xlarge, r5a.12xlarge, r5a.16xlarge, r5a.24xlarge, r5ad.large, r5ad.xlarge, r5ad.2xlarge, r5ad.4xlarge, r5ad.8xlarge, r5ad.12xlarge, r5ad.16xlarge, r5ad.24xlarge, r5b.large, r5b.xlarge, r5b.2xlarge, r5b.4xlarge, r5b.8xlarge, r5b.12xlarge, r5b.16xlarge, r5b.24xlarge, r5b.metal, r5d.large, r5d.xlarge, r5d.2xlarge, r5d.4xlarge, r5d.8xlarge, r5d.12xlarge, r5d.16xlarge, r5d.24xlarge, r5d.metal, r5dn.large, r5dn.xlarge, r5dn.2xlarge, r5dn.4xlarge, r5dn.8xlarge, r5dn.12xlarge, r5dn.16xlarge, r5dn.24xlarge, r5dn.metal, r5n.large, r5n.xlarge, r5n.2xlarge, r5n.4xlarge, r5n.8xlarge, r5n.12xlarge, r5n.16xlarge, r5n.24xlarge, r5n.metal, r6g.medium, r6g.large, r6g.xlarge, r6g.2xlarge, r6g.4xlarge, r6g.8xlarge, r6g.12xlarge, r6g.16xlarge, r6g.metal, r6gd.medium, r6gd.large, r6gd.xlarge, r6gd.2xlarge, r6gd.4xlarge, r6gd.8xlarge, r6gd.12xlarge, r6gd.16xlarge, r6gd.metal, r6i.large, r6i.xlarge, r6i.2xlarge, r6i.4xlarge, r6i.8xlarge, r6i.12xlarge, r6i.16xlarge, r6i.24xlarge, r6i.32xlarge, r6i.metal, t1.micro, t2.nano, t2.micro, t2.small, t2.medium, t2.large, t2.xlarge, t2.2xlarge, t3.nano, t3.micro, t3.small, t3.medium, t3.large, t3.xlarge, t3.2xlarge, t3a.nano, t3a.micro, t3a.small, t3a.medium, t3a.large, t3a.xlarge, t3a.2xlarge, t4g.nano, t4g.micro, t4g.small, t4g.medium, t4g.large, t4g.xlarge, t4g.2xlarge, u-6tb1.56xlarge, u-6tb1.112xlarge, u-9tb1.112xlarge, u-12tb1.112xlarge, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, vt1.3xlarge, vt1.6xlarge, vt1.24xlarge, x1.16xlarge, x1.32xlarge, x1e.xlarge, x1e.2xlarge, x1e.4xlarge, x1e.8xlarge, x1e.16xlarge, x1e.32xlarge, x2iezn.2xlarge, x2iezn.4xlarge, x2iezn.6xlarge, x2iezn.8xlarge, x2iezn.12xlarge, x2iezn.metal, x2gd.medium, x2gd.large, x2gd.xlarge, x2gd.2xlarge, x2gd.4xlarge, x2gd.8xlarge, x2gd.12xlarge, x2gd.16xlarge, x2gd.metal, z1d.large, z1d.xlarge, z1d.2xlarge, z1d.3xlarge, z1d.6xlarge, z1d.12xlarge, z1d.metal, x2idn.16xlarge, x2idn.24xlarge, x2idn.32xlarge, x2iedn.xlarge, x2iedn.2xlarge, x2iedn.4xlarge, x2iedn.8xlarge, x2iedn.16xlarge, x2iedn.24xlarge, x2iedn.32xlarge, c6a.large, c6a.xlarge, c6a.2xlarge, c6a.4xlarge, c6a.8xlarge, c6a.12xlarge, c6a.16xlarge, c6a.24xlarge, c6a.32xlarge, c6a.48xlarge, c6a.metal, m6a.metal, i4i.large, i4i.xlarge, i4i.2xlarge, i4i.4xlarge, i4i.8xlarge, i4i.16xlarge, i4i.32xlarge, i4i.metal, x2idn.metal, x2iedn.metal, c7g.medium, c7g.large, c7g.xlarge, c7g.2xlarge, c7g.4xlarge, c7g.8xlarge, c7g.12xlarge, c7g.16xlarge, mac2.metal, c6id.large, c6id.xlarge, c6id.2xlarge, c6id.4xlarge, c6id.8xlarge, c6id.12xlarge, c6id.16xlarge, c6id.24xlarge, c6id.32xlarge, c6id.metal, m6id.large, m6id.xlarge, m6id.2xlarge, m6id.4xlarge, m6id.8xlarge, m6id.12xlarge, m6id.16xlarge, m6id.24xlarge, m6id.32xlarge, m6id.metal, r6id.large, r6id.xlarge, r6id.2xlarge, r6id.4xlarge, r6id.8xlarge, r6id.12xlarge, r6id.16xlarge, r6id.24xlarge, r6id.32xlarge, r6id.metal, r6a.large, r6a.xlarge, r6a.2xlarge, r6a.4xlarge, r6a.8xlarge, r6a.12xlarge, r6a.16xlarge, r6a.24xlarge, r6a.32xlarge, r6a.48xlarge, r6a.metal, p4de.24xlarge, u-3tb1.56xlarge, u-18tb1.112xlarge, u-24tb1.112xlarge, trn1.2xlarge, trn1.32xlarge, hpc6id.32xlarge, c6in.large, c6in.xlarge, c6in.2xlarge, c6in.4xlarge, c6in.8xlarge, c6in.12xlarge, c6in.16xlarge, c6in.24xlarge, c6in.32xlarge, m6in.large, m6in.xlarge, m6in.2xlarge, m6in.4xlarge, m6in.8xlarge, m6in.12xlarge, m6in.16xlarge, m6in.24xlarge, m6in.32xlarge, m6idn.large, m6idn.xlarge, m6idn.2xlarge, m6idn.4xlarge, m6idn.8xlarge, m6idn.12xlarge, m6idn.16xlarge, m6idn.24xlarge, m6idn.32xlarge, r6in.large, r6in.xlarge, r6in.2xlarge, r6in.4xlarge, r6in.8xlarge, r6in.12xlarge, r6in.16xlarge, r6in.24xlarge, r6in.32xlarge, r6idn.large, r6idn.xlarge, r6idn.2xlarge, r6idn.4xlarge, r6idn.8xlarge, r6idn.12xlarge, r6idn.16xlarge, r6idn.24xlarge, r6idn.32xlarge, c7g.metal, m7g.medium, m7g.large, m7g.xlarge, m7g.2xlarge, m7g.4xlarge, m7g.8xlarge, m7g.12xlarge, m7g.16xlarge, m7g.metal, r7g.medium, r7g.large, r7g.xlarge, r7g.2xlarge, r7g.4xlarge, r7g.8xlarge, r7g.12xlarge, r7g.16xlarge, r7g.metal, c6in.metal, m6in.metal, m6idn.metal, r6in.metal, r6idn.metal, inf2.xlarge, inf2.8xlarge, inf2.24xlarge, inf2.48xlarge, trn1n.32xlarge, i4g.large, i4g.xlarge, i4g.2xlarge, i4g.4xlarge, i4g.8xlarge, i4g.16xlarge, hpc7g.4xlarge, hpc7g.8xlarge, hpc7g.16xlarge, c7gn.medium, c7gn.large, c7gn.xlarge, c7gn.2xlarge, c7gn.4xlarge, c7gn.8xlarge, c7gn.12xlarge, c7gn.16xlarge, p5.48xlarge, m7i.large, m7i.xlarge, m7i.2xlarge, m7i.4xlarge, m7i.8xlarge, m7i.12xlarge, m7i.16xlarge, m7i.24xlarge, m7i.48xlarge, m7i-flex.large, m7i-flex.xlarge, m7i-flex.2xlarge, m7i-flex.4xlarge, m7i-flex.8xlarge, m7a.medium, m7a.large, m7a.xlarge, m7a.2xlarge, m7a.4xlarge, m7a.8xlarge, m7a.12xlarge, m7a.16xlarge, m7a.24xlarge, m7a.32xlarge, m7a.48xlarge, m7a.metal-48xl, hpc7a.12xlarge, hpc7a.24xlarge, hpc7a.48xlarge, hpc7a.96xlarge, c7gd.medium, c7gd.large, c7gd.xlarge, c7gd.2xlarge, c7gd.4xlarge, c7gd.8xlarge, c7gd.12xlarge, c7gd.16xlarge, m7gd.medium, m7gd.large, m7gd.xlarge, m7gd.2xlarge, m7gd.4xlarge, m7gd.8xlarge, m7gd.12xlarge, m7gd.16xlarge, r7gd.medium, r7gd.large, r7gd.xlarge, r7gd.2xlarge, r7gd.4xlarge, r7gd.8xlarge, r7gd.12xlarge, r7gd.16xlarge, r7a.medium, r7a.large, r7a.xlarge, r7a.2xlarge, r7a.4xlarge, r7a.8xlarge, r7a.12xlarge, r7a.16xlarge, r7a.24xlarge, r7a.32xlarge, r7a.48xlarge, c7i.large, c7i.xlarge, c7i.2xlarge, c7i.4xlarge, c7i.8xlarge, c7i.12xlarge, c7i.16xlarge, c7i.24xlarge, c7i.48xlarge, mac2-m2pro.metal, r7iz.large, r7iz.xlarge, r7iz.2xlarge, r7iz.4xlarge, r7iz.8xlarge, r7iz.12xlarge, r7iz.16xlarge, r7iz.32xlarge, c7a.medium, c7a.large, c7a.xlarge, c7a.2xlarge, c7a.4xlarge, c7a.8xlarge, c7a.12xlarge, c7a.16xlarge, c7a.24xlarge, c7a.32xlarge, c7a.48xlarge, c7a.metal-48xl, r7a.metal-48xl, r7i.large, r7i.xlarge, r7i.2xlarge, r7i.4xlarge, r7i.8xlarge, r7i.12xlarge, r7i.16xlarge, r7i.24xlarge, r7i.48xlarge, dl2q.24xlarge, mac2-m2.metal, i4i.12xlarge, i4i.24xlarge, c7i.metal-24xl, c7i.metal-48xl, m7i.metal-24xl, m7i.metal-48xl, r7i.metal-24xl, r7i.metal-48xl, r7iz.metal-16xl, r7iz.metal-32xl, c7gd.metal, m7gd.metal, r7gd.metal, g6.xlarge, g6.2xlarge, g6.4xlarge, g6.8xlarge, g6.12xlarge, g6.16xlarge, g6.24xlarge, g6.48xlarge, gr6.4xlarge, gr6.8xlarge, c7i-flex.large, c7i-flex.xlarge, c7i-flex.2xlarge, c7i-flex.4xlarge, c7i-flex.8xlarge, u7i-12tb.224xlarge, u7in-16tb.224xlarge, u7in-24tb.224xlarge, u7in-32tb.224xlarge, u7ib-12tb.224xlarge, c7gn.metal, r8g.medium, r8g.large, r8g.xlarge, r8g.2xlarge, r8g.4xlarge, r8g.8xlarge, r8g.12xlarge, r8g.16xlarge, r8g.24xlarge, r8g.48xlarge, r8g.metal-24xl, r8g.metal-48xl, mac2-m1ultra.metal, g6e.xlarge, g6e.2xlarge, g6e.4xlarge, g6e.8xlarge, g6e.12xlarge, g6e.16xlarge, g6e.24xlarge, g6e.48xlarge, c8g.medium, c8g.large, c8g.xlarge, c8g.2xlarge, c8g.4xlarge, c8g.8xlarge, c8g.12xlarge, c8g.16xlarge, c8g.24xlarge, c8g.48xlarge, c8g.metal-24xl, c8g.metal-48xl, m8g.medium, m8g.large, m8g.xlarge, m8g.2xlarge, m8g.4xlarge, m8g.8xlarge, m8g.12xlarge, m8g.16xlarge, m8g.24xlarge, m8g.48xlarge, m8g.metal-24xl, m8g.metal-48xl, x8g.medium, x8g.large, x8g.xlarge, x8g.2xlarge, x8g.4xlarge, x8g.8xlarge, x8g.12xlarge, x8g.16xlarge, x8g.24xlarge, x8g.48xlarge, x8g.metal-24xl, x8g.metal-48xl, i7ie.large, i7ie.xlarge, i7ie.2xlarge, i7ie.3xlarge, i7ie.6xlarge, i7ie.12xlarge, i7ie.18xlarge, i7ie.24xlarge, i7ie.48xlarge, i8g.large, i8g.xlarge, i8g.2xlarge, i8g.4xlarge, i8g.8xlarge, i8g.12xlarge, i8g.16xlarge, i8g.24xlarge, i8g.metal-24xl, u7i-6tb.112xlarge, u7i-8tb.112xlarge, u7inh-32tb.480xlarge, p5e.48xlarge, p5en.48xlarge, f2.12xlarge, f2.48xlarge, trn2.48xlarge
332
348
  # ipv_6_address_count: 1,
333
349
  # ipv_6_addresses: [
334
350
  # {
@@ -344,7 +360,6 @@ module Aws::EC2
344
360
  # enabled: false, # required
345
361
  # },
346
362
  # placement: {
347
- # availability_zone: "String",
348
363
  # affinity: "String",
349
364
  # group_name: "PlacementGroupName",
350
365
  # partition_number: 1,
@@ -353,75 +368,12 @@ module Aws::EC2
353
368
  # spread_domain: "String",
354
369
  # host_resource_group_arn: "String",
355
370
  # group_id: "PlacementGroupId",
371
+ # availability_zone: "String",
356
372
  # },
357
373
  # ramdisk_id: "RamdiskId",
358
374
  # security_group_ids: ["SecurityGroupId"],
359
375
  # security_groups: ["SecurityGroupName"],
360
376
  # user_data: "RunInstancesUserData",
361
- # additional_info: "String",
362
- # client_token: "String",
363
- # disable_api_termination: false,
364
- # dry_run: false,
365
- # ebs_optimized: false,
366
- # iam_instance_profile: {
367
- # arn: "String",
368
- # name: "String",
369
- # },
370
- # instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
371
- # network_interfaces: [
372
- # {
373
- # associate_public_ip_address: false,
374
- # delete_on_termination: false,
375
- # description: "String",
376
- # device_index: 1,
377
- # groups: ["SecurityGroupId"],
378
- # ipv_6_address_count: 1,
379
- # ipv_6_addresses: [
380
- # {
381
- # ipv_6_address: "String",
382
- # is_primary_ipv_6: false,
383
- # },
384
- # ],
385
- # network_interface_id: "NetworkInterfaceId",
386
- # private_ip_address: "String",
387
- # private_ip_addresses: [
388
- # {
389
- # primary: false,
390
- # private_ip_address: "String",
391
- # },
392
- # ],
393
- # secondary_private_ip_address_count: 1,
394
- # subnet_id: "String",
395
- # associate_carrier_ip_address: false,
396
- # interface_type: "String",
397
- # network_card_index: 1,
398
- # ipv_4_prefixes: [
399
- # {
400
- # ipv_4_prefix: "String",
401
- # },
402
- # ],
403
- # ipv_4_prefix_count: 1,
404
- # ipv_6_prefixes: [
405
- # {
406
- # ipv_6_prefix: "String",
407
- # },
408
- # ],
409
- # ipv_6_prefix_count: 1,
410
- # primary_ipv_6: false,
411
- # ena_srd_specification: {
412
- # ena_srd_enabled: false,
413
- # ena_srd_udp_specification: {
414
- # ena_srd_udp_enabled: false,
415
- # },
416
- # },
417
- # connection_tracking_specification: {
418
- # tcp_established_timeout: 1,
419
- # udp_stream_timeout: 1,
420
- # udp_timeout: 1,
421
- # },
422
- # },
423
- # ],
424
- # private_ip_address: "String",
425
377
  # elastic_gpu_specification: [
426
378
  # {
427
379
  # type: "String", # required
@@ -435,7 +387,7 @@ module Aws::EC2
435
387
  # ],
436
388
  # tag_specifications: [
437
389
  # {
438
- # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint
390
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
439
391
  # tags: [
440
392
  # {
441
393
  # key: "String",
@@ -468,7 +420,7 @@ module Aws::EC2
468
420
  # amd_sev_snp: "enabled", # accepts enabled, disabled
469
421
  # },
470
422
  # capacity_reservation_specification: {
471
- # capacity_reservation_preference: "open", # accepts open, none
423
+ # capacity_reservation_preference: "capacity-reservations-only", # accepts capacity-reservations-only, open, none
472
424
  # capacity_reservation_target: {
473
425
  # capacity_reservation_id: "CapacityReservationId",
474
426
  # capacity_reservation_resource_group_arn: "String",
@@ -502,6 +454,77 @@ module Aws::EC2
502
454
  # },
503
455
  # disable_api_stop: false,
504
456
  # enable_primary_ipv_6: false,
457
+ # network_performance_options: {
458
+ # bandwidth_weighting: "default", # accepts default, vpc-1, ebs-1
459
+ # },
460
+ # operator: {
461
+ # principal: "String",
462
+ # },
463
+ # dry_run: false,
464
+ # disable_api_termination: false,
465
+ # instance_initiated_shutdown_behavior: "stop", # accepts stop, terminate
466
+ # private_ip_address: "String",
467
+ # client_token: "String",
468
+ # additional_info: "String",
469
+ # network_interfaces: [
470
+ # {
471
+ # associate_public_ip_address: false,
472
+ # delete_on_termination: false,
473
+ # description: "String",
474
+ # device_index: 1,
475
+ # groups: ["SecurityGroupId"],
476
+ # ipv_6_address_count: 1,
477
+ # ipv_6_addresses: [
478
+ # {
479
+ # ipv_6_address: "String",
480
+ # is_primary_ipv_6: false,
481
+ # },
482
+ # ],
483
+ # network_interface_id: "NetworkInterfaceId",
484
+ # private_ip_address: "String",
485
+ # private_ip_addresses: [
486
+ # {
487
+ # primary: false,
488
+ # private_ip_address: "String",
489
+ # },
490
+ # ],
491
+ # secondary_private_ip_address_count: 1,
492
+ # subnet_id: "String",
493
+ # associate_carrier_ip_address: false,
494
+ # interface_type: "String",
495
+ # network_card_index: 1,
496
+ # ipv_4_prefixes: [
497
+ # {
498
+ # ipv_4_prefix: "String",
499
+ # },
500
+ # ],
501
+ # ipv_4_prefix_count: 1,
502
+ # ipv_6_prefixes: [
503
+ # {
504
+ # ipv_6_prefix: "String",
505
+ # },
506
+ # ],
507
+ # ipv_6_prefix_count: 1,
508
+ # primary_ipv_6: false,
509
+ # ena_srd_specification: {
510
+ # ena_srd_enabled: false,
511
+ # ena_srd_udp_specification: {
512
+ # ena_srd_udp_enabled: false,
513
+ # },
514
+ # },
515
+ # connection_tracking_specification: {
516
+ # tcp_established_timeout: 1,
517
+ # udp_stream_timeout: 1,
518
+ # udp_timeout: 1,
519
+ # },
520
+ # ena_queue_count: 1,
521
+ # },
522
+ # ],
523
+ # iam_instance_profile: {
524
+ # arn: "String",
525
+ # name: "String",
526
+ # },
527
+ # ebs_optimized: false,
505
528
  # })
506
529
  # @param [Hash] options ({})
507
530
  # @option options [Array<Types::BlockDeviceMapping>] :block_device_mappings
@@ -517,8 +540,8 @@ module Aws::EC2
517
540
  # The ID of the AMI. An AMI ID is required to launch an instance and
518
541
  # must be specified here or in a launch template.
519
542
  # @option options [String] :instance_type
520
- # The instance type. For more information, see [Instance types][1] in
521
- # the *Amazon EC2 User Guide*.
543
+ # The instance type. For more information, see [Amazon EC2 instance
544
+ # types][1] in the *Amazon EC2 User Guide*.
522
545
  #
523
546
  #
524
547
  #
@@ -563,32 +586,30 @@ module Aws::EC2
563
586
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html
564
587
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html
565
588
  # @option options [required, Integer] :max_count
566
- # The maximum number of instances to launch. If you specify more
567
- # instances than Amazon EC2 can launch in the target Availability Zone,
568
- # Amazon EC2 launches the largest possible number of instances above
569
- # `MinCount`.
589
+ # The maximum number of instances to launch. If you specify a value that
590
+ # is more capacity than Amazon EC2 can launch in the target Availability
591
+ # Zone, Amazon EC2 launches the largest possible number of instances
592
+ # above the specified minimum count.
570
593
  #
571
- # Constraints: Between 1 and the maximum number you're allowed for the
572
- # specified instance type. For more information about the default
573
- # limits, and how to request an increase, see [How many instances can I
574
- # run in Amazon EC2][1] in the Amazon EC2 FAQ.
594
+ # Constraints: Between 1 and the quota for the specified instance type
595
+ # for your account for this Region. For more information, see [Amazon
596
+ # EC2 instance type quotas][1].
575
597
  #
576
598
  #
577
599
  #
578
- # [1]: http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2
600
+ # [1]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-instance-quotas.html
579
601
  # @option options [required, Integer] :min_count
580
- # The minimum number of instances to launch. If you specify a minimum
581
- # that is more instances than Amazon EC2 can launch in the target
582
- # Availability Zone, Amazon EC2 launches no instances.
602
+ # The minimum number of instances to launch. If you specify a value that
603
+ # is more capacity than Amazon EC2 can provide in the target
604
+ # Availability Zone, Amazon EC2 does not launch any instances.
583
605
  #
584
- # Constraints: Between 1 and the maximum number you're allowed for the
585
- # specified instance type. For more information about the default
586
- # limits, and how to request an increase, see [How many instances can I
587
- # run in Amazon EC2][1] in the Amazon EC2 General FAQ.
606
+ # Constraints: Between 1 and the quota for the specified instance type
607
+ # for your account for this Region. For more information, see [Amazon
608
+ # EC2 instance type quotas][1].
588
609
  #
589
610
  #
590
611
  #
591
- # [1]: http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2
612
+ # [1]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-instance-quotas.html
592
613
  # @option options [Types::RunInstancesMonitoringEnabled] :monitoring
593
614
  # Specifies whether detailed monitoring is enabled for the instance.
594
615
  # @option options [Types::Placement] :placement
@@ -611,7 +632,8 @@ module Aws::EC2
611
632
  # [CreateSecurityGroup][1].
612
633
  #
613
634
  # If you specify a network interface, you must specify any security
614
- # groups as part of the network interface.
635
+ # groups as part of the network interface instead of using this
636
+ # parameter.
615
637
  #
616
638
  #
617
639
  #
@@ -620,113 +642,29 @@ module Aws::EC2
620
642
  # \[Default VPC\] The names of the security groups.
621
643
  #
622
644
  # If you specify a network interface, you must specify any security
623
- # groups as part of the network interface.
645
+ # groups as part of the network interface instead of using this
646
+ # parameter.
624
647
  #
625
648
  # Default: Amazon EC2 uses the default security group.
626
649
  # @option options [String] :user_data
627
- # The user data script to make available to the instance. For more
628
- # information, see [Run commands on your Linux instance at launch][1]
629
- # and [Run commands on your Windows instance at launch][2]. If you are
630
- # using a command line tool, base64-encoding is performed for you, and
631
- # you can load the text from a file. Otherwise, you must provide
632
- # base64-encoded text. User data is limited to 16 KB.
633
- #
634
- #
635
- #
636
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html
637
- # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html
638
- # @option options [String] :additional_info
639
- # Reserved.
640
- # @option options [String] :client_token
641
- # Unique, case-sensitive identifier you provide to ensure the
642
- # idempotency of the request. If you do not specify a client token, a
643
- # randomly generated token is used for the request to ensure
644
- # idempotency.
645
- #
646
- # For more information, see [Ensuring Idempotency][1].
647
- #
648
- # Constraints: Maximum 64 ASCII characters
649
- #
650
- #
651
- #
652
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
653
- # @option options [Boolean] :disable_api_termination
654
- # If you set this parameter to `true`, you can't terminate the instance
655
- # using the Amazon EC2 console, CLI, or API; otherwise, you can. To
656
- # change this attribute after launch, use [ModifyInstanceAttribute][1].
657
- # Alternatively, if you set `InstanceInitiatedShutdownBehavior` to
658
- # `terminate`, you can terminate the instance by running the shutdown
659
- # command from the instance.
660
- #
661
- # Default: `false`
662
- #
663
- #
664
- #
665
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html
666
- # @option options [Boolean] :dry_run
667
- # Checks whether you have the required permissions for the action,
668
- # without actually making the request, and provides an error response.
669
- # If you have the required permissions, the error response is
670
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
671
- # @option options [Boolean] :ebs_optimized
672
- # Indicates whether the instance is optimized for Amazon EBS I/O. This
673
- # optimization provides dedicated throughput to Amazon EBS and an
674
- # optimized configuration stack to provide optimal Amazon EBS I/O
675
- # performance. This optimization isn't available with all instance
676
- # types. Additional usage charges apply when using an EBS-optimized
677
- # instance.
678
- #
679
- # Default: `false`
680
- # @option options [Types::IamInstanceProfileSpecification] :iam_instance_profile
681
- # The name or Amazon Resource Name (ARN) of an IAM instance profile.
682
- # @option options [String] :instance_initiated_shutdown_behavior
683
- # Indicates whether an instance stops or terminates when you initiate
684
- # shutdown from the instance (using the operating system command for
685
- # system shutdown).
650
+ # The user data to make available to the instance. User data must be
651
+ # base64-encoded. Depending on the tool or SDK that you're using, the
652
+ # base64-encoding might be performed for you. For more information, see
653
+ # [Work with instance user data][1].
686
654
  #
687
- # Default: `stop`
688
- # @option options [Array<Types::InstanceNetworkInterfaceSpecification>] :network_interfaces
689
- # The network interfaces to associate with the instance. If you specify
690
- # a network interface, you must specify any security groups and subnets
691
- # as part of the network interface.
692
- # @option options [String] :private_ip_address
693
- # The primary IPv4 address. You must specify a value from the IPv4
694
- # address range of the subnet.
695
655
  #
696
- # Only one private IP address can be designated as primary. You can't
697
- # specify this option if you've specified the option to designate a
698
- # private IP address as the primary IP address in a network interface
699
- # specification. You cannot specify this option if you're launching
700
- # more than one instance in the request.
701
656
  #
702
- # You cannot specify this option and the network interfaces option in
703
- # the same request.
657
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-add-user-data.html
704
658
  # @option options [Array<Types::ElasticGpuSpecification>] :elastic_gpu_specification
705
- # An elastic GPU to associate with the instance. An Elastic GPU is a GPU
706
- # resource that you can attach to your Windows instance to accelerate
707
- # the graphics performance of your applications. For more information,
708
- # see [Amazon EC2 Elastic GPUs][1] in the *Amazon EC2 User Guide*.
659
+ # An elastic GPU to associate with the instance.
709
660
  #
661
+ # <note markdown="1"> Amazon Elastic Graphics reached end of life on January 8, 2024.
710
662
  #
711
- #
712
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html
663
+ # </note>
713
664
  # @option options [Array<Types::ElasticInferenceAccelerator>] :elastic_inference_accelerators
714
665
  # An elastic inference accelerator to associate with the instance.
715
- # Elastic inference accelerators are a resource you can attach to your
716
- # Amazon EC2 instances to accelerate your Deep Learning (DL) inference
717
- # workloads.
718
- #
719
- # You cannot specify accelerators from different generations in the same
720
- # request.
721
- #
722
- # <note markdown="1"> Starting April 15, 2023, Amazon Web Services will not onboard new
723
- # customers to Amazon Elastic Inference (EI), and will help current
724
- # customers migrate their workloads to options that offer better price
725
- # and performance. After April 15, 2023, new customers will not be able
726
- # to launch instances with Amazon EI accelerators in Amazon SageMaker,
727
- # Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI
728
- # at least once during the past 30-day period are considered current
729
- # customers and will be able to continue using the service.
666
+ #
667
+ # <note markdown="1"> Amazon Elastic Inference is no longer available.
730
668
  #
731
669
  # </note>
732
670
  # @option options [Array<Types::TagSpecification>] :tag_specifications
@@ -739,8 +677,6 @@ module Aws::EC2
739
677
  #
740
678
  # * Volumes
741
679
  #
742
- # * Elastic graphics
743
- #
744
680
  # * Spot Instance requests
745
681
  #
746
682
  # * Network interfaces
@@ -751,10 +687,9 @@ module Aws::EC2
751
687
  #
752
688
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html
753
689
  # @option options [Types::LaunchTemplateSpecification] :launch_template
754
- # The launch template to use to launch the instances. Any parameters
755
- # that you specify in RunInstances override the same parameters in the
756
- # launch template. You can specify either the name or ID of a launch
757
- # template, but not both.
690
+ # The launch template. Any additional parameters that you specify for
691
+ # the new instance overwrite the corresponding parameters included in
692
+ # the launch template.
758
693
  # @option options [Types::InstanceMarketOptionsRequest] :instance_market_options
759
694
  # The market (purchasing) option for the instances.
760
695
  #
@@ -789,12 +724,12 @@ module Aws::EC2
789
724
  # not specify this parameter, the instance's Capacity Reservation
790
725
  # preference defaults to `open`, which enables it to run in any open
791
726
  # Capacity Reservation that has matching attributes (instance type,
792
- # platform, Availability Zone).
727
+ # platform, Availability Zone, and tenancy).
793
728
  # @option options [Types::HibernationOptionsRequest] :hibernation_options
794
729
  # Indicates whether an instance is enabled for hibernation. This
795
730
  # parameter is valid only if the instance meets the [hibernation
796
- # prerequisites][1]. For more information, see [Hibernate your
797
- # instance][2] in the *Amazon EC2 User Guide*.
731
+ # prerequisites][1]. For more information, see [Hibernate your Amazon
732
+ # EC2 instance][2] in the *Amazon EC2 User Guide*.
798
733
  #
799
734
  # You can't enable hibernation and Amazon Web Services Nitro Enclaves
800
735
  # on the same instance.
@@ -853,11 +788,73 @@ module Aws::EC2
853
788
  # attached to your instance and you enable a primary IPv6 address, the
854
789
  # first IPv6 GUA address associated with the ENI becomes the primary
855
790
  # IPv6 address.
791
+ # @option options [Types::InstanceNetworkPerformanceOptionsRequest] :network_performance_options
792
+ # Contains settings for the network performance options for the
793
+ # instance.
794
+ # @option options [Types::OperatorRequest] :operator
795
+ # Reserved for internal use.
796
+ # @option options [Boolean] :dry_run
797
+ # Checks whether you have the required permissions for the operation,
798
+ # without actually making the request, and provides an error response.
799
+ # If you have the required permissions, the error response is
800
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
801
+ # @option options [Boolean] :disable_api_termination
802
+ # Indicates whether termination protection is enabled for the instance.
803
+ # The default is `false`, which means that you can terminate the
804
+ # instance using the Amazon EC2 console, command line tools, or API. You
805
+ # can enable termination protection when you launch an instance, while
806
+ # the instance is running, or while the instance is stopped.
807
+ # @option options [String] :instance_initiated_shutdown_behavior
808
+ # Indicates whether an instance stops or terminates when you initiate
809
+ # shutdown from the instance (using the operating system command for
810
+ # system shutdown).
811
+ #
812
+ # Default: `stop`
813
+ # @option options [String] :private_ip_address
814
+ # The primary IPv4 address. You must specify a value from the IPv4
815
+ # address range of the subnet.
816
+ #
817
+ # Only one private IP address can be designated as primary. You can't
818
+ # specify this option if you've specified the option to designate a
819
+ # private IP address as the primary IP address in a network interface
820
+ # specification. You cannot specify this option if you're launching
821
+ # more than one instance in the request.
822
+ #
823
+ # You cannot specify this option and the network interfaces option in
824
+ # the same request.
825
+ # @option options [String] :client_token
826
+ # Unique, case-sensitive identifier you provide to ensure the
827
+ # idempotency of the request. If you do not specify a client token, a
828
+ # randomly generated token is used for the request to ensure
829
+ # idempotency.
830
+ #
831
+ # For more information, see [Ensuring Idempotency][1].
832
+ #
833
+ # Constraints: Maximum 64 ASCII characters
834
+ #
835
+ #
836
+ #
837
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
838
+ # @option options [String] :additional_info
839
+ # Reserved.
840
+ # @option options [Array<Types::InstanceNetworkInterfaceSpecification>] :network_interfaces
841
+ # The network interfaces to associate with the instance.
842
+ # @option options [Types::IamInstanceProfileSpecification] :iam_instance_profile
843
+ # The name or Amazon Resource Name (ARN) of an IAM instance profile.
844
+ # @option options [Boolean] :ebs_optimized
845
+ # Indicates whether the instance is optimized for Amazon EBS I/O. This
846
+ # optimization provides dedicated throughput to Amazon EBS and an
847
+ # optimized configuration stack to provide optimal Amazon EBS I/O
848
+ # performance. This optimization isn't available with all instance
849
+ # types. Additional usage charges apply when using an EBS-optimized
850
+ # instance.
851
+ #
852
+ # Default: `false`
856
853
  # @return [Instance::Collection]
857
854
  def create_instances(options = {})
858
855
  batch = []
859
856
  options = options.merge(subnet_id: @id)
860
- resp = Aws::Plugins::UserAgent.feature('resource') do
857
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
861
858
  @client.run_instances(options)
862
859
  end
863
860
  resp.data.instances.each do |i|
@@ -873,24 +870,6 @@ module Aws::EC2
873
870
  # @example Request syntax with placeholder values
874
871
  #
875
872
  # networkinterface = subnet.create_network_interface({
876
- # description: "String",
877
- # dry_run: false,
878
- # groups: ["SecurityGroupId"],
879
- # ipv_6_address_count: 1,
880
- # ipv_6_addresses: [
881
- # {
882
- # ipv_6_address: "String",
883
- # is_primary_ipv_6: false,
884
- # },
885
- # ],
886
- # private_ip_address: "String",
887
- # private_ip_addresses: [
888
- # {
889
- # primary: false,
890
- # private_ip_address: "String",
891
- # },
892
- # ],
893
- # secondary_private_ip_address_count: 1,
894
873
  # ipv_4_prefixes: [
895
874
  # {
896
875
  # ipv_4_prefix: "String",
@@ -903,10 +882,10 @@ module Aws::EC2
903
882
  # },
904
883
  # ],
905
884
  # ipv_6_prefix_count: 1,
906
- # interface_type: "efa", # accepts efa, branch, trunk
885
+ # interface_type: "efa", # accepts efa, efa-only, branch, trunk
907
886
  # tag_specifications: [
908
887
  # {
909
- # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint
888
+ # resource_type: "capacity-reservation", # accepts capacity-reservation, client-vpn-endpoint, customer-gateway, carrier-gateway, coip-pool, declarative-policies-report, 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, instance-event-window, internet-gateway, ipam, ipam-pool, ipam-scope, ipv4pool-ec2, ipv6pool-ec2, key-pair, launch-template, local-gateway, local-gateway-route-table, local-gateway-virtual-interface, local-gateway-virtual-interface-group, local-gateway-route-table-vpc-association, local-gateway-route-table-virtual-interface-group-association, natgateway, network-acl, network-interface, network-insights-analysis, network-insights-path, network-insights-access-scope, network-insights-access-scope-analysis, outpost-lag, placement-group, prefix-list, replace-root-volume-task, reserved-instances, route-table, security-group, security-group-rule, service-link-virtual-interface, snapshot, spot-fleet-request, spot-instances-request, subnet, subnet-cidr-reservation, traffic-mirror-filter, traffic-mirror-session, traffic-mirror-target, transit-gateway, transit-gateway-attachment, transit-gateway-connect-peer, transit-gateway-multicast-domain, transit-gateway-policy-table, transit-gateway-route-table, transit-gateway-route-table-announcement, volume, vpc, vpc-endpoint, vpc-endpoint-connection, vpc-endpoint-service, vpc-endpoint-service-permission, vpc-peering-connection, vpn-connection, vpn-gateway, vpc-flow-log, capacity-reservation-fleet, traffic-mirror-filter-rule, vpc-endpoint-connection-device-type, verified-access-instance, verified-access-group, verified-access-endpoint, verified-access-policy, verified-access-trust-provider, vpn-connection-device-type, vpc-block-public-access-exclusion, route-server, route-server-endpoint, route-server-peer, ipam-resource-discovery, ipam-resource-discovery-association, instance-connect-endpoint, verified-access-endpoint-target, ipam-external-resource-verification-token
910
889
  # tags: [
911
890
  # {
912
891
  # key: "String",
@@ -922,56 +901,29 @@ module Aws::EC2
922
901
  # udp_stream_timeout: 1,
923
902
  # udp_timeout: 1,
924
903
  # },
904
+ # operator: {
905
+ # principal: "String",
906
+ # },
907
+ # description: "String",
908
+ # private_ip_address: "String",
909
+ # groups: ["SecurityGroupId"],
910
+ # private_ip_addresses: [
911
+ # {
912
+ # primary: false,
913
+ # private_ip_address: "String",
914
+ # },
915
+ # ],
916
+ # secondary_private_ip_address_count: 1,
917
+ # ipv_6_addresses: [
918
+ # {
919
+ # ipv_6_address: "String",
920
+ # is_primary_ipv_6: false,
921
+ # },
922
+ # ],
923
+ # ipv_6_address_count: 1,
924
+ # dry_run: false,
925
925
  # })
926
926
  # @param [Hash] options ({})
927
- # @option options [String] :description
928
- # A description for the network interface.
929
- # @option options [Boolean] :dry_run
930
- # Checks whether you have the required permissions for the action,
931
- # without actually making the request, and provides an error response.
932
- # If you have the required permissions, the error response is
933
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
934
- # @option options [Array<String>] :groups
935
- # The IDs of one or more security groups.
936
- # @option options [Integer] :ipv_6_address_count
937
- # The number of IPv6 addresses to assign to a network interface. Amazon
938
- # EC2 automatically selects the IPv6 addresses from the subnet range.
939
- #
940
- # You can't specify a count of IPv6 addresses using this parameter if
941
- # you've specified one of the following: specific IPv6 addresses,
942
- # specific IPv6 prefixes, or a count of IPv6 prefixes.
943
- #
944
- # If your subnet has the `AssignIpv6AddressOnCreation` attribute set,
945
- # you can override that setting by specifying 0 as the IPv6 address
946
- # count.
947
- # @option options [Array<Types::InstanceIpv6Address>] :ipv_6_addresses
948
- # The IPv6 addresses from the IPv6 CIDR block range of your subnet.
949
- #
950
- # You can't specify IPv6 addresses using this parameter if you've
951
- # specified one of the following: a count of IPv6 addresses, specific
952
- # IPv6 prefixes, or a count of IPv6 prefixes.
953
- # @option options [String] :private_ip_address
954
- # The primary private IPv4 address of the network interface. If you
955
- # don't specify an IPv4 address, Amazon EC2 selects one for you from
956
- # the subnet's IPv4 CIDR range. If you specify an IP address, you
957
- # cannot indicate any IP addresses specified in `privateIpAddresses` as
958
- # primary (only one IP address can be designated as primary).
959
- # @option options [Array<Types::PrivateIpAddressSpecification>] :private_ip_addresses
960
- # The private IPv4 addresses.
961
- #
962
- # You can't specify private IPv4 addresses if you've specified one of
963
- # the following: a count of private IPv4 addresses, specific IPv4
964
- # prefixes, or a count of IPv4 prefixes.
965
- # @option options [Integer] :secondary_private_ip_address_count
966
- # The number of secondary private IPv4 addresses to assign to a network
967
- # interface. When you specify a number of secondary IPv4 addresses,
968
- # Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR
969
- # range. You can't specify this option and specify more than one
970
- # private IP address using `privateIpAddresses`.
971
- #
972
- # You can't specify a count of private IPv4 addresses if you've
973
- # specified one of the following: specific private IPv4 addresses,
974
- # specific IPv4 prefixes, or a count of IPv4 prefixes.
975
927
  # @option options [Array<Types::Ipv4PrefixSpecificationRequest>] :ipv_4_prefixes
976
928
  # The IPv4 prefixes assigned to the network interface.
977
929
  #
@@ -1001,17 +953,22 @@ module Aws::EC2
1001
953
  # @option options [String] :interface_type
1002
954
  # The type of network interface. The default is `interface`.
1003
955
  #
1004
- # The only supported values are `interface`, `efa`, and `trunk`.
956
+ # If you specify `efa-only`, do not assign any IP addresses to the
957
+ # network interface. EFA-only network interfaces do not support IP
958
+ # addresses.
959
+ #
960
+ # The only supported values are `interface`, `efa`, `efa-only`, and
961
+ # `trunk`.
1005
962
  # @option options [Array<Types::TagSpecification>] :tag_specifications
1006
963
  # The tags to apply to the new network interface.
1007
964
  # @option options [String] :client_token
1008
965
  # Unique, case-sensitive identifier that you provide to ensure the
1009
966
  # idempotency of the request. For more information, see [Ensuring
1010
- # Idempotency][1].
967
+ # idempotency][1].
1011
968
  #
1012
969
  #
1013
970
  #
1014
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
971
+ # [1]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html
1015
972
  # @option options [Boolean] :enable_primary_ipv_6
1016
973
  # If you’re creating a network interface in a dual-stack or IPv6-only
1017
974
  # subnet, you have the option to assign a primary IPv6 IP address. A
@@ -1030,10 +987,60 @@ module Aws::EC2
1030
987
  # the primary IPv6 address.
1031
988
  # @option options [Types::ConnectionTrackingSpecificationRequest] :connection_tracking_specification
1032
989
  # A connection tracking specification for the network interface.
990
+ # @option options [Types::OperatorRequest] :operator
991
+ # Reserved for internal use.
992
+ # @option options [String] :description
993
+ # A description for the network interface.
994
+ # @option options [String] :private_ip_address
995
+ # The primary private IPv4 address of the network interface. If you
996
+ # don't specify an IPv4 address, Amazon EC2 selects one for you from
997
+ # the subnet's IPv4 CIDR range. If you specify an IP address, you
998
+ # cannot indicate any IP addresses specified in `privateIpAddresses` as
999
+ # primary (only one IP address can be designated as primary).
1000
+ # @option options [Array<String>] :groups
1001
+ # The IDs of the security groups.
1002
+ # @option options [Array<Types::PrivateIpAddressSpecification>] :private_ip_addresses
1003
+ # The private IPv4 addresses.
1004
+ #
1005
+ # You can't specify private IPv4 addresses if you've specified one of
1006
+ # the following: a count of private IPv4 addresses, specific IPv4
1007
+ # prefixes, or a count of IPv4 prefixes.
1008
+ # @option options [Integer] :secondary_private_ip_address_count
1009
+ # The number of secondary private IPv4 addresses to assign to a network
1010
+ # interface. When you specify a number of secondary IPv4 addresses,
1011
+ # Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR
1012
+ # range. You can't specify this option and specify more than one
1013
+ # private IP address using `privateIpAddresses`.
1014
+ #
1015
+ # You can't specify a count of private IPv4 addresses if you've
1016
+ # specified one of the following: specific private IPv4 addresses,
1017
+ # specific IPv4 prefixes, or a count of IPv4 prefixes.
1018
+ # @option options [Array<Types::InstanceIpv6Address>] :ipv_6_addresses
1019
+ # The IPv6 addresses from the IPv6 CIDR block range of your subnet.
1020
+ #
1021
+ # You can't specify IPv6 addresses using this parameter if you've
1022
+ # specified one of the following: a count of IPv6 addresses, specific
1023
+ # IPv6 prefixes, or a count of IPv6 prefixes.
1024
+ # @option options [Integer] :ipv_6_address_count
1025
+ # The number of IPv6 addresses to assign to a network interface. Amazon
1026
+ # EC2 automatically selects the IPv6 addresses from the subnet range.
1027
+ #
1028
+ # You can't specify a count of IPv6 addresses using this parameter if
1029
+ # you've specified one of the following: specific IPv6 addresses,
1030
+ # specific IPv6 prefixes, or a count of IPv6 prefixes.
1031
+ #
1032
+ # If your subnet has the `AssignIpv6AddressOnCreation` attribute set,
1033
+ # you can override that setting by specifying 0 as the IPv6 address
1034
+ # count.
1035
+ # @option options [Boolean] :dry_run
1036
+ # Checks whether you have the required permissions for the action,
1037
+ # without actually making the request, and provides an error response.
1038
+ # If you have the required permissions, the error response is
1039
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1033
1040
  # @return [NetworkInterface]
1034
1041
  def create_network_interface(options = {})
1035
1042
  options = options.merge(subnet_id: @id)
1036
- resp = Aws::Plugins::UserAgent.feature('resource') do
1043
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1037
1044
  @client.create_network_interface(options)
1038
1045
  end
1039
1046
  NetworkInterface.new(
@@ -1068,7 +1075,7 @@ module Aws::EC2
1068
1075
  def create_tags(options = {})
1069
1076
  batch = []
1070
1077
  options = Aws::Util.deep_merge(options, resources: [@id])
1071
- resp = Aws::Plugins::UserAgent.feature('resource') do
1078
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1072
1079
  @client.create_tags(options)
1073
1080
  end
1074
1081
  options[:tags].each do |t|
@@ -1115,7 +1122,7 @@ module Aws::EC2
1115
1122
  def delete_tags(options = {})
1116
1123
  batch = []
1117
1124
  options = Aws::Util.deep_merge(options, resources: [@id])
1118
- resp = Aws::Plugins::UserAgent.feature('resource') do
1125
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1119
1126
  @client.delete_tags(options)
1120
1127
  end
1121
1128
  options[:tags].each do |t|
@@ -1143,7 +1150,7 @@ module Aws::EC2
1143
1150
  # @return [EmptyStructure]
1144
1151
  def delete(options = {})
1145
1152
  options = options.merge(subnet_id: @id)
1146
- resp = Aws::Plugins::UserAgent.feature('resource') do
1153
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1147
1154
  @client.delete_subnet(options)
1148
1155
  end
1149
1156
  resp.data
@@ -1154,16 +1161,25 @@ module Aws::EC2
1154
1161
  # @example Request syntax with placeholder values
1155
1162
  #
1156
1163
  # instances = subnet.instances({
1164
+ # instance_ids: ["InstanceId"],
1165
+ # dry_run: false,
1157
1166
  # filters: [
1158
1167
  # {
1159
1168
  # name: "String",
1160
1169
  # values: ["String"],
1161
1170
  # },
1162
1171
  # ],
1163
- # instance_ids: ["InstanceId"],
1164
- # dry_run: false,
1165
1172
  # })
1166
1173
  # @param [Hash] options ({})
1174
+ # @option options [Array<String>] :instance_ids
1175
+ # The instance IDs.
1176
+ #
1177
+ # Default: Describes all your instances.
1178
+ # @option options [Boolean] :dry_run
1179
+ # Checks whether you have the required permissions for the operation,
1180
+ # without actually making the request, and provides an error response.
1181
+ # If you have the required permissions, the error response is
1182
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1167
1183
  # @option options [Array<Types::Filter>] :filters
1168
1184
  # The filters.
1169
1185
  #
@@ -1239,9 +1255,6 @@ module Aws::EC2
1239
1255
  # * `iam-instance-profile.id` - The instance profile associated with the
1240
1256
  # instance. Specified as an ID.
1241
1257
  #
1242
- # * `iam-instance-profile.name` - The instance profile associated with
1243
- # the instance. Specified as an name.
1244
- #
1245
1258
  # * `image-id` - The ID of the image used to launch the instance.
1246
1259
  #
1247
1260
  # * `instance-id` - The ID of the instance.
@@ -1432,6 +1445,13 @@ module Aws::EC2
1432
1445
  # * `network-interface.network-interface-id` - The ID of the network
1433
1446
  # interface.
1434
1447
  #
1448
+ # * `network-interface.operator.managed` - A Boolean that indicates
1449
+ # whether the instance has a managed network interface.
1450
+ #
1451
+ # * `network-interface.operator.principal` - The principal that manages
1452
+ # the network interface. Only valid for instances with managed network
1453
+ # interfaces, where `managed` is `true`.
1454
+ #
1435
1455
  # * `network-interface.outpost-arn` - The ARN of the Outpost.
1436
1456
  #
1437
1457
  # * `network-interface.owner-id` - The ID of the owner of the network
@@ -1471,6 +1491,16 @@ module Aws::EC2
1471
1491
  # * `network-interface.vpc-id` - The ID of the VPC for the network
1472
1492
  # interface.
1473
1493
  #
1494
+ # * `network-performance-options.bandwidth-weighting` - Where the
1495
+ # performance boost is applied, if applicable. Valid values:
1496
+ # `default`, `vpc-1`, `ebs-1`.
1497
+ #
1498
+ # * `operator.managed` - A Boolean that indicates whether this is a
1499
+ # managed instance.
1500
+ #
1501
+ # * `operator.principal` - The principal that manages the instance. Only
1502
+ # valid for managed instances, where `managed` is `true`.
1503
+ #
1474
1504
  # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost.
1475
1505
  #
1476
1506
  # * `owner-id` - The Amazon Web Services account ID of the instance
@@ -1511,6 +1541,10 @@ module Aws::EC2
1511
1541
  # (`ip-name` \| `resource-name`).
1512
1542
  #
1513
1543
  # * `private-ip-address` - The private IPv4 address of the instance.
1544
+ # This can only be used to filter by the primary IP address of the
1545
+ # network interface attached to the instance. To filter by additional
1546
+ # IP addresses assigned to the network interface, use the filter
1547
+ # `network-interface.addresses.private-ip-address`.
1514
1548
  #
1515
1549
  # * `product-code` - The product code associated with the AMI used to
1516
1550
  # launch the instance.
@@ -1589,15 +1623,6 @@ module Aws::EC2
1589
1623
  # (`paravirtual` \| `hvm`).
1590
1624
  #
1591
1625
  # * `vpc-id` - The ID of the VPC that the instance is running in.
1592
- # @option options [Array<String>] :instance_ids
1593
- # The instance IDs.
1594
- #
1595
- # Default: Describes all your instances.
1596
- # @option options [Boolean] :dry_run
1597
- # Checks whether you have the required permissions for the action,
1598
- # without actually making the request, and provides an error response.
1599
- # If you have the required permissions, the error response is
1600
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1601
1626
  # @return [Instance::Collection]
1602
1627
  def instances(options = {})
1603
1628
  batches = Enumerator.new do |y|
@@ -1605,7 +1630,7 @@ module Aws::EC2
1605
1630
  name: "subnet-id",
1606
1631
  values: [@id]
1607
1632
  }])
1608
- resp = Aws::Plugins::UserAgent.feature('resource') do
1633
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1609
1634
  @client.describe_instances(options)
1610
1635
  end
1611
1636
  resp.each_page do |page|
@@ -1653,11 +1678,11 @@ module Aws::EC2
1653
1678
  #
1654
1679
  # * `subnet-id` - The ID of the subnet in which the NAT gateway resides.
1655
1680
  #
1656
- # * `tag`:&lt;key&gt; - The key/value combination of a tag assigned to
1657
- # the resource. Use the tag key in the filter name and the tag value
1658
- # as the filter value. For example, to find all resources that have a
1659
- # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
1660
- # for the filter name and `TeamA` for the filter value.
1681
+ # * `tag` - The key/value combination of a tag assigned to the resource.
1682
+ # Use the tag key in the filter name and the tag value as the filter
1683
+ # value. For example, to find all resources that have a tag with the
1684
+ # key `Owner` and the value `TeamA`, specify `tag:Owner` for the
1685
+ # filter name and `TeamA` for the filter value.
1661
1686
  #
1662
1687
  # * `tag-key` - The key of a tag assigned to the resource. Use this
1663
1688
  # filter to find all resources assigned a tag with a specific key,
@@ -1673,7 +1698,7 @@ module Aws::EC2
1673
1698
  name: "subnet-id",
1674
1699
  values: [@id]
1675
1700
  }])
1676
- resp = Aws::Plugins::UserAgent.feature('resource') do
1701
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1677
1702
  @client.describe_nat_gateways(options)
1678
1703
  end
1679
1704
  resp.each_page do |page|
@@ -1694,16 +1719,25 @@ module Aws::EC2
1694
1719
  # @example Request syntax with placeholder values
1695
1720
  #
1696
1721
  # network_interfaces = subnet.network_interfaces({
1722
+ # dry_run: false,
1723
+ # network_interface_ids: ["NetworkInterfaceId"],
1697
1724
  # filters: [
1698
1725
  # {
1699
1726
  # name: "String",
1700
1727
  # values: ["String"],
1701
1728
  # },
1702
1729
  # ],
1703
- # dry_run: false,
1704
- # network_interface_ids: ["NetworkInterfaceId"],
1705
1730
  # })
1706
1731
  # @param [Hash] options ({})
1732
+ # @option options [Boolean] :dry_run
1733
+ # Checks whether you have the required permissions for the action,
1734
+ # without actually making the request, and provides an error response.
1735
+ # If you have the required permissions, the error response is
1736
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1737
+ # @option options [Array<String>] :network_interface_ids
1738
+ # The network interface IDs.
1739
+ #
1740
+ # Default: Describes all your network interfaces.
1707
1741
  # @option options [Array<Types::Filter>] :filters
1708
1742
  # One or more filters.
1709
1743
  #
@@ -1768,17 +1802,24 @@ module Aws::EC2
1768
1802
  #
1769
1803
  # * `interface-type` - The type of network interface
1770
1804
  # (`api_gateway_managed` \| `aws_codestar_connections_managed` \|
1771
- # `branch` \| `ec2_instance_connect_endpoint` \| `efa` \| `efs` \|
1772
- # `gateway_load_balancer` \| `gateway_load_balancer_endpoint` \|
1773
- # `global_accelerator_managed` \| `interface` \| `iot_rules_managed`
1774
- # \| `lambda` \| `load_balancer` \| `nat_gateway` \|
1775
- # `network_load_balancer` \| `quicksight` \| `transit_gateway` \|
1776
- # `trunk` \| `vpc_endpoint`).
1805
+ # `branch` \| `ec2_instance_connect_endpoint` \| `efa` \| `efa-only`
1806
+ # \| `efs` \| `gateway_load_balancer` \|
1807
+ # `gateway_load_balancer_endpoint` \| `global_accelerator_managed` \|
1808
+ # `interface` \| `iot_rules_managed` \| `lambda` \| `load_balancer` \|
1809
+ # `nat_gateway` \| `network_load_balancer` \| `quicksight` \|
1810
+ # `transit_gateway` \| `trunk` \| `vpc_endpoint`).
1777
1811
  #
1778
1812
  # * `mac-address` - The MAC address of the network interface.
1779
1813
  #
1780
1814
  # * `network-interface-id` - The ID of the network interface.
1781
1815
  #
1816
+ # * `operator.managed` - A Boolean that indicates whether this is a
1817
+ # managed network interface.
1818
+ #
1819
+ # * `operator.principal` - The principal that manages the network
1820
+ # interface. Only valid for managed network interfaces, where
1821
+ # `managed` is `true`.
1822
+ #
1782
1823
  # * `owner-id` - The Amazon Web Services account ID of the network
1783
1824
  # interface owner.
1784
1825
  #
@@ -1792,8 +1833,8 @@ module Aws::EC2
1792
1833
  # principal or service that created the network interface.
1793
1834
  #
1794
1835
  # * `requester-managed` - Indicates whether the network interface is
1795
- # being managed by an Amazon Web Service (for example, Amazon Web
1796
- # Services Management Console, Auto Scaling, and so on).
1836
+ # being managed by an Amazon Web Services service (for example, Amazon
1837
+ # Web Services Management Console, Auto Scaling, and so on).
1797
1838
  #
1798
1839
  # * `source-dest-check` - Indicates whether the network interface
1799
1840
  # performs source/destination checking. A value of `true` means
@@ -1819,15 +1860,6 @@ module Aws::EC2
1819
1860
  # regardless of the tag value.
1820
1861
  #
1821
1862
  # * `vpc-id` - The ID of the VPC for the network interface.
1822
- # @option options [Boolean] :dry_run
1823
- # Checks whether you have the required permissions for the action,
1824
- # without actually making the request, and provides an error response.
1825
- # If you have the required permissions, the error response is
1826
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1827
- # @option options [Array<String>] :network_interface_ids
1828
- # The network interface IDs.
1829
- #
1830
- # Default: Describes all your network interfaces.
1831
1863
  # @return [NetworkInterface::Collection]
1832
1864
  def network_interfaces(options = {})
1833
1865
  batches = Enumerator.new do |y|
@@ -1835,7 +1867,7 @@ module Aws::EC2
1835
1867
  name: "subnet-id",
1836
1868
  values: [@id]
1837
1869
  }])
1838
- resp = Aws::Plugins::UserAgent.feature('resource') do
1870
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
1839
1871
  @client.describe_network_interfaces(options)
1840
1872
  end
1841
1873
  resp.each_page do |page|