Creación y uso de una plantilla de trabajo para iniciar la ejecución de un trabajo - Amazon EMR

Creación y uso de una plantilla de trabajo para iniciar la ejecución de un trabajo

En esta sección, se describe la creación de una plantilla de trabajo y su uso para iniciar la ejecución de un trabajo con la AWS Command Line Interface (AWS CLI).

Para crear una nueva plantilla de trabajo

  1. Cree un archivo create-job-template-request.json y especifique los parámetros necesarios para la plantilla de trabajo, como se muestra en el siguiente archivo JSON de ejemplo. Para obtener más información sobre todos los parámetros disponibles, consulte la API CreateJobTemplate.

    La mayoría de los valores necesarios para la API StartJobRun también lo son para jobTemplateData. Si desea utilizar marcadores de posición para cualquier parámetro y proporcionar valores al invocar StartJobRun mediante una plantilla de trabajo, consulte la siguiente sección sobre los parámetros de la plantilla de trabajo.

    { "name": "mytemplate", "jobTemplateData": { "executionRoleArn": "iam_role_arn_for_job_execution", "releaseLabel": "emr-6.7.0-latest", "jobDriver": { "sparkSubmitJobDriver": { "entryPoint": "entryPoint_location", "entryPointArguments": [ "argument1","argument2",...], "sparkSubmitParameters": "--class <main_class> --conf spark.executor.instances=2 --conf spark.executor.memory=2G --conf spark.executor.cores=2 --conf spark.driver.cores=1" } }, "configurationOverrides": { "applicationConfiguration": [ { "classification": "spark-defaults", "properties": { "spark.driver.memory":"2G" } } ], "monitoringConfiguration": { "persistentAppUI": "ENABLED", "cloudWatchMonitoringConfiguration": { "logGroupName": "my_log_group", "logStreamNamePrefix": "log_stream_prefix" }, "s3MonitoringConfiguration": { "logUri": "s3://my_s3_log_location/" } } } } }
  2. Utilice el comando create-job-template con una ruta al archivo create-job-template-request.json almacenado localmente.

    aws emr-containers create-job-template \ --cli-input-json file://./create-job-template-request.json

Para iniciar un trabajo con una plantilla de trabajo

Especifique el ID del clúster virtual, el ID de la plantilla de trabajo y el nombre del trabajo en el comando StartJobRun, tal como se muestra en el siguiente ejemplo.

aws emr-containers start-job-run \ --virtual-cluster-id 123456 \ --name myjob \ --job-template-id 1234abcd