将spark-r作业添加到dataproc工作流程模板

问题描述 投票:1回答:1

我试图以两种不同的方式将spark-r作业步骤添加到我的工作流程模板中。

使用gcloud命令:

gcloud beta dataproc workflow-templates add-job spark-r gs://path/to/script.R \
    --step-id=<stepid> --workflow-template=<templateid>

或者通过导入YAML定义:

jobs:
- sparkRJob:
    mainRFileUri: gs://path/to/script.R
  stepId: <stepid>
placement:
  managedCluster:
    clusterName: cluster-sparkr
    config:
      gceClusterConfig:
        zoneUri: europe-west4-b
      masterConfig:
        machineTypeUri: n1-standard-4
      workerConfig:
        machineTypeUri: n1-standard-4
        numInstances: 4

但是,这两种方式都会导致以下错误:

INVALID_ARGUMENT:作业“”必须提供作业定义

这让我有点困惑的是我到底错过了什么。

google-cloud-platform workflow google-cloud-dataproc
1个回答
1
投票

我测试了你的YAML定义,它对我有用:

gcloud beta dataproc workflow-templates instantiate-from-file --file <definition.yaml>

此外,使用gcloud命令成功创建了Spark R作业的工作流模板:

gcloud beta dataproc workflow-templates create my-test-wf-01
gcloud beta dataproc workflow-templates add-job spark-r gs://path/to/script.R \
    --step-id=my-test-step-id --workflow-template=my-test-wf-01

上面第二个命令的输出:

createTime: '2019-04-15T16:49:06.346Z'
id: my-test-wf-01
jobs:
- sparkRJob:
    mainRFileUri: gs://path/to/script.R
  stepId: my-test-step-id
© www.soinside.com 2019 - 2024. All rights reserved.