Class CfnComputeNodeGroup

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggableV2, IComputeNodeGroupRef, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.113.0 (build fc68b25)", date="2025-10-14T12:28:16.567Z") @Stability(Stable) public class CfnComputeNodeGroup extends CfnResource implements IInspectable, IComputeNodeGroupRef, ITaggableV2
Creates an AWS PCS compute node group resource.

For more information, see Creating a compute node group in AWS PCS in the AWS PCS User Guide .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.pcs.*;
 CfnComputeNodeGroup cfnComputeNodeGroup = CfnComputeNodeGroup.Builder.create(this, "MyCfnComputeNodeGroup")
         .clusterId("clusterId")
         .customLaunchTemplate(CustomLaunchTemplateProperty.builder()
                 .version("version")
                 // the properties below are optional
                 .templateId("templateId")
                 .build())
         .iamInstanceProfileArn("iamInstanceProfileArn")
         .instanceConfigs(List.of(InstanceConfigProperty.builder()
                 .instanceType("instanceType")
                 .build()))
         .scalingConfiguration(ScalingConfigurationProperty.builder()
                 .maxInstanceCount(123)
                 .minInstanceCount(123)
                 .build())
         .subnetIds(List.of("subnetIds"))
         // the properties below are optional
         .amiId("amiId")
         .name("name")
         .purchaseOption("purchaseOption")
         .slurmConfiguration(SlurmConfigurationProperty.builder()
                 .slurmCustomSettings(List.of(SlurmCustomSettingProperty.builder()
                         .parameterName("parameterName")
                         .parameterValue("parameterValue")
                         .build()))
                 .build())
         .spotOptions(SpotOptionsProperty.builder()
                 .allocationStrategy("allocationStrategy")
                 .build())
         .tags(Map.of(
                 "tagsKey", "tags"))
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnComputeNodeGroup

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

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

      @Stability(Stable) public CfnComputeNodeGroup(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnComputeNodeGroupProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The unique Amazon Resource Name (ARN) of the compute node group.
    • getAttrErrorInfo

      @Stability(Stable) @NotNull public IResolvable getAttrErrorInfo()
      The list of errors that occurred during compute node group provisioning.
    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The generated unique ID of the compute node group.
    • getAttrStatus

      @Stability(Stable) @NotNull public String getAttrStatus()
      The provisioning status of the compute node group.

      The provisioning status doesn't indicate the overall health of the compute node group. > The resource enters the SUSPENDING and SUSPENDED states when the scheduler is beyond end of life and we have suspended the cluster. When in these states, you can't use the cluster. The cluster controller is down and all compute instances are terminated. The resources still count toward your service quotas. You can delete a resource if its status is SUSPENDED . For more information, see Frequently asked questions about Slurm versions in AWS PCS in the AWS PCS User Guide .

    • getCdkTagManager

      @Stability(Stable) @NotNull public TagManager getCdkTagManager()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getCdkTagManager in interface ITaggableV2
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getComputeNodeGroupRef

      @Stability(Stable) @NotNull public ComputeNodeGroupReference getComputeNodeGroupRef()
      A reference to a ComputeNodeGroup resource.
      Specified by:
      getComputeNodeGroupRef in interface IComputeNodeGroupRef
    • getClusterId

      @Stability(Stable) @NotNull public String getClusterId()
      The ID of the cluster of the compute node group.
    • setClusterId

      @Stability(Stable) public void setClusterId(@NotNull String value)
      The ID of the cluster of the compute node group.
    • getCustomLaunchTemplate

      @Stability(Stable) @NotNull public Object getCustomLaunchTemplate()
      An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
    • setCustomLaunchTemplate

      @Stability(Stable) public void setCustomLaunchTemplate(@NotNull IResolvable value)
      An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
    • setCustomLaunchTemplate

      @Stability(Stable) public void setCustomLaunchTemplate(@NotNull CfnComputeNodeGroup.CustomLaunchTemplateProperty value)
      An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
    • getIamInstanceProfileArn

      @Stability(Stable) @NotNull public String getIamInstanceProfileArn()
      The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances.
    • setIamInstanceProfileArn

      @Stability(Stable) public void setIamInstanceProfileArn(@NotNull String value)
      The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances.
    • getInstanceConfigs

      @Stability(Stable) @NotNull public Object getInstanceConfigs()
      A list of EC2 instance configurations that AWS PCS can provision in the compute node group.
    • setInstanceConfigs

      @Stability(Stable) public void setInstanceConfigs(@NotNull IResolvable value)
      A list of EC2 instance configurations that AWS PCS can provision in the compute node group.
    • setInstanceConfigs

      @Stability(Stable) public void setInstanceConfigs(@NotNull List<Object> value)
      A list of EC2 instance configurations that AWS PCS can provision in the compute node group.
    • getScalingConfiguration

      @Stability(Stable) @NotNull public Object getScalingConfiguration()
      Specifies the boundaries of the compute node group auto scaling.
    • setScalingConfiguration

      @Stability(Stable) public void setScalingConfiguration(@NotNull IResolvable value)
      Specifies the boundaries of the compute node group auto scaling.
    • setScalingConfiguration

      @Stability(Stable) public void setScalingConfiguration(@NotNull CfnComputeNodeGroup.ScalingConfigurationProperty value)
      Specifies the boundaries of the compute node group auto scaling.
    • getSubnetIds

      @Stability(Stable) @NotNull public List<String> getSubnetIds()
      The list of subnet IDs where instances are provisioned by the compute node group.
    • setSubnetIds

      @Stability(Stable) public void setSubnetIds(@NotNull List<String> value)
      The list of subnet IDs where instances are provisioned by the compute node group.
    • getAmiId

      @Stability(Stable) @Nullable public String getAmiId()
      The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances.
    • setAmiId

      @Stability(Stable) public void setAmiId(@Nullable String value)
      The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances.
    • getName

      @Stability(Stable) @Nullable public String getName()
      The name that identifies the compute node group.
    • setName

      @Stability(Stable) public void setName(@Nullable String value)
      The name that identifies the compute node group.
    • getPurchaseOption

      @Stability(Stable) @Nullable public String getPurchaseOption()
      Specifies how EC2 instances are purchased on your behalf.
    • setPurchaseOption

      @Stability(Stable) public void setPurchaseOption(@Nullable String value)
      Specifies how EC2 instances are purchased on your behalf.
    • getSlurmConfiguration

      @Stability(Stable) @Nullable public Object getSlurmConfiguration()
      Additional options related to the Slurm scheduler.
    • setSlurmConfiguration

      @Stability(Stable) public void setSlurmConfiguration(@Nullable IResolvable value)
      Additional options related to the Slurm scheduler.
    • setSlurmConfiguration

      @Stability(Stable) public void setSlurmConfiguration(@Nullable CfnComputeNodeGroup.SlurmConfigurationProperty value)
      Additional options related to the Slurm scheduler.
    • getSpotOptions

      @Stability(Stable) @Nullable public Object getSpotOptions()
      Additional configuration when you specify SPOT as the purchaseOption for the CreateComputeNodeGroup API action.
    • setSpotOptions

      @Stability(Stable) public void setSpotOptions(@Nullable IResolvable value)
      Additional configuration when you specify SPOT as the purchaseOption for the CreateComputeNodeGroup API action.
    • setSpotOptions

      @Stability(Stable) public void setSpotOptions(@Nullable CfnComputeNodeGroup.SpotOptionsProperty value)
      Additional configuration when you specify SPOT as the purchaseOption for the CreateComputeNodeGroup API action.
    • getTags

      @Stability(Stable) @Nullable public Map<String,String> getTags()
      1 or more tags added to the resource.
    • setTags

      @Stability(Stable) public void setTags(@Nullable Map<String,String> value)
      1 or more tags added to the resource.