Class CfnNodegroupPropsMixin

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.Mixin
software.amazon.awscdk.cfnpropertymixins.services.eks.CfnNodegroupPropsMixin
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable, software.constructs.IMixin

@Generated(value="jsii-pacmak/1.127.0 (build 2117ad5)", date="2026-03-11T13:19:59.077Z") @Stability(Stable) public class CfnNodegroupPropsMixin extends Mixin implements software.constructs.IMixin
Creates a managed node group for an Amazon EKS cluster.

You can only create a node group for your cluster that is equal to the current Kubernetes version for the cluster. All node groups are created with the latest AMI release version for the respective minor Kubernetes version of the cluster, unless you deploy a custom AMI using a launch template.

For later updates, you will only be able to update a node group using a launch template only if it was originally deployed with a launch template. Additionally, the launch template ID or name must match what was used when the node group was created. You can update the launch template version with necessary changes. For more information about using launch templates, see Customizing managed nodes with launch templates .

An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and associated Amazon EC2 instances that are managed by AWS for an Amazon EKS cluster. For more information, see Managed node groups in the Amazon EKS User Guide .

Windows AMI types are only supported for commercial AWS Regions that support Windows on Amazon EKS.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cfnpropertymixins.services.eks.*;
 import software.amazon.awscdk.*;
 IMergeStrategy mergeStrategy;
 CfnNodegroupPropsMixin cfnNodegroupPropsMixin = CfnNodegroupPropsMixin.Builder.create(CfnNodegroupMixinProps.builder()
         .amiType("amiType")
         .capacityType("capacityType")
         .clusterName("clusterName")
         .diskSize(123)
         .forceUpdateEnabled(false)
         .instanceTypes(List.of("instanceTypes"))
         .labels(Map.of(
                 "labelsKey", "labels"))
         .launchTemplate(LaunchTemplateSpecificationProperty.builder()
                 .id("id")
                 .name("name")
                 .version("version")
                 .build())
         .nodegroupName("nodegroupName")
         .nodeRepairConfig(NodeRepairConfigProperty.builder()
                 .enabled(false)
                 .maxParallelNodesRepairedCount(123)
                 .maxParallelNodesRepairedPercentage(123)
                 .maxUnhealthyNodeThresholdCount(123)
                 .maxUnhealthyNodeThresholdPercentage(123)
                 .nodeRepairConfigOverrides(List.of(NodeRepairConfigOverridesProperty.builder()
                         .minRepairWaitTimeMins(123)
                         .nodeMonitoringCondition("nodeMonitoringCondition")
                         .nodeUnhealthyReason("nodeUnhealthyReason")
                         .repairAction("repairAction")
                         .build()))
                 .build())
         .nodeRole("nodeRole")
         .releaseVersion("releaseVersion")
         .remoteAccess(RemoteAccessProperty.builder()
                 .ec2SshKey("ec2SshKey")
                 .sourceSecurityGroups(List.of("sourceSecurityGroups"))
                 .build())
         .scalingConfig(ScalingConfigProperty.builder()
                 .desiredSize(123)
                 .maxSize(123)
                 .minSize(123)
                 .build())
         .subnets(List.of("subnets"))
         .tags(Map.of(
                 "tagsKey", "tags"))
         .taints(List.of(TaintProperty.builder()
                 .effect("effect")
                 .key("key")
                 .value("value")
                 .build()))
         .updateConfig(UpdateConfigProperty.builder()
                 .maxUnavailable(123)
                 .maxUnavailablePercentage(123)
                 .updateStrategy("updateStrategy")
                 .build())
         .version("version")
         .build())
 .strategy(mergeStrategy)
 .build();
 

See Also:
  • Field Details

    • CFN_PROPERTY_KEYS

      @Stability(Stable) protected static final List<String> CFN_PROPERTY_KEYS
  • Constructor Details

    • CfnNodegroupPropsMixin

      protected CfnNodegroupPropsMixin(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnNodegroupPropsMixin

      protected CfnNodegroupPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnNodegroupPropsMixin

      @Stability(Stable) public CfnNodegroupPropsMixin(@NotNull CfnNodegroupMixinProps props, @Nullable CfnPropertyMixinOptions options)
      Create a mixin to apply properties to AWS::EKS::Nodegroup.

      Parameters:
      props - L1 properties to apply. This parameter is required.
      options - Mixin options.
    • CfnNodegroupPropsMixin

      @Stability(Stable) public CfnNodegroupPropsMixin(@NotNull CfnNodegroupMixinProps props)
      Create a mixin to apply properties to AWS::EKS::Nodegroup.

      Parameters:
      props - L1 properties to apply. This parameter is required.
  • Method Details

    • applyTo

      @Stability(Stable) public void applyTo(@NotNull software.constructs.IConstruct construct)
      Apply the mixin properties to the construct.

      Specified by:
      applyTo in interface software.constructs.IMixin
      Specified by:
      applyTo in class Mixin
      Parameters:
      construct - This parameter is required.
    • supports

      @Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct)
      Check if this mixin supports the given construct.

      Specified by:
      supports in interface software.constructs.IMixin
      Overrides:
      supports in class Mixin
      Parameters:
      construct - This parameter is required.
    • getProps

      @Stability(Stable) @NotNull protected CfnNodegroupMixinProps getProps()
    • getStrategy

      @Stability(Stable) @NotNull protected IMergeStrategy getStrategy()