Alibaba Cloud v3.57.1 published on Wednesday, Jun 26, 2024 by Pulumi
alicloud.emr.getInstanceTypes
Explore with Pulumi AI
The alicloud.emr.getInstanceTypes data source provides a collection of ecs
instance types available in Alibaba Cloud account when create a emr cluster.
NOTE: Available in 1.59.0+
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const default = alicloud.emr.getInstanceTypes({
    destinationResource: "InstanceType",
    instanceChargeType: "PostPaid",
    supportLocalStorage: false,
    clusterType: "HADOOP",
    instanceType: "ecs.g5.2xlarge",
    supportNodeTypes: [
        "MASTER",
        "CORE",
    ],
});
export const firstInstanceType = _default.then(_default => _default.types?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.emr.get_instance_types(destination_resource="InstanceType",
    instance_charge_type="PostPaid",
    support_local_storage=False,
    cluster_type="HADOOP",
    instance_type="ecs.g5.2xlarge",
    support_node_types=[
        "MASTER",
        "CORE",
    ])
pulumi.export("firstInstanceType", default.types[0].id)
package main
import (
	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/emr"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := emr.GetInstanceTypes(ctx, &emr.GetInstanceTypesArgs{
			DestinationResource: "InstanceType",
			InstanceChargeType:  "PostPaid",
			SupportLocalStorage: pulumi.BoolRef(false),
			ClusterType:         "HADOOP",
			InstanceType:        pulumi.StringRef("ecs.g5.2xlarge"),
			SupportNodeTypes: []string{
				"MASTER",
				"CORE",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstInstanceType", _default.Types[0].Id)
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() => 
{
    var @default = AliCloud.Emr.GetInstanceTypes.Invoke(new()
    {
        DestinationResource = "InstanceType",
        InstanceChargeType = "PostPaid",
        SupportLocalStorage = false,
        ClusterType = "HADOOP",
        InstanceType = "ecs.g5.2xlarge",
        SupportNodeTypes = new[]
        {
            "MASTER",
            "CORE",
        },
    });
    return new Dictionary<string, object?>
    {
        ["firstInstanceType"] = @default.Apply(@default => @default.Apply(getInstanceTypesResult => getInstanceTypesResult.Types[0]?.Id)),
    };
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.emr.EmrFunctions;
import com.pulumi.alicloud.emr.inputs.GetInstanceTypesArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var default = EmrFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()
            .destinationResource("InstanceType")
            .instanceChargeType("PostPaid")
            .supportLocalStorage(false)
            .clusterType("HADOOP")
            .instanceType("ecs.g5.2xlarge")
            .supportNodeTypes(            
                "MASTER",
                "CORE")
            .build());
        ctx.export("firstInstanceType", default_.types()[0].id());
    }
}
variables:
  default:
    fn::invoke:
      Function: alicloud:emr:getInstanceTypes
      Arguments:
        destinationResource: InstanceType
        instanceChargeType: PostPaid
        supportLocalStorage: false
        clusterType: HADOOP
        instanceType: ecs.g5.2xlarge
        supportNodeTypes:
          - MASTER
          - CORE
outputs:
  firstInstanceType: ${default.types[0].id}
Using getInstanceTypes
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getInstanceTypes(args: GetInstanceTypesArgs, opts?: InvokeOptions): Promise<GetInstanceTypesResult>
function getInstanceTypesOutput(args: GetInstanceTypesOutputArgs, opts?: InvokeOptions): Output<GetInstanceTypesResult>def get_instance_types(cluster_type: Optional[str] = None,
                       destination_resource: Optional[str] = None,
                       instance_charge_type: Optional[str] = None,
                       instance_type: Optional[str] = None,
                       output_file: Optional[str] = None,
                       support_local_storage: Optional[bool] = None,
                       support_node_types: Optional[Sequence[str]] = None,
                       zone_id: Optional[str] = None,
                       opts: Optional[InvokeOptions] = None) -> GetInstanceTypesResult
def get_instance_types_output(cluster_type: Optional[pulumi.Input[str]] = None,
                       destination_resource: Optional[pulumi.Input[str]] = None,
                       instance_charge_type: Optional[pulumi.Input[str]] = None,
                       instance_type: Optional[pulumi.Input[str]] = None,
                       output_file: Optional[pulumi.Input[str]] = None,
                       support_local_storage: Optional[pulumi.Input[bool]] = None,
                       support_node_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                       zone_id: Optional[pulumi.Input[str]] = None,
                       opts: Optional[InvokeOptions] = None) -> Output[GetInstanceTypesResult]func GetInstanceTypes(ctx *Context, args *GetInstanceTypesArgs, opts ...InvokeOption) (*GetInstanceTypesResult, error)
func GetInstanceTypesOutput(ctx *Context, args *GetInstanceTypesOutputArgs, opts ...InvokeOption) GetInstanceTypesResultOutput> Note: This function is named GetInstanceTypes in the Go SDK.
public static class GetInstanceTypes 
{
    public static Task<GetInstanceTypesResult> InvokeAsync(GetInstanceTypesArgs args, InvokeOptions? opts = null)
    public static Output<GetInstanceTypesResult> Invoke(GetInstanceTypesInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetInstanceTypesResult> getInstanceTypes(GetInstanceTypesArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: alicloud:emr/getInstanceTypes:getInstanceTypes
  arguments:
    # arguments dictionaryThe following arguments are supported:
- Cluster
Type string - The cluster type of the emr cluster instance. Possible values: 
HADOOP,KAFKA,ZOOKEEPER,DRUID. - Destination
Resource string - The destination resource of emr cluster instance
 - Instance
Charge stringType  - Filter the results by charge type. Valid values: 
PrePaidandPostPaid. Default toPostPaid. - Instance
Type string - Filter the specific ecs instance type to create emr cluster.
 - Output
File string - File name where to save data source results (after running 
pulumi preview). - Support
Local boolStorage  - Whether the current storage disk is local or not.
 - Support
Node List<string>Types  - The specific supported node type list. Possible values may be any one or combination of these: ["MASTER", "CORE", "TASK", "GATEWAY"]
 - Zone
Id string - The supported resources of specific zoneId.
 
- Cluster
Type string - The cluster type of the emr cluster instance. Possible values: 
HADOOP,KAFKA,ZOOKEEPER,DRUID. - Destination
Resource string - The destination resource of emr cluster instance
 - Instance
Charge stringType  - Filter the results by charge type. Valid values: 
PrePaidandPostPaid. Default toPostPaid. - Instance
Type string - Filter the specific ecs instance type to create emr cluster.
 - Output
File string - File name where to save data source results (after running 
pulumi preview). - Support
Local boolStorage  - Whether the current storage disk is local or not.
 - Support
Node []stringTypes  - The specific supported node type list. Possible values may be any one or combination of these: ["MASTER", "CORE", "TASK", "GATEWAY"]
 - Zone
Id string - The supported resources of specific zoneId.
 
- cluster
Type String - The cluster type of the emr cluster instance. Possible values: 
HADOOP,KAFKA,ZOOKEEPER,DRUID. - destination
Resource String - The destination resource of emr cluster instance
 - instance
Charge StringType  - Filter the results by charge type. Valid values: 
PrePaidandPostPaid. Default toPostPaid. - instance
Type String - Filter the specific ecs instance type to create emr cluster.
 - output
File String - File name where to save data source results (after running 
pulumi preview). - support
Local BooleanStorage  - Whether the current storage disk is local or not.
 - support
Node List<String>Types  - The specific supported node type list. Possible values may be any one or combination of these: ["MASTER", "CORE", "TASK", "GATEWAY"]
 - zone
Id String - The supported resources of specific zoneId.
 
- cluster
Type string - The cluster type of the emr cluster instance. Possible values: 
HADOOP,KAFKA,ZOOKEEPER,DRUID. - destination
Resource string - The destination resource of emr cluster instance
 - instance
Charge stringType  - Filter the results by charge type. Valid values: 
PrePaidandPostPaid. Default toPostPaid. - instance
Type string - Filter the specific ecs instance type to create emr cluster.
 - output
File string - File name where to save data source results (after running 
pulumi preview). - support
Local booleanStorage  - Whether the current storage disk is local or not.
 - support
Node string[]Types  - The specific supported node type list. Possible values may be any one or combination of these: ["MASTER", "CORE", "TASK", "GATEWAY"]
 - zone
Id string - The supported resources of specific zoneId.
 
- cluster_
type str - The cluster type of the emr cluster instance. Possible values: 
HADOOP,KAFKA,ZOOKEEPER,DRUID. - destination_
resource str - The destination resource of emr cluster instance
 - instance_
charge_ strtype  - Filter the results by charge type. Valid values: 
PrePaidandPostPaid. Default toPostPaid. - instance_
type str - Filter the specific ecs instance type to create emr cluster.
 - output_
file str - File name where to save data source results (after running 
pulumi preview). - support_
local_ boolstorage  - Whether the current storage disk is local or not.
 - support_
node_ Sequence[str]types  - The specific supported node type list. Possible values may be any one or combination of these: ["MASTER", "CORE", "TASK", "GATEWAY"]
 - zone_
id str - The supported resources of specific zoneId.
 
- cluster
Type String - The cluster type of the emr cluster instance. Possible values: 
HADOOP,KAFKA,ZOOKEEPER,DRUID. - destination
Resource String - The destination resource of emr cluster instance
 - instance
Charge StringType  - Filter the results by charge type. Valid values: 
PrePaidandPostPaid. Default toPostPaid. - instance
Type String - Filter the specific ecs instance type to create emr cluster.
 - output
File String - File name where to save data source results (after running 
pulumi preview). - support
Local BooleanStorage  - Whether the current storage disk is local or not.
 - support
Node List<String>Types  - The specific supported node type list. Possible values may be any one or combination of these: ["MASTER", "CORE", "TASK", "GATEWAY"]
 - zone
Id String - The supported resources of specific zoneId.
 
getInstanceTypes Result
The following output properties are available:
- Cluster
Type string - Destination
Resource string - Id string
 - The provider-assigned unique ID for this managed resource.
 - Ids List<string>
 - A list of emr instance types IDs.
 - Instance
Charge stringType  - Types
List<Pulumi.
Ali Cloud. Emr. Outputs. Get Instance Types Type>  - A list of emr instance types. Each element contains the following attributes:
 - Instance
Type string - Output
File string - Support
Local boolStorage  - Support
Node List<string>Types  - Zone
Id string - The available zone id in Alibaba Cloud account
 
- Cluster
Type string - Destination
Resource string - Id string
 - The provider-assigned unique ID for this managed resource.
 - Ids []string
 - A list of emr instance types IDs.
 - Instance
Charge stringType  - Types
[]Get
Instance Types Type  - A list of emr instance types. Each element contains the following attributes:
 - Instance
Type string - Output
File string - Support
Local boolStorage  - Support
Node []stringTypes  - Zone
Id string - The available zone id in Alibaba Cloud account
 
- cluster
Type String - destination
Resource String - id String
 - The provider-assigned unique ID for this managed resource.
 - ids List<String>
 - A list of emr instance types IDs.
 - instance
Charge StringType  - types
List<Get
Instance Types Type>  - A list of emr instance types. Each element contains the following attributes:
 - instance
Type String - output
File String - support
Local BooleanStorage  - support
Node List<String>Types  - zone
Id String - The available zone id in Alibaba Cloud account
 
- cluster
Type string - destination
Resource string - id string
 - The provider-assigned unique ID for this managed resource.
 - ids string[]
 - A list of emr instance types IDs.
 - instance
Charge stringType  - types
Get
Instance Types Type[]  - A list of emr instance types. Each element contains the following attributes:
 - instance
Type string - output
File string - support
Local booleanStorage  - support
Node string[]Types  - zone
Id string - The available zone id in Alibaba Cloud account
 
- cluster_
type str - destination_
resource str - id str
 - The provider-assigned unique ID for this managed resource.
 - ids Sequence[str]
 - A list of emr instance types IDs.
 - instance_
charge_ strtype  - types
Sequence[Get
Instance Types Type]  - A list of emr instance types. Each element contains the following attributes:
 - instance_
type str - output_
file str - support_
local_ boolstorage  - support_
node_ Sequence[str]types  - zone_
id str - The available zone id in Alibaba Cloud account
 
- cluster
Type String - destination
Resource String - id String
 - The provider-assigned unique ID for this managed resource.
 - ids List<String>
 - A list of emr instance types IDs.
 - instance
Charge StringType  - types List<Property Map>
 - A list of emr instance types. Each element contains the following attributes:
 - instance
Type String - output
File String - support
Local BooleanStorage  - support
Node List<String>Types  - zone
Id String - The available zone id in Alibaba Cloud account
 
Supporting Types
GetInstanceTypesType   
- Id string
 - The ID of the instance type.
 - Local
Storage intCapacity  - Local capacity of the applied ecs instance for emr cluster. Unit: GB.
 - Zone
Id string - The supported resources of specific zoneId.
 
- Id string
 - The ID of the instance type.
 - Local
Storage intCapacity  - Local capacity of the applied ecs instance for emr cluster. Unit: GB.
 - Zone
Id string - The supported resources of specific zoneId.
 
- id String
 - The ID of the instance type.
 - local
Storage IntegerCapacity  - Local capacity of the applied ecs instance for emr cluster. Unit: GB.
 - zone
Id String - The supported resources of specific zoneId.
 
- id string
 - The ID of the instance type.
 - local
Storage numberCapacity  - Local capacity of the applied ecs instance for emr cluster. Unit: GB.
 - zone
Id string - The supported resources of specific zoneId.
 
- id str
 - The ID of the instance type.
 - local_
storage_ intcapacity  - Local capacity of the applied ecs instance for emr cluster. Unit: GB.
 - zone_
id str - The supported resources of specific zoneId.
 
- id String
 - The ID of the instance type.
 - local
Storage NumberCapacity  - Local capacity of the applied ecs instance for emr cluster. Unit: GB.
 - zone
Id String - The supported resources of specific zoneId.
 
Package Details
- Repository
 - Alibaba Cloud pulumi/pulumi-alicloud
 - License
 - Apache-2.0
 - Notes
 - This Pulumi package is based on the 
alicloudTerraform Provider.