aws-sdk-eks 1.45.0 → 1.46.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.
@@ -10,6 +10,157 @@
10
10
  module Aws::EKS
11
11
  module Types
12
12
 
13
+ # An Amazon EKS add-on.
14
+ #
15
+ # @!attribute [rw] addon_name
16
+ # The name of the add-on.
17
+ # @return [String]
18
+ #
19
+ # @!attribute [rw] cluster_name
20
+ # The name of the cluster.
21
+ # @return [String]
22
+ #
23
+ # @!attribute [rw] status
24
+ # The status of the add-on.
25
+ # @return [String]
26
+ #
27
+ # @!attribute [rw] addon_version
28
+ # The version of the add-on.
29
+ # @return [String]
30
+ #
31
+ # @!attribute [rw] health
32
+ # An object that represents the health of the add-on.
33
+ # @return [Types::AddonHealth]
34
+ #
35
+ # @!attribute [rw] addon_arn
36
+ # The Amazon Resource Name (ARN) of the add-on.
37
+ # @return [String]
38
+ #
39
+ # @!attribute [rw] created_at
40
+ # The date and time that the add-on was created.
41
+ # @return [Time]
42
+ #
43
+ # @!attribute [rw] modified_at
44
+ # The date and time that the add-on was last modified.
45
+ # @return [Time]
46
+ #
47
+ # @!attribute [rw] service_account_role_arn
48
+ # The Amazon Resource Name (ARN) of the IAM role that is bound to the
49
+ # Kubernetes service account used by the add-on.
50
+ # @return [String]
51
+ #
52
+ # @!attribute [rw] tags
53
+ # The metadata that you apply to the cluster to assist with
54
+ # categorization and organization. Each tag consists of a key and an
55
+ # optional value, both of which you define. Cluster tags do not
56
+ # propagate to any other resources associated with the cluster.
57
+ # @return [Hash<String,String>]
58
+ #
59
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Addon AWS API Documentation
60
+ #
61
+ class Addon < Struct.new(
62
+ :addon_name,
63
+ :cluster_name,
64
+ :status,
65
+ :addon_version,
66
+ :health,
67
+ :addon_arn,
68
+ :created_at,
69
+ :modified_at,
70
+ :service_account_role_arn,
71
+ :tags)
72
+ SENSITIVE = []
73
+ include Aws::Structure
74
+ end
75
+
76
+ # The health of the add-on.
77
+ #
78
+ # @!attribute [rw] issues
79
+ # An object that represents the add-on's health issues.
80
+ # @return [Array<Types::AddonIssue>]
81
+ #
82
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonHealth AWS API Documentation
83
+ #
84
+ class AddonHealth < Struct.new(
85
+ :issues)
86
+ SENSITIVE = []
87
+ include Aws::Structure
88
+ end
89
+
90
+ # Information about an add-on.
91
+ #
92
+ # @!attribute [rw] addon_name
93
+ # The name of the add-on.
94
+ # @return [String]
95
+ #
96
+ # @!attribute [rw] type
97
+ # The type of the add-on.
98
+ # @return [String]
99
+ #
100
+ # @!attribute [rw] addon_versions
101
+ # An object that represents information about available add-on
102
+ # versions and compatible Kubernetes versions.
103
+ # @return [Array<Types::AddonVersionInfo>]
104
+ #
105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonInfo AWS API Documentation
106
+ #
107
+ class AddonInfo < Struct.new(
108
+ :addon_name,
109
+ :type,
110
+ :addon_versions)
111
+ SENSITIVE = []
112
+ include Aws::Structure
113
+ end
114
+
115
+ # An issue related to an add-on.
116
+ #
117
+ # @!attribute [rw] code
118
+ # A code that describes the type of issue.
119
+ # @return [String]
120
+ #
121
+ # @!attribute [rw] message
122
+ # A message that provides details about the issue and what might cause
123
+ # it.
124
+ # @return [String]
125
+ #
126
+ # @!attribute [rw] resource_ids
127
+ # The resource IDs of the issue.
128
+ # @return [Array<String>]
129
+ #
130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonIssue AWS API Documentation
131
+ #
132
+ class AddonIssue < Struct.new(
133
+ :code,
134
+ :message,
135
+ :resource_ids)
136
+ SENSITIVE = []
137
+ include Aws::Structure
138
+ end
139
+
140
+ # Information about an add-on version.
141
+ #
142
+ # @!attribute [rw] addon_version
143
+ # The version of the add-on.
144
+ # @return [String]
145
+ #
146
+ # @!attribute [rw] architecture
147
+ # The architectures that the version supports.
148
+ # @return [Array<String>]
149
+ #
150
+ # @!attribute [rw] compatibilities
151
+ # An object that represents the compatibilities of a version.
152
+ # @return [Array<Types::Compatibility>]
153
+ #
154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonVersionInfo AWS API Documentation
155
+ #
156
+ class AddonVersionInfo < Struct.new(
157
+ :addon_version,
158
+ :architecture,
159
+ :compatibilities)
160
+ SENSITIVE = []
161
+ include Aws::Structure
162
+ end
163
+
13
164
  # An Auto Scaling group that is associated with an Amazon EKS managed
14
165
  # node group.
15
166
  #
@@ -71,6 +222,9 @@ module Aws::EKS
71
222
  # The Amazon EKS managed node group associated with the exception.
72
223
  # @return [String]
73
224
  #
225
+ # @!attribute [rw] addon_name
226
+ # @return [String]
227
+ #
74
228
  # @!attribute [rw] message
75
229
  # @return [String]
76
230
  #
@@ -79,6 +233,7 @@ module Aws::EKS
79
233
  class ClientException < Struct.new(
80
234
  :cluster_name,
81
235
  :nodegroup_name,
236
+ :addon_name,
82
237
  :message)
83
238
  SENSITIVE = []
84
239
  include Aws::Structure
@@ -127,7 +282,7 @@ module Aws::EKS
127
282
  # @return [Types::VpcConfigResponse]
128
283
  #
129
284
  # @!attribute [rw] kubernetes_network_config
130
- # Network configuration settings for your cluster.
285
+ # The Kubernetes network configuration for the cluster.
131
286
  # @return [Types::KubernetesNetworkConfigResponse]
132
287
  #
133
288
  # @!attribute [rw] logging
@@ -195,6 +350,133 @@ module Aws::EKS
195
350
  include Aws::Structure
196
351
  end
197
352
 
353
+ # Compatibility information.
354
+ #
355
+ # @!attribute [rw] cluster_version
356
+ # The supported Kubernetes version of the cluster.
357
+ # @return [String]
358
+ #
359
+ # @!attribute [rw] platform_versions
360
+ # The supported compute platform.
361
+ # @return [Array<String>]
362
+ #
363
+ # @!attribute [rw] default_version
364
+ # The supported default version.
365
+ # @return [Boolean]
366
+ #
367
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Compatibility AWS API Documentation
368
+ #
369
+ class Compatibility < Struct.new(
370
+ :cluster_version,
371
+ :platform_versions,
372
+ :default_version)
373
+ SENSITIVE = []
374
+ include Aws::Structure
375
+ end
376
+
377
+ # @note When making an API call, you may pass CreateAddonRequest
378
+ # data as a hash:
379
+ #
380
+ # {
381
+ # cluster_name: "ClusterName", # required
382
+ # addon_name: "String", # required
383
+ # addon_version: "String",
384
+ # service_account_role_arn: "RoleArn",
385
+ # resolve_conflicts: "OVERWRITE", # accepts OVERWRITE, NONE
386
+ # client_request_token: "String",
387
+ # tags: {
388
+ # "TagKey" => "TagValue",
389
+ # },
390
+ # }
391
+ #
392
+ # @!attribute [rw] cluster_name
393
+ # The name of the cluster to create the add-on for.
394
+ # @return [String]
395
+ #
396
+ # @!attribute [rw] addon_name
397
+ # The name of the add-on. The name must match one of the names
398
+ # returned by [ `ListAddons` ][1].
399
+ #
400
+ #
401
+ #
402
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
403
+ # @return [String]
404
+ #
405
+ # @!attribute [rw] addon_version
406
+ # The version of the add-on. The version must match one of the
407
+ # versions returned by [ `DescribeAddonVersions` ][1].
408
+ #
409
+ #
410
+ #
411
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html
412
+ # @return [String]
413
+ #
414
+ # @!attribute [rw] service_account_role_arn
415
+ # The Amazon Resource Name (ARN) of an existing IAM role to bind to
416
+ # the add-on's service account. The role must be assigned the IAM
417
+ # permissions required by the add-on. If you don't specify an
418
+ # existing IAM role, then the add-on uses the permissions assigned to
419
+ # the node IAM role. For more information, see [Amazon EKS node IAM
420
+ # role][1] in the *Amazon EKS User Guide*.
421
+ #
422
+ # <note markdown="1"> To specify an existing IAM role, you must have an IAM OpenID Connect
423
+ # (OIDC) provider created for your cluster. For more information, see
424
+ # [Enabling IAM roles for service accounts on your cluster][2] in the
425
+ # *Amazon EKS User Guide*.
426
+ #
427
+ # </note>
428
+ #
429
+ #
430
+ #
431
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html
432
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html
433
+ # @return [String]
434
+ #
435
+ # @!attribute [rw] resolve_conflicts
436
+ # How to resolve parameter value conflicts when migrating an existing
437
+ # add-on to an Amazon EKS add-on.
438
+ # @return [String]
439
+ #
440
+ # @!attribute [rw] client_request_token
441
+ # A unique, case-sensitive identifier that you provide to ensure the
442
+ # idempotency of the request.
443
+ #
444
+ # **A suitable default value is auto-generated.** You should normally
445
+ # not need to pass this option.
446
+ # @return [String]
447
+ #
448
+ # @!attribute [rw] tags
449
+ # The metadata to apply to the cluster to assist with categorization
450
+ # and organization. Each tag consists of a key and an optional value,
451
+ # both of which you define.
452
+ # @return [Hash<String,String>]
453
+ #
454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddonRequest AWS API Documentation
455
+ #
456
+ class CreateAddonRequest < Struct.new(
457
+ :cluster_name,
458
+ :addon_name,
459
+ :addon_version,
460
+ :service_account_role_arn,
461
+ :resolve_conflicts,
462
+ :client_request_token,
463
+ :tags)
464
+ SENSITIVE = []
465
+ include Aws::Structure
466
+ end
467
+
468
+ # @!attribute [rw] addon
469
+ # An Amazon EKS add-on.
470
+ # @return [Types::Addon]
471
+ #
472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddonResponse AWS API Documentation
473
+ #
474
+ class CreateAddonResponse < Struct.new(
475
+ :addon)
476
+ SENSITIVE = []
477
+ include Aws::Structure
478
+ end
479
+
198
480
  # @note When making an API call, you may pass CreateClusterRequest
199
481
  # data as a hash:
200
482
  #
@@ -470,6 +752,7 @@ module Aws::EKS
470
752
  # version: "String",
471
753
  # id: "String",
472
754
  # },
755
+ # capacity_type: "ON_DEMAND", # accepts ON_DEMAND, SPOT
473
756
  # version: "String",
474
757
  # release_version: "String",
475
758
  # }
@@ -516,25 +799,31 @@ module Aws::EKS
516
799
  # @return [Array<String>]
517
800
  #
518
801
  # @!attribute [rw] instance_types
519
- # The instance type to use for your node group. You can specify a
520
- # single instance type for a node group. The default value for
521
- # `instanceTypes` is `t3.medium`. If you choose a GPU instance type,
522
- # be sure to specify `AL2_x86_64_GPU` with the `amiType` parameter. If
523
- # you specify `launchTemplate`, then don't specify `instanceTypes`,
524
- # or the node group deployment will fail. For more information about
525
- # using launch templates with Amazon EKS, see [Launch template
526
- # support][1] in the Amazon EKS User Guide.
527
- #
528
- #
529
- #
530
- # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
802
+ # Specify the instance types for a node group. If you specify a GPU
803
+ # instance type, be sure to specify `AL2_x86_64_GPU` with the
804
+ # `amiType` parameter. If you specify `launchTemplate`, then you can
805
+ # specify zero or one instance type in your launch template *or* you
806
+ # can specify 0-20 instance types for `instanceTypes`. If however, you
807
+ # specify an instance type in your launch template *and* specify any
808
+ # `instanceTypes`, the node group deployment will fail. If you don't
809
+ # specify an instance type in a launch template or for
810
+ # `instanceTypes`, then `t3.medium` is used, by default. If you
811
+ # specify `Spot` for `capacityType`, then we recommend specifying
812
+ # multiple values for `instanceTypes`. For more information, see
813
+ # [Managed node group capacity types][1] and [Launch template
814
+ # support][2] in the *Amazon EKS User Guide*.
815
+ #
816
+ #
817
+ #
818
+ # [1]: https://docs.aws.amazon.com/managed-node-groups.html#managed-node-group-capacity-types
819
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
531
820
  # @return [Array<String>]
532
821
  #
533
822
  # @!attribute [rw] ami_type
534
823
  # The AMI type for your node group. GPU instance types should use the
535
824
  # `AL2_x86_64_GPU` AMI type. Non-GPU instances should use the
536
825
  # `AL2_x86_64` AMI type. Arm instances should use the `AL2_ARM_64` AMI
537
- # type. All types use the Amazon EKS-optimized Amazon Linux 2 AMI. If
826
+ # type. All types use the Amazon EKS optimized Amazon Linux 2 AMI. If
538
827
  # you specify `launchTemplate`, and your launch template uses a custom
539
828
  # AMI, then don't specify `amiType`, or the node group deployment
540
829
  # will fail. For more information about using launch templates with
@@ -608,6 +897,10 @@ module Aws::EKS
608
897
  # meets the requirements in `launchTemplateSpecification`.
609
898
  # @return [Types::LaunchTemplateSpecification]
610
899
  #
900
+ # @!attribute [rw] capacity_type
901
+ # The capacity type for your node group.
902
+ # @return [String]
903
+ #
611
904
  # @!attribute [rw] version
612
905
  # The Kubernetes version to use for your managed nodes. By default,
613
906
  # the Kubernetes version of the cluster is used, and this is the only
@@ -623,15 +916,15 @@ module Aws::EKS
623
916
  # @return [String]
624
917
  #
625
918
  # @!attribute [rw] release_version
626
- # The AMI version of the Amazon EKS-optimized AMI to use with your
919
+ # The AMI version of the Amazon EKS optimized AMI to use with your
627
920
  # node group. By default, the latest available AMI version for the
628
921
  # node group's current Kubernetes version is used. For more
629
- # information, see [Amazon EKS-Optimized Linux AMI Versions][1] in the
630
- # *Amazon EKS User Guide*. If you specify `launchTemplate`, and your
631
- # launch template uses a custom AMI, then don't specify
632
- # `releaseVersion`, or the node group deployment will fail. For more
633
- # information about using launch templates with Amazon EKS, see
634
- # [Launch template support][2] in the Amazon EKS User Guide.
922
+ # information, see [Amazon EKS optimized Amazon Linux 2 AMI
923
+ # versions][1] in the *Amazon EKS User Guide*. If you specify
924
+ # `launchTemplate`, and your launch template uses a custom AMI, then
925
+ # don't specify `releaseVersion`, or the node group deployment will
926
+ # fail. For more information about using launch templates with Amazon
927
+ # EKS, see [Launch template support][2] in the Amazon EKS User Guide.
635
928
  #
636
929
  #
637
930
  #
@@ -655,6 +948,7 @@ module Aws::EKS
655
948
  :tags,
656
949
  :client_request_token,
657
950
  :launch_template,
951
+ :capacity_type,
658
952
  :version,
659
953
  :release_version)
660
954
  SENSITIVE = []
@@ -673,6 +967,48 @@ module Aws::EKS
673
967
  include Aws::Structure
674
968
  end
675
969
 
970
+ # @note When making an API call, you may pass DeleteAddonRequest
971
+ # data as a hash:
972
+ #
973
+ # {
974
+ # cluster_name: "ClusterName", # required
975
+ # addon_name: "String", # required
976
+ # }
977
+ #
978
+ # @!attribute [rw] cluster_name
979
+ # The name of the cluster to delete the add-on from.
980
+ # @return [String]
981
+ #
982
+ # @!attribute [rw] addon_name
983
+ # The name of the add-on. The name must match one of the names
984
+ # returned by [ `ListAddons` ][1].
985
+ #
986
+ #
987
+ #
988
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
989
+ # @return [String]
990
+ #
991
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddonRequest AWS API Documentation
992
+ #
993
+ class DeleteAddonRequest < Struct.new(
994
+ :cluster_name,
995
+ :addon_name)
996
+ SENSITIVE = []
997
+ include Aws::Structure
998
+ end
999
+
1000
+ # @!attribute [rw] addon
1001
+ # An Amazon EKS add-on.
1002
+ # @return [Types::Addon]
1003
+ #
1004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddonResponse AWS API Documentation
1005
+ #
1006
+ class DeleteAddonResponse < Struct.new(
1007
+ :addon)
1008
+ SENSITIVE = []
1009
+ include Aws::Structure
1010
+ end
1011
+
676
1012
  # @note When making an API call, you may pass DeleteClusterRequest
677
1013
  # data as a hash:
678
1014
  #
@@ -780,6 +1116,128 @@ module Aws::EKS
780
1116
  include Aws::Structure
781
1117
  end
782
1118
 
1119
+ # @note When making an API call, you may pass DescribeAddonRequest
1120
+ # data as a hash:
1121
+ #
1122
+ # {
1123
+ # cluster_name: "ClusterName", # required
1124
+ # addon_name: "String", # required
1125
+ # }
1126
+ #
1127
+ # @!attribute [rw] cluster_name
1128
+ # The name of the cluster.
1129
+ # @return [String]
1130
+ #
1131
+ # @!attribute [rw] addon_name
1132
+ # The name of the add-on. The name must match one of the names
1133
+ # returned by [ `ListAddons` ][1].
1134
+ #
1135
+ #
1136
+ #
1137
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
1138
+ # @return [String]
1139
+ #
1140
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonRequest AWS API Documentation
1141
+ #
1142
+ class DescribeAddonRequest < Struct.new(
1143
+ :cluster_name,
1144
+ :addon_name)
1145
+ SENSITIVE = []
1146
+ include Aws::Structure
1147
+ end
1148
+
1149
+ # @!attribute [rw] addon
1150
+ # An Amazon EKS add-on.
1151
+ # @return [Types::Addon]
1152
+ #
1153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonResponse AWS API Documentation
1154
+ #
1155
+ class DescribeAddonResponse < Struct.new(
1156
+ :addon)
1157
+ SENSITIVE = []
1158
+ include Aws::Structure
1159
+ end
1160
+
1161
+ # @note When making an API call, you may pass DescribeAddonVersionsRequest
1162
+ # data as a hash:
1163
+ #
1164
+ # {
1165
+ # kubernetes_version: "String",
1166
+ # max_results: 1,
1167
+ # next_token: "String",
1168
+ # addon_name: "String",
1169
+ # }
1170
+ #
1171
+ # @!attribute [rw] kubernetes_version
1172
+ # The Kubernetes versions that the add-on can be used with.
1173
+ # @return [String]
1174
+ #
1175
+ # @!attribute [rw] max_results
1176
+ # The maximum number of results to return.
1177
+ # @return [Integer]
1178
+ #
1179
+ # @!attribute [rw] next_token
1180
+ # The `nextToken` value returned from a previous paginated
1181
+ # `DescribeAddonVersionsRequest` where `maxResults` was used and the
1182
+ # results exceeded the value of that parameter. Pagination continues
1183
+ # from the end of the previous results that returned the `nextToken`
1184
+ # value.
1185
+ #
1186
+ # <note markdown="1"> This token should be treated as an opaque identifier that is used
1187
+ # only to retrieve the next items in a list and not for other
1188
+ # programmatic purposes.
1189
+ #
1190
+ # </note>
1191
+ # @return [String]
1192
+ #
1193
+ # @!attribute [rw] addon_name
1194
+ # The name of the add-on. The name must match one of the names
1195
+ # returned by [ `ListAddons` ][1].
1196
+ #
1197
+ #
1198
+ #
1199
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
1200
+ # @return [String]
1201
+ #
1202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersionsRequest AWS API Documentation
1203
+ #
1204
+ class DescribeAddonVersionsRequest < Struct.new(
1205
+ :kubernetes_version,
1206
+ :max_results,
1207
+ :next_token,
1208
+ :addon_name)
1209
+ SENSITIVE = []
1210
+ include Aws::Structure
1211
+ end
1212
+
1213
+ # @!attribute [rw] addons
1214
+ # The list of available versions with Kubernetes version
1215
+ # compatibility.
1216
+ # @return [Array<Types::AddonInfo>]
1217
+ #
1218
+ # @!attribute [rw] next_token
1219
+ # The `nextToken` value returned from a previous paginated
1220
+ # `DescribeAddonVersionsResponse` where `maxResults` was used and the
1221
+ # results exceeded the value of that parameter. Pagination continues
1222
+ # from the end of the previous results that returned the `nextToken`
1223
+ # value.
1224
+ #
1225
+ # <note markdown="1"> This token should be treated as an opaque identifier that is used
1226
+ # only to retrieve the next items in a list and not for other
1227
+ # programmatic purposes.
1228
+ #
1229
+ # </note>
1230
+ # @return [String]
1231
+ #
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersionsResponse AWS API Documentation
1233
+ #
1234
+ class DescribeAddonVersionsResponse < Struct.new(
1235
+ :addons,
1236
+ :next_token)
1237
+ SENSITIVE = []
1238
+ include Aws::Structure
1239
+ end
1240
+
783
1241
  # @note When making an API call, you may pass DescribeClusterRequest
784
1242
  # data as a hash:
785
1243
  #
@@ -893,6 +1351,7 @@ module Aws::EKS
893
1351
  # name: "String", # required
894
1352
  # update_id: "String", # required
895
1353
  # nodegroup_name: "String",
1354
+ # addon_name: "String",
896
1355
  # }
897
1356
  #
898
1357
  # @!attribute [rw] name
@@ -907,12 +1366,22 @@ module Aws::EKS
907
1366
  # The name of the Amazon EKS node group associated with the update.
908
1367
  # @return [String]
909
1368
  #
1369
+ # @!attribute [rw] addon_name
1370
+ # The name of the add-on. The name must match one of the names
1371
+ # returned by [ `ListAddons` ][1].
1372
+ #
1373
+ #
1374
+ #
1375
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
1376
+ # @return [String]
1377
+ #
910
1378
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdateRequest AWS API Documentation
911
1379
  #
912
1380
  class DescribeUpdateRequest < Struct.new(
913
1381
  :name,
914
1382
  :update_id,
915
- :nodegroup_name)
1383
+ :nodegroup_name,
1384
+ :addon_name)
916
1385
  SENSITIVE = []
917
1386
  include Aws::Structure
918
1387
  end
@@ -1140,6 +1609,9 @@ module Aws::EKS
1140
1609
  # The Fargate profile associated with the exception.
1141
1610
  # @return [String]
1142
1611
  #
1612
+ # @!attribute [rw] addon_name
1613
+ # @return [String]
1614
+ #
1143
1615
  # @!attribute [rw] message
1144
1616
  # @return [String]
1145
1617
  #
@@ -1149,6 +1621,7 @@ module Aws::EKS
1149
1621
  :cluster_name,
1150
1622
  :nodegroup_name,
1151
1623
  :fargate_profile_name,
1624
+ :addon_name,
1152
1625
  :message)
1153
1626
  SENSITIVE = []
1154
1627
  include Aws::Structure
@@ -1165,6 +1638,9 @@ module Aws::EKS
1165
1638
  # The Amazon EKS managed node group associated with the exception.
1166
1639
  # @return [String]
1167
1640
  #
1641
+ # @!attribute [rw] addon_name
1642
+ # @return [String]
1643
+ #
1168
1644
  # @!attribute [rw] message
1169
1645
  # @return [String]
1170
1646
  #
@@ -1173,6 +1649,7 @@ module Aws::EKS
1173
1649
  class InvalidRequestException < Struct.new(
1174
1650
  :cluster_name,
1175
1651
  :nodegroup_name,
1652
+ :addon_name,
1176
1653
  :message)
1177
1654
  SENSITIVE = []
1178
1655
  include Aws::Structure
@@ -1183,16 +1660,21 @@ module Aws::EKS
1183
1660
  # @!attribute [rw] code
1184
1661
  # A brief description of the error.
1185
1662
  #
1663
+ # * **AccessDenied**\: Amazon EKS or one or more of your managed nodes
1664
+ # is failing to authenticate or authorize with your Kubernetes
1665
+ # cluster API server.
1666
+ #
1667
+ # * **AsgInstanceLaunchFailures**\: Your Auto Scaling group is
1668
+ # experiencing failures while attempting to launch instances.
1669
+ #
1186
1670
  # * **AutoScalingGroupNotFound**\: We couldn't find the Auto Scaling
1187
1671
  # group associated with the managed node group. You may be able to
1188
1672
  # recreate an Auto Scaling group with the same settings to recover.
1189
1673
  #
1190
- # * **Ec2SecurityGroupNotFound**\: We couldn't find the cluster
1191
- # security group for the cluster. You must recreate your cluster.
1192
- #
1193
- # * **Ec2SecurityGroupDeletionFailure**\: We could not delete the
1194
- # remote access security group for your managed node group. Remove
1195
- # any dependencies from the security group.
1674
+ # * **ClusterUnreachable**\: Amazon EKS or one or more of your managed
1675
+ # nodes is unable to to communicate with your Kubernetes cluster API
1676
+ # server. This can happen if there are network disruptions or if API
1677
+ # servers are timing out processing requests.
1196
1678
  #
1197
1679
  # * **Ec2LaunchTemplateNotFound**\: We couldn't find the Amazon EC2
1198
1680
  # launch template for your managed node group. You may be able to
@@ -1203,6 +1685,13 @@ module Aws::EKS
1203
1685
  # version that Amazon EKS created. You may be able to revert to the
1204
1686
  # version that Amazon EKS created to recover.
1205
1687
  #
1688
+ # * **Ec2SecurityGroupDeletionFailure**\: We could not delete the
1689
+ # remote access security group for your managed node group. Remove
1690
+ # any dependencies from the security group.
1691
+ #
1692
+ # * **Ec2SecurityGroupNotFound**\: We couldn't find the cluster
1693
+ # security group for the cluster. You must recreate your cluster.
1694
+ #
1206
1695
  # * **Ec2SubnetInvalidConfiguration**\: One or more Amazon EC2 subnets
1207
1696
  # specified for a node group do not automatically assign public IP
1208
1697
  # addresses to instances launched into it. If you want your
@@ -1219,14 +1708,6 @@ module Aws::EKS
1219
1708
  # managed node group. You may be able to recreate an IAM role with
1220
1709
  # the same settings to recover.
1221
1710
  #
1222
- # * **AsgInstanceLaunchFailures**\: Your Auto Scaling group is
1223
- # experiencing failures while attempting to launch instances.
1224
- #
1225
- # * **NodeCreationFailure**\: Your launched instances are unable to
1226
- # register with your Amazon EKS cluster. Common causes of this
1227
- # failure are insufficient [worker node IAM role][2] permissions or
1228
- # lack of outbound internet access for the nodes.
1229
- #
1230
1711
  # * **InstanceLimitExceeded**\: Your AWS account is unable to launch
1231
1712
  # any more instances of the specified instance type. You may be able
1232
1713
  # to request an Amazon EC2 instance limit increase to recover.
@@ -1235,12 +1716,14 @@ module Aws::EKS
1235
1716
  # associated with your managed node group does not have enough
1236
1717
  # available IP addresses for new nodes.
1237
1718
  #
1238
- # * **AccessDenied**\: Amazon EKS or one or more of your managed nodes
1239
- # is unable to communicate with your cluster API server.
1240
- #
1241
1719
  # * **InternalFailure**\: These errors are usually caused by an Amazon
1242
1720
  # EKS server-side issue.
1243
1721
  #
1722
+ # * **NodeCreationFailure**\: Your launched instances are unable to
1723
+ # register with your Amazon EKS cluster. Common causes of this
1724
+ # failure are insufficient [worker node IAM role][2] permissions or
1725
+ # lack of outbound internet access for the nodes.
1726
+ #
1244
1727
  #
1245
1728
  #
1246
1729
  # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#subnet-public-ip
@@ -1306,10 +1789,11 @@ module Aws::EKS
1306
1789
  #
1307
1790
  # @!attribute [rw] service_ipv_4_cidr
1308
1791
  # The CIDR block that Kubernetes service IP addresses are assigned
1309
- # from. If you didn't specify a CIDR block, then Kubernetes assigns
1310
- # addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR
1311
- # blocks. If this was specified, then it was specified when the
1312
- # cluster was created and it cannot be changed.
1792
+ # from. If you didn't specify a CIDR block when you created the
1793
+ # cluster, then Kubernetes assigns addresses from either the
1794
+ # 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this was specified,
1795
+ # then it was specified when the cluster was created and it cannot be
1796
+ # changed.
1313
1797
  # @return [String]
1314
1798
  #
1315
1799
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/KubernetesNetworkConfigResponse AWS API Documentation
@@ -1374,6 +1858,80 @@ module Aws::EKS
1374
1858
  include Aws::Structure
1375
1859
  end
1376
1860
 
1861
+ # @note When making an API call, you may pass ListAddonsRequest
1862
+ # data as a hash:
1863
+ #
1864
+ # {
1865
+ # cluster_name: "ClusterName", # required
1866
+ # max_results: 1,
1867
+ # next_token: "String",
1868
+ # }
1869
+ #
1870
+ # @!attribute [rw] cluster_name
1871
+ # The name of the cluster.
1872
+ # @return [String]
1873
+ #
1874
+ # @!attribute [rw] max_results
1875
+ # The maximum number of add-on results returned by `ListAddonsRequest`
1876
+ # in paginated output. When you use this parameter,
1877
+ # `ListAddonsRequest` returns only `maxResults` results in a single
1878
+ # page along with a `nextToken` response element. You can see the
1879
+ # remaining results of the initial request by sending another
1880
+ # `ListAddonsRequest` request with the returned `nextToken` value.
1881
+ # This value can be between 1 and 100. If you don't use this
1882
+ # parameter, `ListAddonsRequest` returns up to 100 results and a
1883
+ # `nextToken` value, if applicable.
1884
+ # @return [Integer]
1885
+ #
1886
+ # @!attribute [rw] next_token
1887
+ # The `nextToken` value returned from a previous paginated
1888
+ # `ListAddonsRequest` where `maxResults` was used and the results
1889
+ # exceeded the value of that parameter. Pagination continues from the
1890
+ # end of the previous results that returned the `nextToken` value.
1891
+ #
1892
+ # <note markdown="1"> This token should be treated as an opaque identifier that is used
1893
+ # only to retrieve the next items in a list and not for other
1894
+ # programmatic purposes.
1895
+ #
1896
+ # </note>
1897
+ # @return [String]
1898
+ #
1899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddonsRequest AWS API Documentation
1900
+ #
1901
+ class ListAddonsRequest < Struct.new(
1902
+ :cluster_name,
1903
+ :max_results,
1904
+ :next_token)
1905
+ SENSITIVE = []
1906
+ include Aws::Structure
1907
+ end
1908
+
1909
+ # @!attribute [rw] addons
1910
+ # A list of available add-ons.
1911
+ # @return [Array<String>]
1912
+ #
1913
+ # @!attribute [rw] next_token
1914
+ # The `nextToken` value returned from a previous paginated
1915
+ # `ListAddonsResponse` where `maxResults` was used and the results
1916
+ # exceeded the value of that parameter. Pagination continues from the
1917
+ # end of the previous results that returned the `nextToken` value.
1918
+ #
1919
+ # <note markdown="1"> This token should be treated as an opaque identifier that is used
1920
+ # only to retrieve the next items in a list and not for other
1921
+ # programmatic purposes.
1922
+ #
1923
+ # </note>
1924
+ # @return [String]
1925
+ #
1926
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddonsResponse AWS API Documentation
1927
+ #
1928
+ class ListAddonsResponse < Struct.new(
1929
+ :addons,
1930
+ :next_token)
1931
+ SENSITIVE = []
1932
+ include Aws::Structure
1933
+ end
1934
+
1377
1935
  # @note When making an API call, you may pass ListClustersRequest
1378
1936
  # data as a hash:
1379
1937
  #
@@ -1606,6 +2164,7 @@ module Aws::EKS
1606
2164
  # {
1607
2165
  # name: "String", # required
1608
2166
  # nodegroup_name: "String",
2167
+ # addon_name: "String",
1609
2168
  # next_token: "String",
1610
2169
  # max_results: 1,
1611
2170
  # }
@@ -1618,6 +2177,10 @@ module Aws::EKS
1618
2177
  # The name of the Amazon EKS managed node group to list updates for.
1619
2178
  # @return [String]
1620
2179
  #
2180
+ # @!attribute [rw] addon_name
2181
+ # The names of the installed add-ons that have available updates.
2182
+ # @return [String]
2183
+ #
1621
2184
  # @!attribute [rw] next_token
1622
2185
  # The `nextToken` value returned from a previous paginated
1623
2186
  # `ListUpdates` request where `maxResults` was used and the results
@@ -1641,6 +2204,7 @@ module Aws::EKS
1641
2204
  class ListUpdatesRequest < Struct.new(
1642
2205
  :name,
1643
2206
  :nodegroup_name,
2207
+ :addon_name,
1644
2208
  :next_token,
1645
2209
  :max_results)
1646
2210
  SENSITIVE = []
@@ -1748,7 +2312,7 @@ module Aws::EKS
1748
2312
  # If the node group was deployed using a launch template with a custom
1749
2313
  # AMI, then this is the AMI ID that was specified in the launch
1750
2314
  # template. For node groups that weren't deployed using a launch
1751
- # template, this is the version of the Amazon EKS-optimized AMI that
2315
+ # template, this is the version of the Amazon EKS optimized AMI that
1752
2316
  # the node group was deployed with.
1753
2317
  # @return [String]
1754
2318
  #
@@ -1766,6 +2330,10 @@ module Aws::EKS
1766
2330
  # The current status of the managed node group.
1767
2331
  # @return [String]
1768
2332
  #
2333
+ # @!attribute [rw] capacity_type
2334
+ # The capacity type of your managed node group.
2335
+ # @return [String]
2336
+ #
1769
2337
  # @!attribute [rw] scaling_config
1770
2338
  # The scaling configuration details for the Auto Scaling group that is
1771
2339
  # associated with your node group.
@@ -1853,6 +2421,7 @@ module Aws::EKS
1853
2421
  :created_at,
1854
2422
  :modified_at,
1855
2423
  :status,
2424
+ :capacity_type,
1856
2425
  :scaling_config,
1857
2426
  :instance_types,
1858
2427
  :subnets,
@@ -2062,6 +2631,9 @@ module Aws::EKS
2062
2631
  # The Amazon EKS managed node group associated with the exception.
2063
2632
  # @return [String]
2064
2633
  #
2634
+ # @!attribute [rw] addon_name
2635
+ # @return [String]
2636
+ #
2065
2637
  # @!attribute [rw] message
2066
2638
  # @return [String]
2067
2639
  #
@@ -2070,6 +2642,7 @@ module Aws::EKS
2070
2642
  class ResourceInUseException < Struct.new(
2071
2643
  :cluster_name,
2072
2644
  :nodegroup_name,
2645
+ :addon_name,
2073
2646
  :message)
2074
2647
  SENSITIVE = []
2075
2648
  include Aws::Structure
@@ -2115,6 +2688,9 @@ module Aws::EKS
2115
2688
  # The Fargate profile associated with the exception.
2116
2689
  # @return [String]
2117
2690
  #
2691
+ # @!attribute [rw] addon_name
2692
+ # @return [String]
2693
+ #
2118
2694
  # @!attribute [rw] message
2119
2695
  # @return [String]
2120
2696
  #
@@ -2124,6 +2700,7 @@ module Aws::EKS
2124
2700
  :cluster_name,
2125
2701
  :nodegroup_name,
2126
2702
  :fargate_profile_name,
2703
+ :addon_name,
2127
2704
  :message)
2128
2705
  SENSITIVE = []
2129
2706
  include Aws::Structure
@@ -2139,6 +2716,9 @@ module Aws::EKS
2139
2716
  # The Amazon EKS managed node group associated with the exception.
2140
2717
  # @return [String]
2141
2718
  #
2719
+ # @!attribute [rw] addon_name
2720
+ # @return [String]
2721
+ #
2142
2722
  # @!attribute [rw] message
2143
2723
  # @return [String]
2144
2724
  #
@@ -2147,6 +2727,7 @@ module Aws::EKS
2147
2727
  class ServerException < Struct.new(
2148
2728
  :cluster_name,
2149
2729
  :nodegroup_name,
2730
+ :addon_name,
2150
2731
  :message)
2151
2732
  SENSITIVE = []
2152
2733
  include Aws::Structure
@@ -2302,6 +2883,99 @@ module Aws::EKS
2302
2883
  include Aws::Structure
2303
2884
  end
2304
2885
 
2886
+ # @note When making an API call, you may pass UpdateAddonRequest
2887
+ # data as a hash:
2888
+ #
2889
+ # {
2890
+ # cluster_name: "ClusterName", # required
2891
+ # addon_name: "String", # required
2892
+ # addon_version: "String",
2893
+ # service_account_role_arn: "RoleArn",
2894
+ # resolve_conflicts: "OVERWRITE", # accepts OVERWRITE, NONE
2895
+ # client_request_token: "String",
2896
+ # }
2897
+ #
2898
+ # @!attribute [rw] cluster_name
2899
+ # The name of the cluster.
2900
+ # @return [String]
2901
+ #
2902
+ # @!attribute [rw] addon_name
2903
+ # The name of the add-on. The name must match one of the names
2904
+ # returned by [ `ListAddons` ][1].
2905
+ #
2906
+ #
2907
+ #
2908
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
2909
+ # @return [String]
2910
+ #
2911
+ # @!attribute [rw] addon_version
2912
+ # The version of the add-on. The version must match one of the
2913
+ # versions returned by [ `DescribeAddonVersions` ][1].
2914
+ #
2915
+ #
2916
+ #
2917
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html
2918
+ # @return [String]
2919
+ #
2920
+ # @!attribute [rw] service_account_role_arn
2921
+ # The Amazon Resource Name (ARN) of an existing IAM role to bind to
2922
+ # the add-on's service account. The role must be assigned the IAM
2923
+ # permissions required by the add-on. If you don't specify an
2924
+ # existing IAM role, then the add-on uses the permissions assigned to
2925
+ # the node IAM role. For more information, see [Amazon EKS node IAM
2926
+ # role][1] in the *Amazon EKS User Guide*.
2927
+ #
2928
+ # <note markdown="1"> To specify an existing IAM role, you must have an IAM OpenID Connect
2929
+ # (OIDC) provider created for your cluster. For more information, see
2930
+ # [Enabling IAM roles for service accounts on your cluster][2] in the
2931
+ # *Amazon EKS User Guide*.
2932
+ #
2933
+ # </note>
2934
+ #
2935
+ #
2936
+ #
2937
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html
2938
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html
2939
+ # @return [String]
2940
+ #
2941
+ # @!attribute [rw] resolve_conflicts
2942
+ # How to resolve parameter value conflicts when applying the new
2943
+ # version of the add-on to the cluster.
2944
+ # @return [String]
2945
+ #
2946
+ # @!attribute [rw] client_request_token
2947
+ # Unique, case-sensitive identifier that you provide to ensure the
2948
+ # idempotency of the request.
2949
+ #
2950
+ # **A suitable default value is auto-generated.** You should normally
2951
+ # not need to pass this option.
2952
+ # @return [String]
2953
+ #
2954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddonRequest AWS API Documentation
2955
+ #
2956
+ class UpdateAddonRequest < Struct.new(
2957
+ :cluster_name,
2958
+ :addon_name,
2959
+ :addon_version,
2960
+ :service_account_role_arn,
2961
+ :resolve_conflicts,
2962
+ :client_request_token)
2963
+ SENSITIVE = []
2964
+ include Aws::Structure
2965
+ end
2966
+
2967
+ # @!attribute [rw] update
2968
+ # An object representing an asynchronous update.
2969
+ # @return [Types::Update]
2970
+ #
2971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddonResponse AWS API Documentation
2972
+ #
2973
+ class UpdateAddonResponse < Struct.new(
2974
+ :update)
2975
+ SENSITIVE = []
2976
+ include Aws::Structure
2977
+ end
2978
+
2305
2979
  # @note When making an API call, you may pass UpdateClusterConfigRequest
2306
2980
  # data as a hash:
2307
2981
  #
@@ -2575,15 +3249,15 @@ module Aws::EKS
2575
3249
  # @return [String]
2576
3250
  #
2577
3251
  # @!attribute [rw] release_version
2578
- # The AMI version of the Amazon EKS-optimized AMI to use for the
3252
+ # The AMI version of the Amazon EKS optimized AMI to use for the
2579
3253
  # update. By default, the latest available AMI version for the node
2580
3254
  # group's Kubernetes version is used. For more information, see
2581
- # [Amazon EKS-Optimized Linux AMI Versions ][1] in the *Amazon EKS
2582
- # User Guide*. If you specify `launchTemplate`, and your launch
2583
- # template uses a custom AMI, then don't specify `releaseVersion`, or
2584
- # the node group update will fail. For more information about using
2585
- # launch templates with Amazon EKS, see [Launch template support][2]
2586
- # in the Amazon EKS User Guide.
3255
+ # [Amazon EKS optimized Amazon Linux 2 AMI versions ][1] in the
3256
+ # *Amazon EKS User Guide*. If you specify `launchTemplate`, and your
3257
+ # launch template uses a custom AMI, then don't specify
3258
+ # `releaseVersion`, or the node group update will fail. For more
3259
+ # information about using launch templates with Amazon EKS, see
3260
+ # [Launch template support][2] in the Amazon EKS User Guide.
2587
3261
  #
2588
3262
  #
2589
3263
  #
@@ -2684,8 +3358,20 @@ module Aws::EKS
2684
3358
  # Specify one or more security groups for the cross-account elastic
2685
3359
  # network interfaces that Amazon EKS creates to use to allow
2686
3360
  # communication between your worker nodes and the Kubernetes control
2687
- # plane. If you don't specify a security group, the default security
2688
- # group for your VPC is used.
3361
+ # plane. If you don't specify any security groups, then familiarize
3362
+ # yourself with the difference between Amazon EKS defaults for
3363
+ # clusters deployed with Kubernetes:
3364
+ #
3365
+ # * 1\.14 Amazon EKS platform version `eks.2` and earlier
3366
+ #
3367
+ # * 1\.14 Amazon EKS platform version `eks.3` and later
3368
+ #
3369
+ # For more information, see [Amazon EKS security group
3370
+ # considerations][1] in the <i> <i>Amazon EKS User Guide</i> </i>.
3371
+ #
3372
+ #
3373
+ #
3374
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
2689
3375
  # @return [Array<String>]
2690
3376
  #
2691
3377
  # @!attribute [rw] endpoint_public_access