awsclaw-emr
Awsclaw EMR
Manage and inspect EMR clusters, steps, studios, notebook executions, and related configurations.
When to Use This Skill
Use this skill when the user:
- Asks about EMR clusters, Hadoop, or Spark
- Wants to inspect cluster status, steps, or instances
- Needs to view EMR studios or notebook executions
- Asks about release labels, instance types, or security configurations
- Wants to check auto-termination, managed scaling, or session credentials
- Wants to launch or terminate clusters
- Needs to add steps, instance groups, or tags
- Wants to modify cluster settings or scaling policies
Tool: EMRTool
Describe and manage EMR clusters, steps, studios, and configurations. ALWAYS provide params object.
Commands
ListClusters
List EMR clusters with optional state filter.
{ "command": "ListClusters", "params": { "ClusterStates": ["RUNNING", "WAITING"] } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterStates | array of strings | No | Filter by states: STARTING, BOOTSTRAPPING, RUNNING, WAITING, TERMINATING, TERMINATED, TERMINATED_WITH_ERRORS |
| CreatedAfter | string | No | ISO date string filter |
| CreatedBefore | string | No | ISO date string filter |
| Marker | string | No | Pagination marker |
DescribeCluster
Get detailed information about a cluster.
{ "command": "DescribeCluster", "params": { "ClusterId": "j-1234567890ABC" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
ListSteps
List steps in a cluster.
{ "command": "ListSteps", "params": { "ClusterId": "j-1234567890ABC", "StepStates": ["FAILED"] } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| StepStates | array of strings | No | Filter by step states |
| Marker | string | No | Pagination marker |
DescribeStep
Get details of a specific step.
{ "command": "DescribeStep", "params": { "ClusterId": "j-1234567890ABC", "StepId": "s-ABC123" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| StepId | string | Yes | Step ID |
ListInstances
List EC2 instances in a cluster.
{ "command": "ListInstances", "params": { "ClusterId": "j-1234567890ABC", "InstanceStates": ["RUNNING"] } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| InstanceFleetId | string | No | Instance fleet ID filter |
| InstanceGroupId | string | No | Instance group ID filter |
| InstanceStates | array of strings | No | Filter by states |
ListInstanceFleets
List instance fleets in a cluster.
{ "command": "ListInstanceFleets", "params": { "ClusterId": "j-1234567890ABC" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| Marker | string | No | Pagination marker |
ListInstanceGroups
List instance groups in a cluster.
{ "command": "ListInstanceGroups", "params": { "ClusterId": "j-1234567890ABC" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| Marker | string | No | Pagination marker |
ListBootstrapActions
List bootstrap actions for a cluster.
{ "command": "ListBootstrapActions", "params": { "ClusterId": "j-1234567890ABC" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| Marker | string | No | Pagination marker |
ListStudios
List EMR studios.
{ "command": "ListStudios", "params": {} }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| Marker | string | No | Pagination marker |
DescribeStudio
Get details of an EMR studio.
{ "command": "DescribeStudio", "params": { "StudioId": "es-ABC123" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| StudioId | string | Yes | Studio ID |
ListNotebookExecutions
List notebook executions.
{ "command": "ListNotebookExecutions", "params": {} }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| CreatedAfter | string | No | ISO date filter |
| CreatedBefore | string | No | ISO date filter |
| NextToken | string | No | Pagination token |
DescribeNotebookExecution
Get details of a notebook execution.
{ "command": "DescribeNotebookExecution", "params": { "NotebookExecutionId": "ex-ABC123" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| NotebookExecutionId | string | Yes | Notebook execution ID |
ListReleaseLabels
List available EMR release labels.
{ "command": "ListReleaseLabels", "params": {} }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| NextToken | string | No | Pagination token |
| MaxResults | number | No | Maximum results |
DescribeReleaseLabel
Get details for a release label.
{ "command": "DescribeReleaseLabel", "params": { "ReleaseLabel": "emr-7.0.0" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ReleaseLabel | string | Yes | Release label |
ListSupportedInstanceTypes
List instance types supported for a release.
{ "command": "ListSupportedInstanceTypes", "params": { "ReleaseLabel": "emr-7.0.0" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ReleaseLabel | string | No | Release label |
DescribeSecurityConfiguration
Get a security configuration.
{ "command": "DescribeSecurityConfiguration", "params": { "SecurityConfigurationName": "my-config" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| SecurityConfigurationName | string | Yes | Security configuration name |
Lifecycle and Management Commands
RunJobFlow
Create a new EMR cluster.
{ "command": "RunJobFlow", "params": { "Name": "analytics-cluster", "ReleaseLabel": "emr-7.0.0", "Instances": { "InstanceGroups": [{ "InstanceRole": "MASTER", "InstanceType": "m5.xlarge", "InstanceCount": 1 }] }, "ServiceRole": "EMR_DefaultRole", "JobFlowRole": "EMR_EC2_DefaultRole" } }
AddJobFlowSteps
Add steps to a cluster.
{ "command": "AddJobFlowSteps", "params": { "JobFlowId": "j-1234567890ABC", "Steps": [{ "Name": "spark-step", "ActionOnFailure": "CONTINUE", "HadoopJarStep": { "Jar": "command-runner.jar", "Args": ["spark-submit", "--deploy-mode", "cluster", "s3://bucket/job.py"] } }] } }
ModifyCluster
Modify cluster settings.
{ "command": "ModifyCluster", "params": { "ClusterId": "j-1234567890ABC", "StepConcurrencyLevel": 2 } }
PutAutoScalingPolicy
Configure auto scaling for an instance group.
{ "command": "PutAutoScalingPolicy", "params": { "ClusterId": "j-1234567890ABC", "InstanceGroupId": "ig-ABC123", "AutoScalingPolicy": { "Constraints": { "MinCapacity": 2, "MaxCapacity": 10 }, "Rules": [] } } }
AddTags
Tag a cluster.
{ "command": "AddTags", "params": { "ResourceId": "j-1234567890ABC", "Tags": { "env": "prod" } } }
RemoveTags
Remove tags from a cluster.
{ "command": "RemoveTags", "params": { "ResourceId": "j-1234567890ABC", "TagKeys": ["env"] } }
TerminateJobFlows
Terminate one or more clusters.
{ "command": "TerminateJobFlows", "params": { "JobFlowIds": ["j-1234567890ABC"] } }
ListSecurityConfigurations
List security configurations.
{ "command": "ListSecurityConfigurations", "params": {} }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| Marker | string | No | Pagination marker |
GetAutoTerminationPolicy
Get auto-termination policy for a cluster.
{ "command": "GetAutoTerminationPolicy", "params": { "ClusterId": "j-1234567890ABC" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
GetBlockPublicAccessConfiguration
Get block public access configuration.
{ "command": "GetBlockPublicAccessConfiguration", "params": {} }
GetManagedScalingPolicy
Get managed scaling policy for a cluster.
{ "command": "GetManagedScalingPolicy", "params": { "ClusterId": "j-1234567890ABC" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
GetClusterSessionCredentials
Get session credentials for a cluster.
{ "command": "GetClusterSessionCredentials", "params": { "ClusterId": "j-1234567890ABC", "CredentialType": "UsernamePassword" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| CredentialType | string | Yes | Credential type |
| ExecutionRoleArn | string | No | Execution role ARN |
| DurationSeconds | number | No | Lifetime in seconds |
GetStudioSessionMapping
Get studio session mapping.
{ "command": "GetStudioSessionMapping", "params": { "StudioId": "es-ABC123", "IdentityType": "USER", "IdentityId": "user-123" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| StudioId | string | Yes | Studio ID |
| IdentityType | string | Yes | USER or GROUP |
| IdentityId | string | Yes | Identity ID |
ListStudioSessionMappings
List studio session mappings.
{ "command": "ListStudioSessionMappings", "params": { "StudioId": "es-ABC123" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| StudioId | string | Yes | Studio ID |
| IdentityType | string | No | USER or GROUP |
DescribeJobFlows
Describe job flows (legacy).
{ "command": "DescribeJobFlows", "params": { "JobFlowIds": ["j-ABC123"] } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| JobFlowIds | array of strings | No | Job flow IDs |
| CreatedAfter | string | No | ISO date filter |
| CreatedBefore | string | No | ISO date filter |
DescribePersistentAppUI / GetOnClusterAppUIPresignedURL / GetPersistentAppUIPresignedURL
Application UI commands for Spark History Server, etc.
{ "command": "GetOnClusterAppUIPresignedURL", "params": { "ClusterId": "j-ABC123", "ApplicationId": "app-123" } }
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| ClusterId | string | Yes | EMR cluster ID |
| ApplicationId | string | Yes | Application ID |
Related Services
- EMR → S3: Clusters use S3 for input/output data (EMRFS), logs, and scripts. Use
S3Toolto inspect data - EMR → EC2: Clusters run on EC2 instances. Use
EC2Toolto inspect the underlying instances - EMR → CloudWatch: Cluster metrics and logs in CloudWatch. Use
CloudWatchLogToolto read logs - EMR → IAM: Clusters use EC2 instance profiles and service roles. Use
IAMToolto inspect - EMR → Glue Data Catalog: EMR can use Glue Data Catalog as Hive metastore. Use
GlueToolto query the catalog - EMR → CloudFormation: EMR clusters managed by CloudFormation stacks
More from necatiarslan/awsclaw
awsclaw-dynamodb
Manage Amazon DynamoDB tables and items using awsclaw. Create/delete/update tables, query and scan data, CRUD operations on items, manage TTL, backups, global tables, auto-scaling, and tags.
1awsclaw-iam
Manage and inspect AWS IAM roles, policies, users, groups, access keys, MFA devices, simulate permissions, generate credential reports, and get account summary using awsclaw.
1awsclaw-sts
Get caller identity, assume roles, decode authorization messages, and get temporary credentials using the awsclaw VS Code extension STSTool.
1awsclaw-general
General AWS management in VS Code using awsclaw extension. Covers AWS connectivity, session management, profiles, regions, endpoints, file operations, testing connections, safety model, cross-service discovery, and extension capabilities.
1awsclaw-sqs
Manage Amazon SQS queues and messages using awsclaw. Create, configure, tag, and delete queues, send/receive/delete messages, manage visibility, purge queues, inspect dead letter queues, and get queue attributes.
1awsclaw-rdsdata
Run SQL queries and manage transactions on Amazon Aurora Serverless and RDS clusters with Data API enabled using awsclaw. Execute statements, batch operations, and transaction management.
1