yandex.DataprocCluster
Explore with Pulumi AI
Manages a Data Proc cluster. For more information, see the official documentation.
Example Usage
using System.IO;
using Pulumi;
using Yandex = Pulumi.Yandex;
class MyStack : Stack
{
    public MyStack()
    {
        var fooVpcNetwork = new Yandex.VpcNetwork("fooVpcNetwork", new Yandex.VpcNetworkArgs
        {
        });
        var fooVpcSubnet = new Yandex.VpcSubnet("fooVpcSubnet", new Yandex.VpcSubnetArgs
        {
            Zone = "ru-central1-b",
            NetworkId = fooVpcNetwork.Id,
            V4CidrBlocks = 
            {
                "10.1.0.0/24",
            },
        });
        var dataprocIamServiceAccount = new Yandex.IamServiceAccount("dataprocIamServiceAccount", new Yandex.IamServiceAccountArgs
        {
            Description = "service account to manage Dataproc Cluster",
        });
        var fooResourcemanagerFolder = Output.Create(Yandex.GetResourcemanagerFolder.InvokeAsync(new Yandex.GetResourcemanagerFolderArgs
        {
            FolderId = "some_folder_id",
        }));
        var dataprocResourcemanagerFolderIamBinding = new Yandex.ResourcemanagerFolderIamBinding("dataprocResourcemanagerFolderIamBinding", new Yandex.ResourcemanagerFolderIamBindingArgs
        {
            FolderId = fooResourcemanagerFolder.Apply(fooResourcemanagerFolder => fooResourcemanagerFolder.Id),
            Role = "mdb.dataproc.agent",
            Members = 
            {
                dataprocIamServiceAccount.Id.Apply(id => $"serviceAccount:{id}"),
            },
        });
        // required in order to create bucket
        var bucket_creator = new Yandex.ResourcemanagerFolderIamBinding("bucket-creator", new Yandex.ResourcemanagerFolderIamBindingArgs
        {
            FolderId = fooResourcemanagerFolder.Apply(fooResourcemanagerFolder => fooResourcemanagerFolder.Id),
            Role = "editor",
            Members = 
            {
                dataprocIamServiceAccount.Id.Apply(id => $"serviceAccount:{id}"),
            },
        });
        var fooIamServiceAccountStaticAccessKey = new Yandex.IamServiceAccountStaticAccessKey("fooIamServiceAccountStaticAccessKey", new Yandex.IamServiceAccountStaticAccessKeyArgs
        {
            ServiceAccountId = dataprocIamServiceAccount.Id,
        });
        var fooStorageBucket = new Yandex.StorageBucket("fooStorageBucket", new Yandex.StorageBucketArgs
        {
            Bucket = "foo",
            AccessKey = fooIamServiceAccountStaticAccessKey.AccessKey,
            SecretKey = fooIamServiceAccountStaticAccessKey.SecretKey,
        }, new CustomResourceOptions
        {
            DependsOn = 
            {
                bucket_creator,
            },
        });
        var fooDataprocCluster = new Yandex.DataprocCluster("fooDataprocCluster", new Yandex.DataprocClusterArgs
        {
            Bucket = fooStorageBucket.Bucket,
            Description = "Dataproc Cluster created by Terraform",
            Labels = 
            {
                { "created_by", "terraform" },
            },
            ServiceAccountId = dataprocIamServiceAccount.Id,
            ZoneId = "ru-central1-b",
            ClusterConfig = new Yandex.Inputs.DataprocClusterClusterConfigArgs
            {
                Hadoop = new Yandex.Inputs.DataprocClusterClusterConfigHadoopArgs
                {
                    Services = 
                    {
                        "HDFS",
                        "YARN",
                        "SPARK",
                        "TEZ",
                        "MAPREDUCE",
                        "HIVE",
                    },
                    Properties = 
                    {
                        { "yarn:yarn.resourcemanager.am.max-attempts", "5" },
                    },
                    SshPublicKeys = 
                    {
                        File.ReadAllText("~/.ssh/id_rsa.pub"),
                    },
                },
                SubclusterSpecs = 
                {
                    new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecArgs
                    {
                        Name = "main",
                        Role = "MASTERNODE",
                        Resources = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecResourcesArgs
                        {
                            ResourcePresetId = "s2.small",
                            DiskTypeId = "network-hdd",
                            DiskSize = 20,
                        },
                        SubnetId = fooVpcSubnet.Id,
                        HostsCount = 1,
                    },
                    new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecArgs
                    {
                        Name = "data",
                        Role = "DATANODE",
                        Resources = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecResourcesArgs
                        {
                            ResourcePresetId = "s2.small",
                            DiskTypeId = "network-hdd",
                            DiskSize = 20,
                        },
                        SubnetId = fooVpcSubnet.Id,
                        HostsCount = 2,
                    },
                    new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecArgs
                    {
                        Name = "compute",
                        Role = "COMPUTENODE",
                        Resources = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecResourcesArgs
                        {
                            ResourcePresetId = "s2.small",
                            DiskTypeId = "network-hdd",
                            DiskSize = 20,
                        },
                        SubnetId = fooVpcSubnet.Id,
                        HostsCount = 2,
                    },
                    new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecArgs
                    {
                        Name = "compute_autoscaling",
                        Role = "COMPUTENODE",
                        Resources = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecResourcesArgs
                        {
                            ResourcePresetId = "s2.small",
                            DiskTypeId = "network-hdd",
                            DiskSize = 20,
                        },
                        SubnetId = fooVpcSubnet.Id,
                        HostsCount = 2,
                        AutoscalingConfig = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs
                        {
                            MaxHostsCount = 10,
                            MeasurementDuration = 60,
                            WarmupDuration = 60,
                            StabilizationDuration = 120,
                            Preemptible = false,
                            DecommissionTimeout = 60,
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn = 
            {
                dataprocResourcemanagerFolderIamBinding,
            },
        });
    }
}
package main
import (
	"fmt"
	"io/ioutil"
	"github.com/pulumi/pulumi-yandex/sdk/go/yandex"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooVpcNetwork, err := yandex.NewVpcNetwork(ctx, "fooVpcNetwork", nil)
		if err != nil {
			return err
		}
		fooVpcSubnet, err := yandex.NewVpcSubnet(ctx, "fooVpcSubnet", &yandex.VpcSubnetArgs{
			Zone:      pulumi.String("ru-central1-b"),
			NetworkId: fooVpcNetwork.ID(),
			V4CidrBlocks: pulumi.StringArray{
				pulumi.String("10.1.0.0/24"),
			},
		})
		if err != nil {
			return err
		}
		dataprocIamServiceAccount, err := yandex.NewIamServiceAccount(ctx, "dataprocIamServiceAccount", &yandex.IamServiceAccountArgs{
			Description: pulumi.String("service account to manage Dataproc Cluster"),
		})
		if err != nil {
			return err
		}
		opt0 := "some_folder_id"
		fooResourcemanagerFolder, err := yandex.LookupResourcemanagerFolder(ctx, &GetResourcemanagerFolderArgs{
			FolderId: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		dataprocResourcemanagerFolderIamBinding, err := yandex.NewResourcemanagerFolderIamBinding(ctx, "dataprocResourcemanagerFolderIamBinding", &yandex.ResourcemanagerFolderIamBindingArgs{
			FolderId: pulumi.String(fooResourcemanagerFolder.Id),
			Role:     pulumi.String("mdb.dataproc.agent"),
			Members: pulumi.StringArray{
				dataprocIamServiceAccount.ID().ApplyT(func(id string) (string, error) {
					return fmt.Sprintf("%v%v", "serviceAccount:", id), nil
				}).(pulumi.StringOutput),
			},
		})
		if err != nil {
			return err
		}
		_, err = yandex.NewResourcemanagerFolderIamBinding(ctx, "bucket-creator", &yandex.ResourcemanagerFolderIamBindingArgs{
			FolderId: pulumi.String(fooResourcemanagerFolder.Id),
			Role:     pulumi.String("editor"),
			Members: pulumi.StringArray{
				dataprocIamServiceAccount.ID().ApplyT(func(id string) (string, error) {
					return fmt.Sprintf("%v%v", "serviceAccount:", id), nil
				}).(pulumi.StringOutput),
			},
		})
		if err != nil {
			return err
		}
		fooIamServiceAccountStaticAccessKey, err := yandex.NewIamServiceAccountStaticAccessKey(ctx, "fooIamServiceAccountStaticAccessKey", &yandex.IamServiceAccountStaticAccessKeyArgs{
			ServiceAccountId: dataprocIamServiceAccount.ID(),
		})
		if err != nil {
			return err
		}
		fooStorageBucket, err := yandex.NewStorageBucket(ctx, "fooStorageBucket", &yandex.StorageBucketArgs{
			Bucket:    pulumi.String("foo"),
			AccessKey: fooIamServiceAccountStaticAccessKey.AccessKey,
			SecretKey: fooIamServiceAccountStaticAccessKey.SecretKey,
		}, pulumi.DependsOn([]pulumi.Resource{
			bucket_creator,
		}))
		if err != nil {
			return err
		}
		_, err = yandex.NewDataprocCluster(ctx, "fooDataprocCluster", &yandex.DataprocClusterArgs{
			Bucket:      fooStorageBucket.Bucket,
			Description: pulumi.String("Dataproc Cluster created by Terraform"),
			Labels: pulumi.StringMap{
				"created_by": pulumi.String("terraform"),
			},
			ServiceAccountId: dataprocIamServiceAccount.ID(),
			ZoneId:           pulumi.String("ru-central1-b"),
			ClusterConfig: &DataprocClusterClusterConfigArgs{
				Hadoop: &DataprocClusterClusterConfigHadoopArgs{
					Services: pulumi.StringArray{
						pulumi.String("HDFS"),
						pulumi.String("YARN"),
						pulumi.String("SPARK"),
						pulumi.String("TEZ"),
						pulumi.String("MAPREDUCE"),
						pulumi.String("HIVE"),
					},
					Properties: pulumi.StringMap{
						"yarn:yarn.resourcemanager.am.max-attempts": pulumi.String("5"),
					},
					SshPublicKeys: pulumi.StringArray{
						readFileOrPanic("~/.ssh/id_rsa.pub"),
					},
				},
				SubclusterSpecs: DataprocClusterClusterConfigSubclusterSpecArray{
					&DataprocClusterClusterConfigSubclusterSpecArgs{
						Name: pulumi.String("main"),
						Role: pulumi.String("MASTERNODE"),
						Resources: &DataprocClusterClusterConfigSubclusterSpecResourcesArgs{
							ResourcePresetId: pulumi.String("s2.small"),
							DiskTypeId:       pulumi.String("network-hdd"),
							DiskSize:         pulumi.Int(20),
						},
						SubnetId:   fooVpcSubnet.ID(),
						HostsCount: pulumi.Int(1),
					},
					&DataprocClusterClusterConfigSubclusterSpecArgs{
						Name: pulumi.String("data"),
						Role: pulumi.String("DATANODE"),
						Resources: &DataprocClusterClusterConfigSubclusterSpecResourcesArgs{
							ResourcePresetId: pulumi.String("s2.small"),
							DiskTypeId:       pulumi.String("network-hdd"),
							DiskSize:         pulumi.Int(20),
						},
						SubnetId:   fooVpcSubnet.ID(),
						HostsCount: pulumi.Int(2),
					},
					&DataprocClusterClusterConfigSubclusterSpecArgs{
						Name: pulumi.String("compute"),
						Role: pulumi.String("COMPUTENODE"),
						Resources: &DataprocClusterClusterConfigSubclusterSpecResourcesArgs{
							ResourcePresetId: pulumi.String("s2.small"),
							DiskTypeId:       pulumi.String("network-hdd"),
							DiskSize:         pulumi.Int(20),
						},
						SubnetId:   fooVpcSubnet.ID(),
						HostsCount: pulumi.Int(2),
					},
					&DataprocClusterClusterConfigSubclusterSpecArgs{
						Name: pulumi.String("compute_autoscaling"),
						Role: pulumi.String("COMPUTENODE"),
						Resources: &DataprocClusterClusterConfigSubclusterSpecResourcesArgs{
							ResourcePresetId: pulumi.String("s2.small"),
							DiskTypeId:       pulumi.String("network-hdd"),
							DiskSize:         pulumi.Int(20),
						},
						SubnetId:   fooVpcSubnet.ID(),
						HostsCount: pulumi.Int(2),
						AutoscalingConfig: &DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs{
							MaxHostsCount:         pulumi.Int(10),
							MeasurementDuration:   pulumi.Int(60),
							WarmupDuration:        pulumi.Int(60),
							StabilizationDuration: pulumi.Int(120),
							Preemptible:           pulumi.Bool(false),
							DecommissionTimeout:   pulumi.Int(60),
						},
					},
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			dataprocResourcemanagerFolderIamBinding,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
Coming soon!
import * as pulumi from "@pulumi/pulumi";
import * as yandex from "@pulumi/yandex";
import * from "fs";
const fooVpcNetwork = new yandex.VpcNetwork("fooVpcNetwork", {});
const fooVpcSubnet = new yandex.VpcSubnet("fooVpcSubnet", {
    zone: "ru-central1-b",
    networkId: fooVpcNetwork.id,
    v4CidrBlocks: ["10.1.0.0/24"],
});
const dataprocIamServiceAccount = new yandex.IamServiceAccount("dataprocIamServiceAccount", {description: "service account to manage Dataproc Cluster"});
const fooResourcemanagerFolder = yandex.getResourcemanagerFolder({
    folderId: "some_folder_id",
});
const dataprocResourcemanagerFolderIamBinding = new yandex.ResourcemanagerFolderIamBinding("dataprocResourcemanagerFolderIamBinding", {
    folderId: fooResourcemanagerFolder.then(fooResourcemanagerFolder => fooResourcemanagerFolder.id),
    role: "mdb.dataproc.agent",
    members: [pulumi.interpolate`serviceAccount:${dataprocIamServiceAccount.id}`],
});
// required in order to create bucket
const bucket_creator = new yandex.ResourcemanagerFolderIamBinding("bucket-creator", {
    folderId: fooResourcemanagerFolder.then(fooResourcemanagerFolder => fooResourcemanagerFolder.id),
    role: "editor",
    members: [pulumi.interpolate`serviceAccount:${dataprocIamServiceAccount.id}`],
});
const fooIamServiceAccountStaticAccessKey = new yandex.IamServiceAccountStaticAccessKey("fooIamServiceAccountStaticAccessKey", {serviceAccountId: dataprocIamServiceAccount.id});
const fooStorageBucket = new yandex.StorageBucket("fooStorageBucket", {
    bucket: "foo",
    accessKey: fooIamServiceAccountStaticAccessKey.accessKey,
    secretKey: fooIamServiceAccountStaticAccessKey.secretKey,
}, {
    dependsOn: [bucket_creator],
});
const fooDataprocCluster = new yandex.DataprocCluster("fooDataprocCluster", {
    bucket: fooStorageBucket.bucket,
    description: "Dataproc Cluster created by Terraform",
    labels: {
        created_by: "terraform",
    },
    serviceAccountId: dataprocIamServiceAccount.id,
    zoneId: "ru-central1-b",
    clusterConfig: {
        hadoop: {
            services: [
                "HDFS",
                "YARN",
                "SPARK",
                "TEZ",
                "MAPREDUCE",
                "HIVE",
            ],
            properties: {
                "yarn:yarn.resourcemanager.am.max-attempts": 5,
            },
            sshPublicKeys: [fs.readFileSync("~/.ssh/id_rsa.pub")],
        },
        subclusterSpecs: [
            {
                name: "main",
                role: "MASTERNODE",
                resources: {
                    resourcePresetId: "s2.small",
                    diskTypeId: "network-hdd",
                    diskSize: 20,
                },
                subnetId: fooVpcSubnet.id,
                hostsCount: 1,
            },
            {
                name: "data",
                role: "DATANODE",
                resources: {
                    resourcePresetId: "s2.small",
                    diskTypeId: "network-hdd",
                    diskSize: 20,
                },
                subnetId: fooVpcSubnet.id,
                hostsCount: 2,
            },
            {
                name: "compute",
                role: "COMPUTENODE",
                resources: {
                    resourcePresetId: "s2.small",
                    diskTypeId: "network-hdd",
                    diskSize: 20,
                },
                subnetId: fooVpcSubnet.id,
                hostsCount: 2,
            },
            {
                name: "compute_autoscaling",
                role: "COMPUTENODE",
                resources: {
                    resourcePresetId: "s2.small",
                    diskTypeId: "network-hdd",
                    diskSize: 20,
                },
                subnetId: fooVpcSubnet.id,
                hostsCount: 2,
                autoscalingConfig: {
                    maxHostsCount: 10,
                    measurementDuration: 60,
                    warmupDuration: 60,
                    stabilizationDuration: 120,
                    preemptible: false,
                    decommissionTimeout: 60,
                },
            },
        ],
    },
}, {
    dependsOn: [dataprocResourcemanagerFolderIamBinding],
});
import pulumi
import pulumi_yandex as yandex
foo_vpc_network = yandex.VpcNetwork("fooVpcNetwork")
foo_vpc_subnet = yandex.VpcSubnet("fooVpcSubnet",
    zone="ru-central1-b",
    network_id=foo_vpc_network.id,
    v4_cidr_blocks=["10.1.0.0/24"])
dataproc_iam_service_account = yandex.IamServiceAccount("dataprocIamServiceAccount", description="service account to manage Dataproc Cluster")
foo_resourcemanager_folder = yandex.get_resourcemanager_folder(folder_id="some_folder_id")
dataproc_resourcemanager_folder_iam_binding = yandex.ResourcemanagerFolderIamBinding("dataprocResourcemanagerFolderIamBinding",
    folder_id=foo_resourcemanager_folder.id,
    role="mdb.dataproc.agent",
    members=[dataproc_iam_service_account.id.apply(lambda id: f"serviceAccount:{id}")])
# required in order to create bucket
bucket_creator = yandex.ResourcemanagerFolderIamBinding("bucket-creator",
    folder_id=foo_resourcemanager_folder.id,
    role="editor",
    members=[dataproc_iam_service_account.id.apply(lambda id: f"serviceAccount:{id}")])
foo_iam_service_account_static_access_key = yandex.IamServiceAccountStaticAccessKey("fooIamServiceAccountStaticAccessKey", service_account_id=dataproc_iam_service_account.id)
foo_storage_bucket = yandex.StorageBucket("fooStorageBucket",
    bucket="foo",
    access_key=foo_iam_service_account_static_access_key.access_key,
    secret_key=foo_iam_service_account_static_access_key.secret_key,
    opts=pulumi.ResourceOptions(depends_on=[bucket_creator]))
foo_dataproc_cluster = yandex.DataprocCluster("fooDataprocCluster",
    bucket=foo_storage_bucket.bucket,
    description="Dataproc Cluster created by Terraform",
    labels={
        "created_by": "terraform",
    },
    service_account_id=dataproc_iam_service_account.id,
    zone_id="ru-central1-b",
    cluster_config=yandex.DataprocClusterClusterConfigArgs(
        hadoop=yandex.DataprocClusterClusterConfigHadoopArgs(
            services=[
                "HDFS",
                "YARN",
                "SPARK",
                "TEZ",
                "MAPREDUCE",
                "HIVE",
            ],
            properties={
                "yarn:yarn.resourcemanager.am.max-attempts": "5",
            },
            ssh_public_keys=[(lambda path: open(path).read())("~/.ssh/id_rsa.pub")],
        ),
        subcluster_specs=[
            yandex.DataprocClusterClusterConfigSubclusterSpecArgs(
                name="main",
                role="MASTERNODE",
                resources=yandex.DataprocClusterClusterConfigSubclusterSpecResourcesArgs(
                    resource_preset_id="s2.small",
                    disk_type_id="network-hdd",
                    disk_size=20,
                ),
                subnet_id=foo_vpc_subnet.id,
                hosts_count=1,
            ),
            yandex.DataprocClusterClusterConfigSubclusterSpecArgs(
                name="data",
                role="DATANODE",
                resources=yandex.DataprocClusterClusterConfigSubclusterSpecResourcesArgs(
                    resource_preset_id="s2.small",
                    disk_type_id="network-hdd",
                    disk_size=20,
                ),
                subnet_id=foo_vpc_subnet.id,
                hosts_count=2,
            ),
            yandex.DataprocClusterClusterConfigSubclusterSpecArgs(
                name="compute",
                role="COMPUTENODE",
                resources=yandex.DataprocClusterClusterConfigSubclusterSpecResourcesArgs(
                    resource_preset_id="s2.small",
                    disk_type_id="network-hdd",
                    disk_size=20,
                ),
                subnet_id=foo_vpc_subnet.id,
                hosts_count=2,
            ),
            yandex.DataprocClusterClusterConfigSubclusterSpecArgs(
                name="compute_autoscaling",
                role="COMPUTENODE",
                resources=yandex.DataprocClusterClusterConfigSubclusterSpecResourcesArgs(
                    resource_preset_id="s2.small",
                    disk_type_id="network-hdd",
                    disk_size=20,
                ),
                subnet_id=foo_vpc_subnet.id,
                hosts_count=2,
                autoscaling_config=yandex.DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs(
                    max_hosts_count=10,
                    measurement_duration=60,
                    warmup_duration=60,
                    stabilization_duration=120,
                    preemptible=False,
                    decommission_timeout=60,
                ),
            ),
        ],
    ),
    opts=pulumi.ResourceOptions(depends_on=[dataproc_resourcemanager_folder_iam_binding]))
Coming soon!
Create DataprocCluster Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new DataprocCluster(name: string, args: DataprocClusterArgs, opts?: CustomResourceOptions);@overload
def DataprocCluster(resource_name: str,
                    args: DataprocClusterArgs,
                    opts: Optional[ResourceOptions] = None)
@overload
def DataprocCluster(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    cluster_config: Optional[DataprocClusterClusterConfigArgs] = None,
                    service_account_id: Optional[str] = None,
                    bucket: Optional[str] = None,
                    deletion_protection: Optional[bool] = None,
                    description: Optional[str] = None,
                    folder_id: Optional[str] = None,
                    host_group_ids: Optional[Sequence[str]] = None,
                    labels: Optional[Mapping[str, str]] = None,
                    name: Optional[str] = None,
                    security_group_ids: Optional[Sequence[str]] = None,
                    ui_proxy: Optional[bool] = None,
                    zone_id: Optional[str] = None)func NewDataprocCluster(ctx *Context, name string, args DataprocClusterArgs, opts ...ResourceOption) (*DataprocCluster, error)public DataprocCluster(string name, DataprocClusterArgs args, CustomResourceOptions? opts = null)
public DataprocCluster(String name, DataprocClusterArgs args)
public DataprocCluster(String name, DataprocClusterArgs args, CustomResourceOptions options)
type: yandex:DataprocCluster
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 DataprocClusterArgs
- 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 DataprocClusterArgs
- 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 DataprocClusterArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DataprocClusterArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args DataprocClusterArgs
- 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 dataprocClusterResource = new Yandex.DataprocCluster("dataprocClusterResource", new()
{
    ClusterConfig = new Yandex.Inputs.DataprocClusterClusterConfigArgs
    {
        SubclusterSpecs = new[]
        {
            new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecArgs
            {
                HostsCount = 0,
                Name = "string",
                Resources = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecResourcesArgs
                {
                    DiskSize = 0,
                    ResourcePresetId = "string",
                    DiskTypeId = "string",
                },
                Role = "string",
                SubnetId = "string",
                AutoscalingConfig = new Yandex.Inputs.DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs
                {
                    MaxHostsCount = 0,
                    CpuUtilizationTarget = 0,
                    DecommissionTimeout = 0,
                    MeasurementDuration = 0,
                    Preemptible = false,
                    StabilizationDuration = 0,
                    WarmupDuration = 0,
                },
                Id = "string",
            },
        },
        Hadoop = new Yandex.Inputs.DataprocClusterClusterConfigHadoopArgs
        {
            Properties = 
            {
                { "string", "string" },
            },
            Services = new[]
            {
                "string",
            },
            SshPublicKeys = new[]
            {
                "string",
            },
        },
        VersionId = "string",
    },
    ServiceAccountId = "string",
    Bucket = "string",
    DeletionProtection = false,
    Description = "string",
    FolderId = "string",
    HostGroupIds = new[]
    {
        "string",
    },
    Labels = 
    {
        { "string", "string" },
    },
    Name = "string",
    SecurityGroupIds = new[]
    {
        "string",
    },
    UiProxy = false,
    ZoneId = "string",
});
example, err := yandex.NewDataprocCluster(ctx, "dataprocClusterResource", &yandex.DataprocClusterArgs{
	ClusterConfig: &yandex.DataprocClusterClusterConfigArgs{
		SubclusterSpecs: yandex.DataprocClusterClusterConfigSubclusterSpecArray{
			&yandex.DataprocClusterClusterConfigSubclusterSpecArgs{
				HostsCount: pulumi.Int(0),
				Name:       pulumi.String("string"),
				Resources: &yandex.DataprocClusterClusterConfigSubclusterSpecResourcesArgs{
					DiskSize:         pulumi.Int(0),
					ResourcePresetId: pulumi.String("string"),
					DiskTypeId:       pulumi.String("string"),
				},
				Role:     pulumi.String("string"),
				SubnetId: pulumi.String("string"),
				AutoscalingConfig: &yandex.DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs{
					MaxHostsCount:         pulumi.Int(0),
					CpuUtilizationTarget:  pulumi.Float64(0),
					DecommissionTimeout:   pulumi.Int(0),
					MeasurementDuration:   pulumi.Int(0),
					Preemptible:           pulumi.Bool(false),
					StabilizationDuration: pulumi.Int(0),
					WarmupDuration:        pulumi.Int(0),
				},
				Id: pulumi.String("string"),
			},
		},
		Hadoop: &yandex.DataprocClusterClusterConfigHadoopArgs{
			Properties: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			Services: pulumi.StringArray{
				pulumi.String("string"),
			},
			SshPublicKeys: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
		VersionId: pulumi.String("string"),
	},
	ServiceAccountId:   pulumi.String("string"),
	Bucket:             pulumi.String("string"),
	DeletionProtection: pulumi.Bool(false),
	Description:        pulumi.String("string"),
	FolderId:           pulumi.String("string"),
	HostGroupIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Name: pulumi.String("string"),
	SecurityGroupIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	UiProxy: pulumi.Bool(false),
	ZoneId:  pulumi.String("string"),
})
var dataprocClusterResource = new DataprocCluster("dataprocClusterResource", DataprocClusterArgs.builder()
    .clusterConfig(DataprocClusterClusterConfigArgs.builder()
        .subclusterSpecs(DataprocClusterClusterConfigSubclusterSpecArgs.builder()
            .hostsCount(0)
            .name("string")
            .resources(DataprocClusterClusterConfigSubclusterSpecResourcesArgs.builder()
                .diskSize(0)
                .resourcePresetId("string")
                .diskTypeId("string")
                .build())
            .role("string")
            .subnetId("string")
            .autoscalingConfig(DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs.builder()
                .maxHostsCount(0)
                .cpuUtilizationTarget(0)
                .decommissionTimeout(0)
                .measurementDuration(0)
                .preemptible(false)
                .stabilizationDuration(0)
                .warmupDuration(0)
                .build())
            .id("string")
            .build())
        .hadoop(DataprocClusterClusterConfigHadoopArgs.builder()
            .properties(Map.of("string", "string"))
            .services("string")
            .sshPublicKeys("string")
            .build())
        .versionId("string")
        .build())
    .serviceAccountId("string")
    .bucket("string")
    .deletionProtection(false)
    .description("string")
    .folderId("string")
    .hostGroupIds("string")
    .labels(Map.of("string", "string"))
    .name("string")
    .securityGroupIds("string")
    .uiProxy(false)
    .zoneId("string")
    .build());
dataproc_cluster_resource = yandex.DataprocCluster("dataprocClusterResource",
    cluster_config={
        "subcluster_specs": [{
            "hosts_count": 0,
            "name": "string",
            "resources": {
                "disk_size": 0,
                "resource_preset_id": "string",
                "disk_type_id": "string",
            },
            "role": "string",
            "subnet_id": "string",
            "autoscaling_config": {
                "max_hosts_count": 0,
                "cpu_utilization_target": 0,
                "decommission_timeout": 0,
                "measurement_duration": 0,
                "preemptible": False,
                "stabilization_duration": 0,
                "warmup_duration": 0,
            },
            "id": "string",
        }],
        "hadoop": {
            "properties": {
                "string": "string",
            },
            "services": ["string"],
            "ssh_public_keys": ["string"],
        },
        "version_id": "string",
    },
    service_account_id="string",
    bucket="string",
    deletion_protection=False,
    description="string",
    folder_id="string",
    host_group_ids=["string"],
    labels={
        "string": "string",
    },
    name="string",
    security_group_ids=["string"],
    ui_proxy=False,
    zone_id="string")
const dataprocClusterResource = new yandex.DataprocCluster("dataprocClusterResource", {
    clusterConfig: {
        subclusterSpecs: [{
            hostsCount: 0,
            name: "string",
            resources: {
                diskSize: 0,
                resourcePresetId: "string",
                diskTypeId: "string",
            },
            role: "string",
            subnetId: "string",
            autoscalingConfig: {
                maxHostsCount: 0,
                cpuUtilizationTarget: 0,
                decommissionTimeout: 0,
                measurementDuration: 0,
                preemptible: false,
                stabilizationDuration: 0,
                warmupDuration: 0,
            },
            id: "string",
        }],
        hadoop: {
            properties: {
                string: "string",
            },
            services: ["string"],
            sshPublicKeys: ["string"],
        },
        versionId: "string",
    },
    serviceAccountId: "string",
    bucket: "string",
    deletionProtection: false,
    description: "string",
    folderId: "string",
    hostGroupIds: ["string"],
    labels: {
        string: "string",
    },
    name: "string",
    securityGroupIds: ["string"],
    uiProxy: false,
    zoneId: "string",
});
type: yandex:DataprocCluster
properties:
    bucket: string
    clusterConfig:
        hadoop:
            properties:
                string: string
            services:
                - string
            sshPublicKeys:
                - string
        subclusterSpecs:
            - autoscalingConfig:
                cpuUtilizationTarget: 0
                decommissionTimeout: 0
                maxHostsCount: 0
                measurementDuration: 0
                preemptible: false
                stabilizationDuration: 0
                warmupDuration: 0
              hostsCount: 0
              id: string
              name: string
              resources:
                diskSize: 0
                diskTypeId: string
                resourcePresetId: string
              role: string
              subnetId: string
        versionId: string
    deletionProtection: false
    description: string
    folderId: string
    hostGroupIds:
        - string
    labels:
        string: string
    name: string
    securityGroupIds:
        - string
    serviceAccountId: string
    uiProxy: false
    zoneId: string
DataprocCluster 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 DataprocCluster resource accepts the following input properties:
- ClusterConfig DataprocCluster Cluster Config 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- ServiceAccount stringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- Bucket string
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- DeletionProtection bool
- Inhibits deletion of the cluster. Can be either trueorfalse.
- Description string
- Description of the Data Proc cluster.
- FolderId string
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- HostGroup List<string>Ids 
- A list of host group IDs to place VMs of the cluster on.
- Labels Dictionary<string, string>
- A set of key/value label pairs to assign to the Data Proc cluster.
- Name string
- Name of the Data Proc subcluster.
- SecurityGroup List<string>Ids 
- A list of security group IDs that the cluster belongs to.
- UiProxy bool
- Whether to enable UI Proxy feature.
- ZoneId string
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- ClusterConfig DataprocCluster Cluster Config Args 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- ServiceAccount stringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- Bucket string
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- DeletionProtection bool
- Inhibits deletion of the cluster. Can be either trueorfalse.
- Description string
- Description of the Data Proc cluster.
- FolderId string
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- HostGroup []stringIds 
- A list of host group IDs to place VMs of the cluster on.
- Labels map[string]string
- A set of key/value label pairs to assign to the Data Proc cluster.
- Name string
- Name of the Data Proc subcluster.
- SecurityGroup []stringIds 
- A list of security group IDs that the cluster belongs to.
- UiProxy bool
- Whether to enable UI Proxy feature.
- ZoneId string
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- clusterConfig DataprocCluster Cluster Config 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- serviceAccount StringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- bucket String
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- deletionProtection Boolean
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description String
- Description of the Data Proc cluster.
- folderId String
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- hostGroup List<String>Ids 
- A list of host group IDs to place VMs of the cluster on.
- labels Map<String,String>
- A set of key/value label pairs to assign to the Data Proc cluster.
- name String
- Name of the Data Proc subcluster.
- securityGroup List<String>Ids 
- A list of security group IDs that the cluster belongs to.
- uiProxy Boolean
- Whether to enable UI Proxy feature.
- zoneId String
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- clusterConfig DataprocCluster Cluster Config 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- serviceAccount stringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- bucket string
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- deletionProtection boolean
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description string
- Description of the Data Proc cluster.
- folderId string
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- hostGroup string[]Ids 
- A list of host group IDs to place VMs of the cluster on.
- labels {[key: string]: string}
- A set of key/value label pairs to assign to the Data Proc cluster.
- name string
- Name of the Data Proc subcluster.
- securityGroup string[]Ids 
- A list of security group IDs that the cluster belongs to.
- uiProxy boolean
- Whether to enable UI Proxy feature.
- zoneId string
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- cluster_config DataprocCluster Cluster Config Args 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- service_account_ strid 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- bucket str
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- deletion_protection bool
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description str
- Description of the Data Proc cluster.
- folder_id str
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- host_group_ Sequence[str]ids 
- A list of host group IDs to place VMs of the cluster on.
- labels Mapping[str, str]
- A set of key/value label pairs to assign to the Data Proc cluster.
- name str
- Name of the Data Proc subcluster.
- security_group_ Sequence[str]ids 
- A list of security group IDs that the cluster belongs to.
- ui_proxy bool
- Whether to enable UI Proxy feature.
- zone_id str
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- clusterConfig Property Map
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- serviceAccount StringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- bucket String
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- deletionProtection Boolean
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description String
- Description of the Data Proc cluster.
- folderId String
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- hostGroup List<String>Ids 
- A list of host group IDs to place VMs of the cluster on.
- labels Map<String>
- A set of key/value label pairs to assign to the Data Proc cluster.
- name String
- Name of the Data Proc subcluster.
- securityGroup List<String>Ids 
- A list of security group IDs that the cluster belongs to.
- uiProxy Boolean
- Whether to enable UI Proxy feature.
- zoneId String
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
Outputs
All input properties are implicitly available as output properties. Additionally, the DataprocCluster resource produces the following output properties:
- created_at str
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- id str
- The provider-assigned unique ID for this managed resource.
Look up Existing DataprocCluster Resource
Get an existing DataprocCluster 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?: DataprocClusterState, opts?: CustomResourceOptions): DataprocCluster@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        bucket: Optional[str] = None,
        cluster_config: Optional[DataprocClusterClusterConfigArgs] = None,
        created_at: Optional[str] = None,
        deletion_protection: Optional[bool] = None,
        description: Optional[str] = None,
        folder_id: Optional[str] = None,
        host_group_ids: Optional[Sequence[str]] = None,
        labels: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        security_group_ids: Optional[Sequence[str]] = None,
        service_account_id: Optional[str] = None,
        ui_proxy: Optional[bool] = None,
        zone_id: Optional[str] = None) -> DataprocClusterfunc GetDataprocCluster(ctx *Context, name string, id IDInput, state *DataprocClusterState, opts ...ResourceOption) (*DataprocCluster, error)public static DataprocCluster Get(string name, Input<string> id, DataprocClusterState? state, CustomResourceOptions? opts = null)public static DataprocCluster get(String name, Output<String> id, DataprocClusterState state, CustomResourceOptions options)resources:  _:    type: yandex:DataprocCluster    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.
- Bucket string
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- ClusterConfig DataprocCluster Cluster Config 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- CreatedAt string
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- DeletionProtection bool
- Inhibits deletion of the cluster. Can be either trueorfalse.
- Description string
- Description of the Data Proc cluster.
- FolderId string
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- HostGroup List<string>Ids 
- A list of host group IDs to place VMs of the cluster on.
- Labels Dictionary<string, string>
- A set of key/value label pairs to assign to the Data Proc cluster.
- Name string
- Name of the Data Proc subcluster.
- SecurityGroup List<string>Ids 
- A list of security group IDs that the cluster belongs to.
- ServiceAccount stringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- UiProxy bool
- Whether to enable UI Proxy feature.
- ZoneId string
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- Bucket string
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- ClusterConfig DataprocCluster Cluster Config Args 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- CreatedAt string
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- DeletionProtection bool
- Inhibits deletion of the cluster. Can be either trueorfalse.
- Description string
- Description of the Data Proc cluster.
- FolderId string
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- HostGroup []stringIds 
- A list of host group IDs to place VMs of the cluster on.
- Labels map[string]string
- A set of key/value label pairs to assign to the Data Proc cluster.
- Name string
- Name of the Data Proc subcluster.
- SecurityGroup []stringIds 
- A list of security group IDs that the cluster belongs to.
- ServiceAccount stringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- UiProxy bool
- Whether to enable UI Proxy feature.
- ZoneId string
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- bucket String
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- clusterConfig DataprocCluster Cluster Config 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- createdAt String
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- deletionProtection Boolean
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description String
- Description of the Data Proc cluster.
- folderId String
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- hostGroup List<String>Ids 
- A list of host group IDs to place VMs of the cluster on.
- labels Map<String,String>
- A set of key/value label pairs to assign to the Data Proc cluster.
- name String
- Name of the Data Proc subcluster.
- securityGroup List<String>Ids 
- A list of security group IDs that the cluster belongs to.
- serviceAccount StringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- uiProxy Boolean
- Whether to enable UI Proxy feature.
- zoneId String
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- bucket string
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- clusterConfig DataprocCluster Cluster Config 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- createdAt string
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- deletionProtection boolean
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description string
- Description of the Data Proc cluster.
- folderId string
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- hostGroup string[]Ids 
- A list of host group IDs to place VMs of the cluster on.
- labels {[key: string]: string}
- A set of key/value label pairs to assign to the Data Proc cluster.
- name string
- Name of the Data Proc subcluster.
- securityGroup string[]Ids 
- A list of security group IDs that the cluster belongs to.
- serviceAccount stringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- uiProxy boolean
- Whether to enable UI Proxy feature.
- zoneId string
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- bucket str
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- cluster_config DataprocCluster Cluster Config Args 
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- created_at str
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- deletion_protection bool
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description str
- Description of the Data Proc cluster.
- folder_id str
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- host_group_ Sequence[str]ids 
- A list of host group IDs to place VMs of the cluster on.
- labels Mapping[str, str]
- A set of key/value label pairs to assign to the Data Proc cluster.
- name str
- Name of the Data Proc subcluster.
- security_group_ Sequence[str]ids 
- A list of security group IDs that the cluster belongs to.
- service_account_ strid 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- ui_proxy bool
- Whether to enable UI Proxy feature.
- zone_id str
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
- bucket String
- Name of the Object Storage bucket to use for Data Proc jobs. Data Proc Agent saves output of job driver's process to specified bucket. In order for this to work service account (specified by the service_account_idargument) should be given permission to create objects within this bucket.
- clusterConfig Property Map
- Configuration and resources for hosts that should be created with the cluster. The structure is documented below.
- createdAt String
- (Computed) The Data Proc cluster creation timestamp.- cluster_config.0.subcluster_spec.X.id- (Computed) ID of the subcluster.
 
- deletionProtection Boolean
- Inhibits deletion of the cluster. Can be either trueorfalse.
- description String
- Description of the Data Proc cluster.
- folderId String
- ID of the folder to create a cluster in. If it is not provided, the default provider folder is used.
- hostGroup List<String>Ids 
- A list of host group IDs to place VMs of the cluster on.
- labels Map<String>
- A set of key/value label pairs to assign to the Data Proc cluster.
- name String
- Name of the Data Proc subcluster.
- securityGroup List<String>Ids 
- A list of security group IDs that the cluster belongs to.
- serviceAccount StringId 
- Service account to be used by the Data Proc agent to access resources of Yandex.Cloud. Selected service account should have mdb.dataproc.agentrole on the folder where the Data Proc cluster will be located.
- uiProxy Boolean
- Whether to enable UI Proxy feature.
- zoneId String
- ID of the availability zone to create cluster in. If it is not provided, the default provider zone is used.
Supporting Types
DataprocClusterClusterConfig, DataprocClusterClusterConfigArgs        
- SubclusterSpecs List<DataprocCluster Cluster Config Subcluster Spec> 
- Configuration of the Data Proc subcluster. The structure is documented below.
- Hadoop
DataprocCluster Cluster Config Hadoop 
- Data Proc specific options. The structure is documented below.
- VersionId string
- Version of Data Proc image.
- SubclusterSpecs []DataprocCluster Cluster Config Subcluster Spec 
- Configuration of the Data Proc subcluster. The structure is documented below.
- Hadoop
DataprocCluster Cluster Config Hadoop 
- Data Proc specific options. The structure is documented below.
- VersionId string
- Version of Data Proc image.
- subclusterSpecs List<DataprocCluster Cluster Config Subcluster Spec> 
- Configuration of the Data Proc subcluster. The structure is documented below.
- hadoop
DataprocCluster Cluster Config Hadoop 
- Data Proc specific options. The structure is documented below.
- versionId String
- Version of Data Proc image.
- subclusterSpecs DataprocCluster Cluster Config Subcluster Spec[] 
- Configuration of the Data Proc subcluster. The structure is documented below.
- hadoop
DataprocCluster Cluster Config Hadoop 
- Data Proc specific options. The structure is documented below.
- versionId string
- Version of Data Proc image.
- subcluster_specs Sequence[DataprocCluster Cluster Config Subcluster Spec] 
- Configuration of the Data Proc subcluster. The structure is documented below.
- hadoop
DataprocCluster Cluster Config Hadoop 
- Data Proc specific options. The structure is documented below.
- version_id str
- Version of Data Proc image.
- subclusterSpecs List<Property Map>
- Configuration of the Data Proc subcluster. The structure is documented below.
- hadoop Property Map
- Data Proc specific options. The structure is documented below.
- versionId String
- Version of Data Proc image.
DataprocClusterClusterConfigHadoop, DataprocClusterClusterConfigHadoopArgs          
- Properties Dictionary<string, string>
- A set of key/value pairs that are used to configure cluster services.
- Services List<string>
- List of services to run on Data Proc cluster.
- SshPublic List<string>Keys 
- List of SSH public keys to put to the hosts of the cluster. For information on how to connect to the cluster, see the official documentation.
- Properties map[string]string
- A set of key/value pairs that are used to configure cluster services.
- Services []string
- List of services to run on Data Proc cluster.
- SshPublic []stringKeys 
- List of SSH public keys to put to the hosts of the cluster. For information on how to connect to the cluster, see the official documentation.
- properties Map<String,String>
- A set of key/value pairs that are used to configure cluster services.
- services List<String>
- List of services to run on Data Proc cluster.
- sshPublic List<String>Keys 
- List of SSH public keys to put to the hosts of the cluster. For information on how to connect to the cluster, see the official documentation.
- properties {[key: string]: string}
- A set of key/value pairs that are used to configure cluster services.
- services string[]
- List of services to run on Data Proc cluster.
- sshPublic string[]Keys 
- List of SSH public keys to put to the hosts of the cluster. For information on how to connect to the cluster, see the official documentation.
- properties Mapping[str, str]
- A set of key/value pairs that are used to configure cluster services.
- services Sequence[str]
- List of services to run on Data Proc cluster.
- ssh_public_ Sequence[str]keys 
- List of SSH public keys to put to the hosts of the cluster. For information on how to connect to the cluster, see the official documentation.
- properties Map<String>
- A set of key/value pairs that are used to configure cluster services.
- services List<String>
- List of services to run on Data Proc cluster.
- sshPublic List<String>Keys 
- List of SSH public keys to put to the hosts of the cluster. For information on how to connect to the cluster, see the official documentation.
DataprocClusterClusterConfigSubclusterSpec, DataprocClusterClusterConfigSubclusterSpecArgs            
- HostsCount int
- Number of hosts within Data Proc subcluster.
- Name string
- Name of the Data Proc subcluster.
- Resources
DataprocCluster Cluster Config Subcluster Spec Resources 
- Resources allocated to each host of the Data Proc subcluster. The structure is documented below.
- Role string
- Role of the subcluster in the Data Proc cluster.
- SubnetId string
- The ID of the subnet, to which hosts of the subcluster belong. Subnets of all the subclusters must belong to the same VPC network.
- AutoscalingConfig DataprocCluster Cluster Config Subcluster Spec Autoscaling Config 
- Autoscaling configuration for compute subclusters.
- Id string
- (Computed) ID of a new Data Proc cluster.
- HostsCount int
- Number of hosts within Data Proc subcluster.
- Name string
- Name of the Data Proc subcluster.
- Resources
DataprocCluster Cluster Config Subcluster Spec Resources 
- Resources allocated to each host of the Data Proc subcluster. The structure is documented below.
- Role string
- Role of the subcluster in the Data Proc cluster.
- SubnetId string
- The ID of the subnet, to which hosts of the subcluster belong. Subnets of all the subclusters must belong to the same VPC network.
- AutoscalingConfig DataprocCluster Cluster Config Subcluster Spec Autoscaling Config 
- Autoscaling configuration for compute subclusters.
- Id string
- (Computed) ID of a new Data Proc cluster.
- hostsCount Integer
- Number of hosts within Data Proc subcluster.
- name String
- Name of the Data Proc subcluster.
- resources
DataprocCluster Cluster Config Subcluster Spec Resources 
- Resources allocated to each host of the Data Proc subcluster. The structure is documented below.
- role String
- Role of the subcluster in the Data Proc cluster.
- subnetId String
- The ID of the subnet, to which hosts of the subcluster belong. Subnets of all the subclusters must belong to the same VPC network.
- autoscalingConfig DataprocCluster Cluster Config Subcluster Spec Autoscaling Config 
- Autoscaling configuration for compute subclusters.
- id String
- (Computed) ID of a new Data Proc cluster.
- hostsCount number
- Number of hosts within Data Proc subcluster.
- name string
- Name of the Data Proc subcluster.
- resources
DataprocCluster Cluster Config Subcluster Spec Resources 
- Resources allocated to each host of the Data Proc subcluster. The structure is documented below.
- role string
- Role of the subcluster in the Data Proc cluster.
- subnetId string
- The ID of the subnet, to which hosts of the subcluster belong. Subnets of all the subclusters must belong to the same VPC network.
- autoscalingConfig DataprocCluster Cluster Config Subcluster Spec Autoscaling Config 
- Autoscaling configuration for compute subclusters.
- id string
- (Computed) ID of a new Data Proc cluster.
- hosts_count int
- Number of hosts within Data Proc subcluster.
- name str
- Name of the Data Proc subcluster.
- resources
DataprocCluster Cluster Config Subcluster Spec Resources 
- Resources allocated to each host of the Data Proc subcluster. The structure is documented below.
- role str
- Role of the subcluster in the Data Proc cluster.
- subnet_id str
- The ID of the subnet, to which hosts of the subcluster belong. Subnets of all the subclusters must belong to the same VPC network.
- autoscaling_config DataprocCluster Cluster Config Subcluster Spec Autoscaling Config 
- Autoscaling configuration for compute subclusters.
- id str
- (Computed) ID of a new Data Proc cluster.
- hostsCount Number
- Number of hosts within Data Proc subcluster.
- name String
- Name of the Data Proc subcluster.
- resources Property Map
- Resources allocated to each host of the Data Proc subcluster. The structure is documented below.
- role String
- Role of the subcluster in the Data Proc cluster.
- subnetId String
- The ID of the subnet, to which hosts of the subcluster belong. Subnets of all the subclusters must belong to the same VPC network.
- autoscalingConfig Property Map
- Autoscaling configuration for compute subclusters.
- id String
- (Computed) ID of a new Data Proc cluster.
DataprocClusterClusterConfigSubclusterSpecAutoscalingConfig, DataprocClusterClusterConfigSubclusterSpecAutoscalingConfigArgs                
- MaxHosts intCount 
- Maximum number of nodes in autoscaling subclusters.
- CpuUtilization doubleTarget 
- Defines an autoscaling rule based on the average CPU utilization of the instance group. If not set default autoscaling metric will be used.
- DecommissionTimeout int
- Timeout to gracefully decommission nodes during downscaling. In seconds.
- MeasurementDuration int
- Time in seconds allotted for averaging metrics.
- Preemptible bool
- Bool flag -- whether to use preemptible compute instances. Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.
- StabilizationDuration int
- Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.
- WarmupDuration int
- The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.
- MaxHosts intCount 
- Maximum number of nodes in autoscaling subclusters.
- CpuUtilization float64Target 
- Defines an autoscaling rule based on the average CPU utilization of the instance group. If not set default autoscaling metric will be used.
- DecommissionTimeout int
- Timeout to gracefully decommission nodes during downscaling. In seconds.
- MeasurementDuration int
- Time in seconds allotted for averaging metrics.
- Preemptible bool
- Bool flag -- whether to use preemptible compute instances. Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.
- StabilizationDuration int
- Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.
- WarmupDuration int
- The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.
- maxHosts IntegerCount 
- Maximum number of nodes in autoscaling subclusters.
- cpuUtilization DoubleTarget 
- Defines an autoscaling rule based on the average CPU utilization of the instance group. If not set default autoscaling metric will be used.
- decommissionTimeout Integer
- Timeout to gracefully decommission nodes during downscaling. In seconds.
- measurementDuration Integer
- Time in seconds allotted for averaging metrics.
- preemptible Boolean
- Bool flag -- whether to use preemptible compute instances. Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.
- stabilizationDuration Integer
- Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.
- warmupDuration Integer
- The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.
- maxHosts numberCount 
- Maximum number of nodes in autoscaling subclusters.
- cpuUtilization numberTarget 
- Defines an autoscaling rule based on the average CPU utilization of the instance group. If not set default autoscaling metric will be used.
- decommissionTimeout number
- Timeout to gracefully decommission nodes during downscaling. In seconds.
- measurementDuration number
- Time in seconds allotted for averaging metrics.
- preemptible boolean
- Bool flag -- whether to use preemptible compute instances. Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.
- stabilizationDuration number
- Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.
- warmupDuration number
- The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.
- max_hosts_ intcount 
- Maximum number of nodes in autoscaling subclusters.
- cpu_utilization_ floattarget 
- Defines an autoscaling rule based on the average CPU utilization of the instance group. If not set default autoscaling metric will be used.
- decommission_timeout int
- Timeout to gracefully decommission nodes during downscaling. In seconds.
- measurement_duration int
- Time in seconds allotted for averaging metrics.
- preemptible bool
- Bool flag -- whether to use preemptible compute instances. Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.
- stabilization_duration int
- Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.
- warmup_duration int
- The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.
- maxHosts NumberCount 
- Maximum number of nodes in autoscaling subclusters.
- cpuUtilization NumberTarget 
- Defines an autoscaling rule based on the average CPU utilization of the instance group. If not set default autoscaling metric will be used.
- decommissionTimeout Number
- Timeout to gracefully decommission nodes during downscaling. In seconds.
- measurementDuration Number
- Time in seconds allotted for averaging metrics.
- preemptible Boolean
- Bool flag -- whether to use preemptible compute instances. Preemptible instances are stopped at least once every 24 hours, and can be stopped at any time if their resources are needed by Compute. For more information, see Preemptible Virtual Machines.
- stabilizationDuration Number
- Minimum amount of time in seconds allotted for monitoring before Instance Groups can reduce the number of instances in the group. During this time, the group size doesn't decrease, even if the new metric values indicate that it should.
- warmupDuration Number
- The warmup time of the instance in seconds. During this time, traffic is sent to the instance, but instance metrics are not collected.
DataprocClusterClusterConfigSubclusterSpecResources, DataprocClusterClusterConfigSubclusterSpecResourcesArgs              
- DiskSize int
- Volume of the storage available to a host, in gigabytes.
- ResourcePreset stringId 
- The ID of the preset for computational resources available to a host. All available presets are listed in the documentation.
- DiskType stringId 
- Type of the storage of a host. One of network-hdd(default) ornetwork-ssd.
- DiskSize int
- Volume of the storage available to a host, in gigabytes.
- ResourcePreset stringId 
- The ID of the preset for computational resources available to a host. All available presets are listed in the documentation.
- DiskType stringId 
- Type of the storage of a host. One of network-hdd(default) ornetwork-ssd.
- diskSize Integer
- Volume of the storage available to a host, in gigabytes.
- resourcePreset StringId 
- The ID of the preset for computational resources available to a host. All available presets are listed in the documentation.
- diskType StringId 
- Type of the storage of a host. One of network-hdd(default) ornetwork-ssd.
- diskSize number
- Volume of the storage available to a host, in gigabytes.
- resourcePreset stringId 
- The ID of the preset for computational resources available to a host. All available presets are listed in the documentation.
- diskType stringId 
- Type of the storage of a host. One of network-hdd(default) ornetwork-ssd.
- disk_size int
- Volume of the storage available to a host, in gigabytes.
- resource_preset_ strid 
- The ID of the preset for computational resources available to a host. All available presets are listed in the documentation.
- disk_type_ strid 
- Type of the storage of a host. One of network-hdd(default) ornetwork-ssd.
- diskSize Number
- Volume of the storage available to a host, in gigabytes.
- resourcePreset StringId 
- The ID of the preset for computational resources available to a host. All available presets are listed in the documentation.
- diskType StringId 
- Type of the storage of a host. One of network-hdd(default) ornetwork-ssd.
Import
A cluster can be imported using the id of the resource, e.g.
 $ pulumi import yandex:index/dataprocCluster:DataprocCluster foo cluster_id
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Yandex pulumi/pulumi-yandex
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the yandexTerraform Provider.