【问题标题】:How do I specify multiple shell scripts as initialization actions for Dataproc cluster creation?如何指定多个 shell 脚本作为 Dataproc 集群创建的初始化操作?
【发布时间】:2021-04-27 05:40:04
【问题描述】:

Google 的文档说 --initialization-actions 采用 GCS 网址列表。如果我指定一个:

--initialization-actions 'gs://my-project/myscript.sh'

这很好用。

--initialization-actions 'gs://my-project/myscript.sh', 'gs://my-project/myscript2.sh'

给出以下错误:

INVALID_ARGUMENT: Google Cloud Storage object does not exist 'gs://my-project/myscript.sh gs://my-project/myscript2.sh'

相同,不带引号,逗号后带或不带空格。

我尝试用方括号封装:

--initialization-actions ['gs://my-project/myscript.sh', 'gs://my-project/myscript2.sh']

而这次的错误是:

Executable '['gs://my-project/myscript.sh', 'gs://my-project/myscript2.sh']' URI must begin with 'gs://'

我可以确认百分之一百万我使用的路径是有效的,并且两个对象都是有效的 shell 脚本。我有什么明显的遗漏吗?

【问题讨论】:

    标签: google-cloud-platform google-cloud-storage google-cloud-dataproc


    【解决方案1】:

    您应该删除脚本之间的空格:

    --initialization-actions gs://my-project/myscript.sh,gs://my-project/myscript2.sh
    

    【讨论】:

      【解决方案2】:

      刚刚想通了,格式需要是:

      --initialization-actions 'gs://my-project/myscript.sh, gs://my-project/myscript2.sh'
      

      将两个脚本放在一组引号中,用逗号分隔。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-02-16
        • 1970-01-01
        • 2020-12-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-10
        相关资源
        最近更新 更多