1. Packages
  2. Ionoscloud
  3. API Docs
  4. dsaas
  5. getNodePool
IonosCloud v0.2.3 published on Tuesday, May 13, 2025 by ionos-cloud

ionoscloud.dsaas.getNodePool

Explore with Pulumi AI

ionoscloud logo
IonosCloud v0.2.3 published on Tuesday, May 13, 2025 by ionos-cloud

    The Dataplatform Node Pool Data Source can be used to search for and return an existing Dataplatform Node Pool under a Dataplatform Cluster. If a single match is found, it will be returned. If your search results in multiple matches, an error will be returned. When this happens, please refine your search and make sure that your resources have unique names.

    Example Usage

    By ID

    import * as pulumi from "@pulumi/pulumi";
    import * as ionoscloud from "@pulumi/ionoscloud";
    
    const example = ionoscloud.dsaas.getNodePool({
        clusterId: "cluster_id",
        id: "node_pool_id",
    });
    
    import pulumi
    import pulumi_ionoscloud as ionoscloud
    
    example = ionoscloud.dsaas.get_node_pool(cluster_id="cluster_id",
        id="node_pool_id")
    
    package main
    
    import (
    	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/dsaas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dsaas.LookupNodePool(ctx, &dsaas.LookupNodePoolArgs{
    			ClusterId: "cluster_id",
    			Id:        pulumi.StringRef("node_pool_id"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ionoscloud = Pulumi.Ionoscloud;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Ionoscloud.Dsaas.GetNodePool.Invoke(new()
        {
            ClusterId = "cluster_id",
            Id = "node_pool_id",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ionoscloud.dsaas.DsaasFunctions;
    import com.pulumi.ionoscloud.dsaas.inputs.GetNodePoolArgs;
    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) {
            final var example = DsaasFunctions.getNodePool(GetNodePoolArgs.builder()
                .clusterId("cluster_id")
                .id("node_pool_id")
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: ionoscloud:dsaas:getNodePool
          arguments:
            clusterId: cluster_id
            id: node_pool_id
    

    By Name

    import * as pulumi from "@pulumi/pulumi";
    import * as ionoscloud from "@pulumi/ionoscloud";
    
    const example = ionoscloud.dsaas.getNodePool({
        clusterId: "cluster_id",
        name: "Dataplatform_Node_Pool_Example",
    });
    
    import pulumi
    import pulumi_ionoscloud as ionoscloud
    
    example = ionoscloud.dsaas.get_node_pool(cluster_id="cluster_id",
        name="Dataplatform_Node_Pool_Example")
    
    package main
    
    import (
    	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/dsaas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dsaas.LookupNodePool(ctx, &dsaas.LookupNodePoolArgs{
    			ClusterId: "cluster_id",
    			Name:      pulumi.StringRef("Dataplatform_Node_Pool_Example"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ionoscloud = Pulumi.Ionoscloud;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Ionoscloud.Dsaas.GetNodePool.Invoke(new()
        {
            ClusterId = "cluster_id",
            Name = "Dataplatform_Node_Pool_Example",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ionoscloud.dsaas.DsaasFunctions;
    import com.pulumi.ionoscloud.dsaas.inputs.GetNodePoolArgs;
    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) {
            final var example = DsaasFunctions.getNodePool(GetNodePoolArgs.builder()
                .clusterId("cluster_id")
                .name("Dataplatform_Node_Pool_Example")
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: ionoscloud:dsaas:getNodePool
          arguments:
            clusterId: cluster_id
            name: Dataplatform_Node_Pool_Example
    

    By Name with Partial Match

    import * as pulumi from "@pulumi/pulumi";
    import * as ionoscloud from "@pulumi/ionoscloud";
    
    const example = ionoscloud.dsaas.getNodePool({
        clusterId: "cluster_id",
        name: "_Example",
        partialMatch: true,
    });
    
    import pulumi
    import pulumi_ionoscloud as ionoscloud
    
    example = ionoscloud.dsaas.get_node_pool(cluster_id="cluster_id",
        name="_Example",
        partial_match=True)
    
    package main
    
    import (
    	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/dsaas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dsaas.LookupNodePool(ctx, &dsaas.LookupNodePoolArgs{
    			ClusterId:    "cluster_id",
    			Name:         pulumi.StringRef("_Example"),
    			PartialMatch: pulumi.BoolRef(true),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ionoscloud = Pulumi.Ionoscloud;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Ionoscloud.Dsaas.GetNodePool.Invoke(new()
        {
            ClusterId = "cluster_id",
            Name = "_Example",
            PartialMatch = true,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ionoscloud.dsaas.DsaasFunctions;
    import com.pulumi.ionoscloud.dsaas.inputs.GetNodePoolArgs;
    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) {
            final var example = DsaasFunctions.getNodePool(GetNodePoolArgs.builder()
                .clusterId("cluster_id")
                .name("_Example")
                .partialMatch(true)
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: ionoscloud:dsaas:getNodePool
          arguments:
            clusterId: cluster_id
            name: _Example
            partialMatch: true
    

    Using getNodePool

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getNodePool(args: GetNodePoolArgs, opts?: InvokeOptions): Promise<GetNodePoolResult>
    function getNodePoolOutput(args: GetNodePoolOutputArgs, opts?: InvokeOptions): Output<GetNodePoolResult>
    def get_node_pool(cluster_id: Optional[str] = None,
                      id: Optional[str] = None,
                      name: Optional[str] = None,
                      partial_match: Optional[bool] = None,
                      opts: Optional[InvokeOptions] = None) -> GetNodePoolResult
    def get_node_pool_output(cluster_id: Optional[pulumi.Input[str]] = None,
                      id: Optional[pulumi.Input[str]] = None,
                      name: Optional[pulumi.Input[str]] = None,
                      partial_match: Optional[pulumi.Input[bool]] = None,
                      opts: Optional[InvokeOptions] = None) -> Output[GetNodePoolResult]
    func LookupNodePool(ctx *Context, args *LookupNodePoolArgs, opts ...InvokeOption) (*LookupNodePoolResult, error)
    func LookupNodePoolOutput(ctx *Context, args *LookupNodePoolOutputArgs, opts ...InvokeOption) LookupNodePoolResultOutput

    > Note: This function is named LookupNodePool in the Go SDK.

    public static class GetNodePool 
    {
        public static Task<GetNodePoolResult> InvokeAsync(GetNodePoolArgs args, InvokeOptions? opts = null)
        public static Output<GetNodePoolResult> Invoke(GetNodePoolInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetNodePoolResult> getNodePool(GetNodePoolArgs args, InvokeOptions options)
    public static Output<GetNodePoolResult> getNodePool(GetNodePoolArgs args, InvokeOptions options)
    
    fn::invoke:
      function: ionoscloud:dsaas/getNodePool:getNodePool
      arguments:
        # arguments dictionary

    The following arguments are supported:

    ClusterId string
    ID of the cluster the searched node pool is part of.
    Id string
    ID of the node pool you want to search for.
    Name string
    Name of an existing cluster that you want to search for. Search by name is case-insensitive. The whole resource name is required if partial_match parameter is not set to true.
    PartialMatch bool

    Whether partial matching is allowed or not when using name argument. Default value is false.

    Either id or name must be provided. If none, or both are provided, the datasource will return an error.

    ClusterId string
    ID of the cluster the searched node pool is part of.
    Id string
    ID of the node pool you want to search for.
    Name string
    Name of an existing cluster that you want to search for. Search by name is case-insensitive. The whole resource name is required if partial_match parameter is not set to true.
    PartialMatch bool

    Whether partial matching is allowed or not when using name argument. Default value is false.

    Either id or name must be provided. If none, or both are provided, the datasource will return an error.

    clusterId String
    ID of the cluster the searched node pool is part of.
    id String
    ID of the node pool you want to search for.
    name String
    Name of an existing cluster that you want to search for. Search by name is case-insensitive. The whole resource name is required if partial_match parameter is not set to true.
    partialMatch Boolean

    Whether partial matching is allowed or not when using name argument. Default value is false.

    Either id or name must be provided. If none, or both are provided, the datasource will return an error.

    clusterId string
    ID of the cluster the searched node pool is part of.
    id string
    ID of the node pool you want to search for.
    name string
    Name of an existing cluster that you want to search for. Search by name is case-insensitive. The whole resource name is required if partial_match parameter is not set to true.
    partialMatch boolean

    Whether partial matching is allowed or not when using name argument. Default value is false.

    Either id or name must be provided. If none, or both are provided, the datasource will return an error.

    cluster_id str
    ID of the cluster the searched node pool is part of.
    id str
    ID of the node pool you want to search for.
    name str
    Name of an existing cluster that you want to search for. Search by name is case-insensitive. The whole resource name is required if partial_match parameter is not set to true.
    partial_match bool

    Whether partial matching is allowed or not when using name argument. Default value is false.

    Either id or name must be provided. If none, or both are provided, the datasource will return an error.

    clusterId String
    ID of the cluster the searched node pool is part of.
    id String
    ID of the node pool you want to search for.
    name String
    Name of an existing cluster that you want to search for. Search by name is case-insensitive. The whole resource name is required if partial_match parameter is not set to true.
    partialMatch Boolean

    Whether partial matching is allowed or not when using name argument. Default value is false.

    Either id or name must be provided. If none, or both are provided, the datasource will return an error.

    getNodePool Result

    The following output properties are available:

    Annotations Dictionary<string, string>
    Key-value pairs attached to node pool resource as Kubernetes annotations.
    AutoScalings List<Ionoscloud.GetNodePoolAutoScaling>
    Whether the Node Pool should autoscale. For more details, please check the API documentation
    AvailabilityZone string
    The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
    ClusterId string
    ID of the cluster the searched node pool is part of.
    CoresCount int
    The number of CPU cores per node.
    CpuFamily string
    A CPU family.
    DatacenterId string
    The UUID of the virtual data center (VDC) the cluster is provisioned.
    Id string
    ID of your node pool.
    Labels Dictionary<string, string>
    Key-value pairs attached to the node pool resource as Kubernetes labels.
    MaintenanceWindows List<Ionoscloud.GetNodePoolMaintenanceWindow>
    Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
    Name string
    The name of your node pool
    NodeCount int
    The number of nodes that make up the node pool.
    RamSize int
    The RAM size for one node in MB.
    StorageSize int
    The size of the volume in GB.
    StorageType string
    The type of hardware for the volume.
    Version string
    The version of the Data Platform.
    PartialMatch bool
    Annotations map[string]string
    Key-value pairs attached to node pool resource as Kubernetes annotations.
    AutoScalings []GetNodePoolAutoScaling
    Whether the Node Pool should autoscale. For more details, please check the API documentation
    AvailabilityZone string
    The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
    ClusterId string
    ID of the cluster the searched node pool is part of.
    CoresCount int
    The number of CPU cores per node.
    CpuFamily string
    A CPU family.
    DatacenterId string
    The UUID of the virtual data center (VDC) the cluster is provisioned.
    Id string
    ID of your node pool.
    Labels map[string]string
    Key-value pairs attached to the node pool resource as Kubernetes labels.
    MaintenanceWindows []GetNodePoolMaintenanceWindow
    Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
    Name string
    The name of your node pool
    NodeCount int
    The number of nodes that make up the node pool.
    RamSize int
    The RAM size for one node in MB.
    StorageSize int
    The size of the volume in GB.
    StorageType string
    The type of hardware for the volume.
    Version string
    The version of the Data Platform.
    PartialMatch bool
    annotations Map<String,String>
    Key-value pairs attached to node pool resource as Kubernetes annotations.
    autoScalings List<GetNodePoolAutoScaling>
    Whether the Node Pool should autoscale. For more details, please check the API documentation
    availabilityZone String
    The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
    clusterId String
    ID of the cluster the searched node pool is part of.
    coresCount Integer
    The number of CPU cores per node.
    cpuFamily String
    A CPU family.
    datacenterId String
    The UUID of the virtual data center (VDC) the cluster is provisioned.
    id String
    ID of your node pool.
    labels Map<String,String>
    Key-value pairs attached to the node pool resource as Kubernetes labels.
    maintenanceWindows List<GetNodePoolMaintenanceWindow>
    Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
    name String
    The name of your node pool
    nodeCount Integer
    The number of nodes that make up the node pool.
    ramSize Integer
    The RAM size for one node in MB.
    storageSize Integer
    The size of the volume in GB.
    storageType String
    The type of hardware for the volume.
    version String
    The version of the Data Platform.
    partialMatch Boolean
    annotations {[key: string]: string}
    Key-value pairs attached to node pool resource as Kubernetes annotations.
    autoScalings GetNodePoolAutoScaling[]
    Whether the Node Pool should autoscale. For more details, please check the API documentation
    availabilityZone string
    The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
    clusterId string
    ID of the cluster the searched node pool is part of.
    coresCount number
    The number of CPU cores per node.
    cpuFamily string
    A CPU family.
    datacenterId string
    The UUID of the virtual data center (VDC) the cluster is provisioned.
    id string
    ID of your node pool.
    labels {[key: string]: string}
    Key-value pairs attached to the node pool resource as Kubernetes labels.
    maintenanceWindows GetNodePoolMaintenanceWindow[]
    Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
    name string
    The name of your node pool
    nodeCount number
    The number of nodes that make up the node pool.
    ramSize number
    The RAM size for one node in MB.
    storageSize number
    The size of the volume in GB.
    storageType string
    The type of hardware for the volume.
    version string
    The version of the Data Platform.
    partialMatch boolean
    annotations Mapping[str, str]
    Key-value pairs attached to node pool resource as Kubernetes annotations.
    auto_scalings Sequence[GetNodePoolAutoScaling]
    Whether the Node Pool should autoscale. For more details, please check the API documentation
    availability_zone str
    The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
    cluster_id str
    ID of the cluster the searched node pool is part of.
    cores_count int
    The number of CPU cores per node.
    cpu_family str
    A CPU family.
    datacenter_id str
    The UUID of the virtual data center (VDC) the cluster is provisioned.
    id str
    ID of your node pool.
    labels Mapping[str, str]
    Key-value pairs attached to the node pool resource as Kubernetes labels.
    maintenance_windows Sequence[GetNodePoolMaintenanceWindow]
    Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
    name str
    The name of your node pool
    node_count int
    The number of nodes that make up the node pool.
    ram_size int
    The RAM size for one node in MB.
    storage_size int
    The size of the volume in GB.
    storage_type str
    The type of hardware for the volume.
    version str
    The version of the Data Platform.
    partial_match bool
    annotations Map<String>
    Key-value pairs attached to node pool resource as Kubernetes annotations.
    autoScalings List<Property Map>
    Whether the Node Pool should autoscale. For more details, please check the API documentation
    availabilityZone String
    The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
    clusterId String
    ID of the cluster the searched node pool is part of.
    coresCount Number
    The number of CPU cores per node.
    cpuFamily String
    A CPU family.
    datacenterId String
    The UUID of the virtual data center (VDC) the cluster is provisioned.
    id String
    ID of your node pool.
    labels Map<String>
    Key-value pairs attached to the node pool resource as Kubernetes labels.
    maintenanceWindows List<Property Map>
    Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
    name String
    The name of your node pool
    nodeCount Number
    The number of nodes that make up the node pool.
    ramSize Number
    The RAM size for one node in MB.
    storageSize Number
    The size of the volume in GB.
    storageType String
    The type of hardware for the volume.
    version String
    The version of the Data Platform.
    partialMatch Boolean

    Supporting Types

    GetNodePoolAutoScaling

    MaxNodeCount int
    The maximum number of worker nodes that the node pool can scale to. Should be greater than min_node_count
    MinNodeCount int
    The minimum number of worker nodes the node pool can scale down to. Should be less than max_node_count
    MaxNodeCount int
    The maximum number of worker nodes that the node pool can scale to. Should be greater than min_node_count
    MinNodeCount int
    The minimum number of worker nodes the node pool can scale down to. Should be less than max_node_count
    maxNodeCount Integer
    The maximum number of worker nodes that the node pool can scale to. Should be greater than min_node_count
    minNodeCount Integer
    The minimum number of worker nodes the node pool can scale down to. Should be less than max_node_count
    maxNodeCount number
    The maximum number of worker nodes that the node pool can scale to. Should be greater than min_node_count
    minNodeCount number
    The minimum number of worker nodes the node pool can scale down to. Should be less than max_node_count
    max_node_count int
    The maximum number of worker nodes that the node pool can scale to. Should be greater than min_node_count
    min_node_count int
    The minimum number of worker nodes the node pool can scale down to. Should be less than max_node_count
    maxNodeCount Number
    The maximum number of worker nodes that the node pool can scale to. Should be greater than min_node_count
    minNodeCount Number
    The minimum number of worker nodes the node pool can scale down to. Should be less than max_node_count

    GetNodePoolMaintenanceWindow

    DayOfTheWeek string
    Time string
    Time at which the maintenance should start.
    DayOfTheWeek string
    Time string
    Time at which the maintenance should start.
    dayOfTheWeek String
    time String
    Time at which the maintenance should start.
    dayOfTheWeek string
    time string
    Time at which the maintenance should start.
    day_of_the_week str
    time str
    Time at which the maintenance should start.
    dayOfTheWeek String
    time String
    Time at which the maintenance should start.

    Package Details

    Repository
    ionoscloud ionos-cloud/pulumi-ionoscloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the ionoscloud Terraform Provider.
    ionoscloud logo
    IonosCloud v0.2.3 published on Tuesday, May 13, 2025 by ionos-cloud