如何使用 AWS CloudFormation 在 AWS Glue 任務中設定特殊參數?

1 分的閱讀內容
0

我想要為 AWS Glue 中的任務啟用特殊參數,例如 --enable-metrics。但是,當我嘗試執行我的任務時,我從 AWS CloudFormation 中收到範本驗證或「空值」錯誤。我該如何解決這些錯誤?

簡短說明

若要在 AWS Glue 中為您的任務設定特殊參數,您必須在 CloudFormation 中為 AWS::Glue::Job 資源的 DefaultArguments 屬性提供鍵值組。如果您僅在任務定義中提供鍵值,CloudFormation 會傳回驗證錯誤。

解決方案

1.    在 CloudFormation 範本中,將您的特殊參數值設為空字串,以取得任務定義的 DefaultArguments 屬性。

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

注意事項:在前述 JSON 和 YAML 範本的範例中,--enable-metrics 的值會設為空字串。空字串會驗證範本,並啟動使用特殊參數配置的資源。

2.    如需啟動您的特殊參數,請執行您的任務


AWS 官方
AWS 官方已更新 2 年前