Try AWS Native preview for resources not in the classic version.
aws.emr.getSupportedInstanceTypes
Explore with Pulumi AI
Try AWS Native preview for resources not in the classic version.
Data source for managing AWS EMR Supported Instance Types.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = aws.emr.getSupportedInstanceTypes({
releaseLabel: "ebs-6.15.0",
});
import pulumi
import pulumi_aws as aws
example = aws.emr.get_supported_instance_types(release_label="ebs-6.15.0")
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/emr"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := emr.GetSupportedInstanceTypes(ctx, &emr.GetSupportedInstanceTypesArgs{
ReleaseLabel: "ebs-6.15.0",
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = Aws.Emr.GetSupportedInstanceTypes.Invoke(new()
{
ReleaseLabel = "ebs-6.15.0",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.emr.EmrFunctions;
import com.pulumi.aws.emr.inputs.GetSupportedInstanceTypesArgs;
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 example = EmrFunctions.getSupportedInstanceTypes(GetSupportedInstanceTypesArgs.builder()
.releaseLabel("ebs-6.15.0")
.build());
}
}
variables:
example:
fn::invoke:
Function: aws:emr:getSupportedInstanceTypes
Arguments:
releaseLabel: ebs-6.15.0
With a Lifecycle Pre-Condition
This data source can be used with a lifecycle precondition to ensure a given instance type is supported by EMR.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const instanceType = "r7g.large";
const releaseLabel = "emr-6.15.0";
const test = aws.emr.getSupportedInstanceTypes({
releaseLabel: releaseLabel,
});
const testCluster = new aws.emr.Cluster("test", {
releaseLabel: releaseLabel,
masterInstanceGroup: {
instanceType: instanceType,
},
});
import pulumi
import pulumi_aws as aws
instance_type = "r7g.large"
release_label = "emr-6.15.0"
test = aws.emr.get_supported_instance_types(release_label=release_label)
test_cluster = aws.emr.Cluster("test",
release_label=release_label,
master_instance_group={
"instanceType": instance_type,
})
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/emr"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
instanceType := "r7g.large"
releaseLabel := "emr-6.15.0"
_, err := emr.GetSupportedInstanceTypes(ctx, &emr.GetSupportedInstanceTypesArgs{
ReleaseLabel: releaseLabel,
}, nil)
if err != nil {
return err
}
_, err = emr.NewCluster(ctx, "test", &emr.ClusterArgs{
ReleaseLabel: pulumi.String(releaseLabel),
MasterInstanceGroup: &emr.ClusterMasterInstanceGroupArgs{
InstanceType: pulumi.String(instanceType),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var instanceType = "r7g.large";
var releaseLabel = "emr-6.15.0";
var test = Aws.Emr.GetSupportedInstanceTypes.Invoke(new()
{
ReleaseLabel = releaseLabel,
});
var testCluster = new Aws.Emr.Cluster("test", new()
{
ReleaseLabel = releaseLabel,
MasterInstanceGroup = new Aws.Emr.Inputs.ClusterMasterInstanceGroupArgs
{
InstanceType = instanceType,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.emr.EmrFunctions;
import com.pulumi.aws.emr.inputs.GetSupportedInstanceTypesArgs;
import com.pulumi.aws.emr.Cluster;
import com.pulumi.aws.emr.ClusterArgs;
import com.pulumi.aws.emr.inputs.ClusterMasterInstanceGroupArgs;
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 instanceType = "r7g.large";
final var releaseLabel = "emr-6.15.0";
final var test = EmrFunctions.getSupportedInstanceTypes(GetSupportedInstanceTypesArgs.builder()
.releaseLabel(releaseLabel)
.build());
var testCluster = new Cluster("testCluster", ClusterArgs.builder()
.releaseLabel(releaseLabel)
.masterInstanceGroup(ClusterMasterInstanceGroupArgs.builder()
.instanceType(instanceType)
.build())
.build());
}
}
resources:
testCluster:
type: aws:emr:Cluster
name: test
properties:
releaseLabel: ${releaseLabel}
masterInstanceGroup:
instanceType: ${instanceType}
variables:
instanceType: r7g.large
releaseLabel: emr-6.15.0
test:
fn::invoke:
Function: aws:emr:getSupportedInstanceTypes
Arguments:
releaseLabel: ${releaseLabel}
Using getSupportedInstanceTypes
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 getSupportedInstanceTypes(args: GetSupportedInstanceTypesArgs, opts?: InvokeOptions): Promise<GetSupportedInstanceTypesResult>
function getSupportedInstanceTypesOutput(args: GetSupportedInstanceTypesOutputArgs, opts?: InvokeOptions): Output<GetSupportedInstanceTypesResult>
def get_supported_instance_types(release_label: Optional[str] = None,
supported_instance_types: Optional[Sequence[GetSupportedInstanceTypesSupportedInstanceType]] = None,
opts: Optional[InvokeOptions] = None) -> GetSupportedInstanceTypesResult
def get_supported_instance_types_output(release_label: Optional[pulumi.Input[str]] = None,
supported_instance_types: Optional[pulumi.Input[Sequence[pulumi.Input[GetSupportedInstanceTypesSupportedInstanceTypeArgs]]]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetSupportedInstanceTypesResult]
func GetSupportedInstanceTypes(ctx *Context, args *GetSupportedInstanceTypesArgs, opts ...InvokeOption) (*GetSupportedInstanceTypesResult, error)
func GetSupportedInstanceTypesOutput(ctx *Context, args *GetSupportedInstanceTypesOutputArgs, opts ...InvokeOption) GetSupportedInstanceTypesResultOutput
> Note: This function is named GetSupportedInstanceTypes
in the Go SDK.
public static class GetSupportedInstanceTypes
{
public static Task<GetSupportedInstanceTypesResult> InvokeAsync(GetSupportedInstanceTypesArgs args, InvokeOptions? opts = null)
public static Output<GetSupportedInstanceTypesResult> Invoke(GetSupportedInstanceTypesInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetSupportedInstanceTypesResult> getSupportedInstanceTypes(GetSupportedInstanceTypesArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
function: aws:emr/getSupportedInstanceTypes:getSupportedInstanceTypes
arguments:
# arguments dictionary
The following arguments are supported:
- Release
Label string - Amazon EMR release label. For more information about Amazon EMR releases and their included application versions and features, see the Amazon EMR Release Guide.
- Supported
Instance List<GetTypes Supported Instance Types Supported Instance Type> - List of supported instance types. See
supported_instance_types
below.
- Release
Label string - Amazon EMR release label. For more information about Amazon EMR releases and their included application versions and features, see the Amazon EMR Release Guide.
- Supported
Instance []GetTypes Supported Instance Types Supported Instance Type - List of supported instance types. See
supported_instance_types
below.
- release
Label String - Amazon EMR release label. For more information about Amazon EMR releases and their included application versions and features, see the Amazon EMR Release Guide.
- supported
Instance List<GetTypes Supported Instance Types Supported Instance Type> - List of supported instance types. See
supported_instance_types
below.
- release
Label string - Amazon EMR release label. For more information about Amazon EMR releases and their included application versions and features, see the Amazon EMR Release Guide.
- supported
Instance GetTypes Supported Instance Types Supported Instance Type[] - List of supported instance types. See
supported_instance_types
below.
- release_
label str - Amazon EMR release label. For more information about Amazon EMR releases and their included application versions and features, see the Amazon EMR Release Guide.
- supported_
instance_ Sequence[Gettypes Supported Instance Types Supported Instance Type] - List of supported instance types. See
supported_instance_types
below.
- release
Label String - Amazon EMR release label. For more information about Amazon EMR releases and their included application versions and features, see the Amazon EMR Release Guide.
- supported
Instance List<Property Map>Types - List of supported instance types. See
supported_instance_types
below.
getSupportedInstanceTypes Result
The following output properties are available:
- Id string
- Release
Label string - Supported
Instance List<GetTypes Supported Instance Types Supported Instance Type> - List of supported instance types. See
supported_instance_types
below.
- Id string
- Release
Label string - Supported
Instance []GetTypes Supported Instance Types Supported Instance Type - List of supported instance types. See
supported_instance_types
below.
- id String
- release
Label String - supported
Instance List<GetTypes Supported Instance Types Supported Instance Type> - List of supported instance types. See
supported_instance_types
below.
- id string
- release
Label string - supported
Instance GetTypes Supported Instance Types Supported Instance Type[] - List of supported instance types. See
supported_instance_types
below.
- id str
- release_
label str - supported_
instance_ Sequence[Gettypes Supported Instance Types Supported Instance Type] - List of supported instance types. See
supported_instance_types
below.
- id String
- release
Label String - supported
Instance List<Property Map>Types - List of supported instance types. See
supported_instance_types
below.
Supporting Types
GetSupportedInstanceTypesSupportedInstanceType
- Architecture string
- CPU architecture.
- Ebs
Optimized boolAvailable - Indicates whether the instance type supports Amazon EBS optimization.
- Ebs
Optimized boolBy Default - Indicates whether the instance type uses Amazon EBS optimization by default.
- Ebs
Storage boolOnly - Indicates whether the instance type only supports Amazon EBS.
- Instance
Family stringId - The Amazon EC2 family and generation for the instance type.
- Is64Bits
Only bool - Indicates whether the instance type only supports 64-bit architecture.
- Memory
Gb double - Memory that is available to Amazon EMR from the instance type.
- Number
Of intDisks - Number of disks for the instance type.
- Storage
Gb int - Storage capacity of the instance type.
- Type string
- Amazon EC2 instance type. For example,
m5.xlarge
. - Vcpu int
- The number of vCPUs available for the instance type.
- Architecture string
- CPU architecture.
- Ebs
Optimized boolAvailable - Indicates whether the instance type supports Amazon EBS optimization.
- Ebs
Optimized boolBy Default - Indicates whether the instance type uses Amazon EBS optimization by default.
- Ebs
Storage boolOnly - Indicates whether the instance type only supports Amazon EBS.
- Instance
Family stringId - The Amazon EC2 family and generation for the instance type.
- Is64Bits
Only bool - Indicates whether the instance type only supports 64-bit architecture.
- Memory
Gb float64 - Memory that is available to Amazon EMR from the instance type.
- Number
Of intDisks - Number of disks for the instance type.
- Storage
Gb int - Storage capacity of the instance type.
- Type string
- Amazon EC2 instance type. For example,
m5.xlarge
. - Vcpu int
- The number of vCPUs available for the instance type.
- architecture String
- CPU architecture.
- ebs
Optimized BooleanAvailable - Indicates whether the instance type supports Amazon EBS optimization.
- ebs
Optimized BooleanBy Default - Indicates whether the instance type uses Amazon EBS optimization by default.
- ebs
Storage BooleanOnly - Indicates whether the instance type only supports Amazon EBS.
- instance
Family StringId - The Amazon EC2 family and generation for the instance type.
- is64Bits
Only Boolean - Indicates whether the instance type only supports 64-bit architecture.
- memory
Gb Double - Memory that is available to Amazon EMR from the instance type.
- number
Of IntegerDisks - Number of disks for the instance type.
- storage
Gb Integer - Storage capacity of the instance type.
- type String
- Amazon EC2 instance type. For example,
m5.xlarge
. - vcpu Integer
- The number of vCPUs available for the instance type.
- architecture string
- CPU architecture.
- ebs
Optimized booleanAvailable - Indicates whether the instance type supports Amazon EBS optimization.
- ebs
Optimized booleanBy Default - Indicates whether the instance type uses Amazon EBS optimization by default.
- ebs
Storage booleanOnly - Indicates whether the instance type only supports Amazon EBS.
- instance
Family stringId - The Amazon EC2 family and generation for the instance type.
- is64Bits
Only boolean - Indicates whether the instance type only supports 64-bit architecture.
- memory
Gb number - Memory that is available to Amazon EMR from the instance type.
- number
Of numberDisks - Number of disks for the instance type.
- storage
Gb number - Storage capacity of the instance type.
- type string
- Amazon EC2 instance type. For example,
m5.xlarge
. - vcpu number
- The number of vCPUs available for the instance type.
- architecture str
- CPU architecture.
- ebs_
optimized_ boolavailable - Indicates whether the instance type supports Amazon EBS optimization.
- ebs_
optimized_ boolby_ default - Indicates whether the instance type uses Amazon EBS optimization by default.
- ebs_
storage_ boolonly - Indicates whether the instance type only supports Amazon EBS.
- instance_
family_ strid - The Amazon EC2 family and generation for the instance type.
- is64_
bits_ boolonly - Indicates whether the instance type only supports 64-bit architecture.
- memory_
gb float - Memory that is available to Amazon EMR from the instance type.
- number_
of_ intdisks - Number of disks for the instance type.
- storage_
gb int - Storage capacity of the instance type.
- type str
- Amazon EC2 instance type. For example,
m5.xlarge
. - vcpu int
- The number of vCPUs available for the instance type.
- architecture String
- CPU architecture.
- ebs
Optimized BooleanAvailable - Indicates whether the instance type supports Amazon EBS optimization.
- ebs
Optimized BooleanBy Default - Indicates whether the instance type uses Amazon EBS optimization by default.
- ebs
Storage BooleanOnly - Indicates whether the instance type only supports Amazon EBS.
- instance
Family StringId - The Amazon EC2 family and generation for the instance type.
- is64Bits
Only Boolean - Indicates whether the instance type only supports 64-bit architecture.
- memory
Gb Number - Memory that is available to Amazon EMR from the instance type.
- number
Of NumberDisks - Number of disks for the instance type.
- storage
Gb Number - Storage capacity of the instance type.
- type String
- Amazon EC2 instance type. For example,
m5.xlarge
. - vcpu Number
- The number of vCPUs available for the instance type.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.
Try AWS Native preview for resources not in the classic version.