Skip to content

Resource: awsEmrserverlessApplication

Manages an EMR Serverless Application.

Example Usage

Basic Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from "./.gen/providers/aws";
new aws.emrserverlessApplication.EmrserverlessApplication(this, "example", {
  name: "example",
  releaseLabel: "emr-6.6.0",
  type: "hive",
});

Initial Capacity Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from "./.gen/providers/aws";
new aws.emrserverlessApplication.EmrserverlessApplication(this, "example", {
  initialCapacity: [
    {
      initialCapacityConfig: {
        workerConfiguration: {
          cpu: "2 vCPU",
          memory: "10 GB",
        },
        workerCount: 1,
      },
      initialCapacityType: "HiveDriver",
    },
  ],
  name: "example",
  releaseLabel: "emr-6.6.0",
  type: "hive",
});

Maximum Capacity Usage

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from "./.gen/providers/aws";
new aws.emrserverlessApplication.EmrserverlessApplication(this, "example", {
  maximumCapacity: {
    cpu: "2 vCPU",
    memory: "10 GB",
  },
  name: "example",
  releaseLabel: "emr-6.6.0",
  type: "hive",
});

Argument Reference

The following arguments are required:

  • architecture – (Optional) The CPU architecture of an application. Valid values are arm64 or X86_64. Default value is X86_64.
  • autoStartConfiguration – (Optional) The configuration for an application to automatically start on job submission.
  • autoStopConfiguration – (Optional) The configuration for an application to automatically stop after a certain amount of time being idle.
  • initialCapacity – (Optional) The capacity to initialize when the application is created.
  • maximumCapacity – (Optional) The maximum capacity to allocate when the application is created. This is cumulative across all workers at any given point in time, not just when an application is created. No new resources will be created once any one of the defined limits is hit.
  • name – (Required) The name of the application.
  • networkConfiguration – (Optional) The network configuration for customer VPC connectivity.
  • releaseLabel – (Required) The EMR release version associated with the application.
  • type – (Required) The type of application you want to start, such as spark or hive.
  • tags - (Optional) Key-value mapping of resource tags. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

auto_start_configuration Arguments

  • enabled - (Optional) Enables the application to automatically start on job submission. Defaults to true.

auto_stop_configuration Arguments

  • enabled - (Optional) Enables the application to automatically stop after a certain amount of time being idle. Defaults to true.
  • idleTimeoutMinutes - (Optional) The amount of idle time in minutes after which your application will automatically stop. Defaults to 15 minutes.

initial_capacity Arguments

  • initialCapacityConfig - (Optional) The initial capacity configuration per worker.
  • initialCapacityType - (Required) The worker type for an analytics framework. For Spark applications, the key can either be set to driver or executor. For Hive applications, it can be set to hiveDriver or tezTask.

maximum_capacity Arguments

  • cpu - (Required) The maximum allowed CPU for an application.
  • disk - (Optional) The maximum allowed disk for an application.
  • memory - (Required) The maximum allowed resources for an application.

network_configuration Arguments

  • securityGroupIds - (Optional) The array of security group Ids for customer VPC connectivity.
  • subnetIds - (Optional) The array of subnet Ids for customer VPC connectivity.

initial_capacity_config Arguments

  • workerConfiguration - (Optional) The resource configuration of the initial capacity configuration.
  • workerCount - (Required) The number of workers in the initial capacity configuration.
worker_configuration Arguments
  • cpu - (Required) The CPU requirements for every worker instance of the worker type.
  • disk - (Optional) The disk requirements for every worker instance of the worker type.
  • memory - (Required) The memory requirements for every worker instance of the worker type.

Attributes Reference

In addition to all arguments above, the following attributes are exported:

  • arn - ARN of the cluster.
  • id - The ID of the cluster.
  • tagsAll - Map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.

Import

EMR Severless applications can be imported using the id, e.g.

$ terraform import aws_emrserverless_application.example id