From 41cd7451e7fd0a0b669828d6b57a5fa9ab7f11e5 Mon Sep 17 00:00:00 2001 From: awstools Date: Mon, 2 Dec 2024 03:56:57 +0000 Subject: [PATCH] feat(client-eks): Added support for Auto Mode Clusters, Hybrid Nodes, and specifying computeTypes in the DescribeAddonVersions API. --- .../AssociateEncryptionConfigCommand.ts | 4 +- .../AssociateIdentityProviderConfigCommand.ts | 4 +- .../src/commands/CreateClusterCommand.ts | 50 +++ .../src/commands/DeleteClusterCommand.ts | 25 ++ .../src/commands/DeregisterClusterCommand.ts | 25 ++ .../commands/DescribeAddonVersionsCommand.ts | 3 + .../src/commands/DescribeClusterCommand.ts | 25 ++ .../src/commands/DescribeUpdateCommand.ts | 4 +- ...sassociateIdentityProviderConfigCommand.ts | 4 +- .../src/commands/RegisterClusterCommand.ts | 25 ++ .../src/commands/UpdateAddonCommand.ts | 4 +- .../commands/UpdateClusterConfigCommand.ts | 23 +- .../commands/UpdateClusterVersionCommand.ts | 4 +- .../commands/UpdateNodegroupConfigCommand.ts | 4 +- .../commands/UpdateNodegroupVersionCommand.ts | 4 +- clients/client-eks/src/models/models_0.ts | 236 ++++++++++++++ .../client-eks/src/protocols/Aws_restJson1.ts | 52 ++++ codegen/sdk-codegen/aws-models/eks.json | 293 ++++++++++++++++++ 18 files changed, 771 insertions(+), 18 deletions(-) diff --git a/clients/client-eks/src/commands/AssociateEncryptionConfigCommand.ts b/clients/client-eks/src/commands/AssociateEncryptionConfigCommand.ts index 020de8451e00b..20657cc9f692a 100644 --- a/clients/client-eks/src/commands/AssociateEncryptionConfigCommand.ts +++ b/clients/client-eks/src/commands/AssociateEncryptionConfigCommand.ts @@ -58,10 +58,10 @@ export interface AssociateEncryptionConfigCommandOutput extends AssociateEncrypt * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/AssociateIdentityProviderConfigCommand.ts b/clients/client-eks/src/commands/AssociateIdentityProviderConfigCommand.ts index 8e9de511219f4..14721b76ca16a 100644 --- a/clients/client-eks/src/commands/AssociateIdentityProviderConfigCommand.ts +++ b/clients/client-eks/src/commands/AssociateIdentityProviderConfigCommand.ts @@ -72,10 +72,10 @@ export interface AssociateIdentityProviderConfigCommandOutput * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/CreateClusterCommand.ts b/clients/client-eks/src/commands/CreateClusterCommand.ts index e133d36097c88..10f44c69f5a3f 100644 --- a/clients/client-eks/src/commands/CreateClusterCommand.ts +++ b/clients/client-eks/src/commands/CreateClusterCommand.ts @@ -92,6 +92,9 @@ export interface CreateClusterCommandOutput extends CreateClusterResponse, __Met * kubernetesNetworkConfig: { // KubernetesNetworkConfigRequest * serviceIpv4Cidr: "STRING_VALUE", * ipFamily: "ipv4" || "ipv6", + * elasticLoadBalancing: { // ElasticLoadBalancing + * enabled: true || false, + * }, * }, * logging: { // Logging * clusterLogging: [ // LogSetups @@ -137,6 +140,28 @@ export interface CreateClusterCommandOutput extends CreateClusterResponse, __Met * zonalShiftConfig: { // ZonalShiftConfigRequest * enabled: true || false, * }, + * remoteNetworkConfig: { // RemoteNetworkConfigRequest + * remoteNodeNetworks: [ // RemoteNodeNetworkList + * { // RemoteNodeNetwork + * cidrs: "", + * }, + * ], + * remotePodNetworks: [ // RemotePodNetworkList + * { // RemotePodNetwork + * cidrs: "", + * }, + * ], + * }, + * computeConfig: { // ComputeConfigRequest + * enabled: true || false, + * nodePools: "", + * nodeRoleArn: "STRING_VALUE", + * }, + * storageConfig: { // StorageConfigRequest + * blockStorage: { // BlockStorage + * enabled: true || false, + * }, + * }, * }; * const command = new CreateClusterCommand(input); * const response = await client.send(command); @@ -167,6 +192,9 @@ export interface CreateClusterCommandOutput extends CreateClusterResponse, __Met * // serviceIpv4Cidr: "STRING_VALUE", * // serviceIpv6Cidr: "STRING_VALUE", * // ipFamily: "ipv4" || "ipv6", + * // elasticLoadBalancing: { // ElasticLoadBalancing + * // enabled: true || false, + * // }, * // }, * // logging: { // Logging * // clusterLogging: [ // LogSetups @@ -236,6 +264,28 @@ export interface CreateClusterCommandOutput extends CreateClusterResponse, __Met * // zonalShiftConfig: { // ZonalShiftConfigResponse * // enabled: true || false, * // }, + * // remoteNetworkConfig: { // RemoteNetworkConfigResponse + * // remoteNodeNetworks: [ // RemoteNodeNetworkList + * // { // RemoteNodeNetwork + * // cidrs: "", + * // }, + * // ], + * // remotePodNetworks: [ // RemotePodNetworkList + * // { // RemotePodNetwork + * // cidrs: "", + * // }, + * // ], + * // }, + * // computeConfig: { // ComputeConfigResponse + * // enabled: true || false, + * // nodePools: "", + * // nodeRoleArn: "STRING_VALUE", + * // }, + * // storageConfig: { // StorageConfigResponse + * // blockStorage: { // BlockStorage + * // enabled: true || false, + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-eks/src/commands/DeleteClusterCommand.ts b/clients/client-eks/src/commands/DeleteClusterCommand.ts index 0788c77da7c75..e1fd4f29bb772 100644 --- a/clients/client-eks/src/commands/DeleteClusterCommand.ts +++ b/clients/client-eks/src/commands/DeleteClusterCommand.ts @@ -75,6 +75,9 @@ export interface DeleteClusterCommandOutput extends DeleteClusterResponse, __Met * // serviceIpv4Cidr: "STRING_VALUE", * // serviceIpv6Cidr: "STRING_VALUE", * // ipFamily: "ipv4" || "ipv6", + * // elasticLoadBalancing: { // ElasticLoadBalancing + * // enabled: true || false, + * // }, * // }, * // logging: { // Logging * // clusterLogging: [ // LogSetups @@ -144,6 +147,28 @@ export interface DeleteClusterCommandOutput extends DeleteClusterResponse, __Met * // zonalShiftConfig: { // ZonalShiftConfigResponse * // enabled: true || false, * // }, + * // remoteNetworkConfig: { // RemoteNetworkConfigResponse + * // remoteNodeNetworks: [ // RemoteNodeNetworkList + * // { // RemoteNodeNetwork + * // cidrs: "", + * // }, + * // ], + * // remotePodNetworks: [ // RemotePodNetworkList + * // { // RemotePodNetwork + * // cidrs: "", + * // }, + * // ], + * // }, + * // computeConfig: { // ComputeConfigResponse + * // enabled: true || false, + * // nodePools: "", + * // nodeRoleArn: "STRING_VALUE", + * // }, + * // storageConfig: { // StorageConfigResponse + * // blockStorage: { // BlockStorage + * // enabled: true || false, + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-eks/src/commands/DeregisterClusterCommand.ts b/clients/client-eks/src/commands/DeregisterClusterCommand.ts index 452b2b0fde307..412d548569c7b 100644 --- a/clients/client-eks/src/commands/DeregisterClusterCommand.ts +++ b/clients/client-eks/src/commands/DeregisterClusterCommand.ts @@ -70,6 +70,9 @@ export interface DeregisterClusterCommandOutput extends DeregisterClusterRespons * // serviceIpv4Cidr: "STRING_VALUE", * // serviceIpv6Cidr: "STRING_VALUE", * // ipFamily: "ipv4" || "ipv6", + * // elasticLoadBalancing: { // ElasticLoadBalancing + * // enabled: true || false, + * // }, * // }, * // logging: { // Logging * // clusterLogging: [ // LogSetups @@ -139,6 +142,28 @@ export interface DeregisterClusterCommandOutput extends DeregisterClusterRespons * // zonalShiftConfig: { // ZonalShiftConfigResponse * // enabled: true || false, * // }, + * // remoteNetworkConfig: { // RemoteNetworkConfigResponse + * // remoteNodeNetworks: [ // RemoteNodeNetworkList + * // { // RemoteNodeNetwork + * // cidrs: "", + * // }, + * // ], + * // remotePodNetworks: [ // RemotePodNetworkList + * // { // RemotePodNetwork + * // cidrs: "", + * // }, + * // ], + * // }, + * // computeConfig: { // ComputeConfigResponse + * // enabled: true || false, + * // nodePools: "", + * // nodeRoleArn: "STRING_VALUE", + * // }, + * // storageConfig: { // StorageConfigResponse + * // blockStorage: { // BlockStorage + * // enabled: true || false, + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-eks/src/commands/DescribeAddonVersionsCommand.ts b/clients/client-eks/src/commands/DescribeAddonVersionsCommand.ts index fb3099303d1e5..0c4ac6c061029 100644 --- a/clients/client-eks/src/commands/DescribeAddonVersionsCommand.ts +++ b/clients/client-eks/src/commands/DescribeAddonVersionsCommand.ts @@ -66,6 +66,9 @@ export interface DescribeAddonVersionsCommandOutput extends DescribeAddonVersion * // architecture: [ // StringList * // "STRING_VALUE", * // ], + * // computeTypes: [ + * // "STRING_VALUE", + * // ], * // compatibilities: [ // Compatibilities * // { // Compatibility * // clusterVersion: "STRING_VALUE", diff --git a/clients/client-eks/src/commands/DescribeClusterCommand.ts b/clients/client-eks/src/commands/DescribeClusterCommand.ts index 808c8cca0b240..5f9ae787c048b 100644 --- a/clients/client-eks/src/commands/DescribeClusterCommand.ts +++ b/clients/client-eks/src/commands/DescribeClusterCommand.ts @@ -76,6 +76,9 @@ export interface DescribeClusterCommandOutput extends DescribeClusterResponse, _ * // serviceIpv4Cidr: "STRING_VALUE", * // serviceIpv6Cidr: "STRING_VALUE", * // ipFamily: "ipv4" || "ipv6", + * // elasticLoadBalancing: { // ElasticLoadBalancing + * // enabled: true || false, + * // }, * // }, * // logging: { // Logging * // clusterLogging: [ // LogSetups @@ -145,6 +148,28 @@ export interface DescribeClusterCommandOutput extends DescribeClusterResponse, _ * // zonalShiftConfig: { // ZonalShiftConfigResponse * // enabled: true || false, * // }, + * // remoteNetworkConfig: { // RemoteNetworkConfigResponse + * // remoteNodeNetworks: [ // RemoteNodeNetworkList + * // { // RemoteNodeNetwork + * // cidrs: "", + * // }, + * // ], + * // remotePodNetworks: [ // RemotePodNetworkList + * // { // RemotePodNetwork + * // cidrs: "", + * // }, + * // ], + * // }, + * // computeConfig: { // ComputeConfigResponse + * // enabled: true || false, + * // nodePools: "", + * // nodeRoleArn: "STRING_VALUE", + * // }, + * // storageConfig: { // StorageConfigResponse + * // blockStorage: { // BlockStorage + * // enabled: true || false, + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-eks/src/commands/DescribeUpdateCommand.ts b/clients/client-eks/src/commands/DescribeUpdateCommand.ts index c2408ff29bab8..93e8b51831ae0 100644 --- a/clients/client-eks/src/commands/DescribeUpdateCommand.ts +++ b/clients/client-eks/src/commands/DescribeUpdateCommand.ts @@ -50,10 +50,10 @@ export interface DescribeUpdateCommandOutput extends DescribeUpdateResponse, __M * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/DisassociateIdentityProviderConfigCommand.ts b/clients/client-eks/src/commands/DisassociateIdentityProviderConfigCommand.ts index b1efd37d2df1d..7f0e8d78d011f 100644 --- a/clients/client-eks/src/commands/DisassociateIdentityProviderConfigCommand.ts +++ b/clients/client-eks/src/commands/DisassociateIdentityProviderConfigCommand.ts @@ -60,10 +60,10 @@ export interface DisassociateIdentityProviderConfigCommandOutput * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/RegisterClusterCommand.ts b/clients/client-eks/src/commands/RegisterClusterCommand.ts index a53f80951333a..d4329722e0af6 100644 --- a/clients/client-eks/src/commands/RegisterClusterCommand.ts +++ b/clients/client-eks/src/commands/RegisterClusterCommand.ts @@ -88,6 +88,9 @@ export interface RegisterClusterCommandOutput extends RegisterClusterResponse, _ * // serviceIpv4Cidr: "STRING_VALUE", * // serviceIpv6Cidr: "STRING_VALUE", * // ipFamily: "ipv4" || "ipv6", + * // elasticLoadBalancing: { // ElasticLoadBalancing + * // enabled: true || false, + * // }, * // }, * // logging: { // Logging * // clusterLogging: [ // LogSetups @@ -157,6 +160,28 @@ export interface RegisterClusterCommandOutput extends RegisterClusterResponse, _ * // zonalShiftConfig: { // ZonalShiftConfigResponse * // enabled: true || false, * // }, + * // remoteNetworkConfig: { // RemoteNetworkConfigResponse + * // remoteNodeNetworks: [ // RemoteNodeNetworkList + * // { // RemoteNodeNetwork + * // cidrs: "", + * // }, + * // ], + * // remotePodNetworks: [ // RemotePodNetworkList + * // { // RemotePodNetwork + * // cidrs: "", + * // }, + * // ], + * // }, + * // computeConfig: { // ComputeConfigResponse + * // enabled: true || false, + * // nodePools: "", + * // nodeRoleArn: "STRING_VALUE", + * // }, + * // storageConfig: { // StorageConfigResponse + * // blockStorage: { // BlockStorage + * // enabled: true || false, + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-eks/src/commands/UpdateAddonCommand.ts b/clients/client-eks/src/commands/UpdateAddonCommand.ts index ac86b8e7eb70b..60de1d9982e3b 100644 --- a/clients/client-eks/src/commands/UpdateAddonCommand.ts +++ b/clients/client-eks/src/commands/UpdateAddonCommand.ts @@ -56,10 +56,10 @@ export interface UpdateAddonCommandOutput extends UpdateAddonResponse, __Metadat * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/UpdateClusterConfigCommand.ts b/clients/client-eks/src/commands/UpdateClusterConfigCommand.ts index 1bf17c44a5dc3..1ff1c4ccdd306 100644 --- a/clients/client-eks/src/commands/UpdateClusterConfigCommand.ts +++ b/clients/client-eks/src/commands/UpdateClusterConfigCommand.ts @@ -102,6 +102,25 @@ export interface UpdateClusterConfigCommandOutput extends UpdateClusterConfigRes * zonalShiftConfig: { // ZonalShiftConfigRequest * enabled: true || false, * }, + * computeConfig: { // ComputeConfigRequest + * enabled: true || false, + * nodePools: [ + * "STRING_VALUE", + * ], + * nodeRoleArn: "STRING_VALUE", + * }, + * kubernetesNetworkConfig: { // KubernetesNetworkConfigRequest + * serviceIpv4Cidr: "STRING_VALUE", + * ipFamily: "ipv4" || "ipv6", + * elasticLoadBalancing: { // ElasticLoadBalancing + * enabled: true || false, + * }, + * }, + * storageConfig: { // StorageConfigRequest + * blockStorage: { // BlockStorage + * enabled: true || false, + * }, + * }, * }; * const command = new UpdateClusterConfigCommand(input); * const response = await client.send(command); @@ -109,10 +128,10 @@ export interface UpdateClusterConfigCommandOutput extends UpdateClusterConfigRes * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/UpdateClusterVersionCommand.ts b/clients/client-eks/src/commands/UpdateClusterVersionCommand.ts index 5a16b3898a68f..681f01ac91c5d 100644 --- a/clients/client-eks/src/commands/UpdateClusterVersionCommand.ts +++ b/clients/client-eks/src/commands/UpdateClusterVersionCommand.ts @@ -55,10 +55,10 @@ export interface UpdateClusterVersionCommandOutput extends UpdateClusterVersionR * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/UpdateNodegroupConfigCommand.ts b/clients/client-eks/src/commands/UpdateNodegroupConfigCommand.ts index e6e8da7747c5b..ad2ffea515105 100644 --- a/clients/client-eks/src/commands/UpdateNodegroupConfigCommand.ts +++ b/clients/client-eks/src/commands/UpdateNodegroupConfigCommand.ts @@ -82,10 +82,10 @@ export interface UpdateNodegroupConfigCommandOutput extends UpdateNodegroupConfi * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/commands/UpdateNodegroupVersionCommand.ts b/clients/client-eks/src/commands/UpdateNodegroupVersionCommand.ts index 8a909816632ce..7ed608a2cf602 100644 --- a/clients/client-eks/src/commands/UpdateNodegroupVersionCommand.ts +++ b/clients/client-eks/src/commands/UpdateNodegroupVersionCommand.ts @@ -73,10 +73,10 @@ export interface UpdateNodegroupVersionCommandOutput extends UpdateNodegroupVers * // update: { // Update * // id: "STRING_VALUE", * // status: "InProgress" || "Failed" || "Cancelled" || "Successful", - * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate", + * // type: "VersionUpdate" || "EndpointAccessUpdate" || "LoggingUpdate" || "ConfigUpdate" || "AssociateIdentityProviderConfig" || "DisassociateIdentityProviderConfig" || "AssociateEncryptionConfig" || "AddonUpdate" || "VpcConfigUpdate" || "AccessConfigUpdate" || "UpgradePolicyUpdate" || "ZonalShiftConfigUpdate" || "AutoModeUpdate", * // params: [ // UpdateParams * // { // UpdateParam - * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig", + * // type: "Version" || "PlatformVersion" || "EndpointPrivateAccess" || "EndpointPublicAccess" || "ClusterLogging" || "DesiredSize" || "LabelsToAdd" || "LabelsToRemove" || "TaintsToAdd" || "TaintsToRemove" || "MaxSize" || "MinSize" || "ReleaseVersion" || "PublicAccessCidrs" || "LaunchTemplateName" || "LaunchTemplateVersion" || "IdentityProviderConfig" || "EncryptionConfig" || "AddonVersion" || "ServiceAccountRoleArn" || "ResolveConflicts" || "MaxUnavailable" || "MaxUnavailablePercentage" || "ConfigurationValues" || "SecurityGroups" || "Subnets" || "AuthenticationMode" || "PodIdentityAssociations" || "UpgradePolicy" || "ZonalShiftConfig" || "ComputeConfig" || "StorageConfig" || "KubernetesNetworkConfig", * // value: "STRING_VALUE", * // }, * // ], diff --git a/clients/client-eks/src/models/models_0.ts b/clients/client-eks/src/models/models_0.ts index 61a7f4ac3a580..17b6d9e677652 100644 --- a/clients/client-eks/src/models/models_0.ts +++ b/clients/client-eks/src/models/models_0.ts @@ -437,6 +437,12 @@ export interface AddonVersionInfo { */ architecture?: string[] | undefined; + /** + *

Indicates the compute type of the addon version.

+ * @public + */ + computeTypes?: string[] | undefined; + /** *

An object representing the compatibilities of a version.

* @public @@ -1025,12 +1031,14 @@ export const UpdateParamType = { ADDON_VERSION: "AddonVersion", AUTHENTICATION_MODE: "AuthenticationMode", CLUSTER_LOGGING: "ClusterLogging", + COMPUTE_CONFIG: "ComputeConfig", CONFIGURATION_VALUES: "ConfigurationValues", DESIRED_SIZE: "DesiredSize", ENCRYPTION_CONFIG: "EncryptionConfig", ENDPOINT_PRIVATE_ACCESS: "EndpointPrivateAccess", ENDPOINT_PUBLIC_ACCESS: "EndpointPublicAccess", IDENTITY_PROVIDER_CONFIG: "IdentityProviderConfig", + KUBERNETES_NETWORK_CONFIG: "KubernetesNetworkConfig", LABELS_TO_ADD: "LabelsToAdd", LABELS_TO_REMOVE: "LabelsToRemove", LAUNCH_TEMPLATE_NAME: "LaunchTemplateName", @@ -1046,6 +1054,7 @@ export const UpdateParamType = { RESOLVE_CONFLICTS: "ResolveConflicts", SECURITY_GROUPS: "SecurityGroups", SERVICE_ACCOUNT_ROLE_ARN: "ServiceAccountRoleArn", + STORAGE_CONFIG: "StorageConfig", SUBNETS: "Subnets", TAINTS_TO_ADD: "TaintsToAdd", TAINTS_TO_REMOVE: "TaintsToRemove", @@ -1102,6 +1111,7 @@ export const UpdateType = { ADDON_UPDATE: "AddonUpdate", ASSOCIATE_ENCRYPTION_CONFIG: "AssociateEncryptionConfig", ASSOCIATE_IDENTITY_PROVIDER_CONFIG: "AssociateIdentityProviderConfig", + AUTO_MODE_UPDATE: "AutoModeUpdate", CONFIG_UPDATE: "ConfigUpdate", DISASSOCIATE_IDENTITY_PROVIDER_CONFIG: "DisassociateIdentityProviderConfig", ENDPOINT_ACCESS_UPDATE: "EndpointAccessUpdate", @@ -1709,6 +1719,42 @@ export interface CreateAccessConfigRequest { authenticationMode?: AuthenticationMode | undefined; } +/** + *

Request to update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability. For more information, see EKS Auto Mode compute capability in the EKS User Guide.

+ * @public + */ +export interface ComputeConfigRequest { + /** + *

Request to enable or disable the compute capability on your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account.

+ * @public + */ + enabled?: boolean | undefined; + + /** + *

Configuration for node pools that defines the compute resources for your EKS Auto Mode cluster. For more information, see EKS Auto Mode Node Pools in the EKS User Guide.

+ * @public + */ + nodePools?: string[] | undefined; + + /** + *

The ARN of the IAM Role EKS will assign to EC2 Managed Instances in your EKS Auto Mode cluster. This value cannot be changed after the compute capability of EKS Auto Mode is enabled. For more information, see the IAM Reference in the EKS User Guide.

+ * @public + */ + nodeRoleArn?: string | undefined; +} + +/** + *

Indicates the current configuration of the load balancing capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. For more information, see EKS Auto Mode load balancing capability in the EKS User Guide.

+ * @public + */ +export interface ElasticLoadBalancing { + /** + *

Indicates if the load balancing capability is enabled on your EKS Auto Mode cluster. If the load balancing capability is enabled, EKS Auto Mode will create and delete load balancers in your Amazon Web Services account.

+ * @public + */ + enabled?: boolean | undefined; +} + /** * @public * @enum @@ -1775,6 +1821,12 @@ export interface KubernetesNetworkConfigRequest { * @public */ ipFamily?: IpFamily | undefined; + + /** + *

Request to enable or disable the load balancing capability on your EKS Auto Mode cluster. For more information, see EKS Auto Mode load balancing capability in the EKS User Guide.

+ * @public + */ + elasticLoadBalancing?: ElasticLoadBalancing | undefined; } /** @@ -1877,6 +1929,49 @@ export interface OutpostConfigRequest { controlPlanePlacement?: ControlPlanePlacementRequest | undefined; } +/** + *

A network CIDR that can contain hybrid nodes.

+ * @public + */ +export interface RemoteNodeNetwork { + /** + *

A network CIDR that can contain hybrid nodes.

+ * @public + */ + cidrs?: string[] | undefined; +} + +/** + *

A network CIDR that can contain pods that run Kubernetes webhooks on hybrid nodes.

+ * @public + */ +export interface RemotePodNetwork { + /** + *

A network CIDR that can contain pods that run Kubernetes webhooks on hybrid nodes.

+ * @public + */ + cidrs?: string[] | undefined; +} + +/** + *

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this + * configuration after the cluster is created.

+ * @public + */ +export interface RemoteNetworkConfigRequest { + /** + *

The list of network CIDRs that can contain hybrid nodes.

+ * @public + */ + remoteNodeNetworks?: RemoteNodeNetwork[] | undefined; + + /** + *

The list of network CIDRs that can contain pods that run Kubernetes webhooks on hybrid nodes.

+ * @public + */ + remotePodNetworks?: RemotePodNetwork[] | undefined; +} + /** *

An object representing the VPC configuration to use for an Amazon EKS * cluster.

@@ -1948,6 +2043,30 @@ export interface VpcConfigRequest { publicAccessCidrs?: string[] | undefined; } +/** + *

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.

+ * @public + */ +export interface BlockStorage { + /** + *

Indicates if the block storage capability is enabled on your EKS Auto Mode cluster. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account.

+ * @public + */ + enabled?: boolean | undefined; +} + +/** + *

Request to update the configuration of the storage capability of your EKS Auto Mode cluster. For example, enable the capability. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.

+ * @public + */ +export interface StorageConfigRequest { + /** + *

Request to configure EBS Block Storage settings for your EKS Auto Mode cluster.

+ * @public + */ + blockStorage?: BlockStorage | undefined; +} + /** * @public * @enum @@ -2129,6 +2248,25 @@ export interface CreateClusterRequest { * @public */ zonalShiftConfig?: ZonalShiftConfigRequest | undefined; + + /** + *

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this + * configuration after the cluster is created.

+ * @public + */ + remoteNetworkConfig?: RemoteNetworkConfigRequest | undefined; + + /** + *

Enable or disable the compute capability of EKS Auto Mode when creating your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account

+ * @public + */ + computeConfig?: ComputeConfigRequest | undefined; + + /** + *

Enable or disable the block storage capability of EKS Auto Mode when creating your EKS Auto Mode cluster. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account.

+ * @public + */ + storageConfig?: StorageConfigRequest | undefined; } /** @@ -2146,6 +2284,30 @@ export interface Certificate { data?: string | undefined; } +/** + *

Indicates the status of the request to update the compute capability of your EKS Auto Mode cluster.

+ * @public + */ +export interface ComputeConfigResponse { + /** + *

Indicates if the compute capability is enabled on your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account.

+ * @public + */ + enabled?: boolean | undefined; + + /** + *

Indicates the current configuration of node pools in your EKS Auto Mode cluster. For more information, see EKS Auto Mode Node Pools in the EKS User Guide.

+ * @public + */ + nodePools?: string[] | undefined; + + /** + *

The ARN of the IAM Role EKS will assign to EC2 Managed Instances in your EKS Auto Mode cluster.

+ * @public + */ + nodeRoleArn?: string | undefined; +} + /** *

The full description of your connected cluster.

* @public @@ -2315,6 +2477,12 @@ export interface KubernetesNetworkConfigResponse { * @public */ ipFamily?: IpFamily | undefined; + + /** + *

Indicates the current configuration of the load balancing capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled.

+ * @public + */ + elasticLoadBalancing?: ElasticLoadBalancing | undefined; } /** @@ -2361,6 +2529,25 @@ export interface OutpostConfigResponse { controlPlanePlacement?: ControlPlanePlacementResponse | undefined; } +/** + *

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this + * configuration after the cluster is created.

+ * @public + */ +export interface RemoteNetworkConfigResponse { + /** + *

The list of network CIDRs that can contain hybrid nodes.

+ * @public + */ + remoteNodeNetworks?: RemoteNodeNetwork[] | undefined; + + /** + *

The list of network CIDRs that can contain pods that run Kubernetes webhooks on hybrid nodes.

+ * @public + */ + remotePodNetworks?: RemotePodNetwork[] | undefined; +} + /** *

An object representing an Amazon EKS cluster VPC configuration * response.

@@ -2441,6 +2628,18 @@ export const ClusterStatus = { */ export type ClusterStatus = (typeof ClusterStatus)[keyof typeof ClusterStatus]; +/** + *

Indicates the status of the request to update the block storage capability of your EKS Auto Mode cluster.

+ * @public + */ +export interface StorageConfigResponse { + /** + *

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled.

+ * @public + */ + blockStorage?: BlockStorage | undefined; +} + /** *

This value indicates if extended support is enabled or disabled for the cluster.

*

@@ -2635,6 +2834,25 @@ export interface Cluster { * @public */ zonalShiftConfig?: ZonalShiftConfigResponse | undefined; + + /** + *

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this + * configuration after the cluster is created.

+ * @public + */ + remoteNetworkConfig?: RemoteNetworkConfigResponse | undefined; + + /** + *

Indicates the current configuration of the compute capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account. For more information, see EKS Auto Mode compute capability in the EKS User Guide.

+ * @public + */ + computeConfig?: ComputeConfigResponse | undefined; + + /** + *

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.

+ * @public + */ + storageConfig?: StorageConfigResponse | undefined; } /** @@ -6611,6 +6829,24 @@ export interface UpdateClusterConfigRequest { * @public */ zonalShiftConfig?: ZonalShiftConfigRequest | undefined; + + /** + *

Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.

+ * @public + */ + computeConfig?: ComputeConfigRequest | undefined; + + /** + *

The Kubernetes network configuration for the cluster.

+ * @public + */ + kubernetesNetworkConfig?: KubernetesNetworkConfigRequest | undefined; + + /** + *

Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.

+ * @public + */ + storageConfig?: StorageConfigRequest | undefined; } /** diff --git a/clients/client-eks/src/protocols/Aws_restJson1.ts b/clients/client-eks/src/protocols/Aws_restJson1.ts index 57203e90340d1..f804f45912a35 100644 --- a/clients/client-eks/src/protocols/Aws_restJson1.ts +++ b/clients/client-eks/src/protocols/Aws_restJson1.ts @@ -181,10 +181,12 @@ import { AddonPodIdentityAssociations, AssociatedAccessPolicy, BadRequestException, + BlockStorage, Category, ClientException, ClientStat, Cluster, + ComputeConfigRequest, ConnectorConfigRequest, ConnectorConfigResponse, ControlPlanePlacementRequest, @@ -192,6 +194,7 @@ import { DeprecationDetail, EksAnywhereSubscription, EksAnywhereSubscriptionTerm, + ElasticLoadBalancing, EncryptionConfig, FargateProfile, FargateProfileSelector, @@ -217,12 +220,16 @@ import { PodIdentityAssociation, Provider, RemoteAccessConfig, + RemoteNetworkConfigRequest, + RemoteNodeNetwork, + RemotePodNetwork, ResourceInUseException, ResourceLimitExceededException, ResourceNotFoundException, ResourcePropagationDelayException, ServerException, ServiceUnavailableException, + StorageConfigRequest, Taint, UnsupportedAvailabilityZoneException, Update, @@ -384,13 +391,16 @@ export const se_CreateClusterCommand = async ( accessConfig: (_) => _json(_), bootstrapSelfManagedAddons: [], clientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()], + computeConfig: (_) => _json(_), encryptionConfig: (_) => _json(_), kubernetesNetworkConfig: (_) => _json(_), logging: (_) => _json(_), name: [], outpostConfig: (_) => _json(_), + remoteNetworkConfig: (_) => _json(_), resourcesVpcConfig: (_) => _json(_), roleArn: [], + storageConfig: (_) => _json(_), tags: (_) => _json(_), upgradePolicy: (_) => _json(_), version: [], @@ -1328,8 +1338,11 @@ export const se_UpdateClusterConfigCommand = async ( take(input, { accessConfig: (_) => _json(_), clientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()], + computeConfig: (_) => _json(_), + kubernetesNetworkConfig: (_) => _json(_), logging: (_) => _json(_), resourcesVpcConfig: (_) => _json(_), + storageConfig: (_) => _json(_), upgradePolicy: (_) => _json(_), zonalShiftConfig: (_) => _json(_), }) @@ -2993,8 +3006,12 @@ const de_UnsupportedAvailabilityZoneExceptionRes = async ( // se_AddonPodIdentityAssociationsList omitted. +// se_BlockStorage omitted. + // se_CategoryList omitted. +// se_ComputeConfigRequest omitted. + // se_ConnectorConfigRequest omitted. // se_ControlPlanePlacementRequest omitted. @@ -3003,6 +3020,8 @@ const de_UnsupportedAvailabilityZoneExceptionRes = async ( // se_EksAnywhereSubscriptionTerm omitted. +// se_ElasticLoadBalancing omitted. + // se_EncryptionConfig omitted. // se_EncryptionConfigList omitted. @@ -3047,8 +3066,20 @@ const de_UnsupportedAvailabilityZoneExceptionRes = async ( // se_RemoteAccessConfig omitted. +// se_RemoteNetworkConfigRequest omitted. + +// se_RemoteNodeNetwork omitted. + +// se_RemoteNodeNetworkList omitted. + +// se_RemotePodNetwork omitted. + +// se_RemotePodNetworkList omitted. + // se_requiredClaimsMap omitted. +// se_StorageConfigRequest omitted. + // se_StringList omitted. // se_TagMap omitted. @@ -3165,6 +3196,8 @@ const de_AssociatedAccessPolicy = (output: any, context: __SerdeContext): Associ // de_AutoScalingGroupList omitted. +// de_BlockStorage omitted. + // de_Certificate omitted. /** @@ -3199,6 +3232,7 @@ const de_Cluster = (output: any, context: __SerdeContext): Cluster => { arn: __expectString, certificateAuthority: _json, clientRequestToken: __expectString, + computeConfig: _json, connectorConfig: (_: any) => de_ConnectorConfigResponse(_, context), createdAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), encryptionConfig: _json, @@ -3211,9 +3245,11 @@ const de_Cluster = (output: any, context: __SerdeContext): Cluster => { name: __expectString, outpostConfig: _json, platformVersion: __expectString, + remoteNetworkConfig: _json, resourcesVpcConfig: _json, roleArn: __expectString, status: __expectString, + storageConfig: _json, tags: _json, upgradePolicy: _json, version: __expectString, @@ -3231,6 +3267,8 @@ const de_Cluster = (output: any, context: __SerdeContext): Cluster => { // de_Compatibility omitted. +// de_ComputeConfigResponse omitted. + /** * deserializeAws_restJson1ConnectorConfigResponse */ @@ -3305,6 +3343,8 @@ const de_EksAnywhereSubscriptionList = (output: any, context: __SerdeContext): E // de_EksAnywhereSubscriptionTerm omitted. +// de_ElasticLoadBalancing omitted. + // de_EncryptionConfig omitted. // de_EncryptionConfigList omitted. @@ -3505,8 +3545,20 @@ const de_PodIdentityAssociation = (output: any, context: __SerdeContext): PodIde // de_RemoteAccessConfig omitted. +// de_RemoteNetworkConfigResponse omitted. + +// de_RemoteNodeNetwork omitted. + +// de_RemoteNodeNetworkList omitted. + +// de_RemotePodNetwork omitted. + +// de_RemotePodNetworkList omitted. + // de_requiredClaimsMap omitted. +// de_StorageConfigResponse omitted. + // de_StringList omitted. // de_TagMap omitted. diff --git a/codegen/sdk-codegen/aws-models/eks.json b/codegen/sdk-codegen/aws-models/eks.json index 537c8d7665426..6124a3b584436 100644 --- a/codegen/sdk-codegen/aws-models/eks.json +++ b/codegen/sdk-codegen/aws-models/eks.json @@ -1893,6 +1893,12 @@ "smithy.api#documentation": "

The architectures that the version supports.

" } }, + "computeTypes": { + "target": "com.amazonaws.eks#StringList", + "traits": { + "smithy.api#documentation": "

Indicates the compute type of the addon version.

" + } + }, "compatibilities": { "target": "com.amazonaws.eks#Compatibilities", "traits": { @@ -2290,6 +2296,20 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.eks#BlockStorage": { + "type": "structure", + "members": { + "enabled": { + "target": "com.amazonaws.eks#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Indicates if the block storage capability is enabled on your EKS Auto Mode cluster. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.

" + } + }, "com.amazonaws.eks#Boolean": { "type": "boolean", "traits": { @@ -2577,6 +2597,24 @@ "traits": { "smithy.api#documentation": "

The configuration for zonal shift for the cluster.

" } + }, + "remoteNetworkConfig": { + "target": "com.amazonaws.eks#RemoteNetworkConfigResponse", + "traits": { + "smithy.api#documentation": "

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this\n configuration after the cluster is created.

" + } + }, + "computeConfig": { + "target": "com.amazonaws.eks#ComputeConfigResponse", + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of the compute capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account. For more information, see EKS Auto Mode compute capability in the EKS User Guide.

" + } + }, + "storageConfig": { + "target": "com.amazonaws.eks#StorageConfigResponse", + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.

" + } } }, "traits": { @@ -2832,6 +2870,58 @@ "smithy.api#documentation": "

Compatibility information.

" } }, + "com.amazonaws.eks#ComputeConfigRequest": { + "type": "structure", + "members": { + "enabled": { + "target": "com.amazonaws.eks#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Request to enable or disable the compute capability on your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account.

" + } + }, + "nodePools": { + "target": "com.amazonaws.eks#StringList", + "traits": { + "smithy.api#documentation": "

Configuration for node pools that defines the compute resources for your EKS Auto Mode cluster. For more information, see EKS Auto Mode Node Pools in the EKS User Guide.

" + } + }, + "nodeRoleArn": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM Role EKS will assign to EC2 Managed Instances in your EKS Auto Mode cluster. This value cannot be changed after the compute capability of EKS Auto Mode is enabled. For more information, see the IAM Reference in the EKS User Guide.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Request to update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability. For more information, see EKS Auto Mode compute capability in the EKS User Guide.

" + } + }, + "com.amazonaws.eks#ComputeConfigResponse": { + "type": "structure", + "members": { + "enabled": { + "target": "com.amazonaws.eks#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Indicates if the compute capability is enabled on your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account.

" + } + }, + "nodePools": { + "target": "com.amazonaws.eks#StringList", + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of node pools in your EKS Auto Mode cluster. For more information, see EKS Auto Mode Node Pools in the EKS User Guide.

" + } + }, + "nodeRoleArn": { + "target": "com.amazonaws.eks#String", + "traits": { + "smithy.api#documentation": "

The ARN of the IAM Role EKS will assign to EC2 Managed Instances in your EKS Auto Mode cluster.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates the status of the request to update the compute capability of your EKS Auto Mode cluster.

" + } + }, "com.amazonaws.eks#ConnectorConfigProvider": { "type": "enum", "members": { @@ -3362,6 +3452,24 @@ "traits": { "smithy.api#documentation": "

Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services\n configures zonal autoshift for the cluster.

\n

Zonal shift is a feature of\n Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move\n traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel\n it. You can extend the zonal shift if necessary.

\n

You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you\n by enabling zonal autoshift. This shift updates the flow of\n east-to-west network traffic in your cluster to only consider network endpoints for Pods\n running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress\n traffic for applications in your EKS cluster will automatically route traffic to targets in\n the healthy AZs. For more information about zonal shift in EKS, see Learn about Amazon Application Recovery Controller (ARC)\n Zonal Shift in Amazon EKS in the\n \n Amazon EKS User Guide\n .

" } + }, + "remoteNetworkConfig": { + "target": "com.amazonaws.eks#RemoteNetworkConfigRequest", + "traits": { + "smithy.api#documentation": "

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this\n configuration after the cluster is created.

" + } + }, + "computeConfig": { + "target": "com.amazonaws.eks#ComputeConfigRequest", + "traits": { + "smithy.api#documentation": "

Enable or disable the compute capability of EKS Auto Mode when creating your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your Amazon Web Services account

" + } + }, + "storageConfig": { + "target": "com.amazonaws.eks#StorageConfigRequest", + "traits": { + "smithy.api#documentation": "

Enable or disable the block storage capability of EKS Auto Mode when creating your EKS Auto Mode cluster. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your Amazon Web Services account.

" + } } }, "traits": { @@ -5948,6 +6056,20 @@ } } }, + "com.amazonaws.eks#ElasticLoadBalancing": { + "type": "structure", + "members": { + "enabled": { + "target": "com.amazonaws.eks#BoxedBoolean", + "traits": { + "smithy.api#documentation": "

Indicates if the load balancing capability is enabled on your EKS Auto Mode cluster. If the load balancing capability is enabled, EKS Auto Mode will create and delete load balancers in your Amazon Web Services account.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of the load balancing capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. For more information, see EKS Auto Mode load balancing capability in the EKS User Guide.

" + } + }, "com.amazonaws.eks#EncryptionConfig": { "type": "structure", "members": { @@ -6827,6 +6949,12 @@ "traits": { "smithy.api#documentation": "

Specify which IP family is used to assign Kubernetes pod and service IP addresses. If you\n don't specify a value, ipv4 is used by default. You can only specify an IP\n family when you create a cluster and can't change this value once the cluster is\n created. If you specify ipv6, the VPC and subnets that you specify for\n cluster creation must have both IPv4 and IPv6 CIDR blocks\n assigned to them. You can't specify ipv6 for clusters in China\n Regions.

\n

You can only specify ipv6 for 1.21 and later clusters that\n use version 1.10.1 or later of the Amazon VPC CNI add-on. If you specify\n ipv6, then ensure that your VPC meets the requirements listed in the\n considerations listed in Assigning IPv6 addresses to pods and\n services in the Amazon EKS User Guide. Kubernetes assigns services\n IPv6 addresses from the unique local address range\n (fc00::/7). You can't specify a custom IPv6 CIDR block.\n Pod addresses are assigned from the subnet's IPv6 CIDR.

" } + }, + "elasticLoadBalancing": { + "target": "com.amazonaws.eks#ElasticLoadBalancing", + "traits": { + "smithy.api#documentation": "

Request to enable or disable the load balancing capability on your EKS Auto Mode cluster. For more information, see EKS Auto Mode load balancing capability in the EKS User Guide.

" + } } }, "traits": { @@ -6853,6 +6981,12 @@ "traits": { "smithy.api#documentation": "

The IP family used to assign Kubernetes Pod and Service objects\n IP addresses. The IP family is always ipv4, unless you have a\n 1.21 or later cluster running version 1.10.1 or later of\n the Amazon VPC CNI plugin for Kubernetes and specified ipv6 when you created the cluster.\n

" } + }, + "elasticLoadBalancing": { + "target": "com.amazonaws.eks#ElasticLoadBalancing", + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of the load balancing capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled.

" + } } }, "traits": { @@ -9230,6 +9364,98 @@ "smithy.api#documentation": "

An object representing the remote access configuration for the managed node\n group.

" } }, + "com.amazonaws.eks#RemoteNetworkConfigRequest": { + "type": "structure", + "members": { + "remoteNodeNetworks": { + "target": "com.amazonaws.eks#RemoteNodeNetworkList", + "traits": { + "smithy.api#documentation": "

The list of network CIDRs that can contain hybrid nodes.

" + } + }, + "remotePodNetworks": { + "target": "com.amazonaws.eks#RemotePodNetworkList", + "traits": { + "smithy.api#documentation": "

The list of network CIDRs that can contain pods that run Kubernetes webhooks on hybrid nodes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this\n configuration after the cluster is created.

" + } + }, + "com.amazonaws.eks#RemoteNetworkConfigResponse": { + "type": "structure", + "members": { + "remoteNodeNetworks": { + "target": "com.amazonaws.eks#RemoteNodeNetworkList", + "traits": { + "smithy.api#documentation": "

The list of network CIDRs that can contain hybrid nodes.

" + } + }, + "remotePodNetworks": { + "target": "com.amazonaws.eks#RemotePodNetworkList", + "traits": { + "smithy.api#documentation": "

The list of network CIDRs that can contain pods that run Kubernetes webhooks on hybrid nodes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this\n configuration after the cluster is created.

" + } + }, + "com.amazonaws.eks#RemoteNodeNetwork": { + "type": "structure", + "members": { + "cidrs": { + "target": "com.amazonaws.eks#StringList", + "traits": { + "smithy.api#documentation": "

A network CIDR that can contain hybrid nodes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A network CIDR that can contain hybrid nodes.

" + } + }, + "com.amazonaws.eks#RemoteNodeNetworkList": { + "type": "list", + "member": { + "target": "com.amazonaws.eks#RemoteNodeNetwork" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1 + } + } + }, + "com.amazonaws.eks#RemotePodNetwork": { + "type": "structure", + "members": { + "cidrs": { + "target": "com.amazonaws.eks#StringList", + "traits": { + "smithy.api#documentation": "

A network CIDR that can contain pods that run Kubernetes webhooks on hybrid nodes.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A network CIDR that can contain pods that run Kubernetes webhooks on hybrid nodes.

" + } + }, + "com.amazonaws.eks#RemotePodNetworkList": { + "type": "list", + "member": { + "target": "com.amazonaws.eks#RemotePodNetwork" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1 + } + } + }, "com.amazonaws.eks#ResolveConflicts": { "type": "enum", "members": { @@ -9448,6 +9674,34 @@ "smithy.api#httpError": 503 } }, + "com.amazonaws.eks#StorageConfigRequest": { + "type": "structure", + "members": { + "blockStorage": { + "target": "com.amazonaws.eks#BlockStorage", + "traits": { + "smithy.api#documentation": "

Request to configure EBS Block Storage settings for your EKS Auto Mode cluster.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Request to update the configuration of the storage capability of your EKS Auto Mode cluster. For example, enable the capability. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.

" + } + }, + "com.amazonaws.eks#StorageConfigResponse": { + "type": "structure", + "members": { + "blockStorage": { + "target": "com.amazonaws.eks#BlockStorage", + "traits": { + "smithy.api#documentation": "

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates the status of the request to update the block storage capability of your EKS Auto Mode cluster.

" + } + }, "com.amazonaws.eks#String": { "type": "string" }, @@ -10055,6 +10309,21 @@ "traits": { "smithy.api#documentation": "

Enable or disable ARC zonal shift for the cluster. If zonal shift is enabled, Amazon Web Services\n configures zonal autoshift for the cluster.

\n

Zonal shift is a feature of\n Amazon Application Recovery Controller (ARC). ARC zonal shift is designed to be a temporary measure that allows you to move\n traffic for a resource away from an impaired AZ until the zonal shift expires or you cancel\n it. You can extend the zonal shift if necessary.

\n

You can start a zonal shift for an EKS cluster, or you can allow Amazon Web Services to do it for you\n by enabling zonal autoshift. This shift updates the flow of\n east-to-west network traffic in your cluster to only consider network endpoints for Pods\n running on worker nodes in healthy AZs. Additionally, any ALB or NLB handling ingress\n traffic for applications in your EKS cluster will automatically route traffic to targets in\n the healthy AZs. For more information about zonal shift in EKS, see Learn about Amazon Application Recovery Controller (ARC)\n Zonal Shift in Amazon EKS in the\n \n Amazon EKS User Guide\n .

" } + }, + "computeConfig": { + "target": "com.amazonaws.eks#ComputeConfigRequest", + "traits": { + "smithy.api#documentation": "

Update the configuration of the compute capability of your EKS Auto Mode cluster. For example, enable the capability.

" + } + }, + "kubernetesNetworkConfig": { + "target": "com.amazonaws.eks#KubernetesNetworkConfigRequest" + }, + "storageConfig": { + "target": "com.amazonaws.eks#StorageConfigRequest", + "traits": { + "smithy.api#documentation": "

Update the configuration of the block storage capability of your EKS Auto Mode cluster. For example, enable the capability.

" + } } }, "traits": { @@ -10661,6 +10930,24 @@ "traits": { "smithy.api#enumValue": "ZonalShiftConfig" } + }, + "COMPUTE_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ComputeConfig" + } + }, + "STORAGE_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "StorageConfig" + } + }, + "KUBERNETES_NETWORK_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KubernetesNetworkConfig" + } } } }, @@ -10875,6 +11162,12 @@ "traits": { "smithy.api#enumValue": "ZonalShiftConfigUpdate" } + }, + "AUTO_MODE_UPDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AutoModeUpdate" + } } } },