SDK for PHP 3.x

Client: Aws\EMRContainers\EMRContainersClient
Service ID: emr-containers
Version: 2020-10-01

This page describes the parameters and results for the operations of the Amazon EMR Containers (2020-10-01), and shows how to use the Aws\EMRContainers\EMRContainersClient object to call the described operations. This documentation is specific to the 2020-10-01 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

CancelJobRun ( array $params = [] )
Cancels a job run.
CreateJobTemplate ( array $params = [] )
Creates a job template.
CreateManagedEndpoint ( array $params = [] )
Creates a managed endpoint.
CreateSecurityConfiguration ( array $params = [] )
Creates a security configuration.
CreateVirtualCluster ( array $params = [] )
Creates a virtual cluster.
DeleteJobTemplate ( array $params = [] )
Deletes a job template.
DeleteManagedEndpoint ( array $params = [] )
Deletes a managed endpoint.
DeleteVirtualCluster ( array $params = [] )
Deletes a virtual cluster.
DescribeJobRun ( array $params = [] )
Displays detailed information about a job run.
DescribeJobTemplate ( array $params = [] )
Displays detailed information about a specified job template.
DescribeManagedEndpoint ( array $params = [] )
Displays detailed information about a managed endpoint.
DescribeSecurityConfiguration ( array $params = [] )
Displays detailed information about a specified security configuration.
DescribeVirtualCluster ( array $params = [] )
Displays detailed information about a specified virtual cluster.
GetManagedEndpointSessionCredentials ( array $params = [] )
Generate a session token to connect to a managed endpoint.
ListJobRuns ( array $params = [] )
Lists job runs based on a set of parameters.
ListJobTemplates ( array $params = [] )
Lists job templates based on a set of parameters.
ListManagedEndpoints ( array $params = [] )
Lists managed endpoints based on a set of parameters.
ListSecurityConfigurations ( array $params = [] )
Lists security configurations based on a set of parameters.
ListTagsForResource ( array $params = [] )
Lists the tags assigned to the resources.
ListVirtualClusters ( array $params = [] )
Lists information about the specified virtual cluster.
StartJobRun ( array $params = [] )
Starts a job run.
TagResource ( array $params = [] )
Assigns tags to resources.
UntagResource ( array $params = [] )
Removes tags from resources.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListJobRuns
ListJobTemplates
ListManagedEndpoints
ListSecurityConfigurations
ListVirtualClusters

Operations

CancelJobRun

$result = $client->cancelJobRun([/* ... */]);
$promise = $client->cancelJobRunAsync([/* ... */]);

Cancels a job run. A job run is a unit of work, such as a Spark jar, PySpark script, or SparkSQL query, that you submit to Amazon EMR on EKS.

Parameter Syntax

$result = $client->cancelJobRun([
    'id' => '<string>', // REQUIRED
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the job run to cancel.

virtualClusterId
Required: Yes
Type: string

The ID of the virtual cluster for which the job run will be canceled.

Result Syntax

[
    'id' => '<string>',
    'virtualClusterId' => '<string>',
]

Result Details

Members
id
Type: string

The output contains the ID of the cancelled job run.

virtualClusterId
Type: string

The output contains the virtual cluster ID for which the job run is cancelled.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

CreateJobTemplate

$result = $client->createJobTemplate([/* ... */]);
$promise = $client->createJobTemplateAsync([/* ... */]);

Creates a job template. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

Parameter Syntax

$result = $client->createJobTemplate([
    'clientToken' => '<string>', // REQUIRED
    'jobTemplateData' => [ // REQUIRED
        'configurationOverrides' => [
            'applicationConfiguration' => [
                [
                    'classification' => '<string>', // REQUIRED
                    'configurations' => [...], // RECURSIVE
                    'properties' => ['<string>', ...],
                ],
                // ...
            ],
            'monitoringConfiguration' => [
                'cloudWatchMonitoringConfiguration' => [
                    'logGroupName' => '<string>',
                    'logStreamNamePrefix' => '<string>',
                ],
                'persistentAppUI' => '<string>',
                's3MonitoringConfiguration' => [
                    'logUri' => '<string>',
                ],
            ],
        ],
        'executionRoleArn' => '<string>', // REQUIRED
        'jobDriver' => [ // REQUIRED
            'sparkSqlJobDriver' => [
                'entryPoint' => '<string>',
                'sparkSqlParameters' => '<string>',
            ],
            'sparkSubmitJobDriver' => [
                'entryPoint' => '<string>', // REQUIRED
                'entryPointArguments' => ['<string>', ...],
                'sparkSubmitParameters' => '<string>',
            ],
        ],
        'jobTags' => ['<string>', ...],
        'parameterConfiguration' => [
            '<TemplateParameterName>' => [
                'defaultValue' => '<string>',
                'type' => 'NUMBER|STRING',
            ],
            // ...
        ],
        'releaseLabel' => '<string>', // REQUIRED
    ],
    'kmsKeyArn' => '<string>',
    'name' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
clientToken
Required: Yes
Type: string

The client token of the job template.

jobTemplateData
Required: Yes
Type: JobTemplateData structure

The job template data which holds values of StartJobRun API request.

kmsKeyArn
Type: string

The KMS key ARN used to encrypt the job template.

name
Required: Yes
Type: string

The specified name of the job template.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags that are associated with the job template.

Result Syntax

[
    'arn' => '<string>',
    'createdAt' => <DateTime>,
    'id' => '<string>',
    'name' => '<string>',
]

Result Details

Members
arn
Type: string

This output display the ARN of the created job template.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

This output displays the date and time when the job template was created.

id
Type: string

This output display the created job template ID.

name
Type: string

This output displays the name of the created job template.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

CreateManagedEndpoint

$result = $client->createManagedEndpoint([/* ... */]);
$promise = $client->createManagedEndpointAsync([/* ... */]);

Creates a managed endpoint. A managed endpoint is a gateway that connects Amazon EMR Studio to Amazon EMR on EKS so that Amazon EMR Studio can communicate with your virtual cluster.

Parameter Syntax

$result = $client->createManagedEndpoint([
    'certificateArn' => '<string>',
    'clientToken' => '<string>', // REQUIRED
    'configurationOverrides' => [
        'applicationConfiguration' => [
            [
                'classification' => '<string>', // REQUIRED
                'configurations' => [...], // RECURSIVE
                'properties' => ['<string>', ...],
            ],
            // ...
        ],
        'monitoringConfiguration' => [
            'cloudWatchMonitoringConfiguration' => [
                'logGroupName' => '<string>', // REQUIRED
                'logStreamNamePrefix' => '<string>',
            ],
            'containerLogRotationConfiguration' => [
                'maxFilesToKeep' => <integer>, // REQUIRED
                'rotationSize' => '<string>', // REQUIRED
            ],
            'persistentAppUI' => 'ENABLED|DISABLED',
            's3MonitoringConfiguration' => [
                'logUri' => '<string>', // REQUIRED
            ],
        ],
    ],
    'executionRoleArn' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
    'releaseLabel' => '<string>', // REQUIRED
    'tags' => ['<string>', ...],
    'type' => '<string>', // REQUIRED
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
certificateArn
Type: string

The certificate ARN provided by users for the managed endpoint. This field is under deprecation and will be removed in future releases.

clientToken
Required: Yes
Type: string

The client idempotency token for this create call.

configurationOverrides
Type: ConfigurationOverrides structure

The configuration settings that will be used to override existing configurations.

executionRoleArn
Required: Yes
Type: string

The ARN of the execution role.

name
Required: Yes
Type: string

The name of the managed endpoint.

releaseLabel
Required: Yes
Type: string

The Amazon EMR release version.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags of the managed endpoint.

type
Required: Yes
Type: string

The type of the managed endpoint.

virtualClusterId
Required: Yes
Type: string

The ID of the virtual cluster for which a managed endpoint is created.

Result Syntax

[
    'arn' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'virtualClusterId' => '<string>',
]

Result Details

Members
arn
Type: string

The output contains the ARN of the managed endpoint.

id
Type: string

The output contains the ID of the managed endpoint.

name
Type: string

The output contains the name of the managed endpoint.

virtualClusterId
Type: string

The output contains the ID of the virtual cluster.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

CreateSecurityConfiguration

$result = $client->createSecurityConfiguration([/* ... */]);
$promise = $client->createSecurityConfigurationAsync([/* ... */]);

Creates a security configuration. Security configurations in Amazon EMR on EKS are templates for different security setups. You can use security configurations to configure the Lake Formation integration setup. You can also create a security configuration to re-use a security setup each time you create a virtual cluster.

Parameter Syntax

$result = $client->createSecurityConfiguration([
    'clientToken' => '<string>', // REQUIRED
    'name' => '<string>', // REQUIRED
    'securityConfigurationData' => [ // REQUIRED
        'authorizationConfiguration' => [
            'encryptionConfiguration' => [
                'inTransitEncryptionConfiguration' => [
                    'tlsCertificateConfiguration' => [
                        'certificateProviderType' => 'PEM',
                        'privateCertificateSecretArn' => '<string>',
                        'publicCertificateSecretArn' => '<string>',
                    ],
                ],
            ],
            'lakeFormationConfiguration' => [
                'authorizedSessionTagValue' => '<string>',
                'queryEngineRoleArn' => '<string>',
                'secureNamespaceInfo' => [
                    'clusterId' => '<string>',
                    'namespace' => '<string>',
                ],
            ],
        ],
    ],
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
clientToken
Required: Yes
Type: string

The client idempotency token to use when creating the security configuration.

name
Required: Yes
Type: string

The name of the security configuration.

securityConfigurationData
Required: Yes
Type: SecurityConfigurationData structure

Security configuration input for the request.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags to add to the security configuration.

Result Syntax

[
    'arn' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
]

Result Details

Members
arn
Type: string

The ARN (Amazon Resource Name) of the security configuration.

id
Type: string

The ID of the security configuration.

name
Type: string

The name of the security configuration.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

CreateVirtualCluster

$result = $client->createVirtualCluster([/* ... */]);
$promise = $client->createVirtualClusterAsync([/* ... */]);

Creates a virtual cluster. Virtual cluster is a managed entity on Amazon EMR on EKS. You can create, describe, list and delete virtual clusters. They do not consume any additional resource in your system. A single virtual cluster maps to a single Kubernetes namespace. Given this relationship, you can model virtual clusters the same way you model Kubernetes namespaces to meet your requirements.

Parameter Syntax

$result = $client->createVirtualCluster([
    'clientToken' => '<string>', // REQUIRED
    'containerProvider' => [ // REQUIRED
        'id' => '<string>', // REQUIRED
        'info' => [
            'eksInfo' => [
                'namespace' => '<string>',
            ],
        ],
        'type' => 'EKS', // REQUIRED
    ],
    'name' => '<string>', // REQUIRED
    'securityConfigurationId' => '<string>',
    'tags' => ['<string>', ...],
]);

Parameter Details

Members
clientToken
Required: Yes
Type: string

The client token of the virtual cluster.

containerProvider
Required: Yes
Type: ContainerProvider structure

The container provider of the virtual cluster.

name
Required: Yes
Type: string

The specified name of the virtual cluster.

securityConfigurationId
Type: string

The ID of the security configuration.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags assigned to the virtual cluster.

Result Syntax

[
    'arn' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
]

Result Details

Members
arn
Type: string

This output contains the ARN of virtual cluster.

id
Type: string

This output contains the virtual cluster ID.

name
Type: string

This output contains the name of the virtual cluster.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

EKSRequestThrottledException:

The request exceeded the Amazon EKS API operation limits.

DeleteJobTemplate

$result = $client->deleteJobTemplate([/* ... */]);
$promise = $client->deleteJobTemplateAsync([/* ... */]);

Deletes a job template. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

Parameter Syntax

$result = $client->deleteJobTemplate([
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the job template that will be deleted.

Result Syntax

[
    'id' => '<string>',
]

Result Details

Members
id
Type: string

This output contains the ID of the job template that was deleted.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

DeleteManagedEndpoint

$result = $client->deleteManagedEndpoint([/* ... */]);
$promise = $client->deleteManagedEndpointAsync([/* ... */]);

Deletes a managed endpoint. A managed endpoint is a gateway that connects Amazon EMR Studio to Amazon EMR on EKS so that Amazon EMR Studio can communicate with your virtual cluster.

Parameter Syntax

$result = $client->deleteManagedEndpoint([
    'id' => '<string>', // REQUIRED
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the managed endpoint.

virtualClusterId
Required: Yes
Type: string

The ID of the endpoint's virtual cluster.

Result Syntax

[
    'id' => '<string>',
    'virtualClusterId' => '<string>',
]

Result Details

Members
id
Type: string

The output displays the ID of the managed endpoint.

virtualClusterId
Type: string

The output displays the ID of the endpoint's virtual cluster.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

DeleteVirtualCluster

$result = $client->deleteVirtualCluster([/* ... */]);
$promise = $client->deleteVirtualClusterAsync([/* ... */]);

Deletes a virtual cluster. Virtual cluster is a managed entity on Amazon EMR on EKS. You can create, describe, list and delete virtual clusters. They do not consume any additional resource in your system. A single virtual cluster maps to a single Kubernetes namespace. Given this relationship, you can model virtual clusters the same way you model Kubernetes namespaces to meet your requirements.

Parameter Syntax

$result = $client->deleteVirtualCluster([
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the virtual cluster that will be deleted.

Result Syntax

[
    'id' => '<string>',
]

Result Details

Members
id
Type: string

This output contains the ID of the virtual cluster that will be deleted.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

DescribeJobRun

$result = $client->describeJobRun([/* ... */]);
$promise = $client->describeJobRunAsync([/* ... */]);

Displays detailed information about a job run. A job run is a unit of work, such as a Spark jar, PySpark script, or SparkSQL query, that you submit to Amazon EMR on EKS.

Parameter Syntax

$result = $client->describeJobRun([
    'id' => '<string>', // REQUIRED
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the job run request.

virtualClusterId
Required: Yes
Type: string

The ID of the virtual cluster for which the job run is submitted.

Result Syntax

[
    'jobRun' => [
        'arn' => '<string>',
        'clientToken' => '<string>',
        'configurationOverrides' => [
            'applicationConfiguration' => [
                [
                    'classification' => '<string>',
                    'configurations' => [...], // RECURSIVE
                    'properties' => ['<string>', ...],
                ],
                // ...
            ],
            'monitoringConfiguration' => [
                'cloudWatchMonitoringConfiguration' => [
                    'logGroupName' => '<string>',
                    'logStreamNamePrefix' => '<string>',
                ],
                'containerLogRotationConfiguration' => [
                    'maxFilesToKeep' => <integer>,
                    'rotationSize' => '<string>',
                ],
                'persistentAppUI' => 'ENABLED|DISABLED',
                's3MonitoringConfiguration' => [
                    'logUri' => '<string>',
                ],
            ],
        ],
        'createdAt' => <DateTime>,
        'createdBy' => '<string>',
        'executionRoleArn' => '<string>',
        'failureReason' => 'INTERNAL_ERROR|USER_ERROR|VALIDATION_ERROR|CLUSTER_UNAVAILABLE',
        'finishedAt' => <DateTime>,
        'id' => '<string>',
        'jobDriver' => [
            'sparkSqlJobDriver' => [
                'entryPoint' => '<string>',
                'sparkSqlParameters' => '<string>',
            ],
            'sparkSubmitJobDriver' => [
                'entryPoint' => '<string>',
                'entryPointArguments' => ['<string>', ...],
                'sparkSubmitParameters' => '<string>',
            ],
        ],
        'name' => '<string>',
        'releaseLabel' => '<string>',
        'retryPolicyConfiguration' => [
            'maxAttempts' => <integer>,
        ],
        'retryPolicyExecution' => [
            'currentAttemptCount' => <integer>,
        ],
        'state' => 'PENDING|SUBMITTED|RUNNING|FAILED|CANCELLED|CANCEL_PENDING|COMPLETED',
        'stateDetails' => '<string>',
        'tags' => ['<string>', ...],
        'virtualClusterId' => '<string>',
    ],
]

Result Details

Members
jobRun
Type: JobRun structure

The output displays information about a job run.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

DescribeJobTemplate

$result = $client->describeJobTemplate([/* ... */]);
$promise = $client->describeJobTemplateAsync([/* ... */]);

Displays detailed information about a specified job template. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

Parameter Syntax

$result = $client->describeJobTemplate([
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the job template that will be described.

Result Syntax

[
    'jobTemplate' => [
        'arn' => '<string>',
        'createdAt' => <DateTime>,
        'createdBy' => '<string>',
        'decryptionError' => '<string>',
        'id' => '<string>',
        'jobTemplateData' => [
            'configurationOverrides' => [
                'applicationConfiguration' => [
                    [
                        'classification' => '<string>',
                        'configurations' => [...], // RECURSIVE
                        'properties' => ['<string>', ...],
                    ],
                    // ...
                ],
                'monitoringConfiguration' => [
                    'cloudWatchMonitoringConfiguration' => [
                        'logGroupName' => '<string>',
                        'logStreamNamePrefix' => '<string>',
                    ],
                    'persistentAppUI' => '<string>',
                    's3MonitoringConfiguration' => [
                        'logUri' => '<string>',
                    ],
                ],
            ],
            'executionRoleArn' => '<string>',
            'jobDriver' => [
                'sparkSqlJobDriver' => [
                    'entryPoint' => '<string>',
                    'sparkSqlParameters' => '<string>',
                ],
                'sparkSubmitJobDriver' => [
                    'entryPoint' => '<string>',
                    'entryPointArguments' => ['<string>', ...],
                    'sparkSubmitParameters' => '<string>',
                ],
            ],
            'jobTags' => ['<string>', ...],
            'parameterConfiguration' => [
                '<TemplateParameterName>' => [
                    'defaultValue' => '<string>',
                    'type' => 'NUMBER|STRING',
                ],
                // ...
            ],
            'releaseLabel' => '<string>',
        ],
        'kmsKeyArn' => '<string>',
        'name' => '<string>',
        'tags' => ['<string>', ...],
    ],
]

Result Details

Members
jobTemplate
Type: JobTemplate structure

This output displays information about the specified job template.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

DescribeManagedEndpoint

$result = $client->describeManagedEndpoint([/* ... */]);
$promise = $client->describeManagedEndpointAsync([/* ... */]);

Displays detailed information about a managed endpoint. A managed endpoint is a gateway that connects Amazon EMR Studio to Amazon EMR on EKS so that Amazon EMR Studio can communicate with your virtual cluster.

Parameter Syntax

$result = $client->describeManagedEndpoint([
    'id' => '<string>', // REQUIRED
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

This output displays ID of the managed endpoint.

virtualClusterId
Required: Yes
Type: string

The ID of the endpoint's virtual cluster.

Result Syntax

[
    'endpoint' => [
        'arn' => '<string>',
        'certificateArn' => '<string>',
        'certificateAuthority' => [
            'certificateArn' => '<string>',
            'certificateData' => '<string>',
        ],
        'configurationOverrides' => [
            'applicationConfiguration' => [
                [
                    'classification' => '<string>',
                    'configurations' => [...], // RECURSIVE
                    'properties' => ['<string>', ...],
                ],
                // ...
            ],
            'monitoringConfiguration' => [
                'cloudWatchMonitoringConfiguration' => [
                    'logGroupName' => '<string>',
                    'logStreamNamePrefix' => '<string>',
                ],
                'containerLogRotationConfiguration' => [
                    'maxFilesToKeep' => <integer>,
                    'rotationSize' => '<string>',
                ],
                'persistentAppUI' => 'ENABLED|DISABLED',
                's3MonitoringConfiguration' => [
                    'logUri' => '<string>',
                ],
            ],
        ],
        'createdAt' => <DateTime>,
        'executionRoleArn' => '<string>',
        'failureReason' => 'INTERNAL_ERROR|USER_ERROR|VALIDATION_ERROR|CLUSTER_UNAVAILABLE',
        'id' => '<string>',
        'name' => '<string>',
        'releaseLabel' => '<string>',
        'securityGroup' => '<string>',
        'serverUrl' => '<string>',
        'state' => 'CREATING|ACTIVE|TERMINATING|TERMINATED|TERMINATED_WITH_ERRORS',
        'stateDetails' => '<string>',
        'subnetIds' => ['<string>', ...],
        'tags' => ['<string>', ...],
        'type' => '<string>',
        'virtualClusterId' => '<string>',
    ],
]

Result Details

Members
endpoint
Type: Endpoint structure

This output displays information about a managed endpoint.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

DescribeSecurityConfiguration

$result = $client->describeSecurityConfiguration([/* ... */]);
$promise = $client->describeSecurityConfigurationAsync([/* ... */]);

Displays detailed information about a specified security configuration. Security configurations in Amazon EMR on EKS are templates for different security setups. You can use security configurations to configure the Lake Formation integration setup. You can also create a security configuration to re-use a security setup each time you create a virtual cluster.

Parameter Syntax

$result = $client->describeSecurityConfiguration([
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the security configuration.

Result Syntax

[
    'securityConfiguration' => [
        'arn' => '<string>',
        'createdAt' => <DateTime>,
        'createdBy' => '<string>',
        'id' => '<string>',
        'name' => '<string>',
        'securityConfigurationData' => [
            'authorizationConfiguration' => [
                'encryptionConfiguration' => [
                    'inTransitEncryptionConfiguration' => [
                        'tlsCertificateConfiguration' => [
                            'certificateProviderType' => 'PEM',
                            'privateCertificateSecretArn' => '<string>',
                            'publicCertificateSecretArn' => '<string>',
                        ],
                    ],
                ],
                'lakeFormationConfiguration' => [
                    'authorizedSessionTagValue' => '<string>',
                    'queryEngineRoleArn' => '<string>',
                    'secureNamespaceInfo' => [
                        'clusterId' => '<string>',
                        'namespace' => '<string>',
                    ],
                ],
            ],
        ],
        'tags' => ['<string>', ...],
    ],
]

Result Details

Members
securityConfiguration
Type: SecurityConfiguration structure

Details of the security configuration.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

DescribeVirtualCluster

$result = $client->describeVirtualCluster([/* ... */]);
$promise = $client->describeVirtualClusterAsync([/* ... */]);

Displays detailed information about a specified virtual cluster. Virtual cluster is a managed entity on Amazon EMR on EKS. You can create, describe, list and delete virtual clusters. They do not consume any additional resource in your system. A single virtual cluster maps to a single Kubernetes namespace. Given this relationship, you can model virtual clusters the same way you model Kubernetes namespaces to meet your requirements.

Parameter Syntax

$result = $client->describeVirtualCluster([
    'id' => '<string>', // REQUIRED
]);

Parameter Details

Members
id
Required: Yes
Type: string

The ID of the virtual cluster that will be described.

Result Syntax

[
    'virtualCluster' => [
        'arn' => '<string>',
        'containerProvider' => [
            'id' => '<string>',
            'info' => [
                'eksInfo' => [
                    'namespace' => '<string>',
                ],
            ],
            'type' => 'EKS',
        ],
        'createdAt' => <DateTime>,
        'id' => '<string>',
        'name' => '<string>',
        'securityConfigurationId' => '<string>',
        'state' => 'RUNNING|TERMINATING|TERMINATED|ARRESTED',
        'tags' => ['<string>', ...],
    ],
]

Result Details

Members
virtualCluster
Type: VirtualCluster structure

This output displays information about the specified virtual cluster.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

GetManagedEndpointSessionCredentials

$result = $client->getManagedEndpointSessionCredentials([/* ... */]);
$promise = $client->getManagedEndpointSessionCredentialsAsync([/* ... */]);

Generate a session token to connect to a managed endpoint.

Parameter Syntax

$result = $client->getManagedEndpointSessionCredentials([
    'clientToken' => '<string>',
    'credentialType' => '<string>', // REQUIRED
    'durationInSeconds' => <integer>,
    'endpointIdentifier' => '<string>', // REQUIRED
    'executionRoleArn' => '<string>', // REQUIRED
    'logContext' => '<string>',
    'virtualClusterIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

The client idempotency token of the job run request.

credentialType
Required: Yes
Type: string

Type of the token requested. Currently supported and default value of this field is “TOKEN.”

durationInSeconds
Type: int

Duration in seconds for which the session token is valid. The default duration is 15 minutes and the maximum is 12 hours.

endpointIdentifier
Required: Yes
Type: string

The ARN of the managed endpoint for which the request is submitted.

executionRoleArn
Required: Yes
Type: string

The IAM Execution Role ARN that will be used by the job run.

logContext
Type: string

String identifier used to separate sections of the execution logs uploaded to S3.

virtualClusterIdentifier
Required: Yes
Type: string

The ARN of the Virtual Cluster which the Managed Endpoint belongs to.

Result Syntax

[
    'credentials' => [
        'token' => '<string>',
    ],
    'expiresAt' => <DateTime>,
    'id' => '<string>',
]

Result Details

Members
credentials
Type: Credentials structure

The structure containing the session credentials.

expiresAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the session token will expire.

id
Type: string

The identifier of the session token returned.

Errors

ValidationException:

There are invalid parameters in the client request.

RequestThrottledException:

The request throttled.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

ListJobRuns

$result = $client->listJobRuns([/* ... */]);
$promise = $client->listJobRunsAsync([/* ... */]);

Lists job runs based on a set of parameters. A job run is a unit of work, such as a Spark jar, PySpark script, or SparkSQL query, that you submit to Amazon EMR on EKS.

Parameter Syntax

$result = $client->listJobRuns([
    'createdAfter' => <integer || string || DateTime>,
    'createdBefore' => <integer || string || DateTime>,
    'maxResults' => <integer>,
    'name' => '<string>',
    'nextToken' => '<string>',
    'states' => ['<string>', ...],
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
createdAfter
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time after which the job runs were submitted.

createdBefore
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time before which the job runs were submitted.

maxResults
Type: int

The maximum number of job runs that can be listed.

name
Type: string

The name of the job run.

nextToken
Type: string

The token for the next set of job runs to return.

states
Type: Array of strings

The states of the job run.

virtualClusterId
Required: Yes
Type: string

The ID of the virtual cluster for which to list the job run.

Result Syntax

[
    'jobRuns' => [
        [
            'arn' => '<string>',
            'clientToken' => '<string>',
            'configurationOverrides' => [
                'applicationConfiguration' => [
                    [
                        'classification' => '<string>',
                        'configurations' => [...], // RECURSIVE
                        'properties' => ['<string>', ...],
                    ],
                    // ...
                ],
                'monitoringConfiguration' => [
                    'cloudWatchMonitoringConfiguration' => [
                        'logGroupName' => '<string>',
                        'logStreamNamePrefix' => '<string>',
                    ],
                    'containerLogRotationConfiguration' => [
                        'maxFilesToKeep' => <integer>,
                        'rotationSize' => '<string>',
                    ],
                    'persistentAppUI' => 'ENABLED|DISABLED',
                    's3MonitoringConfiguration' => [
                        'logUri' => '<string>',
                    ],
                ],
            ],
            'createdAt' => <DateTime>,
            'createdBy' => '<string>',
            'executionRoleArn' => '<string>',
            'failureReason' => 'INTERNAL_ERROR|USER_ERROR|VALIDATION_ERROR|CLUSTER_UNAVAILABLE',
            'finishedAt' => <DateTime>,
            'id' => '<string>',
            'jobDriver' => [
                'sparkSqlJobDriver' => [
                    'entryPoint' => '<string>',
                    'sparkSqlParameters' => '<string>',
                ],
                'sparkSubmitJobDriver' => [
                    'entryPoint' => '<string>',
                    'entryPointArguments' => ['<string>', ...],
                    'sparkSubmitParameters' => '<string>',
                ],
            ],
            'name' => '<string>',
            'releaseLabel' => '<string>',
            'retryPolicyConfiguration' => [
                'maxAttempts' => <integer>,
            ],
            'retryPolicyExecution' => [
                'currentAttemptCount' => <integer>,
            ],
            'state' => 'PENDING|SUBMITTED|RUNNING|FAILED|CANCELLED|CANCEL_PENDING|COMPLETED',
            'stateDetails' => '<string>',
            'tags' => ['<string>', ...],
            'virtualClusterId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
jobRuns
Type: Array of JobRun structures

This output lists information about the specified job runs.

nextToken
Type: string

This output displays the token for the next set of job runs.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

ListJobTemplates

$result = $client->listJobTemplates([/* ... */]);
$promise = $client->listJobTemplatesAsync([/* ... */]);

Lists job templates based on a set of parameters. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

Parameter Syntax

$result = $client->listJobTemplates([
    'createdAfter' => <integer || string || DateTime>,
    'createdBefore' => <integer || string || DateTime>,
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
createdAfter
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time after which the job templates were created.

createdBefore
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time before which the job templates were created.

maxResults
Type: int

The maximum number of job templates that can be listed.

nextToken
Type: string

The token for the next set of job templates to return.

Result Syntax

[
    'nextToken' => '<string>',
    'templates' => [
        [
            'arn' => '<string>',
            'createdAt' => <DateTime>,
            'createdBy' => '<string>',
            'decryptionError' => '<string>',
            'id' => '<string>',
            'jobTemplateData' => [
                'configurationOverrides' => [
                    'applicationConfiguration' => [
                        [
                            'classification' => '<string>',
                            'configurations' => [...], // RECURSIVE
                            'properties' => ['<string>', ...],
                        ],
                        // ...
                    ],
                    'monitoringConfiguration' => [
                        'cloudWatchMonitoringConfiguration' => [
                            'logGroupName' => '<string>',
                            'logStreamNamePrefix' => '<string>',
                        ],
                        'persistentAppUI' => '<string>',
                        's3MonitoringConfiguration' => [
                            'logUri' => '<string>',
                        ],
                    ],
                ],
                'executionRoleArn' => '<string>',
                'jobDriver' => [
                    'sparkSqlJobDriver' => [
                        'entryPoint' => '<string>',
                        'sparkSqlParameters' => '<string>',
                    ],
                    'sparkSubmitJobDriver' => [
                        'entryPoint' => '<string>',
                        'entryPointArguments' => ['<string>', ...],
                        'sparkSubmitParameters' => '<string>',
                    ],
                ],
                'jobTags' => ['<string>', ...],
                'parameterConfiguration' => [
                    '<TemplateParameterName>' => [
                        'defaultValue' => '<string>',
                        'type' => 'NUMBER|STRING',
                    ],
                    // ...
                ],
                'releaseLabel' => '<string>',
            ],
            'kmsKeyArn' => '<string>',
            'name' => '<string>',
            'tags' => ['<string>', ...],
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

This output displays the token for the next set of job templates.

templates
Type: Array of JobTemplate structures

This output lists information about the specified job templates.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

ListManagedEndpoints

$result = $client->listManagedEndpoints([/* ... */]);
$promise = $client->listManagedEndpointsAsync([/* ... */]);

Lists managed endpoints based on a set of parameters. A managed endpoint is a gateway that connects Amazon EMR Studio to Amazon EMR on EKS so that Amazon EMR Studio can communicate with your virtual cluster.

Parameter Syntax

$result = $client->listManagedEndpoints([
    'createdAfter' => <integer || string || DateTime>,
    'createdBefore' => <integer || string || DateTime>,
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'states' => ['<string>', ...],
    'types' => ['<string>', ...],
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
createdAfter
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time after which the endpoints are created.

createdBefore
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time before which the endpoints are created.

maxResults
Type: int

The maximum number of managed endpoints that can be listed.

nextToken
Type: string

The token for the next set of managed endpoints to return.

states
Type: Array of strings

The states of the managed endpoints.

types
Type: Array of strings

The types of the managed endpoints.

virtualClusterId
Required: Yes
Type: string

The ID of the virtual cluster.

Result Syntax

[
    'endpoints' => [
        [
            'arn' => '<string>',
            'certificateArn' => '<string>',
            'certificateAuthority' => [
                'certificateArn' => '<string>',
                'certificateData' => '<string>',
            ],
            'configurationOverrides' => [
                'applicationConfiguration' => [
                    [
                        'classification' => '<string>',
                        'configurations' => [...], // RECURSIVE
                        'properties' => ['<string>', ...],
                    ],
                    // ...
                ],
                'monitoringConfiguration' => [
                    'cloudWatchMonitoringConfiguration' => [
                        'logGroupName' => '<string>',
                        'logStreamNamePrefix' => '<string>',
                    ],
                    'containerLogRotationConfiguration' => [
                        'maxFilesToKeep' => <integer>,
                        'rotationSize' => '<string>',
                    ],
                    'persistentAppUI' => 'ENABLED|DISABLED',
                    's3MonitoringConfiguration' => [
                        'logUri' => '<string>',
                    ],
                ],
            ],
            'createdAt' => <DateTime>,
            'executionRoleArn' => '<string>',
            'failureReason' => 'INTERNAL_ERROR|USER_ERROR|VALIDATION_ERROR|CLUSTER_UNAVAILABLE',
            'id' => '<string>',
            'name' => '<string>',
            'releaseLabel' => '<string>',
            'securityGroup' => '<string>',
            'serverUrl' => '<string>',
            'state' => 'CREATING|ACTIVE|TERMINATING|TERMINATED|TERMINATED_WITH_ERRORS',
            'stateDetails' => '<string>',
            'subnetIds' => ['<string>', ...],
            'tags' => ['<string>', ...],
            'type' => '<string>',
            'virtualClusterId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
endpoints
Type: Array of Endpoint structures

The managed endpoints to be listed.

nextToken
Type: string

The token for the next set of endpoints to return.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

ListSecurityConfigurations

$result = $client->listSecurityConfigurations([/* ... */]);
$promise = $client->listSecurityConfigurationsAsync([/* ... */]);

Lists security configurations based on a set of parameters. Security configurations in Amazon EMR on EKS are templates for different security setups. You can use security configurations to configure the Lake Formation integration setup. You can also create a security configuration to re-use a security setup each time you create a virtual cluster.

Parameter Syntax

$result = $client->listSecurityConfigurations([
    'createdAfter' => <integer || string || DateTime>,
    'createdBefore' => <integer || string || DateTime>,
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
createdAfter
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time after which the security configuration was created.

createdBefore
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time before which the security configuration was created.

maxResults
Type: int

The maximum number of security configurations the operation can list.

nextToken
Type: string

The token for the next set of security configurations to return.

Result Syntax

[
    'nextToken' => '<string>',
    'securityConfigurations' => [
        [
            'arn' => '<string>',
            'createdAt' => <DateTime>,
            'createdBy' => '<string>',
            'id' => '<string>',
            'name' => '<string>',
            'securityConfigurationData' => [
                'authorizationConfiguration' => [
                    'encryptionConfiguration' => [
                        'inTransitEncryptionConfiguration' => [
                            'tlsCertificateConfiguration' => [
                                'certificateProviderType' => 'PEM',
                                'privateCertificateSecretArn' => '<string>',
                                'publicCertificateSecretArn' => '<string>',
                            ],
                        ],
                    ],
                    'lakeFormationConfiguration' => [
                        'authorizedSessionTagValue' => '<string>',
                        'queryEngineRoleArn' => '<string>',
                        'secureNamespaceInfo' => [
                            'clusterId' => '<string>',
                            'namespace' => '<string>',
                        ],
                    ],
                ],
            ],
            'tags' => ['<string>', ...],
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

The token for the next set of security configurations to return.

securityConfigurations
Type: Array of SecurityConfiguration structures

The list of returned security configurations.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Lists the tags assigned to the resources.

Parameter Syntax

$result = $client->listTagsForResource([
    'resourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The ARN of tagged resources.

Result Syntax

[
    'tags' => ['<string>', ...],
]

Result Details

Members
tags
Type: Associative array of custom strings keys (String128) to strings

The tags assigned to resources.

Errors

InternalServerException:

This is an internal server exception.

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

ListVirtualClusters

$result = $client->listVirtualClusters([/* ... */]);
$promise = $client->listVirtualClustersAsync([/* ... */]);

Lists information about the specified virtual cluster. Virtual cluster is a managed entity on Amazon EMR on EKS. You can create, describe, list and delete virtual clusters. They do not consume any additional resource in your system. A single virtual cluster maps to a single Kubernetes namespace. Given this relationship, you can model virtual clusters the same way you model Kubernetes namespaces to meet your requirements.

Parameter Syntax

$result = $client->listVirtualClusters([
    'containerProviderId' => '<string>',
    'containerProviderType' => 'EKS',
    'createdAfter' => <integer || string || DateTime>,
    'createdBefore' => <integer || string || DateTime>,
    'eksAccessEntryIntegrated' => true || false,
    'maxResults' => <integer>,
    'nextToken' => '<string>',
    'states' => ['<string>', ...],
]);

Parameter Details

Members
containerProviderId
Type: string

The container provider ID of the virtual cluster.

containerProviderType
Type: string

The container provider type of the virtual cluster. Amazon EKS is the only supported type as of now.

createdAfter
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time after which the virtual clusters are created.

createdBefore
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time before which the virtual clusters are created.

eksAccessEntryIntegrated
Type: boolean

Optional Boolean that specifies whether the operation should return the virtual clusters that have the access entry integration enabled or disabled. If not specified, the operation returns all applicable virtual clusters.

maxResults
Type: int

The maximum number of virtual clusters that can be listed.

nextToken
Type: string

The token for the next set of virtual clusters to return.

states
Type: Array of strings

The states of the requested virtual clusters.

Result Syntax

[
    'nextToken' => '<string>',
    'virtualClusters' => [
        [
            'arn' => '<string>',
            'containerProvider' => [
                'id' => '<string>',
                'info' => [
                    'eksInfo' => [
                        'namespace' => '<string>',
                    ],
                ],
                'type' => 'EKS',
            ],
            'createdAt' => <DateTime>,
            'id' => '<string>',
            'name' => '<string>',
            'securityConfigurationId' => '<string>',
            'state' => 'RUNNING|TERMINATING|TERMINATED|ARRESTED',
            'tags' => ['<string>', ...],
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

This output displays the token for the next set of virtual clusters.

virtualClusters
Type: Array of VirtualCluster structures

This output lists the specified virtual clusters.

Errors

ValidationException:

There are invalid parameters in the client request.

InternalServerException:

This is an internal server exception.

StartJobRun

$result = $client->startJobRun([/* ... */]);
$promise = $client->startJobRunAsync([/* ... */]);

Starts a job run. A job run is a unit of work, such as a Spark jar, PySpark script, or SparkSQL query, that you submit to Amazon EMR on EKS.

Parameter Syntax

$result = $client->startJobRun([
    'clientToken' => '<string>', // REQUIRED
    'configurationOverrides' => [
        'applicationConfiguration' => [
            [
                'classification' => '<string>', // REQUIRED
                'configurations' => [...], // RECURSIVE
                'properties' => ['<string>', ...],
            ],
            // ...
        ],
        'monitoringConfiguration' => [
            'cloudWatchMonitoringConfiguration' => [
                'logGroupName' => '<string>', // REQUIRED
                'logStreamNamePrefix' => '<string>',
            ],
            'containerLogRotationConfiguration' => [
                'maxFilesToKeep' => <integer>, // REQUIRED
                'rotationSize' => '<string>', // REQUIRED
            ],
            'persistentAppUI' => 'ENABLED|DISABLED',
            's3MonitoringConfiguration' => [
                'logUri' => '<string>', // REQUIRED
            ],
        ],
    ],
    'executionRoleArn' => '<string>',
    'jobDriver' => [
        'sparkSqlJobDriver' => [
            'entryPoint' => '<string>',
            'sparkSqlParameters' => '<string>',
        ],
        'sparkSubmitJobDriver' => [
            'entryPoint' => '<string>', // REQUIRED
            'entryPointArguments' => ['<string>', ...],
            'sparkSubmitParameters' => '<string>',
        ],
    ],
    'jobTemplateId' => '<string>',
    'jobTemplateParameters' => ['<string>', ...],
    'name' => '<string>',
    'releaseLabel' => '<string>',
    'retryPolicyConfiguration' => [
        'maxAttempts' => <integer>, // REQUIRED
    ],
    'tags' => ['<string>', ...],
    'virtualClusterId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Required: Yes
Type: string

The client idempotency token of the job run request.

configurationOverrides
Type: ConfigurationOverrides structure

The configuration overrides for the job run.

executionRoleArn
Type: string

The execution role ARN for the job run.

jobDriver
Type: JobDriver structure

The job driver for the job run.

jobTemplateId
Type: string

The job template ID to be used to start the job run.

jobTemplateParameters
Type: Associative array of custom strings keys (TemplateParameterName) to strings

The values of job template parameters to start a job run.

name
Type: string

The name of the job run.

releaseLabel
Type: string

The Amazon EMR release version to use for the job run.

retryPolicyConfiguration
Type: RetryPolicyConfiguration structure

The retry policy configuration for the job run.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags assigned to job runs.

virtualClusterId
Required: Yes
Type: string

The virtual cluster ID for which the job run request is submitted.

Result Syntax

[
    'arn' => '<string>',
    'id' => '<string>',
    'name' => '<string>',
    'virtualClusterId' => '<string>',
]

Result Details

Members
arn
Type: string

This output lists the ARN of job run.

id
Type: string

This output displays the started job run ID.

name
Type: string

This output displays the name of the started job run.

virtualClusterId
Type: string

This output displays the virtual cluster ID for which the job run was submitted.

Errors

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

InternalServerException:

This is an internal server exception.

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Assigns tags to resources. A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value, both of which you define. Tags enable you to categorize your Amazon Web Services resources by attributes such as purpose, owner, or environment. When you have many resources of the same type, you can quickly identify a specific resource based on the tags you've assigned to it. For example, you can define a set of tags for your Amazon EMR on EKS clusters to help you track each cluster's owner and stack level. We recommend that you devise a consistent set of tag keys for each resource type. You can then search and filter the resources based on the tags that you add.

Parameter Syntax

$result = $client->tagResource([
    'resourceArn' => '<string>', // REQUIRED
    'tags' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The ARN of resources.

tags
Required: Yes
Type: Associative array of custom strings keys (String128) to strings

The tags assigned to resources.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

InternalServerException:

This is an internal server exception.

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes tags from resources.

Parameter Syntax

$result = $client->untagResource([
    'resourceArn' => '<string>', // REQUIRED
    'tagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
resourceArn
Required: Yes
Type: string

The ARN of resources.

tagKeys
Required: Yes
Type: Array of strings

The tag keys of the resources.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

InternalServerException:

This is an internal server exception.

ValidationException:

There are invalid parameters in the client request.

ResourceNotFoundException:

The specified resource was not found.

Shapes

AuthorizationConfiguration

Description

Authorization-related configuration inputs for the security configuration.

Members
encryptionConfiguration
Type: EncryptionConfiguration structure

Encryption-related configuration input for the security configuration.

lakeFormationConfiguration
Type: LakeFormationConfiguration structure

Lake Formation related configuration inputs for the security configuration.

Certificate

Description

The entity representing certificate data generated for managed endpoint.

Members
certificateArn
Type: string

The ARN of the certificate generated for managed endpoint.

certificateData
Type: string

The base64 encoded PEM certificate data generated for managed endpoint.

CloudWatchMonitoringConfiguration

Description

A configuration for CloudWatch monitoring. You can configure your jobs to send log information to CloudWatch Logs.

Members
logGroupName
Required: Yes
Type: string

The name of the log group for log publishing.

logStreamNamePrefix
Type: string

The specified name prefix for log streams.

Configuration

Description

A configuration specification to be used when provisioning virtual clusters, which can include configurations for applications and software bundled with Amazon EMR on EKS. A configuration consists of a classification, properties, and optional nested configurations. A classification refers to an application-specific configuration file. Properties are the settings you want to change in that file.

Members
classification
Required: Yes
Type: string

The classification within a configuration.

configurations
Type: Array of Configuration structures

A list of additional configurations to apply within a configuration object.

properties
Type: Associative array of custom strings keys (String1024) to strings

A set of properties specified within a configuration classification.

ConfigurationOverrides

Description

A configuration specification to be used to override existing configurations.

Members
applicationConfiguration
Type: Array of Configuration structures

The configurations for the application running by the job run.

monitoringConfiguration
Type: MonitoringConfiguration structure

The configurations for monitoring.

ContainerInfo

Description

The information about the container used for a job run or a managed endpoint.

Members
eksInfo
Type: EksInfo structure

The information about the Amazon EKS cluster.

ContainerLogRotationConfiguration

Description

The settings for container log rotation.

Members
maxFilesToKeep
Required: Yes
Type: int

The number of files to keep in container after rotation.

rotationSize
Required: Yes
Type: string

The file size at which to rotate logs. Minimum of 2KB, Maximum of 2GB.

ContainerProvider

Description

The information about the container provider.

Members
id
Required: Yes
Type: string

The ID of the container cluster.

info
Type: ContainerInfo structure

The information about the container cluster.

type
Required: Yes
Type: string

The type of the container provider. Amazon EKS is the only supported type as of now.

Credentials

Description

The structure containing the session token being returned.

Members
token
Type: string

The actual session token being returned.

EKSRequestThrottledException

Description

The request exceeded the Amazon EKS API operation limits.

Members
message
Type: string

EksInfo

Description

The information about the Amazon EKS cluster.

Members
namespace
Type: string

The namespaces of the Amazon EKS cluster.

EncryptionConfiguration

Description

Configurations related to encryption for the security configuration.

Members
inTransitEncryptionConfiguration

In-transit encryption-related input for the security configuration.

Endpoint

Description

This entity represents the endpoint that is managed by Amazon EMR on EKS.

Members
arn
Type: string

The ARN of the endpoint.

certificateArn
Type: string

The certificate ARN of the endpoint. This field is under deprecation and will be removed in future.

certificateAuthority
Type: Certificate structure

The certificate generated by emr control plane on customer behalf to secure the managed endpoint.

configurationOverrides
Type: ConfigurationOverrides structure

The configuration settings that are used to override existing configurations for endpoints.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the endpoint was created.

executionRoleArn
Type: string

The execution role ARN of the endpoint.

failureReason
Type: string

The reasons why the endpoint has failed.

id
Type: string

The ID of the endpoint.

name
Type: string

The name of the endpoint.

releaseLabel
Type: string

The EMR release version to be used for the endpoint.

securityGroup
Type: string

The security group configuration of the endpoint.

serverUrl
Type: string

The server URL of the endpoint.

state
Type: string

The state of the endpoint.

stateDetails
Type: string

Additional details of the endpoint state.

subnetIds
Type: Array of strings

The subnet IDs of the endpoint.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags of the endpoint.

type
Type: string

The type of the endpoint.

virtualClusterId
Type: string

The ID of the endpoint's virtual cluster.

InTransitEncryptionConfiguration

Description

Configurations related to in-transit encryption for the security configuration.

Members
tlsCertificateConfiguration
Type: TLSCertificateConfiguration structure

TLS certificate-related configuration input for the security configuration.

InternalServerException

Description

This is an internal server exception.

Members
message
Type: string

JobDriver

Description

Specify the driver that the job runs on. Exactly one of the two available job drivers is required, either sparkSqlJobDriver or sparkSubmitJobDriver.

Members
sparkSqlJobDriver
Type: SparkSqlJobDriver structure

The job driver for job type.

sparkSubmitJobDriver
Type: SparkSubmitJobDriver structure

The job driver parameters specified for spark submit.

JobRun

Description

This entity describes a job run. A job run is a unit of work, such as a Spark jar, PySpark script, or SparkSQL query, that you submit to Amazon EMR on EKS.

Members
arn
Type: string

The ARN of job run.

clientToken
Type: string

The client token used to start a job run.

configurationOverrides
Type: ConfigurationOverrides structure

The configuration settings that are used to override default configuration.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the job run was created.

createdBy
Type: string

The user who created the job run.

executionRoleArn
Type: string

The execution role ARN of the job run.

failureReason
Type: string

The reasons why the job run has failed.

finishedAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the job run has finished.

id
Type: string

The ID of the job run.

jobDriver
Type: JobDriver structure

Parameters of job driver for the job run.

name
Type: string

The name of the job run.

releaseLabel
Type: string

The release version of Amazon EMR.

retryPolicyConfiguration
Type: RetryPolicyConfiguration structure

The configuration of the retry policy that the job runs on.

retryPolicyExecution
Type: RetryPolicyExecution structure

The current status of the retry policy executed on the job.

state
Type: string

The state of the job run.

stateDetails
Type: string

Additional details of the job run state.

tags
Type: Associative array of custom strings keys (String128) to strings

The assigned tags of the job run.

virtualClusterId
Type: string

The ID of the job run's virtual cluster.

JobTemplate

Description

This entity describes a job template. Job template stores values of StartJobRun API request in a template and can be used to start a job run. Job template allows two use cases: avoid repeating recurring StartJobRun API request values, enforcing certain values in StartJobRun API request.

Members
arn
Type: string

The ARN of the job template.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the job template was created.

createdBy
Type: string

The user who created the job template.

decryptionError
Type: string

The error message in case the decryption of job template fails.

id
Type: string

The ID of the job template.

jobTemplateData
Required: Yes
Type: JobTemplateData structure

The job template data which holds values of StartJobRun API request.

kmsKeyArn
Type: string

The KMS key ARN used to encrypt the job template.

name
Type: string

The name of the job template.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags assigned to the job template.

JobTemplateData

Description

The values of StartJobRun API requests used in job runs started using the job template.

Members
configurationOverrides

The configuration settings that are used to override defaults configuration.

executionRoleArn
Required: Yes
Type: string

The execution role ARN of the job run.

jobDriver
Required: Yes
Type: JobDriver structure

Specify the driver that the job runs on. Exactly one of the two available job drivers is required, either sparkSqlJobDriver or sparkSubmitJobDriver.

jobTags
Type: Associative array of custom strings keys (String128) to strings

The tags assigned to jobs started using the job template.

parameterConfiguration
Type: Associative array of custom strings keys (TemplateParameterName) to TemplateParameterConfiguration structures

The configuration of parameters existing in the job template.

releaseLabel
Required: Yes
Type: string

The release version of Amazon EMR.

LakeFormationConfiguration

Description

Lake Formation related configuration inputs for the security configuration.

Members
authorizedSessionTagValue
Type: string

The session tag to authorize Amazon EMR on EKS for API calls to Lake Formation.

queryEngineRoleArn
Type: string

The query engine IAM role ARN that is tied to the secure Spark job. The QueryEngine role assumes the JobExecutionRole to execute all the Lake Formation calls.

secureNamespaceInfo
Type: SecureNamespaceInfo structure

The namespace input of the system job.

MonitoringConfiguration

Description

Configuration setting for monitoring.

Members
cloudWatchMonitoringConfiguration

Monitoring configurations for CloudWatch.

containerLogRotationConfiguration

Enable or disable container log rotation.

persistentAppUI
Type: string

Monitoring configurations for the persistent application UI.

s3MonitoringConfiguration
Type: S3MonitoringConfiguration structure

Amazon S3 configuration for monitoring log publishing.

ParametricCloudWatchMonitoringConfiguration

Description

A configuration for CloudWatch monitoring. You can configure your jobs to send log information to CloudWatch Logs. This data type allows job template parameters to be specified within.

Members
logGroupName
Type: string

The name of the log group for log publishing.

logStreamNamePrefix
Type: string

The specified name prefix for log streams.

ParametricConfigurationOverrides

Description

A configuration specification to be used to override existing configurations. This data type allows job template parameters to be specified within.

Members
applicationConfiguration
Type: Array of Configuration structures

The configurations for the application running by the job run.

monitoringConfiguration

The configurations for monitoring.

ParametricMonitoringConfiguration

Description

Configuration setting for monitoring. This data type allows job template parameters to be specified within.

Members
cloudWatchMonitoringConfiguration

Monitoring configurations for CloudWatch.

persistentAppUI
Type: string

Monitoring configurations for the persistent application UI.

s3MonitoringConfiguration

Amazon S3 configuration for monitoring log publishing.

ParametricS3MonitoringConfiguration

Description

Amazon S3 configuration for monitoring log publishing. You can configure your jobs to send log information to Amazon S3. This data type allows job template parameters to be specified within.

Members
logUri
Type: string

Amazon S3 destination URI for log publishing.

RequestThrottledException

Description

The request throttled.

Members
message
Type: string

ResourceNotFoundException

Description

The specified resource was not found.

Members
message
Type: string

RetryPolicyConfiguration

Description

The configuration of the retry policy that the job runs on.

Members
maxAttempts
Required: Yes
Type: int

The maximum number of attempts on the job's driver.

RetryPolicyExecution

Description

The current status of the retry policy executed on the job.

Members
currentAttemptCount
Required: Yes
Type: int

The current number of attempts made on the driver of the job.

S3MonitoringConfiguration

Description

Amazon S3 configuration for monitoring log publishing. You can configure your jobs to send log information to Amazon S3.

Members
logUri
Required: Yes
Type: string

Amazon S3 destination URI for log publishing.

SecureNamespaceInfo

Description

Namespace inputs for the system job.

Members
clusterId
Type: string

The ID of the Amazon EKS cluster where Amazon EMR on EKS jobs run.

namespace
Type: string

The namespace of the Amazon EKS cluster where the system jobs run.

SecurityConfiguration

Description

Inputs related to the security configuration. Security configurations in Amazon EMR on EKS are templates for different security setups. You can use security configurations to configure the Lake Formation integration setup. You can also create a security configuration to re-use a security setup each time you create a virtual cluster.

Members
arn
Type: string

The ARN (Amazon Resource Name) of the security configuration.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time that the job run was created.

createdBy
Type: string

The user who created the job run.

id
Type: string

The ID of the security configuration.

name
Type: string

The name of the security configuration.

securityConfigurationData
Type: SecurityConfigurationData structure

Security configuration inputs for the request.

tags
Type: Associative array of custom strings keys (String128) to strings

The tags to assign to the security configuration.

SecurityConfigurationData

Description

Configurations related to the security configuration for the request.

Members
authorizationConfiguration
Type: AuthorizationConfiguration structure

Authorization-related configuration input for the security configuration.

SparkSqlJobDriver

Description

The job driver for job type.

Members
entryPoint
Type: string

The SQL file to be executed.

sparkSqlParameters
Type: string

The Spark parameters to be included in the Spark SQL command.

SparkSubmitJobDriver

Description

The information about job driver for Spark submit.

Members
entryPoint
Required: Yes
Type: string

The entry point of job application.

entryPointArguments
Type: Array of strings

The arguments for job application.

sparkSubmitParameters
Type: string

The Spark submit parameters that are used for job runs.

TLSCertificateConfiguration

Description

Configurations related to the TLS certificate for the security configuration.

Members
certificateProviderType
Type: string

The TLS certificate type. Acceptable values: PEM or Custom.

privateCertificateSecretArn
Type: string

Secrets Manager ARN that contains the private TLS certificate contents, used for communication between the user job and the system job.

publicCertificateSecretArn
Type: string

Secrets Manager ARN that contains the public TLS certificate contents, used for communication between the user job and the system job.

TemplateParameterConfiguration

Description

The configuration of a job template parameter.

Members
defaultValue
Type: string

The default value for the job template parameter.

type
Type: string

The type of the job template parameter. Allowed values are: ‘STRING’, ‘NUMBER’.

ValidationException

Description

There are invalid parameters in the client request.

Members
message
Type: string

VirtualCluster

Description

This entity describes a virtual cluster. A virtual cluster is a Kubernetes namespace that Amazon EMR is registered with. Amazon EMR uses virtual clusters to run jobs and host endpoints. Multiple virtual clusters can be backed by the same physical cluster. However, each virtual cluster maps to one namespace on an Amazon EKS cluster. Virtual clusters do not create any active resources that contribute to your bill or that require lifecycle management outside the service.

Members
arn
Type: string

The ARN of the virtual cluster.

containerProvider
Type: ContainerProvider structure

The container provider of the virtual cluster.

createdAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the virtual cluster is created.

id
Type: string

The ID of the virtual cluster.

name
Type: string

The name of the virtual cluster.

securityConfigurationId
Type: string

The ID of the security configuration.

state
Type: string

The state of the virtual cluster.

tags
Type: Associative array of custom strings keys (String128) to strings

The assigned tags of the virtual cluster.