Como defino parâmetros especiais em um trabalho do AWS Glue usando o AWS CloudFormation?

2 minuto de leitura
0

Quero habilitar parâmetros especiais, como --enable-metrics, para meu trabalho no AWS Glue. No entanto, recebo um erro de validação de modelo ou “valores nulos” do AWS CloudFormation ao tentar executar o trabalho. Como resolvo esses erros?

Breve descrição

Para definir parâmetros especiais para seu trabalho no AWS Glue, você deve fornecer um par de valores-chave para a propriedade DefaultArguments do recurso AWS::Glue::Job no CloudFormation. Se você fornecer uma chave somente na definição do trabalho, o CloudFormation retornará um erro de validação.

Resolução

1.Em seu modelo do CloudFormation, defina o valor do parâmetro especial como uma string vazia para a propriedade DefaultArguments da sua definição de trabalho.

JSON:

"MyJob": {
  "Type": "AWS::Glue::Job",
  "Properties": {
    "Command": {
      "Name": "glueetl",
      "ScriptLocation": "s3://my-test//test-job1"
    },
    "DefaultArguments": {
      "--job-bookmark-option": "job-bookmark-enable",
      "--enable-metrics": ""
    },
    "ExecutionProperty": {
      "MaxConcurrentRuns": 2
    },
    "MaxRetries": 0,
    "Name": "cf-job3",
    "Role": {
      "Ref": "MyJobRole"
    }
  }
}

YAML:

MyJob:
  Type: 'AWS::Glue::Job'
  Properties:
    Command:
      Name: glueetl
      ScriptLocation: 's3://my-test//test-job1'
    DefaultArguments:
      '--job-bookmark-option': job-bookmark-enable
      '--enable-metrics': ''
    ExecutionProperty:
      MaxConcurrentRuns:
    MaxRetries: 0
    Name: cf-job3
    Role: !Ref MyJobRole

Observação: no exemplo anterior de modelos JSON e YAML, o valor de --enable-metrics é definido como uma string vazia. A string vazia valida o modelo e inicia o recurso configurado com o parâmetro especial.

2.Para ativar o parâmetro especial, execute o trabalho.


AWS OFICIAL
AWS OFICIALAtualizada há 2 anos