1. Packages
  2. Packages
  3. Vkcs Provider
  4. API Docs
  5. KubernetesNodeGroupV2
Viewing docs for vkcs 0.15.0
published on Tuesday, May 5, 2026 by vk-cs
Viewing docs for vkcs 0.15.0
published on Tuesday, May 5, 2026 by vk-cs
    import * as pulumi from "@pulumi/pulumi";
    import * as vkcs from "@pulumi/vkcs";
    
    const k8sNodeGroup = new vkcs.KubernetesNodeGroupV2("k8s_node_group", {
        clusterId: k8sCluster.id,
        name: "k8s-node-group",
        nodeFlavor: basic.id,
        availabilityZone: "MS1",
        scaleType: "fixed_scale",
        fixedScaleNodeCount: 3,
        parallelUpgradeChunk: 40,
        diskType: "high-iops",
        diskSize: 20,
    }, {
        dependsOn: [k8sCluster],
    });
    
    import pulumi
    import pulumi_vkcs as vkcs
    
    k8s_node_group = vkcs.KubernetesNodeGroupV2("k8s_node_group",
        cluster_id=k8s_cluster["id"],
        name="k8s-node-group",
        node_flavor=basic["id"],
        availability_zone="MS1",
        scale_type="fixed_scale",
        fixed_scale_node_count=3,
        parallel_upgrade_chunk=40,
        disk_type="high-iops",
        disk_size=20,
        opts = pulumi.ResourceOptions(depends_on=[k8s_cluster]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := vkcs.NewKubernetesNodeGroupV2(ctx, "k8s_node_group", &vkcs.KubernetesNodeGroupV2Args{
    			ClusterId:            pulumi.Any(k8sCluster.Id),
    			Name:                 pulumi.String("k8s-node-group"),
    			NodeFlavor:           pulumi.Any(basic.Id),
    			AvailabilityZone:     pulumi.String("MS1"),
    			ScaleType:            pulumi.String("fixed_scale"),
    			FixedScaleNodeCount:  pulumi.Float64(3),
    			ParallelUpgradeChunk: pulumi.Float64(40),
    			DiskType:             pulumi.String("high-iops"),
    			DiskSize:             pulumi.Float64(20),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			k8sCluster,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vkcs = Pulumi.Vkcs;
    
    return await Deployment.RunAsync(() => 
    {
        var k8sNodeGroup = new Vkcs.KubernetesNodeGroupV2("k8s_node_group", new()
        {
            ClusterId = k8sCluster.Id,
            Name = "k8s-node-group",
            NodeFlavor = basic.Id,
            AvailabilityZone = "MS1",
            ScaleType = "fixed_scale",
            FixedScaleNodeCount = 3,
            ParallelUpgradeChunk = 40,
            DiskType = "high-iops",
            DiskSize = 20,
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                k8sCluster,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vkcs.KubernetesNodeGroupV2;
    import com.pulumi.vkcs.KubernetesNodeGroupV2Args;
    import com.pulumi.resources.CustomResourceOptions;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var k8sNodeGroup = new KubernetesNodeGroupV2("k8sNodeGroup", KubernetesNodeGroupV2Args.builder()
                .clusterId(k8sCluster.id())
                .name("k8s-node-group")
                .nodeFlavor(basic.id())
                .availabilityZone("MS1")
                .scaleType("fixed_scale")
                .fixedScaleNodeCount(3.0)
                .parallelUpgradeChunk(40.0)
                .diskType("high-iops")
                .diskSize(20.0)
                .build(), CustomResourceOptions.builder()
                    .dependsOn(k8sCluster)
                    .build());
    
        }
    }
    
    resources:
      k8sNodeGroup:
        type: vkcs:KubernetesNodeGroupV2
        name: k8s_node_group
        properties:
          clusterId: ${k8sCluster.id}
          name: k8s-node-group
          nodeFlavor: ${basic.id}
          availabilityZone: MS1
          scaleType: fixed_scale
          fixedScaleNodeCount: 3
          parallelUpgradeChunk: 40
          diskType: high-iops
          diskSize: 20
        options:
          dependsOn:
            - ${k8sCluster}
    

    Create KubernetesNodeGroupV2 Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new KubernetesNodeGroupV2(name: string, args: KubernetesNodeGroupV2Args, opts?: CustomResourceOptions);
    @overload
    def KubernetesNodeGroupV2(resource_name: str,
                              args: KubernetesNodeGroupV2Args,
                              opts: Optional[ResourceOptions] = None)
    
    @overload
    def KubernetesNodeGroupV2(resource_name: str,
                              opts: Optional[ResourceOptions] = None,
                              node_flavor: Optional[str] = None,
                              parallel_upgrade_chunk: Optional[float] = None,
                              availability_zone: Optional[str] = None,
                              cluster_id: Optional[str] = None,
                              disk_size: Optional[float] = None,
                              disk_type: Optional[str] = None,
                              scale_type: Optional[str] = None,
                              name: Optional[str] = None,
                              fixed_scale_node_count: Optional[float] = None,
                              auto_scale_max_size: Optional[float] = None,
                              labels: Optional[Mapping[str, str]] = None,
                              region: Optional[str] = None,
                              auto_scale_min_size: Optional[float] = None,
                              taints: Optional[Sequence[KubernetesNodeGroupV2TaintArgs]] = None,
                              timeouts: Optional[KubernetesNodeGroupV2TimeoutsArgs] = None)
    func NewKubernetesNodeGroupV2(ctx *Context, name string, args KubernetesNodeGroupV2Args, opts ...ResourceOption) (*KubernetesNodeGroupV2, error)
    public KubernetesNodeGroupV2(string name, KubernetesNodeGroupV2Args args, CustomResourceOptions? opts = null)
    public KubernetesNodeGroupV2(String name, KubernetesNodeGroupV2Args args)
    public KubernetesNodeGroupV2(String name, KubernetesNodeGroupV2Args args, CustomResourceOptions options)
    
    type: vkcs:KubernetesNodeGroupV2
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args KubernetesNodeGroupV2Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args KubernetesNodeGroupV2Args
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args KubernetesNodeGroupV2Args
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args KubernetesNodeGroupV2Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args KubernetesNodeGroupV2Args
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var kubernetesNodeGroupV2Resource = new Vkcs.KubernetesNodeGroupV2("kubernetesNodeGroupV2Resource", new()
    {
        NodeFlavor = "string",
        ParallelUpgradeChunk = 0,
        AvailabilityZone = "string",
        ClusterId = "string",
        DiskSize = 0,
        DiskType = "string",
        ScaleType = "string",
        Name = "string",
        FixedScaleNodeCount = 0,
        AutoScaleMaxSize = 0,
        Labels = 
        {
            { "string", "string" },
        },
        Region = "string",
        AutoScaleMinSize = 0,
        Taints = new[]
        {
            new Vkcs.Inputs.KubernetesNodeGroupV2TaintArgs
            {
                Effect = "string",
                Key = "string",
                Value = "string",
            },
        },
        Timeouts = new Vkcs.Inputs.KubernetesNodeGroupV2TimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Update = "string",
        },
    });
    
    example, err := vkcs.NewKubernetesNodeGroupV2(ctx, "kubernetesNodeGroupV2Resource", &vkcs.KubernetesNodeGroupV2Args{
    	NodeFlavor:           pulumi.String("string"),
    	ParallelUpgradeChunk: pulumi.Float64(0),
    	AvailabilityZone:     pulumi.String("string"),
    	ClusterId:            pulumi.String("string"),
    	DiskSize:             pulumi.Float64(0),
    	DiskType:             pulumi.String("string"),
    	ScaleType:            pulumi.String("string"),
    	Name:                 pulumi.String("string"),
    	FixedScaleNodeCount:  pulumi.Float64(0),
    	AutoScaleMaxSize:     pulumi.Float64(0),
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Region:           pulumi.String("string"),
    	AutoScaleMinSize: pulumi.Float64(0),
    	Taints: vkcs.KubernetesNodeGroupV2TaintArray{
    		&vkcs.KubernetesNodeGroupV2TaintArgs{
    			Effect: pulumi.String("string"),
    			Key:    pulumi.String("string"),
    			Value:  pulumi.String("string"),
    		},
    	},
    	Timeouts: &vkcs.KubernetesNodeGroupV2TimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    })
    
    var kubernetesNodeGroupV2Resource = new KubernetesNodeGroupV2("kubernetesNodeGroupV2Resource", KubernetesNodeGroupV2Args.builder()
        .nodeFlavor("string")
        .parallelUpgradeChunk(0.0)
        .availabilityZone("string")
        .clusterId("string")
        .diskSize(0.0)
        .diskType("string")
        .scaleType("string")
        .name("string")
        .fixedScaleNodeCount(0.0)
        .autoScaleMaxSize(0.0)
        .labels(Map.of("string", "string"))
        .region("string")
        .autoScaleMinSize(0.0)
        .taints(KubernetesNodeGroupV2TaintArgs.builder()
            .effect("string")
            .key("string")
            .value("string")
            .build())
        .timeouts(KubernetesNodeGroupV2TimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .update("string")
            .build())
        .build());
    
    kubernetes_node_group_v2_resource = vkcs.KubernetesNodeGroupV2("kubernetesNodeGroupV2Resource",
        node_flavor="string",
        parallel_upgrade_chunk=float(0),
        availability_zone="string",
        cluster_id="string",
        disk_size=float(0),
        disk_type="string",
        scale_type="string",
        name="string",
        fixed_scale_node_count=float(0),
        auto_scale_max_size=float(0),
        labels={
            "string": "string",
        },
        region="string",
        auto_scale_min_size=float(0),
        taints=[{
            "effect": "string",
            "key": "string",
            "value": "string",
        }],
        timeouts={
            "create": "string",
            "delete": "string",
            "update": "string",
        })
    
    const kubernetesNodeGroupV2Resource = new vkcs.KubernetesNodeGroupV2("kubernetesNodeGroupV2Resource", {
        nodeFlavor: "string",
        parallelUpgradeChunk: 0,
        availabilityZone: "string",
        clusterId: "string",
        diskSize: 0,
        diskType: "string",
        scaleType: "string",
        name: "string",
        fixedScaleNodeCount: 0,
        autoScaleMaxSize: 0,
        labels: {
            string: "string",
        },
        region: "string",
        autoScaleMinSize: 0,
        taints: [{
            effect: "string",
            key: "string",
            value: "string",
        }],
        timeouts: {
            create: "string",
            "delete": "string",
            update: "string",
        },
    });
    
    type: vkcs:KubernetesNodeGroupV2
    properties:
        autoScaleMaxSize: 0
        autoScaleMinSize: 0
        availabilityZone: string
        clusterId: string
        diskSize: 0
        diskType: string
        fixedScaleNodeCount: 0
        labels:
            string: string
        name: string
        nodeFlavor: string
        parallelUpgradeChunk: 0
        region: string
        scaleType: string
        taints:
            - effect: string
              key: string
              value: string
        timeouts:
            create: string
            delete: string
            update: string
    

    KubernetesNodeGroupV2 Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The KubernetesNodeGroupV2 resource accepts the following input properties:

    AvailabilityZone string
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    ClusterId string
    required string → The ID of the parent cluster. Forces replacement on change.
    DiskSize double
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    DiskType string
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    NodeFlavor string
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    ParallelUpgradeChunk double
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    ScaleType string
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    AutoScaleMaxSize double
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    AutoScaleMinSize double
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    FixedScaleNodeCount double
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    Labels Dictionary<string, string>
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    Name string
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    Region string
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    Taints List<KubernetesNodeGroupV2Taint>
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    Timeouts KubernetesNodeGroupV2Timeouts
    Timeouts configuration for create, update and delete operations.
    AvailabilityZone string
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    ClusterId string
    required string → The ID of the parent cluster. Forces replacement on change.
    DiskSize float64
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    DiskType string
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    NodeFlavor string
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    ParallelUpgradeChunk float64
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    ScaleType string
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    AutoScaleMaxSize float64
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    AutoScaleMinSize float64
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    FixedScaleNodeCount float64
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    Labels map[string]string
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    Name string
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    Region string
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    Taints []KubernetesNodeGroupV2TaintArgs
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    Timeouts KubernetesNodeGroupV2TimeoutsArgs
    Timeouts configuration for create, update and delete operations.
    availabilityZone String
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    clusterId String
    required string → The ID of the parent cluster. Forces replacement on change.
    diskSize Double
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    diskType String
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    nodeFlavor String
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallelUpgradeChunk Double
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    scaleType String
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    autoScaleMaxSize Double
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    autoScaleMinSize Double
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    fixedScaleNodeCount Double
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels Map<String,String>
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name String
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    region String
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    taints List<KubernetesNodeGroupV2Taint>
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts KubernetesNodeGroupV2Timeouts
    Timeouts configuration for create, update and delete operations.
    availabilityZone string
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    clusterId string
    required string → The ID of the parent cluster. Forces replacement on change.
    diskSize number
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    diskType string
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    nodeFlavor string
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallelUpgradeChunk number
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    scaleType string
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    autoScaleMaxSize number
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    autoScaleMinSize number
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    fixedScaleNodeCount number
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels {[key: string]: string}
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name string
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    region string
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    taints KubernetesNodeGroupV2Taint[]
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts KubernetesNodeGroupV2Timeouts
    Timeouts configuration for create, update and delete operations.
    availability_zone str
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    cluster_id str
    required string → The ID of the parent cluster. Forces replacement on change.
    disk_size float
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    disk_type str
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    node_flavor str
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallel_upgrade_chunk float
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    scale_type str
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    auto_scale_max_size float
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    auto_scale_min_size float
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    fixed_scale_node_count float
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels Mapping[str, str]
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name str
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    region str
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    taints Sequence[KubernetesNodeGroupV2TaintArgs]
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts KubernetesNodeGroupV2TimeoutsArgs
    Timeouts configuration for create, update and delete operations.
    availabilityZone String
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    clusterId String
    required string → The ID of the parent cluster. Forces replacement on change.
    diskSize Number
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    diskType String
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    nodeFlavor String
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallelUpgradeChunk Number
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    scaleType String
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    autoScaleMaxSize Number
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    autoScaleMinSize Number
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    fixedScaleNodeCount Number
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels Map<String>
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name String
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    region String
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    taints List<Property Map>
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts Property Map
    Timeouts configuration for create, update and delete operations.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the KubernetesNodeGroupV2 resource produces the following output properties:

    AutoScaleNodeCount double
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    CreatedAt string
    string → The timestamp when the node group was created (ISO 8601 format).
    Id string
    The provider-assigned unique ID for this managed resource.
    Uuid string
    string → The node group's UUID. It is generated automatically.
    AutoScaleNodeCount float64
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    CreatedAt string
    string → The timestamp when the node group was created (ISO 8601 format).
    Id string
    The provider-assigned unique ID for this managed resource.
    Uuid string
    string → The node group's UUID. It is generated automatically.
    autoScaleNodeCount Double
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    createdAt String
    string → The timestamp when the node group was created (ISO 8601 format).
    id String
    The provider-assigned unique ID for this managed resource.
    uuid String
    string → The node group's UUID. It is generated automatically.
    autoScaleNodeCount number
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    createdAt string
    string → The timestamp when the node group was created (ISO 8601 format).
    id string
    The provider-assigned unique ID for this managed resource.
    uuid string
    string → The node group's UUID. It is generated automatically.
    auto_scale_node_count float
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    created_at str
    string → The timestamp when the node group was created (ISO 8601 format).
    id str
    The provider-assigned unique ID for this managed resource.
    uuid str
    string → The node group's UUID. It is generated automatically.
    autoScaleNodeCount Number
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    createdAt String
    string → The timestamp when the node group was created (ISO 8601 format).
    id String
    The provider-assigned unique ID for this managed resource.
    uuid String
    string → The node group's UUID. It is generated automatically.

    Look up Existing KubernetesNodeGroupV2 Resource

    Get an existing KubernetesNodeGroupV2 resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: KubernetesNodeGroupV2State, opts?: CustomResourceOptions): KubernetesNodeGroupV2
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            auto_scale_max_size: Optional[float] = None,
            auto_scale_min_size: Optional[float] = None,
            auto_scale_node_count: Optional[float] = None,
            availability_zone: Optional[str] = None,
            cluster_id: Optional[str] = None,
            created_at: Optional[str] = None,
            disk_size: Optional[float] = None,
            disk_type: Optional[str] = None,
            fixed_scale_node_count: Optional[float] = None,
            labels: Optional[Mapping[str, str]] = None,
            name: Optional[str] = None,
            node_flavor: Optional[str] = None,
            parallel_upgrade_chunk: Optional[float] = None,
            region: Optional[str] = None,
            scale_type: Optional[str] = None,
            taints: Optional[Sequence[KubernetesNodeGroupV2TaintArgs]] = None,
            timeouts: Optional[KubernetesNodeGroupV2TimeoutsArgs] = None,
            uuid: Optional[str] = None) -> KubernetesNodeGroupV2
    func GetKubernetesNodeGroupV2(ctx *Context, name string, id IDInput, state *KubernetesNodeGroupV2State, opts ...ResourceOption) (*KubernetesNodeGroupV2, error)
    public static KubernetesNodeGroupV2 Get(string name, Input<string> id, KubernetesNodeGroupV2State? state, CustomResourceOptions? opts = null)
    public static KubernetesNodeGroupV2 get(String name, Output<String> id, KubernetesNodeGroupV2State state, CustomResourceOptions options)
    resources:  _:    type: vkcs:KubernetesNodeGroupV2    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AutoScaleMaxSize double
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    AutoScaleMinSize double
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    AutoScaleNodeCount double
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    AvailabilityZone string
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    ClusterId string
    required string → The ID of the parent cluster. Forces replacement on change.
    CreatedAt string
    string → The timestamp when the node group was created (ISO 8601 format).
    DiskSize double
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    DiskType string
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    FixedScaleNodeCount double
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    Labels Dictionary<string, string>
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    Name string
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    NodeFlavor string
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    ParallelUpgradeChunk double
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    Region string
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    ScaleType string
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    Taints List<KubernetesNodeGroupV2Taint>
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    Timeouts KubernetesNodeGroupV2Timeouts
    Timeouts configuration for create, update and delete operations.
    Uuid string
    string → The node group's UUID. It is generated automatically.
    AutoScaleMaxSize float64
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    AutoScaleMinSize float64
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    AutoScaleNodeCount float64
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    AvailabilityZone string
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    ClusterId string
    required string → The ID of the parent cluster. Forces replacement on change.
    CreatedAt string
    string → The timestamp when the node group was created (ISO 8601 format).
    DiskSize float64
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    DiskType string
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    FixedScaleNodeCount float64
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    Labels map[string]string
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    Name string
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    NodeFlavor string
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    ParallelUpgradeChunk float64
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    Region string
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    ScaleType string
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    Taints []KubernetesNodeGroupV2TaintArgs
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    Timeouts KubernetesNodeGroupV2TimeoutsArgs
    Timeouts configuration for create, update and delete operations.
    Uuid string
    string → The node group's UUID. It is generated automatically.
    autoScaleMaxSize Double
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    autoScaleMinSize Double
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    autoScaleNodeCount Double
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    availabilityZone String
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    clusterId String
    required string → The ID of the parent cluster. Forces replacement on change.
    createdAt String
    string → The timestamp when the node group was created (ISO 8601 format).
    diskSize Double
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    diskType String
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    fixedScaleNodeCount Double
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels Map<String,String>
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name String
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    nodeFlavor String
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallelUpgradeChunk Double
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    region String
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    scaleType String
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    taints List<KubernetesNodeGroupV2Taint>
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts KubernetesNodeGroupV2Timeouts
    Timeouts configuration for create, update and delete operations.
    uuid String
    string → The node group's UUID. It is generated automatically.
    autoScaleMaxSize number
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    autoScaleMinSize number
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    autoScaleNodeCount number
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    availabilityZone string
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    clusterId string
    required string → The ID of the parent cluster. Forces replacement on change.
    createdAt string
    string → The timestamp when the node group was created (ISO 8601 format).
    diskSize number
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    diskType string
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    fixedScaleNodeCount number
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels {[key: string]: string}
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name string
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    nodeFlavor string
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallelUpgradeChunk number
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    region string
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    scaleType string
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    taints KubernetesNodeGroupV2Taint[]
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts KubernetesNodeGroupV2Timeouts
    Timeouts configuration for create, update and delete operations.
    uuid string
    string → The node group's UUID. It is generated automatically.
    auto_scale_max_size float
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    auto_scale_min_size float
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    auto_scale_node_count float
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    availability_zone str
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    cluster_id str
    required string → The ID of the parent cluster. Forces replacement on change.
    created_at str
    string → The timestamp when the node group was created (ISO 8601 format).
    disk_size float
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    disk_type str
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    fixed_scale_node_count float
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels Mapping[str, str]
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name str
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    node_flavor str
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallel_upgrade_chunk float
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    region str
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    scale_type str
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    taints Sequence[KubernetesNodeGroupV2TaintArgs]
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts KubernetesNodeGroupV2TimeoutsArgs
    Timeouts configuration for create, update and delete operations.
    uuid str
    string → The node group's UUID. It is generated automatically.
    autoScaleMaxSize Number
    optional number → The maximum number of nodes the autoscaler may scale out to. Must be greater than or equal to 0 and also greater than or equal to auto_scale_min_size. Required if scale_type is auto_scale.
    autoScaleMinSize Number
    optional number → The minimum number of nodes the autoscaler may scale down to. Must be greater than or equal to 0. Required if scale_type is auto_scale.
    autoScaleNodeCount Number
    number → During the cluster lifecycle, it indicates the current number of nodes in the node group if scale_type is auto_scale.
    availabilityZone String
    required string → The availability zone where the nodes will be placed. Forces replacement on change.
    clusterId String
    required string → The ID of the parent cluster. Forces replacement on change.
    createdAt String
    string → The timestamp when the node group was created (ISO 8601 format).
    diskSize Number
    required number → The size of the root volume in GB. Minimum is 1 GB. Forces replacement on change.
    diskType String
    required string → The type of root volume (e.g., ceph-ssd). Use vkcs.getKubernetesVolumeTypesV2 to list available types. Forces replacement on change.
    fixedScaleNodeCount Number
    optional number → The desired number of nodes. Minimum value is 0. Required if scale_type is fixed_scale.
    labels Map<String>
    optional map of string → Kubernetes labels to apply to nodes in this group. Keys/values must be valid Kubernetes label strings.
    name String
    required string → A unique name for the node group within the cluster. Must be 3-25 characters, lowercase alphanumeric and hyphens only. Forces replacement on change.
    nodeFlavor String
    required string → The flavor ID for each node. Changing this triggers a rolling upgrade of the nodes.
    parallelUpgradeChunk Number
    required number → The maximum percentage of nodes (1-100) that can be upgraded simultaneously during a rolling upgrade.
    region String
    optional string → The region where the node group will be created. Defaults to provider's region. Forces replacement on change.
    scaleType String
    required string → Type of scaling for the node group. Must be either fixed_scale or auto_scale. If scale_type is auto_scale, the condition auto_scale_min_size <= auto_scale_max_size must be met.
    taints List<Property Map>
    set → Taints to apply to nodes. Each taint must have key, value, and effect (one of NoSchedule, PreferNoSchedule, NoExecute).
    timeouts Property Map
    Timeouts configuration for create, update and delete operations.
    uuid String
    string → The node group's UUID. It is generated automatically.

    Supporting Types

    KubernetesNodeGroupV2Taint, KubernetesNodeGroupV2TaintArgs

    Effect string
    required string → The effect of the taint. Must be one of: NoSchedule, PreferNoSchedule, NoExecute.
    Key string
    required string → The taint key. Must be a valid Kubernetes label key.
    Value string
    required string → The taint value. Must be a valid Kubernetes label value.
    Effect string
    required string → The effect of the taint. Must be one of: NoSchedule, PreferNoSchedule, NoExecute.
    Key string
    required string → The taint key. Must be a valid Kubernetes label key.
    Value string
    required string → The taint value. Must be a valid Kubernetes label value.
    effect String
    required string → The effect of the taint. Must be one of: NoSchedule, PreferNoSchedule, NoExecute.
    key String
    required string → The taint key. Must be a valid Kubernetes label key.
    value String
    required string → The taint value. Must be a valid Kubernetes label value.
    effect string
    required string → The effect of the taint. Must be one of: NoSchedule, PreferNoSchedule, NoExecute.
    key string
    required string → The taint key. Must be a valid Kubernetes label key.
    value string
    required string → The taint value. Must be a valid Kubernetes label value.
    effect str
    required string → The effect of the taint. Must be one of: NoSchedule, PreferNoSchedule, NoExecute.
    key str
    required string → The taint key. Must be a valid Kubernetes label key.
    value str
    required string → The taint value. Must be a valid Kubernetes label value.
    effect String
    required string → The effect of the taint. Must be one of: NoSchedule, PreferNoSchedule, NoExecute.
    key String
    required string → The taint key. Must be a valid Kubernetes label key.
    value String
    required string → The taint value. Must be a valid Kubernetes label value.

    KubernetesNodeGroupV2Timeouts, KubernetesNodeGroupV2TimeoutsArgs

    Create string
    Timeout for create operation (e.g., 60m, 2h). Default is 30m.
    Delete string
    Timeout for delete operation (e.g., 120m, 3h). Default is 30m.
    Update string
    Timeout for update operation (e.g., 120m, 3h). Default is 30m.
    Create string
    Timeout for create operation (e.g., 60m, 2h). Default is 30m.
    Delete string
    Timeout for delete operation (e.g., 120m, 3h). Default is 30m.
    Update string
    Timeout for update operation (e.g., 120m, 3h). Default is 30m.
    create String
    Timeout for create operation (e.g., 60m, 2h). Default is 30m.
    delete String
    Timeout for delete operation (e.g., 120m, 3h). Default is 30m.
    update String
    Timeout for update operation (e.g., 120m, 3h). Default is 30m.
    create string
    Timeout for create operation (e.g., 60m, 2h). Default is 30m.
    delete string
    Timeout for delete operation (e.g., 120m, 3h). Default is 30m.
    update string
    Timeout for update operation (e.g., 120m, 3h). Default is 30m.
    create str
    Timeout for create operation (e.g., 60m, 2h). Default is 30m.
    delete str
    Timeout for delete operation (e.g., 120m, 3h). Default is 30m.
    update str
    Timeout for update operation (e.g., 120m, 3h). Default is 30m.
    create String
    Timeout for create operation (e.g., 60m, 2h). Default is 30m.
    delete String
    Timeout for delete operation (e.g., 120m, 3h). Default is 30m.
    update String
    Timeout for update operation (e.g., 120m, 3h). Default is 30m.

    Import

    Node groups can be imported using the id, e.g.

    $ pulumi import vkcs:index/kubernetesNodeGroupV2:KubernetesNodeGroupV2 k8s_node_group 39WHkEHwtXy1YWqka4D5xuBJxw4
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    vkcs vk-cs/terraform-provider-vkcs
    License
    Notes
    This Pulumi package is based on the vkcs Terraform Provider.
    Viewing docs for vkcs 0.15.0
    published on Tuesday, May 5, 2026 by vk-cs
      Try Pulumi Cloud free. Your team will thank you.