1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. emrv2
  5. Cluster
Alibaba Cloud v3.38.0 published on Friday, Jun 2, 2023 by Pulumi

alicloud.emrv2.Cluster

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.38.0 published on Friday, Jun 2, 2023 by Pulumi

    Provides a EMR cluster resource. This resource is based on EMR’s new version OpenAPI.

    For information about EMR New and how to use it, see Add a domain.

    NOTE: Available in v1.199.0+.

    Example Usage

    Basic Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var defaultResourceGroups = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()
        {
            Status = "OK",
        });
    
        var defaultZones = AliCloud.GetZones.Invoke(new()
        {
            AvailableInstanceType = "ecs.g7.xlarge",
        });
    
        var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new()
        {
            VpcName = "TF-VPC",
            CidrBlock = "172.16.0.0/12",
        });
    
        var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new()
        {
            VpcId = defaultNetwork.Id,
            CidrBlock = "172.16.0.0/21",
            ZoneId = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
            VswitchName = "TF_VSwitch",
        });
    
        var defaultEcsKeyPair = new AliCloud.Ecs.EcsKeyPair("defaultEcsKeyPair", new()
        {
            KeyPairName = "terraform-kp",
        });
    
        var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("defaultSecurityGroup", new()
        {
            VpcId = defaultNetwork.Id,
        });
    
        var defaultRole = new AliCloud.Ram.Role("defaultRole", new()
        {
            Document = @"    {
            ""Statement"": [
            {
                ""Action"": ""sts:AssumeRole"",
                ""Effect"": ""Allow"",
                ""Principal"": {
                ""Service"": [
                    ""emr.aliyuncs.com"",
                    ""ecs.aliyuncs.com""
                ]
                }
            }
            ],
            ""Version"": ""1""
        }
    ",
            Description = "this is a role test.",
            Force = true,
        });
    
        var defaultCluster = new AliCloud.Emrv2.Cluster("defaultCluster", new()
        {
            PaymentType = "PayAsYouGo",
            ClusterType = "DATALAKE",
            ReleaseVersion = "EMR-5.10.0",
            ClusterName = "terraform-emr-cluster-v2",
            DeployMode = "NORMAL",
            SecurityMode = "NORMAL",
            Applications = new[]
            {
                "HADOOP-COMMON",
                "HDFS",
                "YARN",
                "HIVE",
                "SPARK3",
                "TEZ",
            },
            ApplicationConfigs = new[]
            {
                new AliCloud.Emrv2.Inputs.ClusterApplicationConfigArgs
                {
                    ApplicationName = "HIVE",
                    ConfigFileName = "hivemetastore-site.xml",
                    ConfigItemKey = "hive.metastore.type",
                    ConfigItemValue = "DLF",
                    ConfigScope = "CLUSTER",
                },
                new AliCloud.Emrv2.Inputs.ClusterApplicationConfigArgs
                {
                    ApplicationName = "SPARK3",
                    ConfigFileName = "hive-site.xml",
                    ConfigItemKey = "hive.metastore.type",
                    ConfigItemValue = "DLF",
                    ConfigScope = "CLUSTER",
                },
            },
            NodeAttributes = new[]
            {
                new AliCloud.Emrv2.Inputs.ClusterNodeAttributeArgs
                {
                    RamRole = defaultRole.Name,
                    SecurityGroupId = defaultSecurityGroup.Id,
                    VpcId = defaultNetwork.Id,
                    ZoneId = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
                    KeyPairName = defaultEcsKeyPair.Id,
                },
            },
            Tags = 
            {
                { "created", "tf" },
            },
            NodeGroups = new[]
            {
                new AliCloud.Emrv2.Inputs.ClusterNodeGroupArgs
                {
                    NodeGroupType = "MASTER",
                    NodeGroupName = "emr-master",
                    PaymentType = "PayAsYouGo",
                    VswitchIds = new[]
                    {
                        defaultSwitch.Id,
                    },
                    WithPublicIp = false,
                    InstanceTypes = new[]
                    {
                        "ecs.g7.xlarge",
                    },
                    NodeCount = 1,
                    SystemDisk = new AliCloud.Emrv2.Inputs.ClusterNodeGroupSystemDiskArgs
                    {
                        Category = "cloud_essd",
                        Size = 80,
                        Count = 1,
                    },
                    DataDisks = new[]
                    {
                        new AliCloud.Emrv2.Inputs.ClusterNodeGroupDataDiskArgs
                        {
                            Category = "cloud_essd",
                            Size = 80,
                            Count = 3,
                        },
                    },
                },
                new AliCloud.Emrv2.Inputs.ClusterNodeGroupArgs
                {
                    NodeGroupType = "CORE",
                    NodeGroupName = "emr-core",
                    PaymentType = "PayAsYouGo",
                    VswitchIds = new[]
                    {
                        defaultSwitch.Id,
                    },
                    WithPublicIp = false,
                    InstanceTypes = new[]
                    {
                        "ecs.g7.xlarge",
                    },
                    NodeCount = 3,
                    SystemDisk = new AliCloud.Emrv2.Inputs.ClusterNodeGroupSystemDiskArgs
                    {
                        Category = "cloud_essd",
                        Size = 80,
                        Count = 1,
                    },
                    DataDisks = new[]
                    {
                        new AliCloud.Emrv2.Inputs.ClusterNodeGroupDataDiskArgs
                        {
                            Category = "cloud_essd",
                            Size = 80,
                            Count = 3,
                        },
                    },
                },
            },
            ResourceGroupId = defaultResourceGroups.Apply(getResourceGroupsResult => getResourceGroupsResult.Ids[0]),
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/emrv2"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultResourceGroups, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
    			Status: pulumi.StringRef("OK"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    			AvailableInstanceType: pulumi.StringRef("ecs.g7.xlarge"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
    			VpcName:   pulumi.String("TF-VPC"),
    			CidrBlock: pulumi.String("172.16.0.0/12"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
    			VpcId:       defaultNetwork.ID(),
    			CidrBlock:   pulumi.String("172.16.0.0/21"),
    			ZoneId:      *pulumi.String(defaultZones.Zones[0].Id),
    			VswitchName: pulumi.String("TF_VSwitch"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultEcsKeyPair, err := ecs.NewEcsKeyPair(ctx, "defaultEcsKeyPair", &ecs.EcsKeyPairArgs{
    			KeyPairName: pulumi.String("terraform-kp"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
    			VpcId: defaultNetwork.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		defaultRole, err := ram.NewRole(ctx, "defaultRole", &ram.RoleArgs{
    			Document:    pulumi.String("    {\n        \"Statement\": [\n        {\n            \"Action\": \"sts:AssumeRole\",\n            \"Effect\": \"Allow\",\n            \"Principal\": {\n            \"Service\": [\n                \"emr.aliyuncs.com\",\n                \"ecs.aliyuncs.com\"\n            ]\n            }\n        }\n        ],\n        \"Version\": \"1\"\n    }\n"),
    			Description: pulumi.String("this is a role test."),
    			Force:       pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = emrv2.NewCluster(ctx, "defaultCluster", &emrv2.ClusterArgs{
    			PaymentType:    pulumi.String("PayAsYouGo"),
    			ClusterType:    pulumi.String("DATALAKE"),
    			ReleaseVersion: pulumi.String("EMR-5.10.0"),
    			ClusterName:    pulumi.String("terraform-emr-cluster-v2"),
    			DeployMode:     pulumi.String("NORMAL"),
    			SecurityMode:   pulumi.String("NORMAL"),
    			Applications: pulumi.StringArray{
    				pulumi.String("HADOOP-COMMON"),
    				pulumi.String("HDFS"),
    				pulumi.String("YARN"),
    				pulumi.String("HIVE"),
    				pulumi.String("SPARK3"),
    				pulumi.String("TEZ"),
    			},
    			ApplicationConfigs: emrv2.ClusterApplicationConfigArray{
    				&emrv2.ClusterApplicationConfigArgs{
    					ApplicationName: pulumi.String("HIVE"),
    					ConfigFileName:  pulumi.String("hivemetastore-site.xml"),
    					ConfigItemKey:   pulumi.String("hive.metastore.type"),
    					ConfigItemValue: pulumi.String("DLF"),
    					ConfigScope:     pulumi.String("CLUSTER"),
    				},
    				&emrv2.ClusterApplicationConfigArgs{
    					ApplicationName: pulumi.String("SPARK3"),
    					ConfigFileName:  pulumi.String("hive-site.xml"),
    					ConfigItemKey:   pulumi.String("hive.metastore.type"),
    					ConfigItemValue: pulumi.String("DLF"),
    					ConfigScope:     pulumi.String("CLUSTER"),
    				},
    			},
    			NodeAttributes: emrv2.ClusterNodeAttributeArray{
    				&emrv2.ClusterNodeAttributeArgs{
    					RamRole:         defaultRole.Name,
    					SecurityGroupId: defaultSecurityGroup.ID(),
    					VpcId:           defaultNetwork.ID(),
    					ZoneId:          *pulumi.String(defaultZones.Zones[0].Id),
    					KeyPairName:     defaultEcsKeyPair.ID(),
    				},
    			},
    			Tags: pulumi.AnyMap{
    				"created": pulumi.Any("tf"),
    			},
    			NodeGroups: emrv2.ClusterNodeGroupArray{
    				&emrv2.ClusterNodeGroupArgs{
    					NodeGroupType: pulumi.String("MASTER"),
    					NodeGroupName: pulumi.String("emr-master"),
    					PaymentType:   pulumi.String("PayAsYouGo"),
    					VswitchIds: pulumi.StringArray{
    						defaultSwitch.ID(),
    					},
    					WithPublicIp: pulumi.Bool(false),
    					InstanceTypes: pulumi.StringArray{
    						pulumi.String("ecs.g7.xlarge"),
    					},
    					NodeCount: pulumi.Int(1),
    					SystemDisk: &emrv2.ClusterNodeGroupSystemDiskArgs{
    						Category: pulumi.String("cloud_essd"),
    						Size:     pulumi.Int(80),
    						Count:    pulumi.Int(1),
    					},
    					DataDisks: emrv2.ClusterNodeGroupDataDiskArray{
    						&emrv2.ClusterNodeGroupDataDiskArgs{
    							Category: pulumi.String("cloud_essd"),
    							Size:     pulumi.Int(80),
    							Count:    pulumi.Int(3),
    						},
    					},
    				},
    				&emrv2.ClusterNodeGroupArgs{
    					NodeGroupType: pulumi.String("CORE"),
    					NodeGroupName: pulumi.String("emr-core"),
    					PaymentType:   pulumi.String("PayAsYouGo"),
    					VswitchIds: pulumi.StringArray{
    						defaultSwitch.ID(),
    					},
    					WithPublicIp: pulumi.Bool(false),
    					InstanceTypes: pulumi.StringArray{
    						pulumi.String("ecs.g7.xlarge"),
    					},
    					NodeCount: pulumi.Int(3),
    					SystemDisk: &emrv2.ClusterNodeGroupSystemDiskArgs{
    						Category: pulumi.String("cloud_essd"),
    						Size:     pulumi.Int(80),
    						Count:    pulumi.Int(1),
    					},
    					DataDisks: emrv2.ClusterNodeGroupDataDiskArray{
    						&emrv2.ClusterNodeGroupDataDiskArgs{
    							Category: pulumi.String("cloud_essd"),
    							Size:     pulumi.Int(80),
    							Count:    pulumi.Int(3),
    						},
    					},
    				},
    			},
    			ResourceGroupId: *pulumi.String(defaultResourceGroups.Ids[0]),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.resourcemanager.ResourcemanagerFunctions;
    import com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;
    import com.pulumi.alicloud.AlicloudFunctions;
    import com.pulumi.alicloud.inputs.GetZonesArgs;
    import com.pulumi.alicloud.vpc.Network;
    import com.pulumi.alicloud.vpc.NetworkArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.alicloud.ecs.EcsKeyPair;
    import com.pulumi.alicloud.ecs.EcsKeyPairArgs;
    import com.pulumi.alicloud.ecs.SecurityGroup;
    import com.pulumi.alicloud.ecs.SecurityGroupArgs;
    import com.pulumi.alicloud.ram.Role;
    import com.pulumi.alicloud.ram.RoleArgs;
    import com.pulumi.alicloud.emrv2.Cluster;
    import com.pulumi.alicloud.emrv2.ClusterArgs;
    import com.pulumi.alicloud.emrv2.inputs.ClusterApplicationConfigArgs;
    import com.pulumi.alicloud.emrv2.inputs.ClusterNodeAttributeArgs;
    import com.pulumi.alicloud.emrv2.inputs.ClusterNodeGroupArgs;
    import com.pulumi.alicloud.emrv2.inputs.ClusterNodeGroupSystemDiskArgs;
    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 defaultResourceGroups = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()
                .status("OK")
                .build());
    
            final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableInstanceType("ecs.g7.xlarge")
                .build());
    
            var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()        
                .vpcName("TF-VPC")
                .cidrBlock("172.16.0.0/12")
                .build());
    
            var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()        
                .vpcId(defaultNetwork.id())
                .cidrBlock("172.16.0.0/21")
                .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .vswitchName("TF_VSwitch")
                .build());
    
            var defaultEcsKeyPair = new EcsKeyPair("defaultEcsKeyPair", EcsKeyPairArgs.builder()        
                .keyPairName("terraform-kp")
                .build());
    
            var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()        
                .vpcId(defaultNetwork.id())
                .build());
    
            var defaultRole = new Role("defaultRole", RoleArgs.builder()        
                .document("""
        {
            "Statement": [
            {
                "Action": "sts:AssumeRole",
                "Effect": "Allow",
                "Principal": {
                "Service": [
                    "emr.aliyuncs.com",
                    "ecs.aliyuncs.com"
                ]
                }
            }
            ],
            "Version": "1"
        }
                """)
                .description("this is a role test.")
                .force(true)
                .build());
    
            var defaultCluster = new Cluster("defaultCluster", ClusterArgs.builder()        
                .paymentType("PayAsYouGo")
                .clusterType("DATALAKE")
                .releaseVersion("EMR-5.10.0")
                .clusterName("terraform-emr-cluster-v2")
                .deployMode("NORMAL")
                .securityMode("NORMAL")
                .applications(            
                    "HADOOP-COMMON",
                    "HDFS",
                    "YARN",
                    "HIVE",
                    "SPARK3",
                    "TEZ")
                .applicationConfigs(            
                    ClusterApplicationConfigArgs.builder()
                        .applicationName("HIVE")
                        .configFileName("hivemetastore-site.xml")
                        .configItemKey("hive.metastore.type")
                        .configItemValue("DLF")
                        .configScope("CLUSTER")
                        .build(),
                    ClusterApplicationConfigArgs.builder()
                        .applicationName("SPARK3")
                        .configFileName("hive-site.xml")
                        .configItemKey("hive.metastore.type")
                        .configItemValue("DLF")
                        .configScope("CLUSTER")
                        .build())
                .nodeAttributes(ClusterNodeAttributeArgs.builder()
                    .ramRole(defaultRole.name())
                    .securityGroupId(defaultSecurityGroup.id())
                    .vpcId(defaultNetwork.id())
                    .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                    .keyPairName(defaultEcsKeyPair.id())
                    .build())
                .tags(Map.of("created", "tf"))
                .nodeGroups(            
                    ClusterNodeGroupArgs.builder()
                        .nodeGroupType("MASTER")
                        .nodeGroupName("emr-master")
                        .paymentType("PayAsYouGo")
                        .vswitchIds(defaultSwitch.id())
                        .withPublicIp(false)
                        .instanceTypes("ecs.g7.xlarge")
                        .nodeCount(1)
                        .systemDisk(ClusterNodeGroupSystemDiskArgs.builder()
                            .category("cloud_essd")
                            .size(80)
                            .count(1)
                            .build())
                        .dataDisks(ClusterNodeGroupDataDiskArgs.builder()
                            .category("cloud_essd")
                            .size(80)
                            .count(3)
                            .build())
                        .build(),
                    ClusterNodeGroupArgs.builder()
                        .nodeGroupType("CORE")
                        .nodeGroupName("emr-core")
                        .paymentType("PayAsYouGo")
                        .vswitchIds(defaultSwitch.id())
                        .withPublicIp(false)
                        .instanceTypes("ecs.g7.xlarge")
                        .nodeCount(3)
                        .systemDisk(ClusterNodeGroupSystemDiskArgs.builder()
                            .category("cloud_essd")
                            .size(80)
                            .count(1)
                            .build())
                        .dataDisks(ClusterNodeGroupDataDiskArgs.builder()
                            .category("cloud_essd")
                            .size(80)
                            .count(3)
                            .build())
                        .build())
                .resourceGroupId(defaultResourceGroups.applyValue(getResourceGroupsResult -> getResourceGroupsResult.ids()[0]))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    default_resource_groups = alicloud.resourcemanager.get_resource_groups(status="OK")
    default_zones = alicloud.get_zones(available_instance_type="ecs.g7.xlarge")
    default_network = alicloud.vpc.Network("defaultNetwork",
        vpc_name="TF-VPC",
        cidr_block="172.16.0.0/12")
    default_switch = alicloud.vpc.Switch("defaultSwitch",
        vpc_id=default_network.id,
        cidr_block="172.16.0.0/21",
        zone_id=default_zones.zones[0].id,
        vswitch_name="TF_VSwitch")
    default_ecs_key_pair = alicloud.ecs.EcsKeyPair("defaultEcsKeyPair", key_pair_name="terraform-kp")
    default_security_group = alicloud.ecs.SecurityGroup("defaultSecurityGroup", vpc_id=default_network.id)
    default_role = alicloud.ram.Role("defaultRole",
        document="""    {
            "Statement": [
            {
                "Action": "sts:AssumeRole",
                "Effect": "Allow",
                "Principal": {
                "Service": [
                    "emr.aliyuncs.com",
                    "ecs.aliyuncs.com"
                ]
                }
            }
            ],
            "Version": "1"
        }
    """,
        description="this is a role test.",
        force=True)
    default_cluster = alicloud.emrv2.Cluster("defaultCluster",
        payment_type="PayAsYouGo",
        cluster_type="DATALAKE",
        release_version="EMR-5.10.0",
        cluster_name="terraform-emr-cluster-v2",
        deploy_mode="NORMAL",
        security_mode="NORMAL",
        applications=[
            "HADOOP-COMMON",
            "HDFS",
            "YARN",
            "HIVE",
            "SPARK3",
            "TEZ",
        ],
        application_configs=[
            alicloud.emrv2.ClusterApplicationConfigArgs(
                application_name="HIVE",
                config_file_name="hivemetastore-site.xml",
                config_item_key="hive.metastore.type",
                config_item_value="DLF",
                config_scope="CLUSTER",
            ),
            alicloud.emrv2.ClusterApplicationConfigArgs(
                application_name="SPARK3",
                config_file_name="hive-site.xml",
                config_item_key="hive.metastore.type",
                config_item_value="DLF",
                config_scope="CLUSTER",
            ),
        ],
        node_attributes=[alicloud.emrv2.ClusterNodeAttributeArgs(
            ram_role=default_role.name,
            security_group_id=default_security_group.id,
            vpc_id=default_network.id,
            zone_id=default_zones.zones[0].id,
            key_pair_name=default_ecs_key_pair.id,
        )],
        tags={
            "created": "tf",
        },
        node_groups=[
            alicloud.emrv2.ClusterNodeGroupArgs(
                node_group_type="MASTER",
                node_group_name="emr-master",
                payment_type="PayAsYouGo",
                vswitch_ids=[default_switch.id],
                with_public_ip=False,
                instance_types=["ecs.g7.xlarge"],
                node_count=1,
                system_disk=alicloud.emrv2.ClusterNodeGroupSystemDiskArgs(
                    category="cloud_essd",
                    size=80,
                    count=1,
                ),
                data_disks=[alicloud.emrv2.ClusterNodeGroupDataDiskArgs(
                    category="cloud_essd",
                    size=80,
                    count=3,
                )],
            ),
            alicloud.emrv2.ClusterNodeGroupArgs(
                node_group_type="CORE",
                node_group_name="emr-core",
                payment_type="PayAsYouGo",
                vswitch_ids=[default_switch.id],
                with_public_ip=False,
                instance_types=["ecs.g7.xlarge"],
                node_count=3,
                system_disk=alicloud.emrv2.ClusterNodeGroupSystemDiskArgs(
                    category="cloud_essd",
                    size=80,
                    count=1,
                ),
                data_disks=[alicloud.emrv2.ClusterNodeGroupDataDiskArgs(
                    category="cloud_essd",
                    size=80,
                    count=3,
                )],
            ),
        ],
        resource_group_id=default_resource_groups.ids[0])
    
    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const defaultResourceGroups = alicloud.resourcemanager.getResourceGroups({
        status: "OK",
    });
    const defaultZones = alicloud.getZones({
        availableInstanceType: "ecs.g7.xlarge",
    });
    const defaultNetwork = new alicloud.vpc.Network("defaultNetwork", {
        vpcName: "TF-VPC",
        cidrBlock: "172.16.0.0/12",
    });
    const defaultSwitch = new alicloud.vpc.Switch("defaultSwitch", {
        vpcId: defaultNetwork.id,
        cidrBlock: "172.16.0.0/21",
        zoneId: defaultZones.then(defaultZones => defaultZones.zones?.[0]?.id),
        vswitchName: "TF_VSwitch",
    });
    const defaultEcsKeyPair = new alicloud.ecs.EcsKeyPair("defaultEcsKeyPair", {keyPairName: "terraform-kp"});
    const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("defaultSecurityGroup", {vpcId: defaultNetwork.id});
    const defaultRole = new alicloud.ram.Role("defaultRole", {
        document: `    {
            "Statement": [
            {
                "Action": "sts:AssumeRole",
                "Effect": "Allow",
                "Principal": {
                "Service": [
                    "emr.aliyuncs.com",
                    "ecs.aliyuncs.com"
                ]
                }
            }
            ],
            "Version": "1"
        }
    `,
        description: "this is a role test.",
        force: true,
    });
    const defaultCluster = new alicloud.emrv2.Cluster("defaultCluster", {
        paymentType: "PayAsYouGo",
        clusterType: "DATALAKE",
        releaseVersion: "EMR-5.10.0",
        clusterName: "terraform-emr-cluster-v2",
        deployMode: "NORMAL",
        securityMode: "NORMAL",
        applications: [
            "HADOOP-COMMON",
            "HDFS",
            "YARN",
            "HIVE",
            "SPARK3",
            "TEZ",
        ],
        applicationConfigs: [
            {
                applicationName: "HIVE",
                configFileName: "hivemetastore-site.xml",
                configItemKey: "hive.metastore.type",
                configItemValue: "DLF",
                configScope: "CLUSTER",
            },
            {
                applicationName: "SPARK3",
                configFileName: "hive-site.xml",
                configItemKey: "hive.metastore.type",
                configItemValue: "DLF",
                configScope: "CLUSTER",
            },
        ],
        nodeAttributes: [{
            ramRole: defaultRole.name,
            securityGroupId: defaultSecurityGroup.id,
            vpcId: defaultNetwork.id,
            zoneId: defaultZones.then(defaultZones => defaultZones.zones?.[0]?.id),
            keyPairName: defaultEcsKeyPair.id,
        }],
        tags: {
            created: "tf",
        },
        nodeGroups: [
            {
                nodeGroupType: "MASTER",
                nodeGroupName: "emr-master",
                paymentType: "PayAsYouGo",
                vswitchIds: [defaultSwitch.id],
                withPublicIp: false,
                instanceTypes: ["ecs.g7.xlarge"],
                nodeCount: 1,
                systemDisk: {
                    category: "cloud_essd",
                    size: 80,
                    count: 1,
                },
                dataDisks: [{
                    category: "cloud_essd",
                    size: 80,
                    count: 3,
                }],
            },
            {
                nodeGroupType: "CORE",
                nodeGroupName: "emr-core",
                paymentType: "PayAsYouGo",
                vswitchIds: [defaultSwitch.id],
                withPublicIp: false,
                instanceTypes: ["ecs.g7.xlarge"],
                nodeCount: 3,
                systemDisk: {
                    category: "cloud_essd",
                    size: 80,
                    count: 1,
                },
                dataDisks: [{
                    category: "cloud_essd",
                    size: 80,
                    count: 3,
                }],
            },
        ],
        resourceGroupId: defaultResourceGroups.then(defaultResourceGroups => defaultResourceGroups.ids?.[0]),
    });
    
    resources:
      defaultNetwork:
        type: alicloud:vpc:Network
        properties:
          vpcName: TF-VPC
          cidrBlock: 172.16.0.0/12
      defaultSwitch:
        type: alicloud:vpc:Switch
        properties:
          vpcId: ${defaultNetwork.id}
          cidrBlock: 172.16.0.0/21
          zoneId: ${defaultZones.zones[0].id}
          vswitchName: TF_VSwitch
      defaultEcsKeyPair:
        type: alicloud:ecs:EcsKeyPair
        properties:
          keyPairName: terraform-kp
      defaultSecurityGroup:
        type: alicloud:ecs:SecurityGroup
        properties:
          vpcId: ${defaultNetwork.id}
      defaultRole:
        type: alicloud:ram:Role
        properties:
          document: |2
                {
                    "Statement": [
                    {
                        "Action": "sts:AssumeRole",
                        "Effect": "Allow",
                        "Principal": {
                        "Service": [
                            "emr.aliyuncs.com",
                            "ecs.aliyuncs.com"
                        ]
                        }
                    }
                    ],
                    "Version": "1"
                }
          description: this is a role test.
          force: true
      defaultCluster:
        type: alicloud:emrv2:Cluster
        properties:
          paymentType: PayAsYouGo
          clusterType: DATALAKE
          releaseVersion: EMR-5.10.0
          clusterName: terraform-emr-cluster-v2
          deployMode: NORMAL
          securityMode: NORMAL
          applications:
            - HADOOP-COMMON
            - HDFS
            - YARN
            - HIVE
            - SPARK3
            - TEZ
          applicationConfigs:
            - applicationName: HIVE
              configFileName: hivemetastore-site.xml
              configItemKey: hive.metastore.type
              configItemValue: DLF
              configScope: CLUSTER
            - applicationName: SPARK3
              configFileName: hive-site.xml
              configItemKey: hive.metastore.type
              configItemValue: DLF
              configScope: CLUSTER
          nodeAttributes:
            - ramRole: ${defaultRole.name}
              securityGroupId: ${defaultSecurityGroup.id}
              vpcId: ${defaultNetwork.id}
              zoneId: ${defaultZones.zones[0].id}
              keyPairName: ${defaultEcsKeyPair.id}
          tags:
            created: tf
          nodeGroups:
            - nodeGroupType: MASTER
              nodeGroupName: emr-master
              paymentType: PayAsYouGo
              vswitchIds:
                - ${defaultSwitch.id}
              withPublicIp: false
              instanceTypes:
                - ecs.g7.xlarge
              nodeCount: 1
              systemDisk:
                category: cloud_essd
                size: 80
                count: 1
              dataDisks:
                - category: cloud_essd
                  size: 80
                  count: 3
            - nodeGroupType: CORE
              nodeGroupName: emr-core
              paymentType: PayAsYouGo
              vswitchIds:
                - ${defaultSwitch.id}
              withPublicIp: false
              instanceTypes:
                - ecs.g7.xlarge
              nodeCount: 3
              systemDisk:
                category: cloud_essd
                size: 80
                count: 1
              dataDisks:
                - category: cloud_essd
                  size: 80
                  count: 3
          resourceGroupId: ${defaultResourceGroups.ids[0]}
    variables:
      defaultResourceGroups:
        fn::invoke:
          Function: alicloud:resourcemanager:getResourceGroups
          Arguments:
            status: OK
      defaultZones:
        fn::invoke:
          Function: alicloud:getZones
          Arguments:
            availableInstanceType: ecs.g7.xlarge
    

    Create Cluster Resource

    new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);
    @overload
    def Cluster(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                application_configs: Optional[Sequence[ClusterApplicationConfigArgs]] = None,
                applications: Optional[Sequence[str]] = None,
                bootstrap_scripts: Optional[Sequence[ClusterBootstrapScriptArgs]] = None,
                cluster_name: Optional[str] = None,
                cluster_type: Optional[str] = None,
                deploy_mode: Optional[str] = None,
                node_attributes: Optional[Sequence[ClusterNodeAttributeArgs]] = None,
                node_groups: Optional[Sequence[ClusterNodeGroupArgs]] = None,
                payment_type: Optional[str] = None,
                release_version: Optional[str] = None,
                resource_group_id: Optional[str] = None,
                security_mode: Optional[str] = None,
                subscription_config: Optional[ClusterSubscriptionConfigArgs] = None,
                tags: Optional[Mapping[str, Any]] = None)
    @overload
    def Cluster(resource_name: str,
                args: ClusterArgs,
                opts: Optional[ResourceOptions] = None)
    func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)
    public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
    public Cluster(String name, ClusterArgs args)
    public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
    
    type: alicloud:emrv2:Cluster
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args ClusterArgs
    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 ClusterArgs
    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 ClusterArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Cluster Resource Properties

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

    Inputs

    The Cluster resource accepts the following input properties:

    Applications List<string>

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    ClusterName string

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    ClusterType string

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    NodeAttributes List<Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeAttributeArgs>

    The node attributes of ecs instances which the emr-cluster belongs.

    NodeGroups List<Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupArgs>

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    ReleaseVersion string

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    ApplicationConfigs List<Pulumi.AliCloud.Emrv2.Inputs.ClusterApplicationConfigArgs>

    The application configurations of EMR cluster.

    BootstrapScripts List<Pulumi.AliCloud.Emrv2.Inputs.ClusterBootstrapScriptArgs>

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    DeployMode string

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    PaymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    ResourceGroupId string

    The Id of resource group which the emr-cluster belongs.

    SecurityMode string

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    SubscriptionConfig Pulumi.AliCloud.Emrv2.Inputs.ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    Tags Dictionary<string, object>

    A mapping of tags to assign to the resource.

    Applications []string

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    ClusterName string

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    ClusterType string

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    NodeAttributes []ClusterNodeAttributeArgs

    The node attributes of ecs instances which the emr-cluster belongs.

    NodeGroups []ClusterNodeGroupArgs

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    ReleaseVersion string

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    ApplicationConfigs []ClusterApplicationConfigArgs

    The application configurations of EMR cluster.

    BootstrapScripts []ClusterBootstrapScriptArgs

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    DeployMode string

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    PaymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    ResourceGroupId string

    The Id of resource group which the emr-cluster belongs.

    SecurityMode string

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    SubscriptionConfig ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    Tags map[string]interface{}

    A mapping of tags to assign to the resource.

    applications List<String>

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    clusterName String

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    clusterType String

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    nodeAttributes List<ClusterNodeAttributeArgs>

    The node attributes of ecs instances which the emr-cluster belongs.

    nodeGroups List<ClusterNodeGroupArgs>

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    releaseVersion String

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    applicationConfigs List<ClusterApplicationConfigArgs>

    The application configurations of EMR cluster.

    bootstrapScripts List<ClusterBootstrapScriptArgs>

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    deployMode String

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    paymentType String

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    resourceGroupId String

    The Id of resource group which the emr-cluster belongs.

    securityMode String

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscriptionConfig ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    tags Map<String,Object>

    A mapping of tags to assign to the resource.

    applications string[]

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    clusterName string

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    clusterType string

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    nodeAttributes ClusterNodeAttributeArgs[]

    The node attributes of ecs instances which the emr-cluster belongs.

    nodeGroups ClusterNodeGroupArgs[]

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    releaseVersion string

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    applicationConfigs ClusterApplicationConfigArgs[]

    The application configurations of EMR cluster.

    bootstrapScripts ClusterBootstrapScriptArgs[]

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    deployMode string

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    paymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    resourceGroupId string

    The Id of resource group which the emr-cluster belongs.

    securityMode string

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscriptionConfig ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    tags {[key: string]: any}

    A mapping of tags to assign to the resource.

    applications Sequence[str]

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    cluster_name str

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    cluster_type str

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    node_attributes Sequence[ClusterNodeAttributeArgs]

    The node attributes of ecs instances which the emr-cluster belongs.

    node_groups Sequence[ClusterNodeGroupArgs]

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    release_version str

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    application_configs Sequence[ClusterApplicationConfigArgs]

    The application configurations of EMR cluster.

    bootstrap_scripts Sequence[ClusterBootstrapScriptArgs]

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    deploy_mode str

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    payment_type str

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    resource_group_id str

    The Id of resource group which the emr-cluster belongs.

    security_mode str

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscription_config ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    tags Mapping[str, Any]

    A mapping of tags to assign to the resource.

    applications List<String>

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    clusterName String

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    clusterType String

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    nodeAttributes List<Property Map>

    The node attributes of ecs instances which the emr-cluster belongs.

    nodeGroups List<Property Map>

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    releaseVersion String

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    applicationConfigs List<Property Map>

    The application configurations of EMR cluster.

    bootstrapScripts List<Property Map>

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    deployMode String

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    paymentType String

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    resourceGroupId String

    The Id of resource group which the emr-cluster belongs.

    securityMode String

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscriptionConfig Property Map

    The detail configuration of subscription payment type.

    tags Map<Any>

    A mapping of tags to assign to the resource.

    Outputs

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

    Id string

    The provider-assigned unique ID for this managed resource.

    Id string

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    id string

    The provider-assigned unique ID for this managed resource.

    id str

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    Look up Existing Cluster Resource

    Get an existing Cluster 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?: ClusterState, opts?: CustomResourceOptions): Cluster
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            application_configs: Optional[Sequence[ClusterApplicationConfigArgs]] = None,
            applications: Optional[Sequence[str]] = None,
            bootstrap_scripts: Optional[Sequence[ClusterBootstrapScriptArgs]] = None,
            cluster_name: Optional[str] = None,
            cluster_type: Optional[str] = None,
            deploy_mode: Optional[str] = None,
            node_attributes: Optional[Sequence[ClusterNodeAttributeArgs]] = None,
            node_groups: Optional[Sequence[ClusterNodeGroupArgs]] = None,
            payment_type: Optional[str] = None,
            release_version: Optional[str] = None,
            resource_group_id: Optional[str] = None,
            security_mode: Optional[str] = None,
            subscription_config: Optional[ClusterSubscriptionConfigArgs] = None,
            tags: Optional[Mapping[str, Any]] = None) -> Cluster
    func GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)
    public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)
    public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ApplicationConfigs List<Pulumi.AliCloud.Emrv2.Inputs.ClusterApplicationConfigArgs>

    The application configurations of EMR cluster.

    Applications List<string>

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    BootstrapScripts List<Pulumi.AliCloud.Emrv2.Inputs.ClusterBootstrapScriptArgs>

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    ClusterName string

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    ClusterType string

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    DeployMode string

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    NodeAttributes List<Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeAttributeArgs>

    The node attributes of ecs instances which the emr-cluster belongs.

    NodeGroups List<Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupArgs>

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    PaymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    ReleaseVersion string

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    ResourceGroupId string

    The Id of resource group which the emr-cluster belongs.

    SecurityMode string

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    SubscriptionConfig Pulumi.AliCloud.Emrv2.Inputs.ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    Tags Dictionary<string, object>

    A mapping of tags to assign to the resource.

    ApplicationConfigs []ClusterApplicationConfigArgs

    The application configurations of EMR cluster.

    Applications []string

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    BootstrapScripts []ClusterBootstrapScriptArgs

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    ClusterName string

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    ClusterType string

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    DeployMode string

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    NodeAttributes []ClusterNodeAttributeArgs

    The node attributes of ecs instances which the emr-cluster belongs.

    NodeGroups []ClusterNodeGroupArgs

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    PaymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    ReleaseVersion string

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    ResourceGroupId string

    The Id of resource group which the emr-cluster belongs.

    SecurityMode string

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    SubscriptionConfig ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    Tags map[string]interface{}

    A mapping of tags to assign to the resource.

    applicationConfigs List<ClusterApplicationConfigArgs>

    The application configurations of EMR cluster.

    applications List<String>

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    bootstrapScripts List<ClusterBootstrapScriptArgs>

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    clusterName String

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    clusterType String

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    deployMode String

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    nodeAttributes List<ClusterNodeAttributeArgs>

    The node attributes of ecs instances which the emr-cluster belongs.

    nodeGroups List<ClusterNodeGroupArgs>

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    paymentType String

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    releaseVersion String

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    resourceGroupId String

    The Id of resource group which the emr-cluster belongs.

    securityMode String

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscriptionConfig ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    tags Map<String,Object>

    A mapping of tags to assign to the resource.

    applicationConfigs ClusterApplicationConfigArgs[]

    The application configurations of EMR cluster.

    applications string[]

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    bootstrapScripts ClusterBootstrapScriptArgs[]

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    clusterName string

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    clusterType string

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    deployMode string

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    nodeAttributes ClusterNodeAttributeArgs[]

    The node attributes of ecs instances which the emr-cluster belongs.

    nodeGroups ClusterNodeGroupArgs[]

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    paymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    releaseVersion string

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    resourceGroupId string

    The Id of resource group which the emr-cluster belongs.

    securityMode string

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscriptionConfig ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    tags {[key: string]: any}

    A mapping of tags to assign to the resource.

    application_configs Sequence[ClusterApplicationConfigArgs]

    The application configurations of EMR cluster.

    applications Sequence[str]

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    bootstrap_scripts Sequence[ClusterBootstrapScriptArgs]

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    cluster_name str

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    cluster_type str

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    deploy_mode str

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    node_attributes Sequence[ClusterNodeAttributeArgs]

    The node attributes of ecs instances which the emr-cluster belongs.

    node_groups Sequence[ClusterNodeGroupArgs]

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    payment_type str

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    release_version str

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    resource_group_id str

    The Id of resource group which the emr-cluster belongs.

    security_mode str

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscription_config ClusterSubscriptionConfigArgs

    The detail configuration of subscription payment type.

    tags Mapping[str, Any]

    A mapping of tags to assign to the resource.

    applicationConfigs List<Property Map>

    The application configurations of EMR cluster.

    applications List<String>

    The applications of EMR cluster to be installed, e.g. HADOOP-COMMON, HDFS, YARN, HIVE, SPARK2, SPARK3, ZOOKEEPER etc. You can find all valid applications in emr web console.

    bootstrapScripts List<Property Map>

    The bootstrap scripts to be effected when creating emr-cluster or resize emr-cluster.

    clusterName String

    The name of emr cluster. The name length must be less than 64. Supported characters: chinese character, english character, number, "-", "_".

    clusterType String

    EMR Cluster Type, e.g. DATALAKE, OLAP, DATAFLOW, DATASERVING, CUSTOM etc. You can find all valid EMR cluster type in emr web console.

    deployMode String

    The deploy mode of EMR cluster. Supported value: NORMAL or HA.

    nodeAttributes List<Property Map>

    The node attributes of ecs instances which the emr-cluster belongs.

    nodeGroups List<Property Map>

    Groups of node, You can specify MASTER as a group, CORE as a group (just like the above example).

    paymentType String

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    releaseVersion String

    EMR Version, e.g. EMR-5.10.0. You can find the all valid EMR Version in emr web console.

    resourceGroupId String

    The Id of resource group which the emr-cluster belongs.

    securityMode String

    The security mode of EMR cluster. Supported value: NORMAL or KERBEROS.

    subscriptionConfig Property Map

    The detail configuration of subscription payment type.

    tags Map<Any>

    A mapping of tags to assign to the resource.

    Supporting Types

    ClusterApplicationConfig

    ApplicationName string

    The application name of EMR cluster which has installed.

    ConfigFileName string

    The configuration file name of application installed.

    ConfigItemKey string

    The configuration item key of application installed.

    ConfigItemValue string

    The configuration item value of application installed.

    ConfigDescription string

    The configuration description of application installed.

    ConfigScope string

    The configuration scope of emr cluster. Supported value: CLUSTER or NODEGROUP.

    NodeGroupId string

    The configuration effected which node group id of emr cluster.

    NodeGroupName string

    The configuration effected which node group name of emr cluster.

    ApplicationName string

    The application name of EMR cluster which has installed.

    ConfigFileName string

    The configuration file name of application installed.

    ConfigItemKey string

    The configuration item key of application installed.

    ConfigItemValue string

    The configuration item value of application installed.

    ConfigDescription string

    The configuration description of application installed.

    ConfigScope string

    The configuration scope of emr cluster. Supported value: CLUSTER or NODEGROUP.

    NodeGroupId string

    The configuration effected which node group id of emr cluster.

    NodeGroupName string

    The configuration effected which node group name of emr cluster.

    applicationName String

    The application name of EMR cluster which has installed.

    configFileName String

    The configuration file name of application installed.

    configItemKey String

    The configuration item key of application installed.

    configItemValue String

    The configuration item value of application installed.

    configDescription String

    The configuration description of application installed.

    configScope String

    The configuration scope of emr cluster. Supported value: CLUSTER or NODEGROUP.

    nodeGroupId String

    The configuration effected which node group id of emr cluster.

    nodeGroupName String

    The configuration effected which node group name of emr cluster.

    applicationName string

    The application name of EMR cluster which has installed.

    configFileName string

    The configuration file name of application installed.

    configItemKey string

    The configuration item key of application installed.

    configItemValue string

    The configuration item value of application installed.

    configDescription string

    The configuration description of application installed.

    configScope string

    The configuration scope of emr cluster. Supported value: CLUSTER or NODEGROUP.

    nodeGroupId string

    The configuration effected which node group id of emr cluster.

    nodeGroupName string

    The configuration effected which node group name of emr cluster.

    application_name str

    The application name of EMR cluster which has installed.

    config_file_name str

    The configuration file name of application installed.

    config_item_key str

    The configuration item key of application installed.

    config_item_value str

    The configuration item value of application installed.

    config_description str

    The configuration description of application installed.

    config_scope str

    The configuration scope of emr cluster. Supported value: CLUSTER or NODEGROUP.

    node_group_id str

    The configuration effected which node group id of emr cluster.

    node_group_name str

    The configuration effected which node group name of emr cluster.

    applicationName String

    The application name of EMR cluster which has installed.

    configFileName String

    The configuration file name of application installed.

    configItemKey String

    The configuration item key of application installed.

    configItemValue String

    The configuration item value of application installed.

    configDescription String

    The configuration description of application installed.

    configScope String

    The configuration scope of emr cluster. Supported value: CLUSTER or NODEGROUP.

    nodeGroupId String

    The configuration effected which node group id of emr cluster.

    nodeGroupName String

    The configuration effected which node group name of emr cluster.

    ClusterBootstrapScript

    ExecutionFailStrategy string

    The bootstrap scripts execution fail strategy, ’FAILED_BLOCKED’ or ‘FAILED_CONTINUE’ .

    ExecutionMoment string

    The bootstrap scripts execution moment, ’BEFORE_INSTALL’ or ‘AFTER_STARTED’ .

    NodeSelector Pulumi.AliCloud.Emrv2.Inputs.ClusterBootstrapScriptNodeSelector

    The bootstrap scripts execution target.

    ScriptArgs string

    The bootstrap script args, e.g. "--a=b".

    ScriptName string

    The bootstrap script name.

    ScriptPath string

    The bootstrap script path, e.g. "oss://bucket/path".

    Priority int

    The bootstrap scripts priority.

    ExecutionFailStrategy string

    The bootstrap scripts execution fail strategy, ’FAILED_BLOCKED’ or ‘FAILED_CONTINUE’ .

    ExecutionMoment string

    The bootstrap scripts execution moment, ’BEFORE_INSTALL’ or ‘AFTER_STARTED’ .

    NodeSelector ClusterBootstrapScriptNodeSelector

    The bootstrap scripts execution target.

    ScriptArgs string

    The bootstrap script args, e.g. "--a=b".

    ScriptName string

    The bootstrap script name.

    ScriptPath string

    The bootstrap script path, e.g. "oss://bucket/path".

    Priority int

    The bootstrap scripts priority.

    executionFailStrategy String

    The bootstrap scripts execution fail strategy, ’FAILED_BLOCKED’ or ‘FAILED_CONTINUE’ .

    executionMoment String

    The bootstrap scripts execution moment, ’BEFORE_INSTALL’ or ‘AFTER_STARTED’ .

    nodeSelector ClusterBootstrapScriptNodeSelector

    The bootstrap scripts execution target.

    scriptArgs String

    The bootstrap script args, e.g. "--a=b".

    scriptName String

    The bootstrap script name.

    scriptPath String

    The bootstrap script path, e.g. "oss://bucket/path".

    priority Integer

    The bootstrap scripts priority.

    executionFailStrategy string

    The bootstrap scripts execution fail strategy, ’FAILED_BLOCKED’ or ‘FAILED_CONTINUE’ .

    executionMoment string

    The bootstrap scripts execution moment, ’BEFORE_INSTALL’ or ‘AFTER_STARTED’ .

    nodeSelector ClusterBootstrapScriptNodeSelector

    The bootstrap scripts execution target.

    scriptArgs string

    The bootstrap script args, e.g. "--a=b".

    scriptName string

    The bootstrap script name.

    scriptPath string

    The bootstrap script path, e.g. "oss://bucket/path".

    priority number

    The bootstrap scripts priority.

    execution_fail_strategy str

    The bootstrap scripts execution fail strategy, ’FAILED_BLOCKED’ or ‘FAILED_CONTINUE’ .

    execution_moment str

    The bootstrap scripts execution moment, ’BEFORE_INSTALL’ or ‘AFTER_STARTED’ .

    node_selector ClusterBootstrapScriptNodeSelector

    The bootstrap scripts execution target.

    script_args str

    The bootstrap script args, e.g. "--a=b".

    script_name str

    The bootstrap script name.

    script_path str

    The bootstrap script path, e.g. "oss://bucket/path".

    priority int

    The bootstrap scripts priority.

    executionFailStrategy String

    The bootstrap scripts execution fail strategy, ’FAILED_BLOCKED’ or ‘FAILED_CONTINUE’ .

    executionMoment String

    The bootstrap scripts execution moment, ’BEFORE_INSTALL’ or ‘AFTER_STARTED’ .

    nodeSelector Property Map

    The bootstrap scripts execution target.

    scriptArgs String

    The bootstrap script args, e.g. "--a=b".

    scriptName String

    The bootstrap script name.

    scriptPath String

    The bootstrap script path, e.g. "oss://bucket/path".

    priority Number

    The bootstrap scripts priority.

    ClusterBootstrapScriptNodeSelector

    NodeSelectType string

    The bootstrap scripts execution target node select type. Supported value: NODE, NODEGROUP or CLUSTER.

    NodeGroupId string

    The configuration effected which node group id of emr cluster.

    NodeGroupName string

    The configuration effected which node group name of emr cluster.

    NodeGroupTypes List<string>

    The bootstrap scripts execution target node group types.

    NodeNames List<string>

    The bootstrap scripts execution target node names.

    NodeSelectType string

    The bootstrap scripts execution target node select type. Supported value: NODE, NODEGROUP or CLUSTER.

    NodeGroupId string

    The configuration effected which node group id of emr cluster.

    NodeGroupName string

    The configuration effected which node group name of emr cluster.

    NodeGroupTypes []string

    The bootstrap scripts execution target node group types.

    NodeNames []string

    The bootstrap scripts execution target node names.

    nodeSelectType String

    The bootstrap scripts execution target node select type. Supported value: NODE, NODEGROUP or CLUSTER.

    nodeGroupId String

    The configuration effected which node group id of emr cluster.

    nodeGroupName String

    The configuration effected which node group name of emr cluster.

    nodeGroupTypes List<String>

    The bootstrap scripts execution target node group types.

    nodeNames List<String>

    The bootstrap scripts execution target node names.

    nodeSelectType string

    The bootstrap scripts execution target node select type. Supported value: NODE, NODEGROUP or CLUSTER.

    nodeGroupId string

    The configuration effected which node group id of emr cluster.

    nodeGroupName string

    The configuration effected which node group name of emr cluster.

    nodeGroupTypes string[]

    The bootstrap scripts execution target node group types.

    nodeNames string[]

    The bootstrap scripts execution target node names.

    node_select_type str

    The bootstrap scripts execution target node select type. Supported value: NODE, NODEGROUP or CLUSTER.

    node_group_id str

    The configuration effected which node group id of emr cluster.

    node_group_name str

    The configuration effected which node group name of emr cluster.

    node_group_types Sequence[str]

    The bootstrap scripts execution target node group types.

    node_names Sequence[str]

    The bootstrap scripts execution target node names.

    nodeSelectType String

    The bootstrap scripts execution target node select type. Supported value: NODE, NODEGROUP or CLUSTER.

    nodeGroupId String

    The configuration effected which node group id of emr cluster.

    nodeGroupName String

    The configuration effected which node group name of emr cluster.

    nodeGroupTypes List<String>

    The bootstrap scripts execution target node group types.

    nodeNames List<String>

    The bootstrap scripts execution target node names.

    ClusterNodeAttribute

    KeyPairName string

    The name of the key pair.

    RamRole string

    Alicloud EMR uses roles to perform actions on your behalf when provisioning cluster resources, running applications, dynamically scaling resources. EMR uses the following roles when interacting with other Alicloud services. Default value is AliyunEmrEcsDefaultRole.

    SecurityGroupId string

    Security Group ID for Cluster.

    VpcId string

    Used to retrieve instances belong to specified VPC.

    ZoneId string

    Zone ID, e.g. cn-hangzhou-i

    DataDiskEncrypted bool

    Whether to enable data disk encryption.

    DataDiskKmsKeyId string

    The kms key id used to encrypt the data disk. It takes effect when data_disk_encrypted is true.

    KeyPairName string

    The name of the key pair.

    RamRole string

    Alicloud EMR uses roles to perform actions on your behalf when provisioning cluster resources, running applications, dynamically scaling resources. EMR uses the following roles when interacting with other Alicloud services. Default value is AliyunEmrEcsDefaultRole.

    SecurityGroupId string

    Security Group ID for Cluster.

    VpcId string

    Used to retrieve instances belong to specified VPC.

    ZoneId string

    Zone ID, e.g. cn-hangzhou-i

    DataDiskEncrypted bool

    Whether to enable data disk encryption.

    DataDiskKmsKeyId string

    The kms key id used to encrypt the data disk. It takes effect when data_disk_encrypted is true.

    keyPairName String

    The name of the key pair.

    ramRole String

    Alicloud EMR uses roles to perform actions on your behalf when provisioning cluster resources, running applications, dynamically scaling resources. EMR uses the following roles when interacting with other Alicloud services. Default value is AliyunEmrEcsDefaultRole.

    securityGroupId String

    Security Group ID for Cluster.

    vpcId String

    Used to retrieve instances belong to specified VPC.

    zoneId String

    Zone ID, e.g. cn-hangzhou-i

    dataDiskEncrypted Boolean

    Whether to enable data disk encryption.

    dataDiskKmsKeyId String

    The kms key id used to encrypt the data disk. It takes effect when data_disk_encrypted is true.

    keyPairName string

    The name of the key pair.

    ramRole string

    Alicloud EMR uses roles to perform actions on your behalf when provisioning cluster resources, running applications, dynamically scaling resources. EMR uses the following roles when interacting with other Alicloud services. Default value is AliyunEmrEcsDefaultRole.

    securityGroupId string

    Security Group ID for Cluster.

    vpcId string

    Used to retrieve instances belong to specified VPC.

    zoneId string

    Zone ID, e.g. cn-hangzhou-i

    dataDiskEncrypted boolean

    Whether to enable data disk encryption.

    dataDiskKmsKeyId string

    The kms key id used to encrypt the data disk. It takes effect when data_disk_encrypted is true.

    key_pair_name str

    The name of the key pair.

    ram_role str

    Alicloud EMR uses roles to perform actions on your behalf when provisioning cluster resources, running applications, dynamically scaling resources. EMR uses the following roles when interacting with other Alicloud services. Default value is AliyunEmrEcsDefaultRole.

    security_group_id str

    Security Group ID for Cluster.

    vpc_id str

    Used to retrieve instances belong to specified VPC.

    zone_id str

    Zone ID, e.g. cn-hangzhou-i

    data_disk_encrypted bool

    Whether to enable data disk encryption.

    data_disk_kms_key_id str

    The kms key id used to encrypt the data disk. It takes effect when data_disk_encrypted is true.

    keyPairName String

    The name of the key pair.

    ramRole String

    Alicloud EMR uses roles to perform actions on your behalf when provisioning cluster resources, running applications, dynamically scaling resources. EMR uses the following roles when interacting with other Alicloud services. Default value is AliyunEmrEcsDefaultRole.

    securityGroupId String

    Security Group ID for Cluster.

    vpcId String

    Used to retrieve instances belong to specified VPC.

    zoneId String

    Zone ID, e.g. cn-hangzhou-i

    dataDiskEncrypted Boolean

    Whether to enable data disk encryption.

    dataDiskKmsKeyId String

    The kms key id used to encrypt the data disk. It takes effect when data_disk_encrypted is true.

    ClusterNodeGroup

    DataDisks List<Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupDataDisk>

    Host Ecs data disks information in this node group.

    InstanceTypes List<string>

    Host Ecs instance types.

    NodeCount int

    Host Ecs number in this node group.

    NodeGroupName string

    The configuration effected which node group name of emr cluster.

    NodeGroupType string

    The node group type of emr cluster, supported value: MASTER, CORE or TASK.

    SystemDisk Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupSystemDisk

    Host Ecs system disk information in this node group.

    AdditionalSecurityGroupIds List<string>

    Additional security Group IDS for Cluster, you can also specify this key for each node group.

    CostOptimizedConfig Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupCostOptimizedConfig

    The detail cost optimized configuration of emr cluster.

    GracefulShutdown bool

    Enable emr cluster of task node graceful decommission, ’true’ or ‘false’ .

    PaymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    SpotBidPrices List<Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupSpotBidPrice>

    The spot bid prices of a PayAsYouGo instance.

    SpotInstanceRemedy bool

    Whether to replace spot instances with newly created spot/onDemand instance when receive a spot recycling message.

    SubscriptionConfig Pulumi.AliCloud.Emrv2.Inputs.ClusterNodeGroupSubscriptionConfig

    The detail configuration of subscription payment type.

    VswitchIds List<string>

    Global vSwitch ids, you can also specify it in node group.

    WithPublicIp bool

    Whether the node has a public IP address enabled.

    DataDisks []ClusterNodeGroupDataDisk

    Host Ecs data disks information in this node group.

    InstanceTypes []string

    Host Ecs instance types.

    NodeCount int

    Host Ecs number in this node group.

    NodeGroupName string

    The configuration effected which node group name of emr cluster.

    NodeGroupType string

    The node group type of emr cluster, supported value: MASTER, CORE or TASK.

    SystemDisk ClusterNodeGroupSystemDisk

    Host Ecs system disk information in this node group.

    AdditionalSecurityGroupIds []string

    Additional security Group IDS for Cluster, you can also specify this key for each node group.

    CostOptimizedConfig ClusterNodeGroupCostOptimizedConfig

    The detail cost optimized configuration of emr cluster.

    GracefulShutdown bool

    Enable emr cluster of task node graceful decommission, ’true’ or ‘false’ .

    PaymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    SpotBidPrices []ClusterNodeGroupSpotBidPrice

    The spot bid prices of a PayAsYouGo instance.

    SpotInstanceRemedy bool

    Whether to replace spot instances with newly created spot/onDemand instance when receive a spot recycling message.

    SubscriptionConfig ClusterNodeGroupSubscriptionConfig

    The detail configuration of subscription payment type.

    VswitchIds []string

    Global vSwitch ids, you can also specify it in node group.

    WithPublicIp bool

    Whether the node has a public IP address enabled.

    dataDisks List<ClusterNodeGroupDataDisk>

    Host Ecs data disks information in this node group.

    instanceTypes List<String>

    Host Ecs instance types.

    nodeCount Integer

    Host Ecs number in this node group.

    nodeGroupName String

    The configuration effected which node group name of emr cluster.

    nodeGroupType String

    The node group type of emr cluster, supported value: MASTER, CORE or TASK.

    systemDisk ClusterNodeGroupSystemDisk

    Host Ecs system disk information in this node group.

    additionalSecurityGroupIds List<String>

    Additional security Group IDS for Cluster, you can also specify this key for each node group.

    costOptimizedConfig ClusterNodeGroupCostOptimizedConfig

    The detail cost optimized configuration of emr cluster.

    gracefulShutdown Boolean

    Enable emr cluster of task node graceful decommission, ’true’ or ‘false’ .

    paymentType String

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    spotBidPrices List<ClusterNodeGroupSpotBidPrice>

    The spot bid prices of a PayAsYouGo instance.

    spotInstanceRemedy Boolean

    Whether to replace spot instances with newly created spot/onDemand instance when receive a spot recycling message.

    subscriptionConfig ClusterNodeGroupSubscriptionConfig

    The detail configuration of subscription payment type.

    vswitchIds List<String>

    Global vSwitch ids, you can also specify it in node group.

    withPublicIp Boolean

    Whether the node has a public IP address enabled.

    dataDisks ClusterNodeGroupDataDisk[]

    Host Ecs data disks information in this node group.

    instanceTypes string[]

    Host Ecs instance types.

    nodeCount number

    Host Ecs number in this node group.

    nodeGroupName string

    The configuration effected which node group name of emr cluster.

    nodeGroupType string

    The node group type of emr cluster, supported value: MASTER, CORE or TASK.

    systemDisk ClusterNodeGroupSystemDisk

    Host Ecs system disk information in this node group.

    additionalSecurityGroupIds string[]

    Additional security Group IDS for Cluster, you can also specify this key for each node group.

    costOptimizedConfig ClusterNodeGroupCostOptimizedConfig

    The detail cost optimized configuration of emr cluster.

    gracefulShutdown boolean

    Enable emr cluster of task node graceful decommission, ’true’ or ‘false’ .

    paymentType string

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    spotBidPrices ClusterNodeGroupSpotBidPrice[]

    The spot bid prices of a PayAsYouGo instance.

    spotInstanceRemedy boolean

    Whether to replace spot instances with newly created spot/onDemand instance when receive a spot recycling message.

    subscriptionConfig ClusterNodeGroupSubscriptionConfig

    The detail configuration of subscription payment type.

    vswitchIds string[]

    Global vSwitch ids, you can also specify it in node group.

    withPublicIp boolean

    Whether the node has a public IP address enabled.

    data_disks Sequence[ClusterNodeGroupDataDisk]

    Host Ecs data disks information in this node group.

    instance_types Sequence[str]

    Host Ecs instance types.

    node_count int

    Host Ecs number in this node group.

    node_group_name str

    The configuration effected which node group name of emr cluster.

    node_group_type str

    The node group type of emr cluster, supported value: MASTER, CORE or TASK.

    system_disk ClusterNodeGroupSystemDisk

    Host Ecs system disk information in this node group.

    additional_security_group_ids Sequence[str]

    Additional security Group IDS for Cluster, you can also specify this key for each node group.

    cost_optimized_config ClusterNodeGroupCostOptimizedConfig

    The detail cost optimized configuration of emr cluster.

    graceful_shutdown bool

    Enable emr cluster of task node graceful decommission, ’true’ or ‘false’ .

    payment_type str

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    spot_bid_prices Sequence[ClusterNodeGroupSpotBidPrice]

    The spot bid prices of a PayAsYouGo instance.

    spot_instance_remedy bool

    Whether to replace spot instances with newly created spot/onDemand instance when receive a spot recycling message.

    subscription_config ClusterNodeGroupSubscriptionConfig

    The detail configuration of subscription payment type.

    vswitch_ids Sequence[str]

    Global vSwitch ids, you can also specify it in node group.

    with_public_ip bool

    Whether the node has a public IP address enabled.

    dataDisks List<Property Map>

    Host Ecs data disks information in this node group.

    instanceTypes List<String>

    Host Ecs instance types.

    nodeCount Number

    Host Ecs number in this node group.

    nodeGroupName String

    The configuration effected which node group name of emr cluster.

    nodeGroupType String

    The node group type of emr cluster, supported value: MASTER, CORE or TASK.

    systemDisk Property Map

    Host Ecs system disk information in this node group.

    additionalSecurityGroupIds List<String>

    Additional security Group IDS for Cluster, you can also specify this key for each node group.

    costOptimizedConfig Property Map

    The detail cost optimized configuration of emr cluster.

    gracefulShutdown Boolean

    Enable emr cluster of task node graceful decommission, ’true’ or ‘false’ .

    paymentType String

    Payment Type for this cluster. Supported value: PayAsYouGo or Subscription.

    spotBidPrices List<Property Map>

    The spot bid prices of a PayAsYouGo instance.

    spotInstanceRemedy Boolean

    Whether to replace spot instances with newly created spot/onDemand instance when receive a spot recycling message.

    subscriptionConfig Property Map

    The detail configuration of subscription payment type.

    vswitchIds List<String>

    Global vSwitch ids, you can also specify it in node group.

    withPublicIp Boolean

    Whether the node has a public IP address enabled.

    ClusterNodeGroupCostOptimizedConfig

    OnDemandBaseCapacity int

    The cost optimized configuration which on demand based capacity.

    OnDemandPercentageAboveBaseCapacity int

    The cost optimized configuration which on demand percentage above based capacity.

    SpotInstancePools int

    The cost optimized configuration with spot instance pools.

    OnDemandBaseCapacity int

    The cost optimized configuration which on demand based capacity.

    OnDemandPercentageAboveBaseCapacity int

    The cost optimized configuration which on demand percentage above based capacity.

    SpotInstancePools int

    The cost optimized configuration with spot instance pools.

    onDemandBaseCapacity Integer

    The cost optimized configuration which on demand based capacity.

    onDemandPercentageAboveBaseCapacity Integer

    The cost optimized configuration which on demand percentage above based capacity.

    spotInstancePools Integer

    The cost optimized configuration with spot instance pools.

    onDemandBaseCapacity number

    The cost optimized configuration which on demand based capacity.

    onDemandPercentageAboveBaseCapacity number

    The cost optimized configuration which on demand percentage above based capacity.

    spotInstancePools number

    The cost optimized configuration with spot instance pools.

    on_demand_base_capacity int

    The cost optimized configuration which on demand based capacity.

    on_demand_percentage_above_base_capacity int

    The cost optimized configuration which on demand percentage above based capacity.

    spot_instance_pools int

    The cost optimized configuration with spot instance pools.

    onDemandBaseCapacity Number

    The cost optimized configuration which on demand based capacity.

    onDemandPercentageAboveBaseCapacity Number

    The cost optimized configuration which on demand percentage above based capacity.

    spotInstancePools Number

    The cost optimized configuration with spot instance pools.

    ClusterNodeGroupDataDisk

    Category string

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    Size int

    The size of a data disk, at least 40. Unit: GiB.

    Count int

    The count of a data disk.

    PerformanceLevel string

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    Category string

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    Size int

    The size of a data disk, at least 40. Unit: GiB.

    Count int

    The count of a data disk.

    PerformanceLevel string

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category String

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size Integer

    The size of a data disk, at least 40. Unit: GiB.

    count Integer

    The count of a data disk.

    performanceLevel String

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category string

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size number

    The size of a data disk, at least 40. Unit: GiB.

    count number

    The count of a data disk.

    performanceLevel string

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category str

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size int

    The size of a data disk, at least 40. Unit: GiB.

    count int

    The count of a data disk.

    performance_level str

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category String

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size Number

    The size of a data disk, at least 40. Unit: GiB.

    count Number

    The count of a data disk.

    performanceLevel String

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    ClusterNodeGroupSpotBidPrice

    BidPrice int

    The spot bid price of a PayAsYouGo instance.

    InstanceType string

    Host Ecs instance type.

    BidPrice int

    The spot bid price of a PayAsYouGo instance.

    InstanceType string

    Host Ecs instance type.

    bidPrice Integer

    The spot bid price of a PayAsYouGo instance.

    instanceType String

    Host Ecs instance type.

    bidPrice number

    The spot bid price of a PayAsYouGo instance.

    instanceType string

    Host Ecs instance type.

    bid_price int

    The spot bid price of a PayAsYouGo instance.

    instance_type str

    Host Ecs instance type.

    bidPrice Number

    The spot bid price of a PayAsYouGo instance.

    instanceType String

    Host Ecs instance type.

    ClusterNodeGroupSubscriptionConfig

    PaymentDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    PaymentDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    AutoRenew bool

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    AutoRenewDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    AutoRenewDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    PaymentDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    PaymentDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    AutoRenew bool

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    AutoRenewDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    AutoRenewDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    paymentDuration Integer

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    paymentDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    autoRenew Boolean

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    autoRenewDuration Integer

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    autoRenewDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    paymentDuration number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    paymentDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    autoRenew boolean

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    autoRenewDuration number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    autoRenewDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    payment_duration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    payment_duration_unit str

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    auto_renew bool

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    auto_renew_duration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    auto_renew_duration_unit str

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    paymentDuration Number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    paymentDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    autoRenew Boolean

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    autoRenewDuration Number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    autoRenewDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    ClusterNodeGroupSystemDisk

    Category string

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    Size int

    The size of a data disk, at least 40. Unit: GiB.

    Count int

    The count of a data disk.

    PerformanceLevel string

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    Category string

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    Size int

    The size of a data disk, at least 40. Unit: GiB.

    Count int

    The count of a data disk.

    PerformanceLevel string

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category String

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size Integer

    The size of a data disk, at least 40. Unit: GiB.

    count Integer

    The count of a data disk.

    performanceLevel String

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category string

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size number

    The size of a data disk, at least 40. Unit: GiB.

    count number

    The count of a data disk.

    performanceLevel string

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category str

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size int

    The size of a data disk, at least 40. Unit: GiB.

    count int

    The count of a data disk.

    performance_level str

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    category String

    The type of the data disk. Valid values: cloud_efficiency and cloud_essd.

    size Number

    The size of a data disk, at least 40. Unit: GiB.

    count Number

    The count of a data disk.

    performanceLevel String

    Worker node data disk performance level, when category values cloud_essd, the optional values are PL0, PL1, PL2 or PL3, but the specific performance level is related to the disk capacity.

    ClusterSubscriptionConfig

    PaymentDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    PaymentDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    AutoRenew bool

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    AutoRenewDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    AutoRenewDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    PaymentDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    PaymentDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    AutoRenew bool

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    AutoRenewDuration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    AutoRenewDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    paymentDuration Integer

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    paymentDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    autoRenew Boolean

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    autoRenewDuration Integer

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    autoRenewDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    paymentDuration number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    paymentDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    autoRenew boolean

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    autoRenewDuration number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    autoRenewDurationUnit string

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    payment_duration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    payment_duration_unit str

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    auto_renew bool

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    auto_renew_duration int

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    auto_renew_duration_unit str

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    paymentDuration Number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    paymentDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    autoRenew Boolean

    Auto renew for prepaid, ’true’ or ‘false’ . Default value: false.

    autoRenewDuration Number

    If paymentType is Subscription, this should be specified. Supported value: 1、2、3、4、5、6、7、8、9、12、24、36、48.

    autoRenewDurationUnit String

    If paymentType is Subscription, this should be specified. Supported value: Month or Year.

    Import

    Aliclioud E-MapReduce cluster can be imported using the id e.g.

     $ pulumi import alicloud:emrv2/cluster:Cluster default <id>
    

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the alicloud Terraform Provider.

    alicloud logo
    Alibaba Cloud v3.38.0 published on Friday, Jun 2, 2023 by Pulumi