1. Packages
  2. Vkcs Provider
  3. API Docs
  4. KubernetesNodeGroup
vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs

vkcs.KubernetesNodeGroup

Explore with Pulumi AI

vkcs logo
vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs

    Provides a cluster node group resource. This can be used to create, modify and delete cluster’s node group.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as vkcs from "@pulumi/vkcs";
    
    const defaultNg = new vkcs.KubernetesNodeGroup("defaultNg", {
        clusterId: vkcs_kubernetes_cluster.k8s_cluster.id,
        nodeCount: 1,
        maxNodes: 5,
        minNodes: 1,
        labels: [
            {
                key: "env",
                value: "test",
            },
            {
                key: "disktype",
                value: "ssd",
            },
        ],
        taints: [
            {
                key: "taintkey1",
                value: "taintvalue1",
                effect: "PreferNoSchedule",
            },
            {
                key: "taintkey2",
                value: "taintvalue2",
                effect: "PreferNoSchedule",
            },
        ],
    });
    
    import pulumi
    import pulumi_vkcs as vkcs
    
    default_ng = vkcs.KubernetesNodeGroup("defaultNg",
        cluster_id=vkcs_kubernetes_cluster["k8s_cluster"]["id"],
        node_count=1,
        max_nodes=5,
        min_nodes=1,
        labels=[
            {
                "key": "env",
                "value": "test",
            },
            {
                "key": "disktype",
                "value": "ssd",
            },
        ],
        taints=[
            {
                "key": "taintkey1",
                "value": "taintvalue1",
                "effect": "PreferNoSchedule",
            },
            {
                "key": "taintkey2",
                "value": "taintvalue2",
                "effect": "PreferNoSchedule",
            },
        ])
    
    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.NewKubernetesNodeGroup(ctx, "defaultNg", &vkcs.KubernetesNodeGroupArgs{
    			ClusterId: pulumi.Any(vkcs_kubernetes_cluster.K8s_cluster.Id),
    			NodeCount: pulumi.Float64(1),
    			MaxNodes:  pulumi.Float64(5),
    			MinNodes:  pulumi.Float64(1),
    			Labels: vkcs.KubernetesNodeGroupLabelArray{
    				&vkcs.KubernetesNodeGroupLabelArgs{
    					Key:   pulumi.String("env"),
    					Value: pulumi.String("test"),
    				},
    				&vkcs.KubernetesNodeGroupLabelArgs{
    					Key:   pulumi.String("disktype"),
    					Value: pulumi.String("ssd"),
    				},
    			},
    			Taints: vkcs.KubernetesNodeGroupTaintArray{
    				&vkcs.KubernetesNodeGroupTaintArgs{
    					Key:    pulumi.String("taintkey1"),
    					Value:  pulumi.String("taintvalue1"),
    					Effect: pulumi.String("PreferNoSchedule"),
    				},
    				&vkcs.KubernetesNodeGroupTaintArgs{
    					Key:    pulumi.String("taintkey2"),
    					Value:  pulumi.String("taintvalue2"),
    					Effect: pulumi.String("PreferNoSchedule"),
    				},
    			},
    		})
    		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 defaultNg = new Vkcs.KubernetesNodeGroup("defaultNg", new()
        {
            ClusterId = vkcs_kubernetes_cluster.K8s_cluster.Id,
            NodeCount = 1,
            MaxNodes = 5,
            MinNodes = 1,
            Labels = new[]
            {
                new Vkcs.Inputs.KubernetesNodeGroupLabelArgs
                {
                    Key = "env",
                    Value = "test",
                },
                new Vkcs.Inputs.KubernetesNodeGroupLabelArgs
                {
                    Key = "disktype",
                    Value = "ssd",
                },
            },
            Taints = new[]
            {
                new Vkcs.Inputs.KubernetesNodeGroupTaintArgs
                {
                    Key = "taintkey1",
                    Value = "taintvalue1",
                    Effect = "PreferNoSchedule",
                },
                new Vkcs.Inputs.KubernetesNodeGroupTaintArgs
                {
                    Key = "taintkey2",
                    Value = "taintvalue2",
                    Effect = "PreferNoSchedule",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vkcs.KubernetesNodeGroup;
    import com.pulumi.vkcs.KubernetesNodeGroupArgs;
    import com.pulumi.vkcs.inputs.KubernetesNodeGroupLabelArgs;
    import com.pulumi.vkcs.inputs.KubernetesNodeGroupTaintArgs;
    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 defaultNg = new KubernetesNodeGroup("defaultNg", KubernetesNodeGroupArgs.builder()
                .clusterId(vkcs_kubernetes_cluster.k8s_cluster().id())
                .nodeCount(1)
                .maxNodes(5)
                .minNodes(1)
                .labels(            
                    KubernetesNodeGroupLabelArgs.builder()
                        .key("env")
                        .value("test")
                        .build(),
                    KubernetesNodeGroupLabelArgs.builder()
                        .key("disktype")
                        .value("ssd")
                        .build())
                .taints(            
                    KubernetesNodeGroupTaintArgs.builder()
                        .key("taintkey1")
                        .value("taintvalue1")
                        .effect("PreferNoSchedule")
                        .build(),
                    KubernetesNodeGroupTaintArgs.builder()
                        .key("taintkey2")
                        .value("taintvalue2")
                        .effect("PreferNoSchedule")
                        .build())
                .build());
    
        }
    }
    
    resources:
      defaultNg:
        type: vkcs:KubernetesNodeGroup
        properties:
          clusterId: ${vkcs_kubernetes_cluster.k8s_cluster.id}
          nodeCount: 1
          maxNodes: 5
          minNodes: 1
          labels:
            - key: env
              value: test
            - key: disktype
              value: ssd
          taints:
            - key: taintkey1
              value: taintvalue1
              effect: PreferNoSchedule
            - key: taintkey2
              value: taintvalue2
              effect: PreferNoSchedule
    

    Create KubernetesNodeGroup Resource

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

    Constructor syntax

    new KubernetesNodeGroup(name: string, args: KubernetesNodeGroupArgs, opts?: CustomResourceOptions);
    @overload
    def KubernetesNodeGroup(resource_name: str,
                            args: KubernetesNodeGroupArgs,
                            opts: Optional[ResourceOptions] = None)
    
    @overload
    def KubernetesNodeGroup(resource_name: str,
                            opts: Optional[ResourceOptions] = None,
                            cluster_id: Optional[str] = None,
                            node_count: Optional[float] = None,
                            max_node_unavailable: Optional[float] = None,
                            flavor_id: Optional[str] = None,
                            kubernetes_node_group_id: Optional[str] = None,
                            labels: Optional[Sequence[KubernetesNodeGroupLabelArgs]] = None,
                            autoscaling_enabled: Optional[bool] = None,
                            max_nodes: Optional[float] = None,
                            min_nodes: Optional[float] = None,
                            name: Optional[str] = None,
                            availability_zones: Optional[Sequence[str]] = None,
                            taints: Optional[Sequence[KubernetesNodeGroupTaintArgs]] = None,
                            timeouts: Optional[KubernetesNodeGroupTimeoutsArgs] = None,
                            volume_size: Optional[float] = None,
                            volume_type: Optional[str] = None)
    func NewKubernetesNodeGroup(ctx *Context, name string, args KubernetesNodeGroupArgs, opts ...ResourceOption) (*KubernetesNodeGroup, error)
    public KubernetesNodeGroup(string name, KubernetesNodeGroupArgs args, CustomResourceOptions? opts = null)
    public KubernetesNodeGroup(String name, KubernetesNodeGroupArgs args)
    public KubernetesNodeGroup(String name, KubernetesNodeGroupArgs args, CustomResourceOptions options)
    
    type: vkcs:KubernetesNodeGroup
    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 KubernetesNodeGroupArgs
    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 KubernetesNodeGroupArgs
    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 KubernetesNodeGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args KubernetesNodeGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args KubernetesNodeGroupArgs
    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 kubernetesNodeGroupResource = new Vkcs.KubernetesNodeGroup("kubernetesNodeGroupResource", new()
    {
        ClusterId = "string",
        NodeCount = 0,
        MaxNodeUnavailable = 0,
        FlavorId = "string",
        KubernetesNodeGroupId = "string",
        Labels = new[]
        {
            new Vkcs.Inputs.KubernetesNodeGroupLabelArgs
            {
                Key = "string",
                Value = "string",
            },
        },
        AutoscalingEnabled = false,
        MaxNodes = 0,
        MinNodes = 0,
        Name = "string",
        AvailabilityZones = new[]
        {
            "string",
        },
        Taints = new[]
        {
            new Vkcs.Inputs.KubernetesNodeGroupTaintArgs
            {
                Effect = "string",
                Key = "string",
                Value = "string",
            },
        },
        Timeouts = new Vkcs.Inputs.KubernetesNodeGroupTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Update = "string",
        },
        VolumeSize = 0,
        VolumeType = "string",
    });
    
    example, err := vkcs.NewKubernetesNodeGroup(ctx, "kubernetesNodeGroupResource", &vkcs.KubernetesNodeGroupArgs{
    	ClusterId:             pulumi.String("string"),
    	NodeCount:             pulumi.Float64(0),
    	MaxNodeUnavailable:    pulumi.Float64(0),
    	FlavorId:              pulumi.String("string"),
    	KubernetesNodeGroupId: pulumi.String("string"),
    	Labels: vkcs.KubernetesNodeGroupLabelArray{
    		&vkcs.KubernetesNodeGroupLabelArgs{
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	AutoscalingEnabled: pulumi.Bool(false),
    	MaxNodes:           pulumi.Float64(0),
    	MinNodes:           pulumi.Float64(0),
    	Name:               pulumi.String("string"),
    	AvailabilityZones: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Taints: vkcs.KubernetesNodeGroupTaintArray{
    		&vkcs.KubernetesNodeGroupTaintArgs{
    			Effect: pulumi.String("string"),
    			Key:    pulumi.String("string"),
    			Value:  pulumi.String("string"),
    		},
    	},
    	Timeouts: &vkcs.KubernetesNodeGroupTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    	VolumeSize: pulumi.Float64(0),
    	VolumeType: pulumi.String("string"),
    })
    
    var kubernetesNodeGroupResource = new KubernetesNodeGroup("kubernetesNodeGroupResource", KubernetesNodeGroupArgs.builder()
        .clusterId("string")
        .nodeCount(0)
        .maxNodeUnavailable(0)
        .flavorId("string")
        .kubernetesNodeGroupId("string")
        .labels(KubernetesNodeGroupLabelArgs.builder()
            .key("string")
            .value("string")
            .build())
        .autoscalingEnabled(false)
        .maxNodes(0)
        .minNodes(0)
        .name("string")
        .availabilityZones("string")
        .taints(KubernetesNodeGroupTaintArgs.builder()
            .effect("string")
            .key("string")
            .value("string")
            .build())
        .timeouts(KubernetesNodeGroupTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .update("string")
            .build())
        .volumeSize(0)
        .volumeType("string")
        .build());
    
    kubernetes_node_group_resource = vkcs.KubernetesNodeGroup("kubernetesNodeGroupResource",
        cluster_id="string",
        node_count=0,
        max_node_unavailable=0,
        flavor_id="string",
        kubernetes_node_group_id="string",
        labels=[{
            "key": "string",
            "value": "string",
        }],
        autoscaling_enabled=False,
        max_nodes=0,
        min_nodes=0,
        name="string",
        availability_zones=["string"],
        taints=[{
            "effect": "string",
            "key": "string",
            "value": "string",
        }],
        timeouts={
            "create": "string",
            "delete": "string",
            "update": "string",
        },
        volume_size=0,
        volume_type="string")
    
    const kubernetesNodeGroupResource = new vkcs.KubernetesNodeGroup("kubernetesNodeGroupResource", {
        clusterId: "string",
        nodeCount: 0,
        maxNodeUnavailable: 0,
        flavorId: "string",
        kubernetesNodeGroupId: "string",
        labels: [{
            key: "string",
            value: "string",
        }],
        autoscalingEnabled: false,
        maxNodes: 0,
        minNodes: 0,
        name: "string",
        availabilityZones: ["string"],
        taints: [{
            effect: "string",
            key: "string",
            value: "string",
        }],
        timeouts: {
            create: "string",
            "delete": "string",
            update: "string",
        },
        volumeSize: 0,
        volumeType: "string",
    });
    
    type: vkcs:KubernetesNodeGroup
    properties:
        autoscalingEnabled: false
        availabilityZones:
            - string
        clusterId: string
        flavorId: string
        kubernetesNodeGroupId: string
        labels:
            - key: string
              value: string
        maxNodeUnavailable: 0
        maxNodes: 0
        minNodes: 0
        name: string
        nodeCount: 0
        taints:
            - effect: string
              key: string
              value: string
        timeouts:
            create: string
            delete: string
            update: string
        volumeSize: 0
        volumeType: string
    

    KubernetesNodeGroup 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 KubernetesNodeGroup resource accepts the following input properties:

    ClusterId string
    required string → The UUID of the existing cluster.
    NodeCount double
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    AutoscalingEnabled bool
    optional boolean → Determines whether the autoscaling is enabled.
    AvailabilityZones List<string>
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    FlavorId string
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    KubernetesNodeGroupId string
    string → ID of the resource.
    Labels List<KubernetesNodeGroupLabel>
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    MaxNodeUnavailable double
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    MaxNodes double
    optional number → The maximum allowed nodes for this node group.
    MinNodes double
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    Name string
    required string → The name of node group to create. Changing this will force to create a new node group.
    Taints List<KubernetesNodeGroupTaint>
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    Timeouts KubernetesNodeGroupTimeouts
    VolumeSize double
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    VolumeType string
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    ClusterId string
    required string → The UUID of the existing cluster.
    NodeCount float64
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    AutoscalingEnabled bool
    optional boolean → Determines whether the autoscaling is enabled.
    AvailabilityZones []string
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    FlavorId string
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    KubernetesNodeGroupId string
    string → ID of the resource.
    Labels []KubernetesNodeGroupLabelArgs
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    MaxNodeUnavailable float64
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    MaxNodes float64
    optional number → The maximum allowed nodes for this node group.
    MinNodes float64
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    Name string
    required string → The name of node group to create. Changing this will force to create a new node group.
    Taints []KubernetesNodeGroupTaintArgs
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    Timeouts KubernetesNodeGroupTimeoutsArgs
    VolumeSize float64
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    VolumeType string
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    clusterId String
    required string → The UUID of the existing cluster.
    nodeCount Double
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    autoscalingEnabled Boolean
    optional boolean → Determines whether the autoscaling is enabled.
    availabilityZones List<String>
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    flavorId String
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetesNodeGroupId String
    string → ID of the resource.
    labels List<KubernetesNodeGroupLabel>
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    maxNodeUnavailable Double
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    maxNodes Double
    optional number → The maximum allowed nodes for this node group.
    minNodes Double
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name String
    required string → The name of node group to create. Changing this will force to create a new node group.
    taints List<KubernetesNodeGroupTaint>
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts KubernetesNodeGroupTimeouts
    volumeSize Double
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volumeType String
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    clusterId string
    required string → The UUID of the existing cluster.
    nodeCount number
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    autoscalingEnabled boolean
    optional boolean → Determines whether the autoscaling is enabled.
    availabilityZones string[]
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    flavorId string
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetesNodeGroupId string
    string → ID of the resource.
    labels KubernetesNodeGroupLabel[]
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    maxNodeUnavailable number
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    maxNodes number
    optional number → The maximum allowed nodes for this node group.
    minNodes number
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name string
    required string → The name of node group to create. Changing this will force to create a new node group.
    taints KubernetesNodeGroupTaint[]
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts KubernetesNodeGroupTimeouts
    volumeSize number
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volumeType string
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    cluster_id str
    required string → The UUID of the existing cluster.
    node_count float
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    autoscaling_enabled bool
    optional boolean → Determines whether the autoscaling is enabled.
    availability_zones Sequence[str]
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    flavor_id str
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetes_node_group_id str
    string → ID of the resource.
    labels Sequence[KubernetesNodeGroupLabelArgs]
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    max_node_unavailable float
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    max_nodes float
    optional number → The maximum allowed nodes for this node group.
    min_nodes float
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name str
    required string → The name of node group to create. Changing this will force to create a new node group.
    taints Sequence[KubernetesNodeGroupTaintArgs]
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts KubernetesNodeGroupTimeoutsArgs
    volume_size float
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volume_type str
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    clusterId String
    required string → The UUID of the existing cluster.
    nodeCount Number
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    autoscalingEnabled Boolean
    optional boolean → Determines whether the autoscaling is enabled.
    availabilityZones List<String>
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    flavorId String
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetesNodeGroupId String
    string → ID of the resource.
    labels List<Property Map>
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    maxNodeUnavailable Number
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    maxNodes Number
    optional number → The maximum allowed nodes for this node group.
    minNodes Number
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name String
    required string → The name of node group to create. Changing this will force to create a new node group.
    taints List<Property Map>
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts Property Map
    volumeSize Number
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volumeType String
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.

    Outputs

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

    CreatedAt string
    string → The time at which node group was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    State string
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    UpdatedAt string
    string → The time at which node group was created.
    Uuid string
    string → The UUID of the cluster's node group.
    CreatedAt string
    string → The time at which node group was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    State string
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    UpdatedAt string
    string → The time at which node group was created.
    Uuid string
    string → The UUID of the cluster's node group.
    createdAt String
    string → The time at which node group was created.
    id String
    The provider-assigned unique ID for this managed resource.
    state String
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    updatedAt String
    string → The time at which node group was created.
    uuid String
    string → The UUID of the cluster's node group.
    createdAt string
    string → The time at which node group was created.
    id string
    The provider-assigned unique ID for this managed resource.
    state string
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    updatedAt string
    string → The time at which node group was created.
    uuid string
    string → The UUID of the cluster's node group.
    created_at str
    string → The time at which node group was created.
    id str
    The provider-assigned unique ID for this managed resource.
    state str
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    updated_at str
    string → The time at which node group was created.
    uuid str
    string → The UUID of the cluster's node group.
    createdAt String
    string → The time at which node group was created.
    id String
    The provider-assigned unique ID for this managed resource.
    state String
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    updatedAt String
    string → The time at which node group was created.
    uuid String
    string → The UUID of the cluster's node group.

    Look up Existing KubernetesNodeGroup Resource

    Get an existing KubernetesNodeGroup 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?: KubernetesNodeGroupState, opts?: CustomResourceOptions): KubernetesNodeGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            autoscaling_enabled: Optional[bool] = None,
            availability_zones: Optional[Sequence[str]] = None,
            cluster_id: Optional[str] = None,
            created_at: Optional[str] = None,
            flavor_id: Optional[str] = None,
            kubernetes_node_group_id: Optional[str] = None,
            labels: Optional[Sequence[KubernetesNodeGroupLabelArgs]] = None,
            max_node_unavailable: Optional[float] = None,
            max_nodes: Optional[float] = None,
            min_nodes: Optional[float] = None,
            name: Optional[str] = None,
            node_count: Optional[float] = None,
            state: Optional[str] = None,
            taints: Optional[Sequence[KubernetesNodeGroupTaintArgs]] = None,
            timeouts: Optional[KubernetesNodeGroupTimeoutsArgs] = None,
            updated_at: Optional[str] = None,
            uuid: Optional[str] = None,
            volume_size: Optional[float] = None,
            volume_type: Optional[str] = None) -> KubernetesNodeGroup
    func GetKubernetesNodeGroup(ctx *Context, name string, id IDInput, state *KubernetesNodeGroupState, opts ...ResourceOption) (*KubernetesNodeGroup, error)
    public static KubernetesNodeGroup Get(string name, Input<string> id, KubernetesNodeGroupState? state, CustomResourceOptions? opts = null)
    public static KubernetesNodeGroup get(String name, Output<String> id, KubernetesNodeGroupState state, CustomResourceOptions options)
    resources:  _:    type: vkcs:KubernetesNodeGroup    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:
    AutoscalingEnabled bool
    optional boolean → Determines whether the autoscaling is enabled.
    AvailabilityZones List<string>
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    ClusterId string
    required string → The UUID of the existing cluster.
    CreatedAt string
    string → The time at which node group was created.
    FlavorId string
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    KubernetesNodeGroupId string
    string → ID of the resource.
    Labels List<KubernetesNodeGroupLabel>
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    MaxNodeUnavailable double
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    MaxNodes double
    optional number → The maximum allowed nodes for this node group.
    MinNodes double
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    Name string
    required string → The name of node group to create. Changing this will force to create a new node group.
    NodeCount double
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    State string
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    Taints List<KubernetesNodeGroupTaint>
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    Timeouts KubernetesNodeGroupTimeouts
    UpdatedAt string
    string → The time at which node group was created.
    Uuid string
    string → The UUID of the cluster's node group.
    VolumeSize double
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    VolumeType string
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    AutoscalingEnabled bool
    optional boolean → Determines whether the autoscaling is enabled.
    AvailabilityZones []string
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    ClusterId string
    required string → The UUID of the existing cluster.
    CreatedAt string
    string → The time at which node group was created.
    FlavorId string
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    KubernetesNodeGroupId string
    string → ID of the resource.
    Labels []KubernetesNodeGroupLabelArgs
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    MaxNodeUnavailable float64
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    MaxNodes float64
    optional number → The maximum allowed nodes for this node group.
    MinNodes float64
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    Name string
    required string → The name of node group to create. Changing this will force to create a new node group.
    NodeCount float64
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    State string
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    Taints []KubernetesNodeGroupTaintArgs
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    Timeouts KubernetesNodeGroupTimeoutsArgs
    UpdatedAt string
    string → The time at which node group was created.
    Uuid string
    string → The UUID of the cluster's node group.
    VolumeSize float64
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    VolumeType string
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    autoscalingEnabled Boolean
    optional boolean → Determines whether the autoscaling is enabled.
    availabilityZones List<String>
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    clusterId String
    required string → The UUID of the existing cluster.
    createdAt String
    string → The time at which node group was created.
    flavorId String
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetesNodeGroupId String
    string → ID of the resource.
    labels List<KubernetesNodeGroupLabel>
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    maxNodeUnavailable Double
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    maxNodes Double
    optional number → The maximum allowed nodes for this node group.
    minNodes Double
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name String
    required string → The name of node group to create. Changing this will force to create a new node group.
    nodeCount Double
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    state String
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    taints List<KubernetesNodeGroupTaint>
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts KubernetesNodeGroupTimeouts
    updatedAt String
    string → The time at which node group was created.
    uuid String
    string → The UUID of the cluster's node group.
    volumeSize Double
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volumeType String
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    autoscalingEnabled boolean
    optional boolean → Determines whether the autoscaling is enabled.
    availabilityZones string[]
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    clusterId string
    required string → The UUID of the existing cluster.
    createdAt string
    string → The time at which node group was created.
    flavorId string
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetesNodeGroupId string
    string → ID of the resource.
    labels KubernetesNodeGroupLabel[]
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    maxNodeUnavailable number
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    maxNodes number
    optional number → The maximum allowed nodes for this node group.
    minNodes number
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name string
    required string → The name of node group to create. Changing this will force to create a new node group.
    nodeCount number
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    state string
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    taints KubernetesNodeGroupTaint[]
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts KubernetesNodeGroupTimeouts
    updatedAt string
    string → The time at which node group was created.
    uuid string
    string → The UUID of the cluster's node group.
    volumeSize number
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volumeType string
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    autoscaling_enabled bool
    optional boolean → Determines whether the autoscaling is enabled.
    availability_zones Sequence[str]
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    cluster_id str
    required string → The UUID of the existing cluster.
    created_at str
    string → The time at which node group was created.
    flavor_id str
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetes_node_group_id str
    string → ID of the resource.
    labels Sequence[KubernetesNodeGroupLabelArgs]
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    max_node_unavailable float
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    max_nodes float
    optional number → The maximum allowed nodes for this node group.
    min_nodes float
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name str
    required string → The name of node group to create. Changing this will force to create a new node group.
    node_count float
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    state str
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    taints Sequence[KubernetesNodeGroupTaintArgs]
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts KubernetesNodeGroupTimeoutsArgs
    updated_at str
    string → The time at which node group was created.
    uuid str
    string → The UUID of the cluster's node group.
    volume_size float
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volume_type str
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.
    autoscalingEnabled Boolean
    optional boolean → Determines whether the autoscaling is enabled.
    availabilityZones List<String>
    optional set of string → The list of availability zones of the node group. By default, a node group is created at cluster's zone.
    clusterId String
    required string → The UUID of the existing cluster.
    createdAt String
    string → The time at which node group was created.
    flavorId String
    optional string → The flavor UUID of this node group. Note: Starting with v0.5.1, changing this attribute does not force the resource to be recreated, which requires an in-place update and may not be provided in custom deployments. In this case, contact support for clarification.
    kubernetesNodeGroupId String
    string → ID of the resource.
    labels List<Property Map>
    optional → The list of objects representing representing additional properties of the node group. Each object should have attribute "key". Object may also have optional attribute "value".
    maxNodeUnavailable Number
    optional number → The maximum number of nodes that can fail during an upgrade. The default value is 25 percent.
    maxNodes Number
    optional number → The maximum allowed nodes for this node group.
    minNodes Number
    optional number → The minimum allowed nodes for this node group. Default to 0 if not set.
    name String
    required string → The name of node group to create. Changing this will force to create a new node group.
    nodeCount Number
    required number → The node count for this node group. Should be greater than 0. If autoscaling_enabled parameter is set, this attribute will be ignored during update.
    state String
    string → Determines current state of node group (RUNNING, SHUTOFF, ERROR).
    taints List<Property Map>
    optional → The list of objects representing node group taints. Each object should have following attributes: key, value, effect.
    timeouts Property Map
    updatedAt String
    string → The time at which node group was created.
    uuid String
    string → The UUID of the cluster's node group.
    volumeSize Number
    optional number → The size in GB for volume to load nodes from. Changing this will force to create a new node group.
    volumeType String
    optional string → The volume type to load nodes from. Changing this will force to create a new node group.

    Supporting Types

    KubernetesNodeGroupLabel, KubernetesNodeGroupLabelArgs

    Key string
    required string
    Value string
    optional string
    Key string
    required string
    Value string
    optional string
    key String
    required string
    value String
    optional string
    key string
    required string
    value string
    optional string
    key str
    required string
    value str
    optional string
    key String
    required string
    value String
    optional string

    KubernetesNodeGroupTaint, KubernetesNodeGroupTaintArgs

    Effect string
    required string
    Key string
    required string
    Value string
    required string
    Effect string
    required string
    Key string
    required string
    Value string
    required string
    effect String
    required string
    key String
    required string
    value String
    required string
    effect string
    required string
    key string
    required string
    value string
    required string
    effect str
    required string
    key str
    required string
    value str
    required string
    effect String
    required string
    key String
    required string
    value String
    required string

    KubernetesNodeGroupTimeouts, KubernetesNodeGroupTimeoutsArgs

    Create string
    Delete string
    Update string
    Create string
    Delete string
    Update string
    create String
    delete String
    update String
    create string
    delete string
    update string
    create str
    delete str
    update str
    create String
    delete String
    update String

    Import

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

    $ pulumi import vkcs:index/kubernetesNodeGroup:KubernetesNodeGroup ng aa14de9c-c5f5-4cc0-869c-ce655419df76
    

    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.
    vkcs logo
    vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs