Wie lege ich spezielle Parameter in einem AWS Glue-Job mit AWS CloudFormation fest?

Lesedauer: 2 Minute
0

Ich möchte spezielle Parameter wie --enable-metrics für meinen Job in AWS Glue aktivieren. Wenn ich versuche, meinen Job auszuführen, erhalte ich jedoch von AWS CloudFormation die Fehlermeldung „Vorlagenvalidierung“ oder „Nullwerte“. Wie behebe ich diese Fehler?

Kurzbeschreibung

Um spezielle Parameter für Ihren Job in AWS Glue festzulegen, müssen Sie ein Schlüssel-Wert-Paar für die Eigenschaft DefaultArguments der Ressource AWS::Glue::Job in CloudFormation angeben. Wenn Sie einen Schlüssel nur in Ihrer Jobdefinition angeben, gibt CloudFormation einen Überprüfungsfehler zurück.

Behebung

  1. Legen Sie in Ihrer CloudFormation-Vorlage den Wert Ihres speziellen Parameters auf eine leere Zeichenfolge für die Eigenschaft DefaultArguments Ihrer Jobdefinition fest.

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

**Hinweis:**In den vorherigen JSON- und YAML-Vorlagen ist der Wert von --enable-metrics auf eine leere Zeichenfolge gesetzt. Die leere Zeichenfolge validiert die Vorlage und startet die Ressource, die mit dem speziellen Parameter konfiguriert ist.

  1. Führen Sie Ihren Job aus, um Ihren speziellen Parameter zu aktivieren.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren