---
title: Getting Started with Datadog
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > Infrastructure > Datadog Resource Catalog
---

# aws_emr_cluster{% #aws_emr_cluster %}

## `account_id`{% #account_id %}

**Type**: `STRING`

## `applications`{% #applications %}

**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `Applications`**Description**: The applications installed on this cluster.

- `additional_info`**Type**: `MAP_STRING_STRING`**Provider name**: `AdditionalInfo`**Description**: This option is for advanced users only. This is meta information about third-party applications that third-party vendors use for testing purposes.
- `args`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `Args`**Description**: Arguments for Amazon EMR to pass to the application.
- `name`**Type**: `STRING`**Provider name**: `Name`**Description**: The name of the application.
- `version`**Type**: `STRING`**Provider name**: `Version`**Description**: The version of the application.

## `auto_scaling_role`{% #auto_scaling_role %}

**Type**: `STRING`**Provider name**: `AutoScalingRole`**Description**: An IAM role for automatic scaling policies. The default role is `EMR_AutoScaling_DefaultRole`. The IAM role provides permissions that the automatic scaling feature requires to launch and terminate Amazon EC2 instances in an instance group.

## `auto_terminate`{% #auto_terminate %}

**Type**: `BOOLEAN`**Provider name**: `AutoTerminate`**Description**: Specifies whether the cluster should terminate after completing all steps.

## `cluster_arn`{% #cluster_arn %}

**Type**: `STRING`**Provider name**: `ClusterArn`**Description**: The Amazon Resource Name of the cluster.

## `custom_ami_id`{% #custom_ami_id %}

**Type**: `STRING`**Provider name**: `CustomAmiId`**Description**: Available only in Amazon EMR releases 5.7.0 and later. The ID of a custom Amazon EBS-backed Linux AMI if the cluster uses a custom AMI.

## `ebs_root_volume_iops`{% #ebs_root_volume_iops %}

**Type**: `INT32`**Provider name**: `EbsRootVolumeIops`**Description**: The IOPS, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and later.

## `ebs_root_volume_size`{% #ebs_root_volume_size %}

**Type**: `INT32`**Provider name**: `EbsRootVolumeSize`**Description**: The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x and later.

## `ebs_root_volume_throughput`{% #ebs_root_volume_throughput %}

**Type**: `INT32`**Provider name**: `EbsRootVolumeThroughput`**Description**: The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and later.

## `ec2_instance_attributes`{% #ec2_instance_attributes %}

**Type**: `STRUCT`**Provider name**: `Ec2InstanceAttributes`**Description**: Provides information about the Amazon EC2 instances in a cluster grouped by category. For example, key name, subnet ID, IAM instance profile, and so on.

- `additional_master_security_groups`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `AdditionalMasterSecurityGroups`**Description**: A list of additional Amazon EC2 security group IDs for the master node.
- `additional_slave_security_groups`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `AdditionalSlaveSecurityGroups`**Description**: A list of additional Amazon EC2 security group IDs for the core and task nodes.
- `ec2_availability_zone`**Type**: `STRING`**Provider name**: `Ec2AvailabilityZone`**Description**: The Availability Zone in which the cluster will run.
- `ec2_key_name`**Type**: `STRING`**Provider name**: `Ec2KeyName`**Description**: The name of the Amazon EC2 key pair to use when connecting with SSH into the master node as a user named "hadoop".
- `ec2_subnet_id`**Type**: `STRING`**Provider name**: `Ec2SubnetId`**Description**: Set this parameter to the identifier of the Amazon VPC subnet where you want the cluster to launch. If you do not specify this value, and your account supports EC2-Classic, the cluster launches in EC2-Classic.
- `emr_managed_master_security_group`**Type**: `STRING`**Provider name**: `EmrManagedMasterSecurityGroup`**Description**: The identifier of the Amazon EC2 security group for the master node.
- `emr_managed_slave_security_group`**Type**: `STRING`**Provider name**: `EmrManagedSlaveSecurityGroup`**Description**: The identifier of the Amazon EC2 security group for the core and task nodes.
- `iam_instance_profile`**Type**: `STRING`**Provider name**: `IamInstanceProfile`**Description**: The IAM role that was specified when the cluster was launched. The Amazon EC2 instances of the cluster assume this role.
- `requested_ec2_availability_zones`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `RequestedEc2AvailabilityZones`**Description**: Applies to clusters configured with the instance fleets option. Specifies one or more Availability Zones in which to launch Amazon EC2 cluster instances when the EC2-Classic network configuration is supported. Amazon EMR chooses the Availability Zone with the best fit from among the list of `RequestedEc2AvailabilityZones`, and then launches all cluster instances within that Availability Zone. If you do not specify this value, Amazon EMR chooses the Availability Zone for you. `RequestedEc2SubnetIDs` and `RequestedEc2AvailabilityZones` cannot be specified together.
- `requested_ec2_subnet_ids`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `RequestedEc2SubnetIds`**Description**: Applies to clusters configured with the instance fleets option. Specifies the unique identifier of one or more Amazon EC2 subnets in which to launch Amazon EC2 cluster instances. Subnets must exist within the same VPC. Amazon EMR chooses the Amazon EC2 subnet with the best fit from among the list of `RequestedEc2SubnetIds`, and then launches all cluster instances within that Subnet. If this value is not specified, and the account and Region support EC2-Classic networks, the cluster launches instances in the EC2-Classic network and uses `RequestedEc2AvailabilityZones` instead of this setting. If EC2-Classic is not supported, and no Subnet is specified, Amazon EMR chooses the subnet for you. `RequestedEc2SubnetIDs` and `RequestedEc2AvailabilityZones` cannot be specified together.
- `service_access_security_group`**Type**: `STRING`**Provider name**: `ServiceAccessSecurityGroup`**Description**: The identifier of the Amazon EC2 security group for the Amazon EMR service to access clusters in VPC private subnets.

## `id`{% #id %}

**Type**: `STRING`**Provider name**: `Id`**Description**: The unique identifier for the cluster.

## `instance_collection_type`{% #instance_collection_type %}

**Type**: `STRING`**Provider name**: `InstanceCollectionType`**Description**:The instance fleet configuration is available only in Amazon EMR releases 4.8.0 and later, excluding 5.0.x versions.The instance group configuration of the cluster. A value of `INSTANCE_GROUP` indicates a uniform instance group configuration. A value of `INSTANCE_FLEET` indicates an instance fleets configuration.

## `kerberos_attributes`{% #kerberos_attributes %}

**Type**: `STRUCT`**Provider name**: `KerberosAttributes`**Description**: Attributes for Kerberos configuration when Kerberos authentication is enabled using a security configuration. For more information see [Use Kerberos Authentication](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html) in the Amazon EMR Management Guide.

- `ad_domain_join_password`**Type**: `STRING`**Provider name**: `ADDomainJoinPassword`**Description**: The Active Directory password for `ADDomainJoinUser`.
- `ad_domain_join_user`**Type**: `STRING`**Provider name**: `ADDomainJoinUser`**Description**: Required only when establishing a cross-realm trust with an Active Directory domain. A user with sufficient privileges to join resources to the domain.
- `cross_realm_trust_principal_password`**Type**: `STRING`**Provider name**: `CrossRealmTrustPrincipalPassword`**Description**: Required only when establishing a cross-realm trust with a KDC in a different realm. The cross-realm principal password, which must be identical across realms.
- `kdc_admin_password`**Type**: `STRING`**Provider name**: `KdcAdminPassword`**Description**: The password used within the cluster for the kadmin service on the cluster-dedicated KDC, which maintains Kerberos principals, password policies, and keytabs for the cluster.
- `realm`**Type**: `STRING`**Provider name**: `Realm`**Description**: The name of the Kerberos realm to which all nodes in a cluster belong. For example, `EC2.INTERNAL`.

## `log_encryption_kms_key_id`{% #log_encryption_kms_key_id %}

**Type**: `STRING`**Provider name**: `LogEncryptionKmsKeyId`**Description**: The KMS key used for encrypting log files. This attribute is only available with Amazon EMR 5.30.0 and later, excluding Amazon EMR 6.0.0.

## `log_uri`{% #log_uri %}

**Type**: `STRING`**Provider name**: `LogUri`**Description**: The path to the Amazon S3 location where logs for this cluster are stored.

## `master_public_dns_name`{% #master_public_dns_name %}

**Type**: `STRING`**Provider name**: `MasterPublicDnsName`**Description**: The DNS name of the master node. If the cluster is on a private subnet, this is the private DNS name. On a public subnet, this is the public DNS name.

## `name`{% #name %}

**Type**: `STRING`**Provider name**: `Name`**Description**: The name of the cluster. This parameter can't contain the characters <, >, $, |, or ` (backtick).

## `normalized_instance_hours`{% #normalized_instance_hours %}

**Type**: `INT32`**Provider name**: `NormalizedInstanceHours`**Description**: An approximation of the cost of the cluster, represented in m1.small/hours. This value is incremented one time for every hour an m1.small instance runs. Larger instances are weighted more, so an Amazon EC2 instance that is roughly four times more expensive would result in the normalized instance hours being incremented by four. This result is only an approximation and does not reflect the actual billing rate.

## `os_release_label`{% #os_release_label %}

**Type**: `STRING`**Provider name**: `OSReleaseLabel`**Description**: The Amazon Linux release specified in a cluster launch RunJobFlow request. If no Amazon Linux release was specified, the default Amazon Linux release is shown in the response.

## `outpost_arn`{% #outpost_arn %}

**Type**: `STRING`**Provider name**: `OutpostArn`**Description**: The Amazon Resource Name (ARN) of the Outpost where the cluster is launched.

## `placement_groups`{% #placement_groups %}

**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `PlacementGroups`**Description**: Placement group configured for an Amazon EMR cluster.

- `instance_role`**Type**: `STRING`**Provider name**: `InstanceRole`**Description**: Role of the instance in the cluster. Starting with Amazon EMR release 5.23.0, the only supported instance role is `MASTER`.
- `placement_strategy`**Type**: `STRING`**Provider name**: `PlacementStrategy`**Description**: Amazon EC2 Placement Group strategy associated with instance role. Starting with Amazon EMR release 5.23.0, the only supported placement strategy is `SPREAD` for the `MASTER` instance role.

## `release_label`{% #release_label %}

**Type**: `STRING`**Provider name**: `ReleaseLabel`**Description**: The Amazon EMR release label, which determines the version of open-source application packages installed on the cluster. Release labels are in the form `emr-x.x.x`, where x.x.x is an Amazon EMR release version such as `emr-5.14.0`. For more information about Amazon EMR release versions and included application versions and features, see [https://docs.aws.amazon.com/emr/latest/ReleaseGuide/](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). The release label applies only to Amazon EMR releases version 4.0 and later. Earlier versions use `AmiVersion`.

## `repo_upgrade_on_boot`{% #repo_upgrade_on_boot %}

**Type**: `STRING`**Provider name**: `RepoUpgradeOnBoot`**Description**: Applies only when `CustomAmiID` is used. Specifies the type of updates that the Amazon Linux AMI package repositories apply when an instance boots using the AMI.

## `requested_ami_version`{% #requested_ami_version %}

**Type**: `STRING`**Provider name**: `RequestedAmiVersion`**Description**: The AMI version requested for this cluster.

## `running_ami_version`{% #running_ami_version %}

**Type**: `STRING`**Provider name**: `RunningAmiVersion`**Description**: The AMI version running on this cluster.

## `scale_down_behavior`{% #scale_down_behavior %}

**Type**: `STRING`**Provider name**: `ScaleDownBehavior`**Description**: The way that individual Amazon EC2 instances terminate when an automatic scale-in activity occurs or an instance group is resized. `TERMINATE_AT_INSTANCE_HOUR` indicates that Amazon EMR terminates nodes at the instance-hour boundary, regardless of when the request to terminate the instance was submitted. This option is only available with Amazon EMR 5.1.0 and later and is the default for clusters created using that version. `TERMINATE_AT_TASK_COMPLETION` indicates that Amazon EMR adds nodes to a deny list and drains tasks from nodes before terminating the Amazon EC2 instances, regardless of the instance-hour boundary. With either behavior, Amazon EMR removes the least active nodes first and blocks instance termination if it could lead to HDFS corruption. `TERMINATE_AT_TASK_COMPLETION` is available only in Amazon EMR releases 4.1.0 and later, and is the default for versions of Amazon EMR earlier than 5.1.0.

## `security_configuration`{% #security_configuration %}

**Type**: `STRING`**Provider name**: `SecurityConfiguration`**Description**: The name of the security configuration applied to the cluster.

## `service_role`{% #service_role %}

**Type**: `STRING`**Provider name**: `ServiceRole`**Description**: The IAM role that Amazon EMR assumes in order to access Amazon Web Services resources on your behalf.

## `status`{% #status %}

**Type**: `STRUCT`**Provider name**: `Status`**Description**: The current status details about the cluster.

- `error_details`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `ErrorDetails`**Description**: A list of tuples that provides information about the errors that caused a cluster to terminate. This structure can contain up to 10 different `ErrorDetail` tuples.
  - `error_code`**Type**: `STRING`**Provider name**: `ErrorCode`**Description**: The name or code associated with the error.
  - `error_message`**Type**: `STRING`**Provider name**: `ErrorMessage`**Description**: A message that describes the error.
- `state`**Type**: `STRING`**Provider name**: `State`**Description**: The current state of the cluster.
- `state_change_reason`**Type**: `STRUCT`**Provider name**: `StateChangeReason`**Description**: The reason for the cluster status change.
  - `code`**Type**: `STRING`**Provider name**: `Code`**Description**: The programmatic code for the state change reason.
  - `message`**Type**: `STRING`**Provider name**: `Message`**Description**: The descriptive message for the state change reason.
- `timeline`**Type**: `STRUCT`**Provider name**: `Timeline`**Description**: A timeline that represents the status of a cluster over the lifetime of the cluster.
  - `creation_date_time`**Type**: `TIMESTAMP`**Provider name**: `CreationDateTime`**Description**: The creation date and time of the cluster.
  - `end_date_time`**Type**: `TIMESTAMP`**Provider name**: `EndDateTime`**Description**: The date and time when the cluster was terminated.
  - `ready_date_time`**Type**: `TIMESTAMP`**Provider name**: `ReadyDateTime`**Description**: The date and time when the cluster was ready to run steps.

## `step_concurrency_level`{% #step_concurrency_level %}

**Type**: `INT32`**Provider name**: `StepConcurrencyLevel`**Description**: Specifies the number of steps that can be executed concurrently.

## `tags`{% #tags %}

**Type**: `UNORDERED_LIST_STRING`

## `termination_protected`{% #termination_protected %}

**Type**: `BOOLEAN`**Provider name**: `TerminationProtected`**Description**: Indicates whether Amazon EMR will lock the cluster to prevent the Amazon EC2 instances from being terminated by an API call or user intervention, or in the event of a cluster error.

## `unhealthy_node_replacement`{% #unhealthy_node_replacement %}

**Type**: `BOOLEAN`**Provider name**: `UnhealthyNodeReplacement`**Description**: Indicates whether Amazon EMR should gracefully replace Amazon EC2 core instances that have degraded within the cluster.

## `visible_to_all_users`{% #visible_to_all_users %}

**Type**: `BOOLEAN`**Provider name**: `VisibleToAllUsers`**Description**: Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When `true`, IAM principals in the Amazon Web Services account can perform Amazon EMR cluster actions on the cluster that their IAM policies allow. When `false`, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform Amazon EMR actions, regardless of IAM permissions policies attached to other IAM principals. The default value is `true` if a value is not provided when creating a cluster using the Amazon EMR API RunJobFlow command, the CLI [create-cluster](https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) command, or the Amazon Web Services Management Console.
