Viewing docs for Databricks v0.4.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
Viewing docs for Databricks v0.4.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
Related Resources
The following resources are used in the same context:
- End to end workspace management guide
- databricks.Cluster to create Databricks Clusters.
- databricks.ClusterPolicy to create a databricks.Cluster policy, which limits the ability to create clusters based on a set of rules.
- databricks.InstancePool to manage instance pools to reduce cluster start and auto-scaling times by maintaining a set of idle, ready-to-use instances.
- databricks.Job to manage Databricks Jobs to run non-interactive code in a databricks_cluster.
Example Usage
using Pulumi;
using Databricks = Pulumi.Databricks;
class MyStack : Stack
{
public MyStack()
{
var withGpu = Output.Create(Databricks.GetNodeType.InvokeAsync(new Databricks.GetNodeTypeArgs
{
LocalDisk = true,
MinCores = 16,
GbPerCore = 1,
MinGpus = 1,
}));
var gpuMl = Output.Create(Databricks.GetSparkVersion.InvokeAsync(new Databricks.GetSparkVersionArgs
{
Gpu = true,
Ml = true,
}));
var research = new Databricks.Cluster("research", new Databricks.ClusterArgs
{
ClusterName = "Research Cluster",
SparkVersion = gpuMl.Apply(gpuMl => gpuMl.Id),
NodeTypeId = withGpu.Apply(withGpu => withGpu.Id),
AutoterminationMinutes = 20,
Autoscale = new Databricks.Inputs.ClusterAutoscaleArgs
{
MinWorkers = 1,
MaxWorkers = 50,
},
});
}
}
package main
import (
"github.com/pulumi/pulumi-databricks/sdk/go/databricks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
withGpu, err := databricks.GetNodeType(ctx, &GetNodeTypeArgs{
LocalDisk: pulumi.BoolRef(true),
MinCores: pulumi.IntRef(16),
GbPerCore: pulumi.IntRef(1),
MinGpus: pulumi.IntRef(1),
}, nil)
if err != nil {
return err
}
gpuMl, err := databricks.GetSparkVersion(ctx, &GetSparkVersionArgs{
Gpu: pulumi.BoolRef(true),
Ml: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
_, err = databricks.NewCluster(ctx, "research", &databricks.ClusterArgs{
ClusterName: pulumi.String("Research Cluster"),
SparkVersion: pulumi.String(gpuMl.Id),
NodeTypeId: pulumi.String(withGpu.Id),
AutoterminationMinutes: pulumi.Int(20),
Autoscale: &ClusterAutoscaleArgs{
MinWorkers: pulumi.Int(1),
MaxWorkers: pulumi.Int(50),
},
})
if err != nil {
return err
}
return nil
})
}
Example coming soon!
import * as pulumi from "@pulumi/pulumi";
import * as databricks from "@pulumi/databricks";
const withGpu = databricks.getNodeType({
localDisk: true,
minCores: 16,
gbPerCore: 1,
minGpus: 1,
});
const gpuMl = databricks.getSparkVersion({
gpu: true,
ml: true,
});
const research = new databricks.Cluster("research", {
clusterName: "Research Cluster",
sparkVersion: gpuMl.then(gpuMl => gpuMl.id),
nodeTypeId: withGpu.then(withGpu => withGpu.id),
autoterminationMinutes: 20,
autoscale: {
minWorkers: 1,
maxWorkers: 50,
},
});
import pulumi
import pulumi_databricks as databricks
with_gpu = databricks.get_node_type(local_disk=True,
min_cores=16,
gb_per_core=1,
min_gpus=1)
gpu_ml = databricks.get_spark_version(gpu=True,
ml=True)
research = databricks.Cluster("research",
cluster_name="Research Cluster",
spark_version=gpu_ml.id,
node_type_id=with_gpu.id,
autotermination_minutes=20,
autoscale=databricks.ClusterAutoscaleArgs(
min_workers=1,
max_workers=50,
))
Example coming soon!
Using getNodeType
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 getNodeType(args: GetNodeTypeArgs, opts?: InvokeOptions): Promise<GetNodeTypeResult>
function getNodeTypeOutput(args: GetNodeTypeOutputArgs, opts?: InvokeOptions): Output<GetNodeTypeResult>def get_node_type(category: Optional[str] = None,
gb_per_core: Optional[int] = None,
graviton: Optional[bool] = None,
is_io_cache_enabled: Optional[bool] = None,
local_disk: Optional[bool] = None,
min_cores: Optional[int] = None,
min_gpus: Optional[int] = None,
min_memory_gb: Optional[int] = None,
photon_driver_capable: Optional[bool] = None,
photon_worker_capable: Optional[bool] = None,
support_port_forwarding: Optional[bool] = None,
opts: Optional[InvokeOptions] = None) -> GetNodeTypeResult
def get_node_type_output(category: Optional[pulumi.Input[str]] = None,
gb_per_core: Optional[pulumi.Input[int]] = None,
graviton: Optional[pulumi.Input[bool]] = None,
is_io_cache_enabled: Optional[pulumi.Input[bool]] = None,
local_disk: Optional[pulumi.Input[bool]] = None,
min_cores: Optional[pulumi.Input[int]] = None,
min_gpus: Optional[pulumi.Input[int]] = None,
min_memory_gb: Optional[pulumi.Input[int]] = None,
photon_driver_capable: Optional[pulumi.Input[bool]] = None,
photon_worker_capable: Optional[pulumi.Input[bool]] = None,
support_port_forwarding: Optional[pulumi.Input[bool]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetNodeTypeResult]func GetNodeType(ctx *Context, args *GetNodeTypeArgs, opts ...InvokeOption) (*GetNodeTypeResult, error)
func GetNodeTypeOutput(ctx *Context, args *GetNodeTypeOutputArgs, opts ...InvokeOption) GetNodeTypeResultOutput> Note: This function is named GetNodeType in the Go SDK.
public static class GetNodeType
{
public static Task<GetNodeTypeResult> InvokeAsync(GetNodeTypeArgs args, InvokeOptions? opts = null)
public static Output<GetNodeTypeResult> Invoke(GetNodeTypeInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetNodeTypeResult> getNodeType(GetNodeTypeArgs args, InvokeOptions options)
public static Output<GetNodeTypeResult> getNodeType(GetNodeTypeArgs args, InvokeOptions options)
fn::invoke:
function: databricks:index/getNodeType:getNodeType
arguments:
# arguments dictionaryThe following arguments are supported:
- Category string
- Node category, which can be one of (depending on the cloud environment, could be checked with
databricks clusters list-node-types|jq '.node_types[]|.category'|sort |uniq):General Purpose(all clouds)General Purpose (HDD)(Azure)Compute Optimized(all clouds)Memory Optimized(all clouds)Memory Optimized (Remote HDD)(Azure)Storage Optimized(AWS, Azure)GPU Accelerated(AWS, Azure)
- Gb
Per intCore - Number of gigabytes per core available on instance. Conflicts with
min_memory_gb. Defaults to 0. - Graviton bool
- if we should limit the search only to nodes with AWS Graviton CPUs. Default to false.
- Is
Io boolCache Enabled - . Pick only nodes that have IO Cache. Defaults to false.
- Local
Disk bool - Pick only nodes with local storage. Defaults to false.
- Min
Cores int - Minimum number of CPU cores available on instance. Defaults to 0.
- Min
Gpus int - Minimum number of GPU's attached to instance. Defaults to 0.
- Min
Memory intGb - Minimum amount of memory per node in gigabytes. Defaults to 0.
- Photon
Driver boolCapable - Pick only nodes that can run Photon driver. Defaults to false.
- Photon
Worker boolCapable - Pick only nodes that can run Photon workers. Defaults to false.
- Support
Port boolForwarding - Pick only nodes that support port forwarding. Defaults to false.
- Category string
- Node category, which can be one of (depending on the cloud environment, could be checked with
databricks clusters list-node-types|jq '.node_types[]|.category'|sort |uniq):General Purpose(all clouds)General Purpose (HDD)(Azure)Compute Optimized(all clouds)Memory Optimized(all clouds)Memory Optimized (Remote HDD)(Azure)Storage Optimized(AWS, Azure)GPU Accelerated(AWS, Azure)
- Gb
Per intCore - Number of gigabytes per core available on instance. Conflicts with
min_memory_gb. Defaults to 0. - Graviton bool
- if we should limit the search only to nodes with AWS Graviton CPUs. Default to false.
- Is
Io boolCache Enabled - . Pick only nodes that have IO Cache. Defaults to false.
- Local
Disk bool - Pick only nodes with local storage. Defaults to false.
- Min
Cores int - Minimum number of CPU cores available on instance. Defaults to 0.
- Min
Gpus int - Minimum number of GPU's attached to instance. Defaults to 0.
- Min
Memory intGb - Minimum amount of memory per node in gigabytes. Defaults to 0.
- Photon
Driver boolCapable - Pick only nodes that can run Photon driver. Defaults to false.
- Photon
Worker boolCapable - Pick only nodes that can run Photon workers. Defaults to false.
- Support
Port boolForwarding - Pick only nodes that support port forwarding. Defaults to false.
- category String
- Node category, which can be one of (depending on the cloud environment, could be checked with
databricks clusters list-node-types|jq '.node_types[]|.category'|sort |uniq):General Purpose(all clouds)General Purpose (HDD)(Azure)Compute Optimized(all clouds)Memory Optimized(all clouds)Memory Optimized (Remote HDD)(Azure)Storage Optimized(AWS, Azure)GPU Accelerated(AWS, Azure)
- gb
Per IntegerCore - Number of gigabytes per core available on instance. Conflicts with
min_memory_gb. Defaults to 0. - graviton Boolean
- if we should limit the search only to nodes with AWS Graviton CPUs. Default to false.
- is
Io BooleanCache Enabled - . Pick only nodes that have IO Cache. Defaults to false.
- local
Disk Boolean - Pick only nodes with local storage. Defaults to false.
- min
Cores Integer - Minimum number of CPU cores available on instance. Defaults to 0.
- min
Gpus Integer - Minimum number of GPU's attached to instance. Defaults to 0.
- min
Memory IntegerGb - Minimum amount of memory per node in gigabytes. Defaults to 0.
- photon
Driver BooleanCapable - Pick only nodes that can run Photon driver. Defaults to false.
- photon
Worker BooleanCapable - Pick only nodes that can run Photon workers. Defaults to false.
- support
Port BooleanForwarding - Pick only nodes that support port forwarding. Defaults to false.
- category string
- Node category, which can be one of (depending on the cloud environment, could be checked with
databricks clusters list-node-types|jq '.node_types[]|.category'|sort |uniq):General Purpose(all clouds)General Purpose (HDD)(Azure)Compute Optimized(all clouds)Memory Optimized(all clouds)Memory Optimized (Remote HDD)(Azure)Storage Optimized(AWS, Azure)GPU Accelerated(AWS, Azure)
- gb
Per numberCore - Number of gigabytes per core available on instance. Conflicts with
min_memory_gb. Defaults to 0. - graviton boolean
- if we should limit the search only to nodes with AWS Graviton CPUs. Default to false.
- is
Io booleanCache Enabled - . Pick only nodes that have IO Cache. Defaults to false.
- local
Disk boolean - Pick only nodes with local storage. Defaults to false.
- min
Cores number - Minimum number of CPU cores available on instance. Defaults to 0.
- min
Gpus number - Minimum number of GPU's attached to instance. Defaults to 0.
- min
Memory numberGb - Minimum amount of memory per node in gigabytes. Defaults to 0.
- photon
Driver booleanCapable - Pick only nodes that can run Photon driver. Defaults to false.
- photon
Worker booleanCapable - Pick only nodes that can run Photon workers. Defaults to false.
- support
Port booleanForwarding - Pick only nodes that support port forwarding. Defaults to false.
- category str
- Node category, which can be one of (depending on the cloud environment, could be checked with
databricks clusters list-node-types|jq '.node_types[]|.category'|sort |uniq):General Purpose(all clouds)General Purpose (HDD)(Azure)Compute Optimized(all clouds)Memory Optimized(all clouds)Memory Optimized (Remote HDD)(Azure)Storage Optimized(AWS, Azure)GPU Accelerated(AWS, Azure)
- gb_
per_ intcore - Number of gigabytes per core available on instance. Conflicts with
min_memory_gb. Defaults to 0. - graviton bool
- if we should limit the search only to nodes with AWS Graviton CPUs. Default to false.
- is_
io_ boolcache_ enabled - . Pick only nodes that have IO Cache. Defaults to false.
- local_
disk bool - Pick only nodes with local storage. Defaults to false.
- min_
cores int - Minimum number of CPU cores available on instance. Defaults to 0.
- min_
gpus int - Minimum number of GPU's attached to instance. Defaults to 0.
- min_
memory_ intgb - Minimum amount of memory per node in gigabytes. Defaults to 0.
- photon_
driver_ boolcapable - Pick only nodes that can run Photon driver. Defaults to false.
- photon_
worker_ boolcapable - Pick only nodes that can run Photon workers. Defaults to false.
- support_
port_ boolforwarding - Pick only nodes that support port forwarding. Defaults to false.
- category String
- Node category, which can be one of (depending on the cloud environment, could be checked with
databricks clusters list-node-types|jq '.node_types[]|.category'|sort |uniq):General Purpose(all clouds)General Purpose (HDD)(Azure)Compute Optimized(all clouds)Memory Optimized(all clouds)Memory Optimized (Remote HDD)(Azure)Storage Optimized(AWS, Azure)GPU Accelerated(AWS, Azure)
- gb
Per NumberCore - Number of gigabytes per core available on instance. Conflicts with
min_memory_gb. Defaults to 0. - graviton Boolean
- if we should limit the search only to nodes with AWS Graviton CPUs. Default to false.
- is
Io BooleanCache Enabled - . Pick only nodes that have IO Cache. Defaults to false.
- local
Disk Boolean - Pick only nodes with local storage. Defaults to false.
- min
Cores Number - Minimum number of CPU cores available on instance. Defaults to 0.
- min
Gpus Number - Minimum number of GPU's attached to instance. Defaults to 0.
- min
Memory NumberGb - Minimum amount of memory per node in gigabytes. Defaults to 0.
- photon
Driver BooleanCapable - Pick only nodes that can run Photon driver. Defaults to false.
- photon
Worker BooleanCapable - Pick only nodes that can run Photon workers. Defaults to false.
- support
Port BooleanForwarding - Pick only nodes that support port forwarding. Defaults to false.
getNodeType Result
The following output properties are available:
- Id string
- The provider-assigned unique ID for this managed resource.
- Category string
- Gb
Per intCore - Graviton bool
- Is
Io boolCache Enabled - Local
Disk bool - Min
Cores int - Min
Gpus int - Min
Memory intGb - Photon
Driver boolCapable - Photon
Worker boolCapable - Support
Port boolForwarding
- Id string
- The provider-assigned unique ID for this managed resource.
- Category string
- Gb
Per intCore - Graviton bool
- Is
Io boolCache Enabled - Local
Disk bool - Min
Cores int - Min
Gpus int - Min
Memory intGb - Photon
Driver boolCapable - Photon
Worker boolCapable - Support
Port boolForwarding
- id String
- The provider-assigned unique ID for this managed resource.
- category String
- gb
Per IntegerCore - graviton Boolean
- is
Io BooleanCache Enabled - local
Disk Boolean - min
Cores Integer - min
Gpus Integer - min
Memory IntegerGb - photon
Driver BooleanCapable - photon
Worker BooleanCapable - support
Port BooleanForwarding
- id string
- The provider-assigned unique ID for this managed resource.
- category string
- gb
Per numberCore - graviton boolean
- is
Io booleanCache Enabled - local
Disk boolean - min
Cores number - min
Gpus number - min
Memory numberGb - photon
Driver booleanCapable - photon
Worker booleanCapable - support
Port booleanForwarding
- id str
- The provider-assigned unique ID for this managed resource.
- category str
- gb_
per_ intcore - graviton bool
- is_
io_ boolcache_ enabled - local_
disk bool - min_
cores int - min_
gpus int - min_
memory_ intgb - photon_
driver_ boolcapable - photon_
worker_ boolcapable - support_
port_ boolforwarding
- id String
- The provider-assigned unique ID for this managed resource.
- category String
- gb
Per NumberCore - graviton Boolean
- is
Io BooleanCache Enabled - local
Disk Boolean - min
Cores Number - min
Gpus Number - min
Memory NumberGb - photon
Driver BooleanCapable - photon
Worker BooleanCapable - support
Port BooleanForwarding
Package Details
- Repository
- databricks pulumi/pulumi-databricks
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
databricksTerraform Provider.
Viewing docs for Databricks v0.4.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
published on Monday, Mar 9, 2026 by Pulumi
