mrs

package
v0.0.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2023 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion added in v0.0.2

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// Specifies the informations about analysis core nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `analysisCoreNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	AnalysisCoreNodes ClusterAnalysisCoreNodesPtrOutput `pulumi:"analysisCoreNodes"`
	// Specifies the informations about analysis task nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `analysisTaskNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	AnalysisTaskNodes ClusterAnalysisTaskNodesPtrOutput `pulumi:"analysisTaskNodes"`
	// Specifies the availability zone in which to create the cluster.
	// Please following [reference](https://developer.huaweicloud.com/intl/en-us/endpoint?all)
	// Changing this will create a new MapReduce cluster resource.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The charging start time which is the start time of billing, in RFC-3339 format.
	ChargingStartTime pulumi.StringOutput `pulumi:"chargingStartTime"`
	// Specifies the component configurations of the cluster.
	// The object structure is documented below.
	// Changing this will create a new MapReduce cluster resource.
	ComponentConfigs ClusterComponentConfigArrayOutput `pulumi:"componentConfigs"`
	// Specifies the list of component names. For the components supported by
	// the cluster, please following [reference](https://support.huaweicloud.com/intl/en-us/productdesc-mrs/mrs_08_0005.html)
	// Changing this will create a new MapReduce cluster resource.
	ComponentLists pulumi.StringArrayOutput `pulumi:"componentLists"`
	// The cluster creation time, in RFC-3339 format.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Specifies the informations about custom nodes in the MapReduce cluster.
	// The `nodes` object structure of the `customNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	CustomNodes ClusterCustomNodeArrayOutput `pulumi:"customNodes"`
	// Specifies the EIP ID which bound to the MapReduce cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MapReduce cluster resource.
	EipId pulumi.StringOutput `pulumi:"eipId"`
	// Specifies a unique ID in UUID format of enterprise project.
	// Changing this will create a new MapReduce cluster resource.
	EnterpriseProjectId pulumi.StringOutput `pulumi:"enterpriseProjectId"`
	// Specifies whether logs are collected when cluster installation fails.
	// Defaults to true. If `logCollection` set true, the OBS buckets will be created and only used to collect logs that
	// record MapReduce cluster creation failures. Changing this will create a new MapReduce cluster resource.
	LogCollection pulumi.BoolPtrOutput `pulumi:"logCollection"`
	// Specifies the administrator password, which is used to log in to
	// the cluster management page. The password can contain 8 to 26 characters and cannot be the username or the username
	// spelled backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource.
	ManagerAdminPass pulumi.StringOutput `pulumi:"managerAdminPass"`
	// The IP address of the master node.
	MasterNodeIp pulumi.StringOutput `pulumi:"masterNodeIp"`
	// Specifies the informations about master nodes in the MapReduce cluster.
	// The `nodes` object structure of the `masterNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	MasterNodes ClusterMasterNodesOutput `pulumi:"masterNodes"`
	// Specifies the component name of the cluster which has installed.
	// Changing this will create a new MapReduce cluster resource.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the administrator password, which is used to log in to the
	// each nodes(/ECSs). The password can contain 8 to 26 characters and cannot be the username or the username spelled
	// backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource. This parameter
	// and `nodeKeyPair` are alternative.
	NodeAdminPass pulumi.StringPtrOutput `pulumi:"nodeAdminPass"`
	// Specifies the name of a key pair, which is used to log in to the each
	// nodes(/ECSs). Changing this will create a new MapReduce cluster resource.
	NodeKeyPair pulumi.StringPtrOutput `pulumi:"nodeKeyPair"`
	// The preferred private IP address of the master node.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// Specifies the EIP address which bound to the MapReduce cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MapReduce cluster resource.
	PublicIp pulumi.StringOutput `pulumi:"publicIp"`
	// The region in which to create the MapReduce cluster resource. If omitted, the
	// provider-level region will be used. Changing this will create a new MapReduce cluster resource.
	Region pulumi.StringOutput `pulumi:"region"`
	// Specifies whether the running mode of the MapReduce cluster is secure,
	// defaults to **true**. The options are as follows:
	// + **true**: enable Kerberos authentication.
	// + **false**: disable Kerberos authentication. Changing this will create a new MapReduce cluster resource.
	SafeMode pulumi.BoolPtrOutput `pulumi:"safeMode"`
	// Specifies an array of one or more security group ID to attach to the
	// MapReduce cluster. If using the specified security group, the group need to open the specified port (9022) rules.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// The cluster state, which include: running, frozen, abnormal and failed.
	Status pulumi.StringOutput `pulumi:"status"`
	// Specifies the informations about streaming core nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `streamingCoreNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	StreamingCoreNodes ClusterStreamingCoreNodesPtrOutput `pulumi:"streamingCoreNodes"`
	// Specifies the informations about streaming task nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `streamingTaskNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	StreamingTaskNodes ClusterStreamingTaskNodesPtrOutput `pulumi:"streamingTaskNodes"`
	// Specifies the network ID of a subnet which bound to the MapReduce cluster.
	// Changing this will create a new MapReduce cluster resource.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// Specifies the key/value pairs to associate with the cluster.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the template used for node deployment when the cluster type is
	// **CUSTOM**. The options are as follows:
	// + **mgmt_control_combined_v2**: template for jointly deploying the management and control nodes. The management and
	//   control roles are co-deployed on the Master node, and data instances are deployed in the same node group. This
	//   deployment mode applies to scenarios where the number of control nodes is less than 100, reducing costs.
	// + **mgmt_control_separated_v2**: The management and control roles are deployed on different master nodes, and data
	//   instances are deployed in the same node group. This deployment mode is applicable to a cluster with 100 to 500 nodes
	//   and delivers better performance in high-concurrency load scenarios.
	// + **mgmt_control_data_separated_v2**: The management role and control role are deployed on different Master nodes,
	//   and data instances are deployed in different node groups. This deployment mode is applicable to a cluster with more
	//   than 500 nodes. Components can be deployed separately, which can be used for a larger cluster scale.
	TemplateId pulumi.StringPtrOutput `pulumi:"templateId"`
	// The total number of nodes deployed in the cluster.
	TotalNodeNumber pulumi.IntOutput `pulumi:"totalNodeNumber"`
	// Specifies the type of the MapReduce cluster. The valid values are **ANALYSIS***,
	// **STREAMING** and **MIXED**, defaults to **ANALYSIS**. Changing this will create a new MapReduce cluster resource.
	Type pulumi.StringPtrOutput `pulumi:"type"`
	// The cluster update time, in RFC-3339 format.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// Specifies the MapReduce cluster version. The valid values are `MRS 1.9.2`
	// , `MRS 3.0.5` and `MRS 3.1.0`. Changing this will create a new MapReduce cluster resource.
	Version pulumi.StringOutput `pulumi:"version"`
	// Specifies the ID of the VPC which bound to the MapReduce cluster. Changing
	// this will create a new MapReduce cluster resource.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Manages a cluster resource within HuaweiCloud MRS.

## Example Usage ### Create an analysis cluster

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAvailabilityZones, err := huaweicloud.GetAvailabilityZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		clusterName := cfg.RequireObject("clusterName")
		password := cfg.RequireObject("password")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		_, err = Mrs.Newcluster(ctx, "testcluster", &Mrs.clusterArgs{
			AvailabilityZone: pulumi.String(testAvailabilityZones.Names[0]),
			Version:          pulumi.String("MRS 1.9.2"),
			Type:             pulumi.String("ANALYSIS"),
			ComponentLists: pulumi.StringArray{
				pulumi.String("Hadoop"),
				pulumi.String("Hive"),
				pulumi.String("Tez"),
			},
			ManagerAdminPass: pulumi.Any(password),
			NodeAdminPass:    pulumi.Any(password),
			VpcId:            pulumi.Any(vpcId),
			SubnetId:         pulumi.Any(subnetId),
			MasterNodes: &mrs.ClusterMasterNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			AnalysisCoreNodes: &mrs.ClusterAnalysisCoreNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			AnalysisTaskNodes: &mrs.ClusterAnalysisTaskNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(1),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			Tags: pulumi.StringMap{
				"foo": pulumi.String("bar"),
				"key": pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create a stream cluster

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAvailabilityZones, err := huaweicloud.GetAvailabilityZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		clusterName := cfg.RequireObject("clusterName")
		password := cfg.RequireObject("password")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		_, err = Mrs.Newcluster(ctx, "testcluster", &Mrs.clusterArgs{
			AvailabilityZone: pulumi.String(testAvailabilityZones.Names[0]),
			Type:             pulumi.String("STREAMING"),
			Version:          pulumi.String("MRS 1.9.2"),
			ManagerAdminPass: pulumi.Any(password),
			NodeAdminPass:    pulumi.Any(password),
			VpcId:            pulumi.Any(vpcId),
			SubnetId:         pulumi.Any(subnetId),
			ComponentLists: pulumi.StringArray{
				pulumi.String("Storm"),
			},
			MasterNodes: &mrs.ClusterMasterNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			StreamingCoreNodes: &mrs.ClusterStreamingCoreNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			Tags: pulumi.StringMap{
				"foo": pulumi.String("bar"),
				"key": pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create a hybrid cluster

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAvailabilityZones, err := huaweicloud.GetAvailabilityZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		clusterName := cfg.RequireObject("clusterName")
		password := cfg.RequireObject("password")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		_, err = Mrs.Newcluster(ctx, "testcluster", &Mrs.clusterArgs{
			AvailabilityZone: pulumi.String(testAvailabilityZones.Names[0]),
			Version:          pulumi.String("MRS 1.9.2"),
			Type:             pulumi.String("MIXED"),
			ComponentLists: pulumi.StringArray{
				pulumi.String("Hadoop"),
				pulumi.String("Spark"),
				pulumi.String("Hive"),
				pulumi.String("Tez"),
				pulumi.String("Storm"),
			},
			ManagerAdminPass: pulumi.Any(password),
			NodeAdminPass:    pulumi.Any(password),
			VpcId:            pulumi.Any(vpcId),
			SubnetId:         pulumi.Any(subnetId),
			MasterNodes: &mrs.ClusterMasterNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			AnalysisCoreNodes: &mrs.ClusterAnalysisCoreNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			StreamingCoreNodes: &mrs.ClusterStreamingCoreNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			AnalysisTaskNodes: &mrs.ClusterAnalysisTaskNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(1),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			StreamingTaskNodes: &mrs.ClusterStreamingTaskNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(1),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			Tags: pulumi.StringMap{
				"foo": pulumi.String("bar"),
				"key": pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create a custom cluster

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAvailabilityZones, err := huaweicloud.GetAvailabilityZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		clusterName := cfg.RequireObject("clusterName")
		password := cfg.RequireObject("password")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		_, err = Mrs.Newcluster(ctx, "testcluster", &Mrs.clusterArgs{
			AvailabilityZone: pulumi.String(testAvailabilityZones.Names[0]),
			Version:          pulumi.String("MRS 3.1.0"),
			Type:             pulumi.String("CUSTOM"),
			SafeMode:         pulumi.Bool(true),
			ManagerAdminPass: pulumi.Any(password),
			NodeAdminPass:    pulumi.Any(password),
			VpcId:            pulumi.Any(vpcId),
			SubnetId:         pulumi.Any(subnetId),
			TemplateId:       pulumi.String("mgmt_control_combined_v4"),
			ComponentLists: pulumi.StringArray{
				pulumi.String("DBService"),
				pulumi.String("Hadoop"),
				pulumi.String("ZooKeeper"),
				pulumi.String("Ranger"),
			},
			MasterNodes: &mrs.ClusterMasterNodesArgs{
				Flavor:          pulumi.String("c6.4xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(3),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(480),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(600),
				DataVolumeCount: pulumi.Int(1),
				AssignedRoles: pulumi.StringArray{
					pulumi.String("OMSServer:1,2"),
					pulumi.String("SlapdServer:1,2"),
					pulumi.String("KerberosServer:1,2"),
					pulumi.String("KerberosAdmin:1,2"),
					pulumi.String("quorumpeer:1,2,3"),
					pulumi.String("NameNode:2,3"),
					pulumi.String("Zkfc:2,3"),
					pulumi.String("JournalNode:1,2,3"),
					pulumi.String("ResourceManager:2,3"),
					pulumi.String("JobHistoryServer:3"),
					pulumi.String("DBServer:1,3"),
					pulumi.String("HttpFS:1,3"),
					pulumi.String("TimelineServer:3"),
					pulumi.String("RangerAdmin:1,2"),
					pulumi.String("UserSync:2"),
					pulumi.String("TagSync:2"),
					pulumi.String("KerberosClient"),
					pulumi.String("SlapdClient"),
					pulumi.String("meta"),
				},
			},
			CustomNodes: mrs.ClusterCustomNodeArray{
				&mrs.ClusterCustomNodeArgs{
					GroupName:       pulumi.String("node_group_1"),
					Flavor:          pulumi.String("c6.4xlarge.4.linux.bigdata"),
					NodeNumber:      pulumi.Int(4),
					RootVolumeType:  pulumi.String("SAS"),
					RootVolumeSize:  pulumi.Int(480),
					DataVolumeType:  pulumi.String("SAS"),
					DataVolumeSize:  pulumi.Int(600),
					DataVolumeCount: pulumi.Int(1),
					AssignedRoles: pulumi.StringArray{
						pulumi.String("DataNode"),
						pulumi.String("NodeManager"),
						pulumi.String("KerberosClient"),
						pulumi.String("SlapdClient"),
						pulumi.String("meta"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create an analysis cluster and bind public IP

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		testAvailabilityZones, err := huaweicloud.GetAvailabilityZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		cfg := config.New(ctx, "")
		clusterName := cfg.RequireObject("clusterName")
		password := cfg.RequireObject("password")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		publicIp := cfg.RequireObject("publicIp")
		_, err = Mrs.Newcluster(ctx, "testcluster", &Mrs.clusterArgs{
			AvailabilityZone: pulumi.String(testAvailabilityZones.Names[0]),
			Version:          pulumi.String("MRS 1.9.2"),
			Type:             pulumi.String("ANALYSIS"),
			ComponentLists: pulumi.StringArray{
				pulumi.String("Hadoop"),
				pulumi.String("Hive"),
				pulumi.String("Tez"),
			},
			ManagerAdminPass: pulumi.Any(password),
			NodeAdminPass:    pulumi.Any(password),
			VpcId:            pulumi.Any(vpcId),
			SubnetId:         pulumi.Any(subnetId),
			PublicIp:         pulumi.Any(publicIp),
			MasterNodes: &mrs.ClusterMasterNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			AnalysisCoreNodes: &mrs.ClusterAnalysisCoreNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(2),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			AnalysisTaskNodes: &mrs.ClusterAnalysisTaskNodesArgs{
				Flavor:          pulumi.String("c6.2xlarge.4.linux.bigdata"),
				NodeNumber:      pulumi.Int(1),
				RootVolumeType:  pulumi.String("SAS"),
				RootVolumeSize:  pulumi.Int(300),
				DataVolumeType:  pulumi.String("SAS"),
				DataVolumeSize:  pulumi.Int(480),
				DataVolumeCount: pulumi.Int(1),
			},
			Tags: pulumi.StringMap{
				"foo": pulumi.String("bar"),
				"key": pulumi.String("value"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Clusters can be imported by their `id`. For example, bash

```sh

$ pulumi import huaweicloud:Mrs/cluster:cluster test b11b407c-e604-4e8d-8bc4-92398320b847

```

Note that the imported state may not be identical to your resource definition, due to some attributes missing from the API response, security or some other reason. The missing attributes include`manager_admin_pass`, `node_admin_pass`,`template_id`, `assigned_roles` and `component_configs`. It is generally recommended running `terraform plan` after importing a cluster. You can then decide if changes should be applied to the cluster, or the resource definition should be updated to align with the cluster. Also you can ignore changes as below. hcl resource "huaweicloud_mapreduce_cluster" "test" {

...

lifecycle {

ignore_changes = [

manager_admin_pass, node_admin_pass,

]

} }

func GetCluster

func GetCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterState, opts ...pulumi.ResourceOption) (*Cluster, error)

GetCluster gets an existing Cluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCluster

func NewCluster(ctx *pulumi.Context,
	name string, args *ClusterArgs, opts ...pulumi.ResourceOption) (*Cluster, error)

NewCluster registers a new resource with the given unique name, arguments, and options.

func (*Cluster) ElementType

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext

func (i *Cluster) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

type ClusterAnalysisCoreNodes

type ClusterAnalysisCoreNodes struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles []string `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount int `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize *int `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType *string `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor string `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps []string `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber int `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize int `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType string `pulumi:"rootVolumeType"`
}

type ClusterAnalysisCoreNodesArgs

type ClusterAnalysisCoreNodesArgs struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles pulumi.StringArrayInput `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount pulumi.IntInput `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize pulumi.IntPtrInput `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType pulumi.StringPtrInput `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor pulumi.StringInput `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps pulumi.StringArrayInput `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber pulumi.IntInput `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize pulumi.IntInput `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType pulumi.StringInput `pulumi:"rootVolumeType"`
}

func (ClusterAnalysisCoreNodesArgs) ElementType

func (ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesOutput

func (i ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesOutput() ClusterAnalysisCoreNodesOutput

func (ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesOutputWithContext

func (i ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesOutputWithContext(ctx context.Context) ClusterAnalysisCoreNodesOutput

func (ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesPtrOutput

func (i ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesPtrOutput() ClusterAnalysisCoreNodesPtrOutput

func (ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesPtrOutputWithContext

func (i ClusterAnalysisCoreNodesArgs) ToClusterAnalysisCoreNodesPtrOutputWithContext(ctx context.Context) ClusterAnalysisCoreNodesPtrOutput

type ClusterAnalysisCoreNodesInput

type ClusterAnalysisCoreNodesInput interface {
	pulumi.Input

	ToClusterAnalysisCoreNodesOutput() ClusterAnalysisCoreNodesOutput
	ToClusterAnalysisCoreNodesOutputWithContext(context.Context) ClusterAnalysisCoreNodesOutput
}

ClusterAnalysisCoreNodesInput is an input type that accepts ClusterAnalysisCoreNodesArgs and ClusterAnalysisCoreNodesOutput values. You can construct a concrete instance of `ClusterAnalysisCoreNodesInput` via:

ClusterAnalysisCoreNodesArgs{...}

type ClusterAnalysisCoreNodesOutput

type ClusterAnalysisCoreNodesOutput struct{ *pulumi.OutputState }

func (ClusterAnalysisCoreNodesOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterAnalysisCoreNodesOutput) DataVolumeCount

func (o ClusterAnalysisCoreNodesOutput) DataVolumeCount() pulumi.IntOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterAnalysisCoreNodesOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterAnalysisCoreNodesOutput) ElementType

func (ClusterAnalysisCoreNodesOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterAnalysisCoreNodesOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterAnalysisCoreNodesOutput) RootVolumeSize

func (o ClusterAnalysisCoreNodesOutput) RootVolumeSize() pulumi.IntOutput

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesOutput

func (o ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesOutput() ClusterAnalysisCoreNodesOutput

func (ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesOutputWithContext

func (o ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesOutputWithContext(ctx context.Context) ClusterAnalysisCoreNodesOutput

func (ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesPtrOutput

func (o ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesPtrOutput() ClusterAnalysisCoreNodesPtrOutput

func (ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesPtrOutputWithContext

func (o ClusterAnalysisCoreNodesOutput) ToClusterAnalysisCoreNodesPtrOutputWithContext(ctx context.Context) ClusterAnalysisCoreNodesPtrOutput

type ClusterAnalysisCoreNodesPtrInput

type ClusterAnalysisCoreNodesPtrInput interface {
	pulumi.Input

	ToClusterAnalysisCoreNodesPtrOutput() ClusterAnalysisCoreNodesPtrOutput
	ToClusterAnalysisCoreNodesPtrOutputWithContext(context.Context) ClusterAnalysisCoreNodesPtrOutput
}

ClusterAnalysisCoreNodesPtrInput is an input type that accepts ClusterAnalysisCoreNodesArgs, ClusterAnalysisCoreNodesPtr and ClusterAnalysisCoreNodesPtrOutput values. You can construct a concrete instance of `ClusterAnalysisCoreNodesPtrInput` via:

        ClusterAnalysisCoreNodesArgs{...}

or:

        nil

type ClusterAnalysisCoreNodesPtrOutput

type ClusterAnalysisCoreNodesPtrOutput struct{ *pulumi.OutputState }

func (ClusterAnalysisCoreNodesPtrOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterAnalysisCoreNodesPtrOutput) DataVolumeCount

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterAnalysisCoreNodesPtrOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesPtrOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterAnalysisCoreNodesPtrOutput) Elem

func (ClusterAnalysisCoreNodesPtrOutput) ElementType

func (ClusterAnalysisCoreNodesPtrOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesPtrOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterAnalysisCoreNodesPtrOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterAnalysisCoreNodesPtrOutput) RootVolumeSize

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesPtrOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisCoreNodesPtrOutput) ToClusterAnalysisCoreNodesPtrOutput

func (o ClusterAnalysisCoreNodesPtrOutput) ToClusterAnalysisCoreNodesPtrOutput() ClusterAnalysisCoreNodesPtrOutput

func (ClusterAnalysisCoreNodesPtrOutput) ToClusterAnalysisCoreNodesPtrOutputWithContext

func (o ClusterAnalysisCoreNodesPtrOutput) ToClusterAnalysisCoreNodesPtrOutputWithContext(ctx context.Context) ClusterAnalysisCoreNodesPtrOutput

type ClusterAnalysisTaskNodes

type ClusterAnalysisTaskNodes struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles []string `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount int `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize *int `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType *string `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor string `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps []string `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber int `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize int `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType string `pulumi:"rootVolumeType"`
}

type ClusterAnalysisTaskNodesArgs

type ClusterAnalysisTaskNodesArgs struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles pulumi.StringArrayInput `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount pulumi.IntInput `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize pulumi.IntPtrInput `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType pulumi.StringPtrInput `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor pulumi.StringInput `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps pulumi.StringArrayInput `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber pulumi.IntInput `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize pulumi.IntInput `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType pulumi.StringInput `pulumi:"rootVolumeType"`
}

func (ClusterAnalysisTaskNodesArgs) ElementType

func (ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesOutput

func (i ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesOutput() ClusterAnalysisTaskNodesOutput

func (ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesOutputWithContext

func (i ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesOutputWithContext(ctx context.Context) ClusterAnalysisTaskNodesOutput

func (ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesPtrOutput

func (i ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesPtrOutput() ClusterAnalysisTaskNodesPtrOutput

func (ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesPtrOutputWithContext

func (i ClusterAnalysisTaskNodesArgs) ToClusterAnalysisTaskNodesPtrOutputWithContext(ctx context.Context) ClusterAnalysisTaskNodesPtrOutput

type ClusterAnalysisTaskNodesInput

type ClusterAnalysisTaskNodesInput interface {
	pulumi.Input

	ToClusterAnalysisTaskNodesOutput() ClusterAnalysisTaskNodesOutput
	ToClusterAnalysisTaskNodesOutputWithContext(context.Context) ClusterAnalysisTaskNodesOutput
}

ClusterAnalysisTaskNodesInput is an input type that accepts ClusterAnalysisTaskNodesArgs and ClusterAnalysisTaskNodesOutput values. You can construct a concrete instance of `ClusterAnalysisTaskNodesInput` via:

ClusterAnalysisTaskNodesArgs{...}

type ClusterAnalysisTaskNodesOutput

type ClusterAnalysisTaskNodesOutput struct{ *pulumi.OutputState }

func (ClusterAnalysisTaskNodesOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterAnalysisTaskNodesOutput) DataVolumeCount

func (o ClusterAnalysisTaskNodesOutput) DataVolumeCount() pulumi.IntOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterAnalysisTaskNodesOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterAnalysisTaskNodesOutput) ElementType

func (ClusterAnalysisTaskNodesOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterAnalysisTaskNodesOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterAnalysisTaskNodesOutput) RootVolumeSize

func (o ClusterAnalysisTaskNodesOutput) RootVolumeSize() pulumi.IntOutput

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesOutput

func (o ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesOutput() ClusterAnalysisTaskNodesOutput

func (ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesOutputWithContext

func (o ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesOutputWithContext(ctx context.Context) ClusterAnalysisTaskNodesOutput

func (ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesPtrOutput

func (o ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesPtrOutput() ClusterAnalysisTaskNodesPtrOutput

func (ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesPtrOutputWithContext

func (o ClusterAnalysisTaskNodesOutput) ToClusterAnalysisTaskNodesPtrOutputWithContext(ctx context.Context) ClusterAnalysisTaskNodesPtrOutput

type ClusterAnalysisTaskNodesPtrInput

type ClusterAnalysisTaskNodesPtrInput interface {
	pulumi.Input

	ToClusterAnalysisTaskNodesPtrOutput() ClusterAnalysisTaskNodesPtrOutput
	ToClusterAnalysisTaskNodesPtrOutputWithContext(context.Context) ClusterAnalysisTaskNodesPtrOutput
}

ClusterAnalysisTaskNodesPtrInput is an input type that accepts ClusterAnalysisTaskNodesArgs, ClusterAnalysisTaskNodesPtr and ClusterAnalysisTaskNodesPtrOutput values. You can construct a concrete instance of `ClusterAnalysisTaskNodesPtrInput` via:

        ClusterAnalysisTaskNodesArgs{...}

or:

        nil

type ClusterAnalysisTaskNodesPtrOutput

type ClusterAnalysisTaskNodesPtrOutput struct{ *pulumi.OutputState }

func (ClusterAnalysisTaskNodesPtrOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterAnalysisTaskNodesPtrOutput) DataVolumeCount

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterAnalysisTaskNodesPtrOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesPtrOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterAnalysisTaskNodesPtrOutput) Elem

func (ClusterAnalysisTaskNodesPtrOutput) ElementType

func (ClusterAnalysisTaskNodesPtrOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesPtrOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterAnalysisTaskNodesPtrOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterAnalysisTaskNodesPtrOutput) RootVolumeSize

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesPtrOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterAnalysisTaskNodesPtrOutput) ToClusterAnalysisTaskNodesPtrOutput

func (o ClusterAnalysisTaskNodesPtrOutput) ToClusterAnalysisTaskNodesPtrOutput() ClusterAnalysisTaskNodesPtrOutput

func (ClusterAnalysisTaskNodesPtrOutput) ToClusterAnalysisTaskNodesPtrOutputWithContext

func (o ClusterAnalysisTaskNodesPtrOutput) ToClusterAnalysisTaskNodesPtrOutputWithContext(ctx context.Context) ClusterAnalysisTaskNodesPtrOutput

type ClusterArgs

type ClusterArgs struct {
	// Specifies the informations about analysis core nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `analysisCoreNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	AnalysisCoreNodes ClusterAnalysisCoreNodesPtrInput
	// Specifies the informations about analysis task nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `analysisTaskNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	AnalysisTaskNodes ClusterAnalysisTaskNodesPtrInput
	// Specifies the availability zone in which to create the cluster.
	// Please following [reference](https://developer.huaweicloud.com/intl/en-us/endpoint?all)
	// Changing this will create a new MapReduce cluster resource.
	AvailabilityZone pulumi.StringInput
	// Specifies the component configurations of the cluster.
	// The object structure is documented below.
	// Changing this will create a new MapReduce cluster resource.
	ComponentConfigs ClusterComponentConfigArrayInput
	// Specifies the list of component names. For the components supported by
	// the cluster, please following [reference](https://support.huaweicloud.com/intl/en-us/productdesc-mrs/mrs_08_0005.html)
	// Changing this will create a new MapReduce cluster resource.
	ComponentLists pulumi.StringArrayInput
	// Specifies the informations about custom nodes in the MapReduce cluster.
	// The `nodes` object structure of the `customNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	CustomNodes ClusterCustomNodeArrayInput
	// Specifies the EIP ID which bound to the MapReduce cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MapReduce cluster resource.
	EipId pulumi.StringPtrInput
	// Specifies a unique ID in UUID format of enterprise project.
	// Changing this will create a new MapReduce cluster resource.
	EnterpriseProjectId pulumi.StringPtrInput
	// Specifies whether logs are collected when cluster installation fails.
	// Defaults to true. If `logCollection` set true, the OBS buckets will be created and only used to collect logs that
	// record MapReduce cluster creation failures. Changing this will create a new MapReduce cluster resource.
	LogCollection pulumi.BoolPtrInput
	// Specifies the administrator password, which is used to log in to
	// the cluster management page. The password can contain 8 to 26 characters and cannot be the username or the username
	// spelled backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource.
	ManagerAdminPass pulumi.StringInput
	// Specifies the informations about master nodes in the MapReduce cluster.
	// The `nodes` object structure of the `masterNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	MasterNodes ClusterMasterNodesInput
	// Specifies the component name of the cluster which has installed.
	// Changing this will create a new MapReduce cluster resource.
	Name pulumi.StringPtrInput
	// Specifies the administrator password, which is used to log in to the
	// each nodes(/ECSs). The password can contain 8 to 26 characters and cannot be the username or the username spelled
	// backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource. This parameter
	// and `nodeKeyPair` are alternative.
	NodeAdminPass pulumi.StringPtrInput
	// Specifies the name of a key pair, which is used to log in to the each
	// nodes(/ECSs). Changing this will create a new MapReduce cluster resource.
	NodeKeyPair pulumi.StringPtrInput
	// Specifies the EIP address which bound to the MapReduce cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MapReduce cluster resource.
	PublicIp pulumi.StringPtrInput
	// The region in which to create the MapReduce cluster resource. If omitted, the
	// provider-level region will be used. Changing this will create a new MapReduce cluster resource.
	Region pulumi.StringPtrInput
	// Specifies whether the running mode of the MapReduce cluster is secure,
	// defaults to **true**. The options are as follows:
	// + **true**: enable Kerberos authentication.
	// + **false**: disable Kerberos authentication. Changing this will create a new MapReduce cluster resource.
	SafeMode pulumi.BoolPtrInput
	// Specifies an array of one or more security group ID to attach to the
	// MapReduce cluster. If using the specified security group, the group need to open the specified port (9022) rules.
	SecurityGroupIds pulumi.StringArrayInput
	// Specifies the informations about streaming core nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `streamingCoreNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	StreamingCoreNodes ClusterStreamingCoreNodesPtrInput
	// Specifies the informations about streaming task nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `streamingTaskNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	StreamingTaskNodes ClusterStreamingTaskNodesPtrInput
	// Specifies the network ID of a subnet which bound to the MapReduce cluster.
	// Changing this will create a new MapReduce cluster resource.
	SubnetId pulumi.StringInput
	// Specifies the key/value pairs to associate with the cluster.
	Tags pulumi.StringMapInput
	// Specifies the template used for node deployment when the cluster type is
	// **CUSTOM**. The options are as follows:
	// + **mgmt_control_combined_v2**: template for jointly deploying the management and control nodes. The management and
	//   control roles are co-deployed on the Master node, and data instances are deployed in the same node group. This
	//   deployment mode applies to scenarios where the number of control nodes is less than 100, reducing costs.
	// + **mgmt_control_separated_v2**: The management and control roles are deployed on different master nodes, and data
	//   instances are deployed in the same node group. This deployment mode is applicable to a cluster with 100 to 500 nodes
	//   and delivers better performance in high-concurrency load scenarios.
	// + **mgmt_control_data_separated_v2**: The management role and control role are deployed on different Master nodes,
	//   and data instances are deployed in different node groups. This deployment mode is applicable to a cluster with more
	//   than 500 nodes. Components can be deployed separately, which can be used for a larger cluster scale.
	TemplateId pulumi.StringPtrInput
	// Specifies the type of the MapReduce cluster. The valid values are **ANALYSIS***,
	// **STREAMING** and **MIXED**, defaults to **ANALYSIS**. Changing this will create a new MapReduce cluster resource.
	Type pulumi.StringPtrInput
	// Specifies the MapReduce cluster version. The valid values are `MRS 1.9.2`
	// , `MRS 3.0.5` and `MRS 3.1.0`. Changing this will create a new MapReduce cluster resource.
	Version pulumi.StringInput
	// Specifies the ID of the VPC which bound to the MapReduce cluster. Changing
	// this will create a new MapReduce cluster resource.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a Cluster resource.

func (ClusterArgs) ElementType

func (ClusterArgs) ElementType() reflect.Type

type ClusterArray

type ClusterArray []ClusterInput

func (ClusterArray) ElementType

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext

func (i ClusterArray) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterArrayInput

type ClusterArrayInput interface {
	pulumi.Input

	ToClusterArrayOutput() ClusterArrayOutput
	ToClusterArrayOutputWithContext(context.Context) ClusterArrayOutput
}

ClusterArrayInput is an input type that accepts ClusterArray and ClusterArrayOutput values. You can construct a concrete instance of `ClusterArrayInput` via:

ClusterArray{ ClusterArgs{...} }

type ClusterArrayOutput

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index

func (ClusterArrayOutput) ToClusterArrayOutput

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext

func (o ClusterArrayOutput) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterComponentConfig added in v0.0.8

type ClusterComponentConfig struct {
	// Specifies the configuration of component installed.
	// The object structure is documented below.
	Configs []ClusterComponentConfigConfig `pulumi:"configs"`
	// Specifies the component name of the cluster which has installed.
	// Changing this will create a new MapReduce cluster resource.
	Name string `pulumi:"name"`
}

type ClusterComponentConfigArgs added in v0.0.8

type ClusterComponentConfigArgs struct {
	// Specifies the configuration of component installed.
	// The object structure is documented below.
	Configs ClusterComponentConfigConfigArrayInput `pulumi:"configs"`
	// Specifies the component name of the cluster which has installed.
	// Changing this will create a new MapReduce cluster resource.
	Name pulumi.StringInput `pulumi:"name"`
}

func (ClusterComponentConfigArgs) ElementType added in v0.0.8

func (ClusterComponentConfigArgs) ElementType() reflect.Type

func (ClusterComponentConfigArgs) ToClusterComponentConfigOutput added in v0.0.8

func (i ClusterComponentConfigArgs) ToClusterComponentConfigOutput() ClusterComponentConfigOutput

func (ClusterComponentConfigArgs) ToClusterComponentConfigOutputWithContext added in v0.0.8

func (i ClusterComponentConfigArgs) ToClusterComponentConfigOutputWithContext(ctx context.Context) ClusterComponentConfigOutput

type ClusterComponentConfigArray added in v0.0.8

type ClusterComponentConfigArray []ClusterComponentConfigInput

func (ClusterComponentConfigArray) ElementType added in v0.0.8

func (ClusterComponentConfigArray) ToClusterComponentConfigArrayOutput added in v0.0.8

func (i ClusterComponentConfigArray) ToClusterComponentConfigArrayOutput() ClusterComponentConfigArrayOutput

func (ClusterComponentConfigArray) ToClusterComponentConfigArrayOutputWithContext added in v0.0.8

func (i ClusterComponentConfigArray) ToClusterComponentConfigArrayOutputWithContext(ctx context.Context) ClusterComponentConfigArrayOutput

type ClusterComponentConfigArrayInput added in v0.0.8

type ClusterComponentConfigArrayInput interface {
	pulumi.Input

	ToClusterComponentConfigArrayOutput() ClusterComponentConfigArrayOutput
	ToClusterComponentConfigArrayOutputWithContext(context.Context) ClusterComponentConfigArrayOutput
}

ClusterComponentConfigArrayInput is an input type that accepts ClusterComponentConfigArray and ClusterComponentConfigArrayOutput values. You can construct a concrete instance of `ClusterComponentConfigArrayInput` via:

ClusterComponentConfigArray{ ClusterComponentConfigArgs{...} }

type ClusterComponentConfigArrayOutput added in v0.0.8

type ClusterComponentConfigArrayOutput struct{ *pulumi.OutputState }

func (ClusterComponentConfigArrayOutput) ElementType added in v0.0.8

func (ClusterComponentConfigArrayOutput) Index added in v0.0.8

func (ClusterComponentConfigArrayOutput) ToClusterComponentConfigArrayOutput added in v0.0.8

func (o ClusterComponentConfigArrayOutput) ToClusterComponentConfigArrayOutput() ClusterComponentConfigArrayOutput

func (ClusterComponentConfigArrayOutput) ToClusterComponentConfigArrayOutputWithContext added in v0.0.8

func (o ClusterComponentConfigArrayOutput) ToClusterComponentConfigArrayOutputWithContext(ctx context.Context) ClusterComponentConfigArrayOutput

type ClusterComponentConfigConfig added in v0.0.8

type ClusterComponentConfigConfig struct {
	// Specifies the configuration file name of component installed.
	// Changing this will create a new MapReduce cluster resource.
	ConfigFileName string `pulumi:"configFileName"`
	// Specifies the configuration item key of component installed.
	// Changing this will create a new MapReduce cluster resource.
	Key string `pulumi:"key"`
	// Specifies the configuration item value of component installed.
	// Changing this will create a new MapReduce cluster resource.
	Value string `pulumi:"value"`
}

type ClusterComponentConfigConfigArgs added in v0.0.8

type ClusterComponentConfigConfigArgs struct {
	// Specifies the configuration file name of component installed.
	// Changing this will create a new MapReduce cluster resource.
	ConfigFileName pulumi.StringInput `pulumi:"configFileName"`
	// Specifies the configuration item key of component installed.
	// Changing this will create a new MapReduce cluster resource.
	Key pulumi.StringInput `pulumi:"key"`
	// Specifies the configuration item value of component installed.
	// Changing this will create a new MapReduce cluster resource.
	Value pulumi.StringInput `pulumi:"value"`
}

func (ClusterComponentConfigConfigArgs) ElementType added in v0.0.8

func (ClusterComponentConfigConfigArgs) ToClusterComponentConfigConfigOutput added in v0.0.8

func (i ClusterComponentConfigConfigArgs) ToClusterComponentConfigConfigOutput() ClusterComponentConfigConfigOutput

func (ClusterComponentConfigConfigArgs) ToClusterComponentConfigConfigOutputWithContext added in v0.0.8

func (i ClusterComponentConfigConfigArgs) ToClusterComponentConfigConfigOutputWithContext(ctx context.Context) ClusterComponentConfigConfigOutput

type ClusterComponentConfigConfigArray added in v0.0.8

type ClusterComponentConfigConfigArray []ClusterComponentConfigConfigInput

func (ClusterComponentConfigConfigArray) ElementType added in v0.0.8

func (ClusterComponentConfigConfigArray) ToClusterComponentConfigConfigArrayOutput added in v0.0.8

func (i ClusterComponentConfigConfigArray) ToClusterComponentConfigConfigArrayOutput() ClusterComponentConfigConfigArrayOutput

func (ClusterComponentConfigConfigArray) ToClusterComponentConfigConfigArrayOutputWithContext added in v0.0.8

func (i ClusterComponentConfigConfigArray) ToClusterComponentConfigConfigArrayOutputWithContext(ctx context.Context) ClusterComponentConfigConfigArrayOutput

type ClusterComponentConfigConfigArrayInput added in v0.0.8

type ClusterComponentConfigConfigArrayInput interface {
	pulumi.Input

	ToClusterComponentConfigConfigArrayOutput() ClusterComponentConfigConfigArrayOutput
	ToClusterComponentConfigConfigArrayOutputWithContext(context.Context) ClusterComponentConfigConfigArrayOutput
}

ClusterComponentConfigConfigArrayInput is an input type that accepts ClusterComponentConfigConfigArray and ClusterComponentConfigConfigArrayOutput values. You can construct a concrete instance of `ClusterComponentConfigConfigArrayInput` via:

ClusterComponentConfigConfigArray{ ClusterComponentConfigConfigArgs{...} }

type ClusterComponentConfigConfigArrayOutput added in v0.0.8

type ClusterComponentConfigConfigArrayOutput struct{ *pulumi.OutputState }

func (ClusterComponentConfigConfigArrayOutput) ElementType added in v0.0.8

func (ClusterComponentConfigConfigArrayOutput) Index added in v0.0.8

func (ClusterComponentConfigConfigArrayOutput) ToClusterComponentConfigConfigArrayOutput added in v0.0.8

func (o ClusterComponentConfigConfigArrayOutput) ToClusterComponentConfigConfigArrayOutput() ClusterComponentConfigConfigArrayOutput

func (ClusterComponentConfigConfigArrayOutput) ToClusterComponentConfigConfigArrayOutputWithContext added in v0.0.8

func (o ClusterComponentConfigConfigArrayOutput) ToClusterComponentConfigConfigArrayOutputWithContext(ctx context.Context) ClusterComponentConfigConfigArrayOutput

type ClusterComponentConfigConfigInput added in v0.0.8

type ClusterComponentConfigConfigInput interface {
	pulumi.Input

	ToClusterComponentConfigConfigOutput() ClusterComponentConfigConfigOutput
	ToClusterComponentConfigConfigOutputWithContext(context.Context) ClusterComponentConfigConfigOutput
}

ClusterComponentConfigConfigInput is an input type that accepts ClusterComponentConfigConfigArgs and ClusterComponentConfigConfigOutput values. You can construct a concrete instance of `ClusterComponentConfigConfigInput` via:

ClusterComponentConfigConfigArgs{...}

type ClusterComponentConfigConfigOutput added in v0.0.8

type ClusterComponentConfigConfigOutput struct{ *pulumi.OutputState }

func (ClusterComponentConfigConfigOutput) ConfigFileName added in v0.0.8

Specifies the configuration file name of component installed. Changing this will create a new MapReduce cluster resource.

func (ClusterComponentConfigConfigOutput) ElementType added in v0.0.8

func (ClusterComponentConfigConfigOutput) Key added in v0.0.8

Specifies the configuration item key of component installed. Changing this will create a new MapReduce cluster resource.

func (ClusterComponentConfigConfigOutput) ToClusterComponentConfigConfigOutput added in v0.0.8

func (o ClusterComponentConfigConfigOutput) ToClusterComponentConfigConfigOutput() ClusterComponentConfigConfigOutput

func (ClusterComponentConfigConfigOutput) ToClusterComponentConfigConfigOutputWithContext added in v0.0.8

func (o ClusterComponentConfigConfigOutput) ToClusterComponentConfigConfigOutputWithContext(ctx context.Context) ClusterComponentConfigConfigOutput

func (ClusterComponentConfigConfigOutput) Value added in v0.0.8

Specifies the configuration item value of component installed. Changing this will create a new MapReduce cluster resource.

type ClusterComponentConfigInput added in v0.0.8

type ClusterComponentConfigInput interface {
	pulumi.Input

	ToClusterComponentConfigOutput() ClusterComponentConfigOutput
	ToClusterComponentConfigOutputWithContext(context.Context) ClusterComponentConfigOutput
}

ClusterComponentConfigInput is an input type that accepts ClusterComponentConfigArgs and ClusterComponentConfigOutput values. You can construct a concrete instance of `ClusterComponentConfigInput` via:

ClusterComponentConfigArgs{...}

type ClusterComponentConfigOutput added in v0.0.8

type ClusterComponentConfigOutput struct{ *pulumi.OutputState }

func (ClusterComponentConfigOutput) Configs added in v0.0.8

Specifies the configuration of component installed. The object structure is documented below.

func (ClusterComponentConfigOutput) ElementType added in v0.0.8

func (ClusterComponentConfigOutput) Name added in v0.0.8

Specifies the component name of the cluster which has installed. Changing this will create a new MapReduce cluster resource.

func (ClusterComponentConfigOutput) ToClusterComponentConfigOutput added in v0.0.8

func (o ClusterComponentConfigOutput) ToClusterComponentConfigOutput() ClusterComponentConfigOutput

func (ClusterComponentConfigOutput) ToClusterComponentConfigOutputWithContext added in v0.0.8

func (o ClusterComponentConfigOutput) ToClusterComponentConfigOutputWithContext(ctx context.Context) ClusterComponentConfigOutput

type ClusterCustomNode

type ClusterCustomNode struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles []string `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount int `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize *int `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType *string `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor string `pulumi:"flavor"`
	// Specifies the name of nodes for the node group.
	GroupName string `pulumi:"groupName"`
	// The host list of this nodes group in the cluster.
	HostIps []string `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber int `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize int `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType string `pulumi:"rootVolumeType"`
}

type ClusterCustomNodeArgs

type ClusterCustomNodeArgs struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles pulumi.StringArrayInput `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount pulumi.IntInput `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize pulumi.IntPtrInput `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType pulumi.StringPtrInput `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor pulumi.StringInput `pulumi:"flavor"`
	// Specifies the name of nodes for the node group.
	GroupName pulumi.StringInput `pulumi:"groupName"`
	// The host list of this nodes group in the cluster.
	HostIps pulumi.StringArrayInput `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber pulumi.IntInput `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize pulumi.IntInput `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType pulumi.StringInput `pulumi:"rootVolumeType"`
}

func (ClusterCustomNodeArgs) ElementType

func (ClusterCustomNodeArgs) ElementType() reflect.Type

func (ClusterCustomNodeArgs) ToClusterCustomNodeOutput

func (i ClusterCustomNodeArgs) ToClusterCustomNodeOutput() ClusterCustomNodeOutput

func (ClusterCustomNodeArgs) ToClusterCustomNodeOutputWithContext

func (i ClusterCustomNodeArgs) ToClusterCustomNodeOutputWithContext(ctx context.Context) ClusterCustomNodeOutput

type ClusterCustomNodeArray

type ClusterCustomNodeArray []ClusterCustomNodeInput

func (ClusterCustomNodeArray) ElementType

func (ClusterCustomNodeArray) ElementType() reflect.Type

func (ClusterCustomNodeArray) ToClusterCustomNodeArrayOutput

func (i ClusterCustomNodeArray) ToClusterCustomNodeArrayOutput() ClusterCustomNodeArrayOutput

func (ClusterCustomNodeArray) ToClusterCustomNodeArrayOutputWithContext

func (i ClusterCustomNodeArray) ToClusterCustomNodeArrayOutputWithContext(ctx context.Context) ClusterCustomNodeArrayOutput

type ClusterCustomNodeArrayInput

type ClusterCustomNodeArrayInput interface {
	pulumi.Input

	ToClusterCustomNodeArrayOutput() ClusterCustomNodeArrayOutput
	ToClusterCustomNodeArrayOutputWithContext(context.Context) ClusterCustomNodeArrayOutput
}

ClusterCustomNodeArrayInput is an input type that accepts ClusterCustomNodeArray and ClusterCustomNodeArrayOutput values. You can construct a concrete instance of `ClusterCustomNodeArrayInput` via:

ClusterCustomNodeArray{ ClusterCustomNodeArgs{...} }

type ClusterCustomNodeArrayOutput

type ClusterCustomNodeArrayOutput struct{ *pulumi.OutputState }

func (ClusterCustomNodeArrayOutput) ElementType

func (ClusterCustomNodeArrayOutput) Index

func (ClusterCustomNodeArrayOutput) ToClusterCustomNodeArrayOutput

func (o ClusterCustomNodeArrayOutput) ToClusterCustomNodeArrayOutput() ClusterCustomNodeArrayOutput

func (ClusterCustomNodeArrayOutput) ToClusterCustomNodeArrayOutputWithContext

func (o ClusterCustomNodeArrayOutput) ToClusterCustomNodeArrayOutputWithContext(ctx context.Context) ClusterCustomNodeArrayOutput

type ClusterCustomNodeInput

type ClusterCustomNodeInput interface {
	pulumi.Input

	ToClusterCustomNodeOutput() ClusterCustomNodeOutput
	ToClusterCustomNodeOutputWithContext(context.Context) ClusterCustomNodeOutput
}

ClusterCustomNodeInput is an input type that accepts ClusterCustomNodeArgs and ClusterCustomNodeOutput values. You can construct a concrete instance of `ClusterCustomNodeInput` via:

ClusterCustomNodeArgs{...}

type ClusterCustomNodeOutput

type ClusterCustomNodeOutput struct{ *pulumi.OutputState }

func (ClusterCustomNodeOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterCustomNodeOutput) DataVolumeCount

func (o ClusterCustomNodeOutput) DataVolumeCount() pulumi.IntOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterCustomNodeOutput) DataVolumeSize

func (o ClusterCustomNodeOutput) DataVolumeSize() pulumi.IntPtrOutput

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterCustomNodeOutput) DataVolumeType

func (o ClusterCustomNodeOutput) DataVolumeType() pulumi.StringPtrOutput

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterCustomNodeOutput) ElementType

func (ClusterCustomNodeOutput) ElementType() reflect.Type

func (ClusterCustomNodeOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterCustomNodeOutput) GroupName

Specifies the name of nodes for the node group.

func (ClusterCustomNodeOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterCustomNodeOutput) NodeNumber

func (o ClusterCustomNodeOutput) NodeNumber() pulumi.IntOutput

Specifies the number of nodes for the node group.

func (ClusterCustomNodeOutput) RootVolumeSize

func (o ClusterCustomNodeOutput) RootVolumeSize() pulumi.IntOutput

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterCustomNodeOutput) RootVolumeType

func (o ClusterCustomNodeOutput) RootVolumeType() pulumi.StringOutput

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterCustomNodeOutput) ToClusterCustomNodeOutput

func (o ClusterCustomNodeOutput) ToClusterCustomNodeOutput() ClusterCustomNodeOutput

func (ClusterCustomNodeOutput) ToClusterCustomNodeOutputWithContext

func (o ClusterCustomNodeOutput) ToClusterCustomNodeOutputWithContext(ctx context.Context) ClusterCustomNodeOutput

type ClusterInput

type ClusterInput interface {
	pulumi.Input

	ToClusterOutput() ClusterOutput
	ToClusterOutputWithContext(ctx context.Context) ClusterOutput
}

type ClusterMap

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext

func (i ClusterMap) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterMapInput

type ClusterMapInput interface {
	pulumi.Input

	ToClusterMapOutput() ClusterMapOutput
	ToClusterMapOutputWithContext(context.Context) ClusterMapOutput
}

ClusterMapInput is an input type that accepts ClusterMap and ClusterMapOutput values. You can construct a concrete instance of `ClusterMapInput` via:

ClusterMap{ "key": ClusterArgs{...} }

type ClusterMapOutput

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex

func (ClusterMapOutput) ToClusterMapOutput

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext

func (o ClusterMapOutput) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterMasterNodes

type ClusterMasterNodes struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles []string `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount int `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize *int `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType *string `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor string `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps []string `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber int `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize int `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType string `pulumi:"rootVolumeType"`
}

type ClusterMasterNodesArgs

type ClusterMasterNodesArgs struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles pulumi.StringArrayInput `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount pulumi.IntInput `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize pulumi.IntPtrInput `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType pulumi.StringPtrInput `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor pulumi.StringInput `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps pulumi.StringArrayInput `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber pulumi.IntInput `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize pulumi.IntInput `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType pulumi.StringInput `pulumi:"rootVolumeType"`
}

func (ClusterMasterNodesArgs) ElementType

func (ClusterMasterNodesArgs) ElementType() reflect.Type

func (ClusterMasterNodesArgs) ToClusterMasterNodesOutput

func (i ClusterMasterNodesArgs) ToClusterMasterNodesOutput() ClusterMasterNodesOutput

func (ClusterMasterNodesArgs) ToClusterMasterNodesOutputWithContext

func (i ClusterMasterNodesArgs) ToClusterMasterNodesOutputWithContext(ctx context.Context) ClusterMasterNodesOutput

func (ClusterMasterNodesArgs) ToClusterMasterNodesPtrOutput

func (i ClusterMasterNodesArgs) ToClusterMasterNodesPtrOutput() ClusterMasterNodesPtrOutput

func (ClusterMasterNodesArgs) ToClusterMasterNodesPtrOutputWithContext

func (i ClusterMasterNodesArgs) ToClusterMasterNodesPtrOutputWithContext(ctx context.Context) ClusterMasterNodesPtrOutput

type ClusterMasterNodesInput

type ClusterMasterNodesInput interface {
	pulumi.Input

	ToClusterMasterNodesOutput() ClusterMasterNodesOutput
	ToClusterMasterNodesOutputWithContext(context.Context) ClusterMasterNodesOutput
}

ClusterMasterNodesInput is an input type that accepts ClusterMasterNodesArgs and ClusterMasterNodesOutput values. You can construct a concrete instance of `ClusterMasterNodesInput` via:

ClusterMasterNodesArgs{...}

type ClusterMasterNodesOutput

type ClusterMasterNodesOutput struct{ *pulumi.OutputState }

func (ClusterMasterNodesOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterMasterNodesOutput) DataVolumeCount

func (o ClusterMasterNodesOutput) DataVolumeCount() pulumi.IntOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterMasterNodesOutput) DataVolumeSize

func (o ClusterMasterNodesOutput) DataVolumeSize() pulumi.IntPtrOutput

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesOutput) DataVolumeType

func (o ClusterMasterNodesOutput) DataVolumeType() pulumi.StringPtrOutput

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterMasterNodesOutput) ElementType

func (ClusterMasterNodesOutput) ElementType() reflect.Type

func (ClusterMasterNodesOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterMasterNodesOutput) NodeNumber

func (o ClusterMasterNodesOutput) NodeNumber() pulumi.IntOutput

Specifies the number of nodes for the node group.

func (ClusterMasterNodesOutput) RootVolumeSize

func (o ClusterMasterNodesOutput) RootVolumeSize() pulumi.IntOutput

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesOutput) RootVolumeType

func (o ClusterMasterNodesOutput) RootVolumeType() pulumi.StringOutput

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesOutput) ToClusterMasterNodesOutput

func (o ClusterMasterNodesOutput) ToClusterMasterNodesOutput() ClusterMasterNodesOutput

func (ClusterMasterNodesOutput) ToClusterMasterNodesOutputWithContext

func (o ClusterMasterNodesOutput) ToClusterMasterNodesOutputWithContext(ctx context.Context) ClusterMasterNodesOutput

func (ClusterMasterNodesOutput) ToClusterMasterNodesPtrOutput

func (o ClusterMasterNodesOutput) ToClusterMasterNodesPtrOutput() ClusterMasterNodesPtrOutput

func (ClusterMasterNodesOutput) ToClusterMasterNodesPtrOutputWithContext

func (o ClusterMasterNodesOutput) ToClusterMasterNodesPtrOutputWithContext(ctx context.Context) ClusterMasterNodesPtrOutput

type ClusterMasterNodesPtrInput

type ClusterMasterNodesPtrInput interface {
	pulumi.Input

	ToClusterMasterNodesPtrOutput() ClusterMasterNodesPtrOutput
	ToClusterMasterNodesPtrOutputWithContext(context.Context) ClusterMasterNodesPtrOutput
}

ClusterMasterNodesPtrInput is an input type that accepts ClusterMasterNodesArgs, ClusterMasterNodesPtr and ClusterMasterNodesPtrOutput values. You can construct a concrete instance of `ClusterMasterNodesPtrInput` via:

        ClusterMasterNodesArgs{...}

or:

        nil

type ClusterMasterNodesPtrOutput

type ClusterMasterNodesPtrOutput struct{ *pulumi.OutputState }

func (ClusterMasterNodesPtrOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterMasterNodesPtrOutput) DataVolumeCount

func (o ClusterMasterNodesPtrOutput) DataVolumeCount() pulumi.IntPtrOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterMasterNodesPtrOutput) DataVolumeSize

func (o ClusterMasterNodesPtrOutput) DataVolumeSize() pulumi.IntPtrOutput

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesPtrOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterMasterNodesPtrOutput) Elem

func (ClusterMasterNodesPtrOutput) ElementType

func (ClusterMasterNodesPtrOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesPtrOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterMasterNodesPtrOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterMasterNodesPtrOutput) RootVolumeSize

func (o ClusterMasterNodesPtrOutput) RootVolumeSize() pulumi.IntPtrOutput

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesPtrOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterMasterNodesPtrOutput) ToClusterMasterNodesPtrOutput

func (o ClusterMasterNodesPtrOutput) ToClusterMasterNodesPtrOutput() ClusterMasterNodesPtrOutput

func (ClusterMasterNodesPtrOutput) ToClusterMasterNodesPtrOutputWithContext

func (o ClusterMasterNodesPtrOutput) ToClusterMasterNodesPtrOutputWithContext(ctx context.Context) ClusterMasterNodesPtrOutput

type ClusterOutput

type ClusterOutput struct{ *pulumi.OutputState }

func (ClusterOutput) AnalysisCoreNodes

func (o ClusterOutput) AnalysisCoreNodes() ClusterAnalysisCoreNodesPtrOutput

Specifies the informations about analysis core nodes in the MapReduce cluster. The `nodes` object structure of the `analysisCoreNodes` is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) AnalysisTaskNodes

func (o ClusterOutput) AnalysisTaskNodes() ClusterAnalysisTaskNodesPtrOutput

Specifies the informations about analysis task nodes in the MapReduce cluster. The `nodes` object structure of the `analysisTaskNodes` is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) AvailabilityZone

func (o ClusterOutput) AvailabilityZone() pulumi.StringOutput

Specifies the availability zone in which to create the cluster. Please following [reference](https://developer.huaweicloud.com/intl/en-us/endpoint?all) Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) ChargingStartTime

func (o ClusterOutput) ChargingStartTime() pulumi.StringOutput

The charging start time which is the start time of billing, in RFC-3339 format.

func (ClusterOutput) ComponentConfigs added in v0.0.8

func (o ClusterOutput) ComponentConfigs() ClusterComponentConfigArrayOutput

Specifies the component configurations of the cluster. The object structure is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) ComponentLists

func (o ClusterOutput) ComponentLists() pulumi.StringArrayOutput

Specifies the list of component names. For the components supported by the cluster, please following [reference](https://support.huaweicloud.com/intl/en-us/productdesc-mrs/mrs_08_0005.html) Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) CreateTime

func (o ClusterOutput) CreateTime() pulumi.StringOutput

The cluster creation time, in RFC-3339 format.

func (ClusterOutput) CustomNodes

Specifies the informations about custom nodes in the MapReduce cluster. The `nodes` object structure of the `customNodes` is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) EipId

func (o ClusterOutput) EipId() pulumi.StringOutput

Specifies the EIP ID which bound to the MapReduce cluster. The EIP must have been created and must be in the same region as the cluster. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) ElementType

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) EnterpriseProjectId

func (o ClusterOutput) EnterpriseProjectId() pulumi.StringOutput

Specifies a unique ID in UUID format of enterprise project. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) LogCollection

func (o ClusterOutput) LogCollection() pulumi.BoolPtrOutput

Specifies whether logs are collected when cluster installation fails. Defaults to true. If `logCollection` set true, the OBS buckets will be created and only used to collect logs that record MapReduce cluster creation failures. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) ManagerAdminPass

func (o ClusterOutput) ManagerAdminPass() pulumi.StringOutput

Specifies the administrator password, which is used to log in to the cluster management page. The password can contain 8 to 26 characters and cannot be the username or the username spelled backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) MasterNodeIp

func (o ClusterOutput) MasterNodeIp() pulumi.StringOutput

The IP address of the master node.

func (ClusterOutput) MasterNodes

func (o ClusterOutput) MasterNodes() ClusterMasterNodesOutput

Specifies the informations about master nodes in the MapReduce cluster. The `nodes` object structure of the `masterNodes` is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) Name

Specifies the component name of the cluster which has installed. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) NodeAdminPass

func (o ClusterOutput) NodeAdminPass() pulumi.StringPtrOutput

Specifies the administrator password, which is used to log in to the each nodes(/ECSs). The password can contain 8 to 26 characters and cannot be the username or the username spelled backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource. This parameter and `nodeKeyPair` are alternative.

func (ClusterOutput) NodeKeyPair

func (o ClusterOutput) NodeKeyPair() pulumi.StringPtrOutput

Specifies the name of a key pair, which is used to log in to the each nodes(/ECSs). Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) PrivateIp

func (o ClusterOutput) PrivateIp() pulumi.StringOutput

The preferred private IP address of the master node.

func (ClusterOutput) PublicIp

func (o ClusterOutput) PublicIp() pulumi.StringOutput

Specifies the EIP address which bound to the MapReduce cluster. The EIP must have been created and must be in the same region as the cluster. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) Region

func (o ClusterOutput) Region() pulumi.StringOutput

The region in which to create the MapReduce cluster resource. If omitted, the provider-level region will be used. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) SafeMode

func (o ClusterOutput) SafeMode() pulumi.BoolPtrOutput

Specifies whether the running mode of the MapReduce cluster is secure, defaults to **true**. The options are as follows: + **true**: enable Kerberos authentication. + **false**: disable Kerberos authentication. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) SecurityGroupIds

func (o ClusterOutput) SecurityGroupIds() pulumi.StringArrayOutput

Specifies an array of one or more security group ID to attach to the MapReduce cluster. If using the specified security group, the group need to open the specified port (9022) rules.

func (ClusterOutput) Status

func (o ClusterOutput) Status() pulumi.StringOutput

The cluster state, which include: running, frozen, abnormal and failed.

func (ClusterOutput) StreamingCoreNodes

func (o ClusterOutput) StreamingCoreNodes() ClusterStreamingCoreNodesPtrOutput

Specifies the informations about streaming core nodes in the MapReduce cluster. The `nodes` object structure of the `streamingCoreNodes` is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) StreamingTaskNodes

func (o ClusterOutput) StreamingTaskNodes() ClusterStreamingTaskNodesPtrOutput

Specifies the informations about streaming task nodes in the MapReduce cluster. The `nodes` object structure of the `streamingTaskNodes` is documented below. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) SubnetId

func (o ClusterOutput) SubnetId() pulumi.StringOutput

Specifies the network ID of a subnet which bound to the MapReduce cluster. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) Tags

Specifies the key/value pairs to associate with the cluster.

func (ClusterOutput) TemplateId

func (o ClusterOutput) TemplateId() pulumi.StringPtrOutput

Specifies the template used for node deployment when the cluster type is **CUSTOM**. The options are as follows:

  • **mgmt_control_combined_v2**: template for jointly deploying the management and control nodes. The management and control roles are co-deployed on the Master node, and data instances are deployed in the same node group. This deployment mode applies to scenarios where the number of control nodes is less than 100, reducing costs.
  • **mgmt_control_separated_v2**: The management and control roles are deployed on different master nodes, and data instances are deployed in the same node group. This deployment mode is applicable to a cluster with 100 to 500 nodes and delivers better performance in high-concurrency load scenarios.
  • **mgmt_control_data_separated_v2**: The management role and control role are deployed on different Master nodes, and data instances are deployed in different node groups. This deployment mode is applicable to a cluster with more than 500 nodes. Components can be deployed separately, which can be used for a larger cluster scale.

func (ClusterOutput) ToClusterOutput

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext

func (o ClusterOutput) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

func (ClusterOutput) TotalNodeNumber

func (o ClusterOutput) TotalNodeNumber() pulumi.IntOutput

The total number of nodes deployed in the cluster.

func (ClusterOutput) Type

Specifies the type of the MapReduce cluster. The valid values are **ANALYSIS***, **STREAMING** and **MIXED**, defaults to **ANALYSIS**. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) UpdateTime

func (o ClusterOutput) UpdateTime() pulumi.StringOutput

The cluster update time, in RFC-3339 format.

func (ClusterOutput) Version

func (o ClusterOutput) Version() pulumi.StringOutput

Specifies the MapReduce cluster version. The valid values are `MRS 1.9.2` , `MRS 3.0.5` and `MRS 3.1.0`. Changing this will create a new MapReduce cluster resource.

func (ClusterOutput) VpcId

func (o ClusterOutput) VpcId() pulumi.StringOutput

Specifies the ID of the VPC which bound to the MapReduce cluster. Changing this will create a new MapReduce cluster resource.

type ClusterState

type ClusterState struct {
	// Specifies the informations about analysis core nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `analysisCoreNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	AnalysisCoreNodes ClusterAnalysisCoreNodesPtrInput
	// Specifies the informations about analysis task nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `analysisTaskNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	AnalysisTaskNodes ClusterAnalysisTaskNodesPtrInput
	// Specifies the availability zone in which to create the cluster.
	// Please following [reference](https://developer.huaweicloud.com/intl/en-us/endpoint?all)
	// Changing this will create a new MapReduce cluster resource.
	AvailabilityZone pulumi.StringPtrInput
	// The charging start time which is the start time of billing, in RFC-3339 format.
	ChargingStartTime pulumi.StringPtrInput
	// Specifies the component configurations of the cluster.
	// The object structure is documented below.
	// Changing this will create a new MapReduce cluster resource.
	ComponentConfigs ClusterComponentConfigArrayInput
	// Specifies the list of component names. For the components supported by
	// the cluster, please following [reference](https://support.huaweicloud.com/intl/en-us/productdesc-mrs/mrs_08_0005.html)
	// Changing this will create a new MapReduce cluster resource.
	ComponentLists pulumi.StringArrayInput
	// The cluster creation time, in RFC-3339 format.
	CreateTime pulumi.StringPtrInput
	// Specifies the informations about custom nodes in the MapReduce cluster.
	// The `nodes` object structure of the `customNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	CustomNodes ClusterCustomNodeArrayInput
	// Specifies the EIP ID which bound to the MapReduce cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MapReduce cluster resource.
	EipId pulumi.StringPtrInput
	// Specifies a unique ID in UUID format of enterprise project.
	// Changing this will create a new MapReduce cluster resource.
	EnterpriseProjectId pulumi.StringPtrInput
	// Specifies whether logs are collected when cluster installation fails.
	// Defaults to true. If `logCollection` set true, the OBS buckets will be created and only used to collect logs that
	// record MapReduce cluster creation failures. Changing this will create a new MapReduce cluster resource.
	LogCollection pulumi.BoolPtrInput
	// Specifies the administrator password, which is used to log in to
	// the cluster management page. The password can contain 8 to 26 characters and cannot be the username or the username
	// spelled backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource.
	ManagerAdminPass pulumi.StringPtrInput
	// The IP address of the master node.
	MasterNodeIp pulumi.StringPtrInput
	// Specifies the informations about master nodes in the MapReduce cluster.
	// The `nodes` object structure of the `masterNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	MasterNodes ClusterMasterNodesPtrInput
	// Specifies the component name of the cluster which has installed.
	// Changing this will create a new MapReduce cluster resource.
	Name pulumi.StringPtrInput
	// Specifies the administrator password, which is used to log in to the
	// each nodes(/ECSs). The password can contain 8 to 26 characters and cannot be the username or the username spelled
	// backwards. The password must contain lowercase letters, uppercase letters, digits, spaces and the special
	// characters: `!?,.:-_{}[]@$^+=/`. Changing this will create a new MapReduce cluster resource. This parameter
	// and `nodeKeyPair` are alternative.
	NodeAdminPass pulumi.StringPtrInput
	// Specifies the name of a key pair, which is used to log in to the each
	// nodes(/ECSs). Changing this will create a new MapReduce cluster resource.
	NodeKeyPair pulumi.StringPtrInput
	// The preferred private IP address of the master node.
	PrivateIp pulumi.StringPtrInput
	// Specifies the EIP address which bound to the MapReduce cluster.
	// The EIP must have been created and must be in the same region as the cluster.
	// Changing this will create a new MapReduce cluster resource.
	PublicIp pulumi.StringPtrInput
	// The region in which to create the MapReduce cluster resource. If omitted, the
	// provider-level region will be used. Changing this will create a new MapReduce cluster resource.
	Region pulumi.StringPtrInput
	// Specifies whether the running mode of the MapReduce cluster is secure,
	// defaults to **true**. The options are as follows:
	// + **true**: enable Kerberos authentication.
	// + **false**: disable Kerberos authentication. Changing this will create a new MapReduce cluster resource.
	SafeMode pulumi.BoolPtrInput
	// Specifies an array of one or more security group ID to attach to the
	// MapReduce cluster. If using the specified security group, the group need to open the specified port (9022) rules.
	SecurityGroupIds pulumi.StringArrayInput
	// The cluster state, which include: running, frozen, abnormal and failed.
	Status pulumi.StringPtrInput
	// Specifies the informations about streaming core nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `streamingCoreNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	StreamingCoreNodes ClusterStreamingCoreNodesPtrInput
	// Specifies the informations about streaming task nodes in the
	// MapReduce cluster.
	// The `nodes` object structure of the `streamingTaskNodes` is documented below.
	// Changing this will create a new MapReduce cluster resource.
	StreamingTaskNodes ClusterStreamingTaskNodesPtrInput
	// Specifies the network ID of a subnet which bound to the MapReduce cluster.
	// Changing this will create a new MapReduce cluster resource.
	SubnetId pulumi.StringPtrInput
	// Specifies the key/value pairs to associate with the cluster.
	Tags pulumi.StringMapInput
	// Specifies the template used for node deployment when the cluster type is
	// **CUSTOM**. The options are as follows:
	// + **mgmt_control_combined_v2**: template for jointly deploying the management and control nodes. The management and
	//   control roles are co-deployed on the Master node, and data instances are deployed in the same node group. This
	//   deployment mode applies to scenarios where the number of control nodes is less than 100, reducing costs.
	// + **mgmt_control_separated_v2**: The management and control roles are deployed on different master nodes, and data
	//   instances are deployed in the same node group. This deployment mode is applicable to a cluster with 100 to 500 nodes
	//   and delivers better performance in high-concurrency load scenarios.
	// + **mgmt_control_data_separated_v2**: The management role and control role are deployed on different Master nodes,
	//   and data instances are deployed in different node groups. This deployment mode is applicable to a cluster with more
	//   than 500 nodes. Components can be deployed separately, which can be used for a larger cluster scale.
	TemplateId pulumi.StringPtrInput
	// The total number of nodes deployed in the cluster.
	TotalNodeNumber pulumi.IntPtrInput
	// Specifies the type of the MapReduce cluster. The valid values are **ANALYSIS***,
	// **STREAMING** and **MIXED**, defaults to **ANALYSIS**. Changing this will create a new MapReduce cluster resource.
	Type pulumi.StringPtrInput
	// The cluster update time, in RFC-3339 format.
	UpdateTime pulumi.StringPtrInput
	// Specifies the MapReduce cluster version. The valid values are `MRS 1.9.2`
	// , `MRS 3.0.5` and `MRS 3.1.0`. Changing this will create a new MapReduce cluster resource.
	Version pulumi.StringPtrInput
	// Specifies the ID of the VPC which bound to the MapReduce cluster. Changing
	// this will create a new MapReduce cluster resource.
	VpcId pulumi.StringPtrInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type ClusterStreamingCoreNodes

type ClusterStreamingCoreNodes struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles []string `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount int `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize *int `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType *string `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor string `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps []string `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber int `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize int `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType string `pulumi:"rootVolumeType"`
}

type ClusterStreamingCoreNodesArgs

type ClusterStreamingCoreNodesArgs struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles pulumi.StringArrayInput `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount pulumi.IntInput `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize pulumi.IntPtrInput `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType pulumi.StringPtrInput `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor pulumi.StringInput `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps pulumi.StringArrayInput `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber pulumi.IntInput `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize pulumi.IntInput `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType pulumi.StringInput `pulumi:"rootVolumeType"`
}

func (ClusterStreamingCoreNodesArgs) ElementType

func (ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesOutput

func (i ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesOutput() ClusterStreamingCoreNodesOutput

func (ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesOutputWithContext

func (i ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesOutputWithContext(ctx context.Context) ClusterStreamingCoreNodesOutput

func (ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesPtrOutput

func (i ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesPtrOutput() ClusterStreamingCoreNodesPtrOutput

func (ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesPtrOutputWithContext

func (i ClusterStreamingCoreNodesArgs) ToClusterStreamingCoreNodesPtrOutputWithContext(ctx context.Context) ClusterStreamingCoreNodesPtrOutput

type ClusterStreamingCoreNodesInput

type ClusterStreamingCoreNodesInput interface {
	pulumi.Input

	ToClusterStreamingCoreNodesOutput() ClusterStreamingCoreNodesOutput
	ToClusterStreamingCoreNodesOutputWithContext(context.Context) ClusterStreamingCoreNodesOutput
}

ClusterStreamingCoreNodesInput is an input type that accepts ClusterStreamingCoreNodesArgs and ClusterStreamingCoreNodesOutput values. You can construct a concrete instance of `ClusterStreamingCoreNodesInput` via:

ClusterStreamingCoreNodesArgs{...}

type ClusterStreamingCoreNodesOutput

type ClusterStreamingCoreNodesOutput struct{ *pulumi.OutputState }

func (ClusterStreamingCoreNodesOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterStreamingCoreNodesOutput) DataVolumeCount

func (o ClusterStreamingCoreNodesOutput) DataVolumeCount() pulumi.IntOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterStreamingCoreNodesOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterStreamingCoreNodesOutput) ElementType

func (ClusterStreamingCoreNodesOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterStreamingCoreNodesOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterStreamingCoreNodesOutput) RootVolumeSize

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesOutput

func (o ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesOutput() ClusterStreamingCoreNodesOutput

func (ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesOutputWithContext

func (o ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesOutputWithContext(ctx context.Context) ClusterStreamingCoreNodesOutput

func (ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesPtrOutput

func (o ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesPtrOutput() ClusterStreamingCoreNodesPtrOutput

func (ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesPtrOutputWithContext

func (o ClusterStreamingCoreNodesOutput) ToClusterStreamingCoreNodesPtrOutputWithContext(ctx context.Context) ClusterStreamingCoreNodesPtrOutput

type ClusterStreamingCoreNodesPtrInput

type ClusterStreamingCoreNodesPtrInput interface {
	pulumi.Input

	ToClusterStreamingCoreNodesPtrOutput() ClusterStreamingCoreNodesPtrOutput
	ToClusterStreamingCoreNodesPtrOutputWithContext(context.Context) ClusterStreamingCoreNodesPtrOutput
}

ClusterStreamingCoreNodesPtrInput is an input type that accepts ClusterStreamingCoreNodesArgs, ClusterStreamingCoreNodesPtr and ClusterStreamingCoreNodesPtrOutput values. You can construct a concrete instance of `ClusterStreamingCoreNodesPtrInput` via:

        ClusterStreamingCoreNodesArgs{...}

or:

        nil

type ClusterStreamingCoreNodesPtrOutput

type ClusterStreamingCoreNodesPtrOutput struct{ *pulumi.OutputState }

func (ClusterStreamingCoreNodesPtrOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterStreamingCoreNodesPtrOutput) DataVolumeCount

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterStreamingCoreNodesPtrOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesPtrOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterStreamingCoreNodesPtrOutput) Elem

func (ClusterStreamingCoreNodesPtrOutput) ElementType

func (ClusterStreamingCoreNodesPtrOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesPtrOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterStreamingCoreNodesPtrOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterStreamingCoreNodesPtrOutput) RootVolumeSize

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesPtrOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingCoreNodesPtrOutput) ToClusterStreamingCoreNodesPtrOutput

func (o ClusterStreamingCoreNodesPtrOutput) ToClusterStreamingCoreNodesPtrOutput() ClusterStreamingCoreNodesPtrOutput

func (ClusterStreamingCoreNodesPtrOutput) ToClusterStreamingCoreNodesPtrOutputWithContext

func (o ClusterStreamingCoreNodesPtrOutput) ToClusterStreamingCoreNodesPtrOutputWithContext(ctx context.Context) ClusterStreamingCoreNodesPtrOutput

type ClusterStreamingTaskNodes

type ClusterStreamingTaskNodes struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles []string `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount int `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize *int `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType *string `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor string `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps []string `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber int `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize int `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType string `pulumi:"rootVolumeType"`
}

type ClusterStreamingTaskNodesArgs

type ClusterStreamingTaskNodesArgs struct {
	// Specifies the roles deployed in a node group.This argument is mandatory
	// when the cluster type is **CUSTOM**. Each character string represents a role expression.
	AssignedRoles pulumi.StringArrayInput `pulumi:"assignedRoles"`
	// Specifies the data disk number of the nodes. The number configuration
	// of each node are as follows:
	// + **master_nodes**: 1.
	// + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	// + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.
	DataVolumeCount pulumi.IntInput `pulumi:"dataVolumeCount"`
	// Specifies the data disk size of the nodes,in GB. The value range is 10
	// to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce
	// cluster resource.
	DataVolumeSize pulumi.IntPtrInput `pulumi:"dataVolumeSize"`
	// Specifies the data disk flavor of the nodes.
	// Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.
	// The following disk types are supported:
	// + **SATA**: common I/O disk.
	// + **SAS**: high I/O disk.
	// + **SSD**: ultra-high I/O disk.
	DataVolumeType pulumi.StringPtrInput `pulumi:"dataVolumeType"`
	// Specifies the instance specifications for each nodes in node group.
	// Changing this will create a new MapReduce cluster resource.
	Flavor pulumi.StringInput `pulumi:"flavor"`
	// The host list of this nodes group in the cluster.
	HostIps pulumi.StringArrayInput `pulumi:"hostIps"`
	// Specifies the number of nodes for the node group.
	NodeNumber pulumi.IntInput `pulumi:"nodeNumber"`
	// Specifies the system disk size of the nodes. Changing this will create
	// a new MapReduce cluster resource.
	RootVolumeSize pulumi.IntInput `pulumi:"rootVolumeSize"`
	// Specifies the system disk flavor of the nodes. Changing this will
	// create a new MapReduce cluster resource.
	RootVolumeType pulumi.StringInput `pulumi:"rootVolumeType"`
}

func (ClusterStreamingTaskNodesArgs) ElementType

func (ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesOutput

func (i ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesOutput() ClusterStreamingTaskNodesOutput

func (ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesOutputWithContext

func (i ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesOutputWithContext(ctx context.Context) ClusterStreamingTaskNodesOutput

func (ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesPtrOutput

func (i ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesPtrOutput() ClusterStreamingTaskNodesPtrOutput

func (ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesPtrOutputWithContext

func (i ClusterStreamingTaskNodesArgs) ToClusterStreamingTaskNodesPtrOutputWithContext(ctx context.Context) ClusterStreamingTaskNodesPtrOutput

type ClusterStreamingTaskNodesInput

type ClusterStreamingTaskNodesInput interface {
	pulumi.Input

	ToClusterStreamingTaskNodesOutput() ClusterStreamingTaskNodesOutput
	ToClusterStreamingTaskNodesOutputWithContext(context.Context) ClusterStreamingTaskNodesOutput
}

ClusterStreamingTaskNodesInput is an input type that accepts ClusterStreamingTaskNodesArgs and ClusterStreamingTaskNodesOutput values. You can construct a concrete instance of `ClusterStreamingTaskNodesInput` via:

ClusterStreamingTaskNodesArgs{...}

type ClusterStreamingTaskNodesOutput

type ClusterStreamingTaskNodesOutput struct{ *pulumi.OutputState }

func (ClusterStreamingTaskNodesOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterStreamingTaskNodesOutput) DataVolumeCount

func (o ClusterStreamingTaskNodesOutput) DataVolumeCount() pulumi.IntOutput

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterStreamingTaskNodesOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterStreamingTaskNodesOutput) ElementType

func (ClusterStreamingTaskNodesOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterStreamingTaskNodesOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterStreamingTaskNodesOutput) RootVolumeSize

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesOutput

func (o ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesOutput() ClusterStreamingTaskNodesOutput

func (ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesOutputWithContext

func (o ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesOutputWithContext(ctx context.Context) ClusterStreamingTaskNodesOutput

func (ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesPtrOutput

func (o ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesPtrOutput() ClusterStreamingTaskNodesPtrOutput

func (ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesPtrOutputWithContext

func (o ClusterStreamingTaskNodesOutput) ToClusterStreamingTaskNodesPtrOutputWithContext(ctx context.Context) ClusterStreamingTaskNodesPtrOutput

type ClusterStreamingTaskNodesPtrInput

type ClusterStreamingTaskNodesPtrInput interface {
	pulumi.Input

	ToClusterStreamingTaskNodesPtrOutput() ClusterStreamingTaskNodesPtrOutput
	ToClusterStreamingTaskNodesPtrOutputWithContext(context.Context) ClusterStreamingTaskNodesPtrOutput
}

ClusterStreamingTaskNodesPtrInput is an input type that accepts ClusterStreamingTaskNodesArgs, ClusterStreamingTaskNodesPtr and ClusterStreamingTaskNodesPtrOutput values. You can construct a concrete instance of `ClusterStreamingTaskNodesPtrInput` via:

        ClusterStreamingTaskNodesArgs{...}

or:

        nil

type ClusterStreamingTaskNodesPtrOutput

type ClusterStreamingTaskNodesPtrOutput struct{ *pulumi.OutputState }

func (ClusterStreamingTaskNodesPtrOutput) AssignedRoles

Specifies the roles deployed in a node group.This argument is mandatory when the cluster type is **CUSTOM**. Each character string represents a role expression.

func (ClusterStreamingTaskNodesPtrOutput) DataVolumeCount

Specifies the data disk number of the nodes. The number configuration of each node are as follows: + **master_nodes**: 1. + **analysis_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_core_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **analysis_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor. + **streaming_task_nodes**: minimum is one and the maximum is subject to the configuration of the corresponding flavor.

func (ClusterStreamingTaskNodesPtrOutput) DataVolumeSize

Specifies the data disk size of the nodes,in GB. The value range is 10 to 32768. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesPtrOutput) DataVolumeType

Specifies the data disk flavor of the nodes. Required if `dataVolumeCount` is greater than zero. Changing this will create a new MapReduce cluster resource. The following disk types are supported: + **SATA**: common I/O disk. + **SAS**: high I/O disk. + **SSD**: ultra-high I/O disk.

func (ClusterStreamingTaskNodesPtrOutput) Elem

func (ClusterStreamingTaskNodesPtrOutput) ElementType

func (ClusterStreamingTaskNodesPtrOutput) Flavor

Specifies the instance specifications for each nodes in node group. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesPtrOutput) HostIps

The host list of this nodes group in the cluster.

func (ClusterStreamingTaskNodesPtrOutput) NodeNumber

Specifies the number of nodes for the node group.

func (ClusterStreamingTaskNodesPtrOutput) RootVolumeSize

Specifies the system disk size of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesPtrOutput) RootVolumeType

Specifies the system disk flavor of the nodes. Changing this will create a new MapReduce cluster resource.

func (ClusterStreamingTaskNodesPtrOutput) ToClusterStreamingTaskNodesPtrOutput

func (o ClusterStreamingTaskNodesPtrOutput) ToClusterStreamingTaskNodesPtrOutput() ClusterStreamingTaskNodesPtrOutput

func (ClusterStreamingTaskNodesPtrOutput) ToClusterStreamingTaskNodesPtrOutputWithContext

func (o ClusterStreamingTaskNodesPtrOutput) ToClusterStreamingTaskNodesPtrOutputWithContext(ctx context.Context) ClusterStreamingTaskNodesPtrOutput

type Job

type Job struct {
	pulumi.CustomResourceState

	// Specifies an ID of the MapReduce cluster to which the job belongs to.
	// Changing this will create a new MapReduce job resource.
	ClusterId pulumi.StringOutput `pulumi:"clusterId"`
	// The completion time of the MapReduce job.
	FinishTime pulumi.StringOutput `pulumi:"finishTime"`
	// Specifies the name of the MapReduce job. The name can contain 1 to 64
	// characters, which may consist of letters, digits, underscores (_) and hyphens (-). Changing this will create a new
	// MapReduce job resource.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the parameters for the MapReduce job. Add an at sign (@) before
	// each parameter can prevent the parameters being saved in plaintext format. Each parameters are separated with spaces.
	// This parameter can be set when `type` is **Flink**, **MapReduce** or **SparkSubmit**. Changing this will create a new
	// MapReduce job resource.
	Parameters pulumi.StringPtrOutput `pulumi:"parameters"`
	// Specifies the the key/value pairs of the program parameters, such as
	// thread, memory, and vCPUs, are used to optimize resource usage and improve job execution performance. This parameter
	// can be set when `type` is **Flink**, **SparkSubmit**, **SparkSql**, **SparkScript**, **HiveSql** or
	// **HiveScript**. Refer to the documents for each type of support key-values.
	// Changing this will create a new MapReduce job resource.
	ProgramParameters pulumi.StringMapOutput `pulumi:"programParameters"`
	// Specifies the .jar package path or .py file path for program execution.
	// The parameter must meet the following requirements:
	// + Contains a maximum of 1023 characters, excluding special characters such as `;|&><'$`.
	// + The address cannot be empty or full of spaces.
	// + The program support OBS or DHFS to storage program file or package. For OBS, starts with (OBS:) **obs://** and end
	//   with **.jar** or **.py**. For DHFS, starts with (DHFS:) **/user**.
	ProgramPath pulumi.StringPtrOutput `pulumi:"programPath"`
	// Specifies the region in which to create the MapReduce job resource. If
	// omitted, the provider-level region will be used. Changing this will create a new MapReduce job resource.
	Region pulumi.StringOutput `pulumi:"region"`
	// Specifies the key/value pairs used to modify service configuration.
	// Parameter configurations of services are available on the Service Configuration tab page of MapReduce Manager.
	// Changing this will create a new MapReduce job resource.
	ServiceParameters pulumi.StringMapOutput `pulumi:"serviceParameters"`
	// Specifies the SQL command or file path. Only required if `type` is **HiveSql**
	// or **SparkSql**. Changing this will create a new MapReduce job resource.
	Sql pulumi.StringPtrOutput `pulumi:"sql"`
	// The creation time of the MapReduce job.
	StartTime pulumi.StringOutput `pulumi:"startTime"`
	// Status of the MapReduce job.
	Status pulumi.StringOutput `pulumi:"status"`
	// The submission time of the MapReduce job.
	SubmitTime pulumi.StringOutput `pulumi:"submitTime"`
	// Specifies the job type.
	// <a name="mapreduceJobType"></a>
	// The valid values are as follows:
	// + [Flink](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0527.html)
	// + [HiveSql](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0525.html)
	// + [HiveScript](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0525.html)
	// + [MapReduce](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0052.html)
	// + [SparkSubmit](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0524.html)
	// + [SparkSql](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0526.html)
	// + [SparkScript](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0526.html)
	Type pulumi.StringOutput `pulumi:"type"`
}

Manage a job resource within HuaweiCloud MRS.

## Example Usage

```go package main

import (

"fmt"

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Mrs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		clusterId := cfg.RequireObject("clusterId")
		jobName := cfg.RequireObject("jobName")
		programPath := cfg.RequireObject("programPath")
		accessKey := cfg.RequireObject("accessKey")
		secretKey := cfg.RequireObject("secretKey")
		_, err := Mrs.NewJob(ctx, "test", &Mrs.JobArgs{
			ClusterId:   pulumi.Any(clusterId),
			Type:        pulumi.String("SparkSubmit"),
			ProgramPath: pulumi.Any(programPath),
			Parameters:  pulumi.String(fmt.Sprintf("%v %v 1 obs://obs-demo-analysis/input obs://obs-demo-analysis/output", accessKey, secretKey)),
			ProgramParameters: pulumi.StringMap{
				"--class": pulumi.String("com.huawei.bigdata.spark.examples.DriverBehavior"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MapReduce jobs can be imported using their `id` and the IDs of the MapReduce cluster to which the job belongs, separated by a slash, e.g. bash

```sh

$ pulumi import huaweicloud:Mrs/job:Job test <cluster_id>/<id>

```

func GetJob

func GetJob(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *JobState, opts ...pulumi.ResourceOption) (*Job, error)

GetJob gets an existing Job resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewJob

func NewJob(ctx *pulumi.Context,
	name string, args *JobArgs, opts ...pulumi.ResourceOption) (*Job, error)

NewJob registers a new resource with the given unique name, arguments, and options.

func (*Job) ElementType

func (*Job) ElementType() reflect.Type

func (*Job) ToJobOutput

func (i *Job) ToJobOutput() JobOutput

func (*Job) ToJobOutputWithContext

func (i *Job) ToJobOutputWithContext(ctx context.Context) JobOutput

type JobArgs

type JobArgs struct {
	// Specifies an ID of the MapReduce cluster to which the job belongs to.
	// Changing this will create a new MapReduce job resource.
	ClusterId pulumi.StringInput
	// Specifies the name of the MapReduce job. The name can contain 1 to 64
	// characters, which may consist of letters, digits, underscores (_) and hyphens (-). Changing this will create a new
	// MapReduce job resource.
	Name pulumi.StringPtrInput
	// Specifies the parameters for the MapReduce job. Add an at sign (@) before
	// each parameter can prevent the parameters being saved in plaintext format. Each parameters are separated with spaces.
	// This parameter can be set when `type` is **Flink**, **MapReduce** or **SparkSubmit**. Changing this will create a new
	// MapReduce job resource.
	Parameters pulumi.StringPtrInput
	// Specifies the the key/value pairs of the program parameters, such as
	// thread, memory, and vCPUs, are used to optimize resource usage and improve job execution performance. This parameter
	// can be set when `type` is **Flink**, **SparkSubmit**, **SparkSql**, **SparkScript**, **HiveSql** or
	// **HiveScript**. Refer to the documents for each type of support key-values.
	// Changing this will create a new MapReduce job resource.
	ProgramParameters pulumi.StringMapInput
	// Specifies the .jar package path or .py file path for program execution.
	// The parameter must meet the following requirements:
	// + Contains a maximum of 1023 characters, excluding special characters such as `;|&><'$`.
	// + The address cannot be empty or full of spaces.
	// + The program support OBS or DHFS to storage program file or package. For OBS, starts with (OBS:) **obs://** and end
	//   with **.jar** or **.py**. For DHFS, starts with (DHFS:) **/user**.
	ProgramPath pulumi.StringPtrInput
	// Specifies the region in which to create the MapReduce job resource. If
	// omitted, the provider-level region will be used. Changing this will create a new MapReduce job resource.
	Region pulumi.StringPtrInput
	// Specifies the key/value pairs used to modify service configuration.
	// Parameter configurations of services are available on the Service Configuration tab page of MapReduce Manager.
	// Changing this will create a new MapReduce job resource.
	ServiceParameters pulumi.StringMapInput
	// Specifies the SQL command or file path. Only required if `type` is **HiveSql**
	// or **SparkSql**. Changing this will create a new MapReduce job resource.
	Sql pulumi.StringPtrInput
	// Specifies the job type.
	// <a name="mapreduceJobType"></a>
	// The valid values are as follows:
	// + [Flink](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0527.html)
	// + [HiveSql](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0525.html)
	// + [HiveScript](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0525.html)
	// + [MapReduce](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0052.html)
	// + [SparkSubmit](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0524.html)
	// + [SparkSql](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0526.html)
	// + [SparkScript](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0526.html)
	Type pulumi.StringInput
}

The set of arguments for constructing a Job resource.

func (JobArgs) ElementType

func (JobArgs) ElementType() reflect.Type

type JobArray

type JobArray []JobInput

func (JobArray) ElementType

func (JobArray) ElementType() reflect.Type

func (JobArray) ToJobArrayOutput

func (i JobArray) ToJobArrayOutput() JobArrayOutput

func (JobArray) ToJobArrayOutputWithContext

func (i JobArray) ToJobArrayOutputWithContext(ctx context.Context) JobArrayOutput

type JobArrayInput

type JobArrayInput interface {
	pulumi.Input

	ToJobArrayOutput() JobArrayOutput
	ToJobArrayOutputWithContext(context.Context) JobArrayOutput
}

JobArrayInput is an input type that accepts JobArray and JobArrayOutput values. You can construct a concrete instance of `JobArrayInput` via:

JobArray{ JobArgs{...} }

type JobArrayOutput

type JobArrayOutput struct{ *pulumi.OutputState }

func (JobArrayOutput) ElementType

func (JobArrayOutput) ElementType() reflect.Type

func (JobArrayOutput) Index

func (JobArrayOutput) ToJobArrayOutput

func (o JobArrayOutput) ToJobArrayOutput() JobArrayOutput

func (JobArrayOutput) ToJobArrayOutputWithContext

func (o JobArrayOutput) ToJobArrayOutputWithContext(ctx context.Context) JobArrayOutput

type JobInput

type JobInput interface {
	pulumi.Input

	ToJobOutput() JobOutput
	ToJobOutputWithContext(ctx context.Context) JobOutput
}

type JobMap

type JobMap map[string]JobInput

func (JobMap) ElementType

func (JobMap) ElementType() reflect.Type

func (JobMap) ToJobMapOutput

func (i JobMap) ToJobMapOutput() JobMapOutput

func (JobMap) ToJobMapOutputWithContext

func (i JobMap) ToJobMapOutputWithContext(ctx context.Context) JobMapOutput

type JobMapInput

type JobMapInput interface {
	pulumi.Input

	ToJobMapOutput() JobMapOutput
	ToJobMapOutputWithContext(context.Context) JobMapOutput
}

JobMapInput is an input type that accepts JobMap and JobMapOutput values. You can construct a concrete instance of `JobMapInput` via:

JobMap{ "key": JobArgs{...} }

type JobMapOutput

type JobMapOutput struct{ *pulumi.OutputState }

func (JobMapOutput) ElementType

func (JobMapOutput) ElementType() reflect.Type

func (JobMapOutput) MapIndex

func (o JobMapOutput) MapIndex(k pulumi.StringInput) JobOutput

func (JobMapOutput) ToJobMapOutput

func (o JobMapOutput) ToJobMapOutput() JobMapOutput

func (JobMapOutput) ToJobMapOutputWithContext

func (o JobMapOutput) ToJobMapOutputWithContext(ctx context.Context) JobMapOutput

type JobOutput

type JobOutput struct{ *pulumi.OutputState }

func (JobOutput) ClusterId

func (o JobOutput) ClusterId() pulumi.StringOutput

Specifies an ID of the MapReduce cluster to which the job belongs to. Changing this will create a new MapReduce job resource.

func (JobOutput) ElementType

func (JobOutput) ElementType() reflect.Type

func (JobOutput) FinishTime

func (o JobOutput) FinishTime() pulumi.StringOutput

The completion time of the MapReduce job.

func (JobOutput) Name

func (o JobOutput) Name() pulumi.StringOutput

Specifies the name of the MapReduce job. The name can contain 1 to 64 characters, which may consist of letters, digits, underscores (_) and hyphens (-). Changing this will create a new MapReduce job resource.

func (JobOutput) Parameters

func (o JobOutput) Parameters() pulumi.StringPtrOutput

Specifies the parameters for the MapReduce job. Add an at sign (@) before each parameter can prevent the parameters being saved in plaintext format. Each parameters are separated with spaces. This parameter can be set when `type` is **Flink**, **MapReduce** or **SparkSubmit**. Changing this will create a new MapReduce job resource.

func (JobOutput) ProgramParameters

func (o JobOutput) ProgramParameters() pulumi.StringMapOutput

Specifies the the key/value pairs of the program parameters, such as thread, memory, and vCPUs, are used to optimize resource usage and improve job execution performance. This parameter can be set when `type` is **Flink**, **SparkSubmit**, **SparkSql**, **SparkScript**, **HiveSql** or **HiveScript**. Refer to the documents for each type of support key-values. Changing this will create a new MapReduce job resource.

func (JobOutput) ProgramPath

func (o JobOutput) ProgramPath() pulumi.StringPtrOutput

Specifies the .jar package path or .py file path for program execution. The parameter must meet the following requirements:

  • Contains a maximum of 1023 characters, excluding special characters such as `;|&><'$`.
  • The address cannot be empty or full of spaces.
  • The program support OBS or DHFS to storage program file or package. For OBS, starts with (OBS:) **obs://** and end with **.jar** or **.py**. For DHFS, starts with (DHFS:) **/user**.

func (JobOutput) Region

func (o JobOutput) Region() pulumi.StringOutput

Specifies the region in which to create the MapReduce job resource. If omitted, the provider-level region will be used. Changing this will create a new MapReduce job resource.

func (JobOutput) ServiceParameters

func (o JobOutput) ServiceParameters() pulumi.StringMapOutput

Specifies the key/value pairs used to modify service configuration. Parameter configurations of services are available on the Service Configuration tab page of MapReduce Manager. Changing this will create a new MapReduce job resource.

func (JobOutput) Sql

Specifies the SQL command or file path. Only required if `type` is **HiveSql** or **SparkSql**. Changing this will create a new MapReduce job resource.

func (JobOutput) StartTime

func (o JobOutput) StartTime() pulumi.StringOutput

The creation time of the MapReduce job.

func (JobOutput) Status

func (o JobOutput) Status() pulumi.StringOutput

Status of the MapReduce job.

func (JobOutput) SubmitTime

func (o JobOutput) SubmitTime() pulumi.StringOutput

The submission time of the MapReduce job.

func (JobOutput) ToJobOutput

func (o JobOutput) ToJobOutput() JobOutput

func (JobOutput) ToJobOutputWithContext

func (o JobOutput) ToJobOutputWithContext(ctx context.Context) JobOutput

type JobState

type JobState struct {
	// Specifies an ID of the MapReduce cluster to which the job belongs to.
	// Changing this will create a new MapReduce job resource.
	ClusterId pulumi.StringPtrInput
	// The completion time of the MapReduce job.
	FinishTime pulumi.StringPtrInput
	// Specifies the name of the MapReduce job. The name can contain 1 to 64
	// characters, which may consist of letters, digits, underscores (_) and hyphens (-). Changing this will create a new
	// MapReduce job resource.
	Name pulumi.StringPtrInput
	// Specifies the parameters for the MapReduce job. Add an at sign (@) before
	// each parameter can prevent the parameters being saved in plaintext format. Each parameters are separated with spaces.
	// This parameter can be set when `type` is **Flink**, **MapReduce** or **SparkSubmit**. Changing this will create a new
	// MapReduce job resource.
	Parameters pulumi.StringPtrInput
	// Specifies the the key/value pairs of the program parameters, such as
	// thread, memory, and vCPUs, are used to optimize resource usage and improve job execution performance. This parameter
	// can be set when `type` is **Flink**, **SparkSubmit**, **SparkSql**, **SparkScript**, **HiveSql** or
	// **HiveScript**. Refer to the documents for each type of support key-values.
	// Changing this will create a new MapReduce job resource.
	ProgramParameters pulumi.StringMapInput
	// Specifies the .jar package path or .py file path for program execution.
	// The parameter must meet the following requirements:
	// + Contains a maximum of 1023 characters, excluding special characters such as `;|&><'$`.
	// + The address cannot be empty or full of spaces.
	// + The program support OBS or DHFS to storage program file or package. For OBS, starts with (OBS:) **obs://** and end
	//   with **.jar** or **.py**. For DHFS, starts with (DHFS:) **/user**.
	ProgramPath pulumi.StringPtrInput
	// Specifies the region in which to create the MapReduce job resource. If
	// omitted, the provider-level region will be used. Changing this will create a new MapReduce job resource.
	Region pulumi.StringPtrInput
	// Specifies the key/value pairs used to modify service configuration.
	// Parameter configurations of services are available on the Service Configuration tab page of MapReduce Manager.
	// Changing this will create a new MapReduce job resource.
	ServiceParameters pulumi.StringMapInput
	// Specifies the SQL command or file path. Only required if `type` is **HiveSql**
	// or **SparkSql**. Changing this will create a new MapReduce job resource.
	Sql pulumi.StringPtrInput
	// The creation time of the MapReduce job.
	StartTime pulumi.StringPtrInput
	// Status of the MapReduce job.
	Status pulumi.StringPtrInput
	// The submission time of the MapReduce job.
	SubmitTime pulumi.StringPtrInput
	// Specifies the job type.
	// <a name="mapreduceJobType"></a>
	// The valid values are as follows:
	// + [Flink](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0527.html)
	// + [HiveSql](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0525.html)
	// + [HiveScript](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0525.html)
	// + [MapReduce](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0052.html)
	// + [SparkSubmit](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0524.html)
	// + [SparkSql](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0526.html)
	// + [SparkScript](https://support.huaweicloud.com/intl/en-us/usermanual-mrs/mrs_01_0526.html)
	Type pulumi.StringPtrInput
}

func (JobState) ElementType

func (JobState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL