Google Dataproc 初始化脚本错误找不到文件

2024-03-17

我正在使用 Google Dataproc 来初始化 Jupyter 集群。 起初,我使用了 github 中提供的“dataproc-initialization-actions”,它的工作方式非常神奇。

这是文档中提供的创建集群调用:

gcloud dataproc clusters create my-dataproc-cluster \
    --metadata "JUPYTER_PORT=8124" \
    --initialization-actions \
        gs://dataproc-initialization-actions/jupyter/jupyter.sh \
    --bucket my-dataproc-bucket \
    --num-workers 2 \
    --properties spark:spark.executorEnv.PYTHONHASHSEED=0,spark:spark.yarn.am.memory=1024m \
    --worker-machine-type=n1-standard-4 \
    --master-machine-type=n1-standard-4

但我想自定义它,所以我获取了初​​始化文件并将其保存在我的 Google Storage 中(位于我尝试创建集群的同一项目下)。因此,我更改了调用以指向我的脚本,如下所示:

gcloud dataproc clusters create my-dataproc-cluster \
    --metadata "JUPYTER_PORT=8124" \
    --initialization-actions \
        gs://myjupyterbucketname/jupyter.sh \
    --bucket my-dataproc-bucket \
    --num-workers 2 \
    --properties spark:spark.executorEnv.PYTHONHASHSEED=0,spark:spark.yarn.am.memory=1024m \
    --worker-machine-type=n1-standard-4 \
    --master-machine-type=n1-standard-4

但是运行这个我得到以下错误:

Waiting on operation [projects/myprojectname/regions/global/operations/cf20
466c-ccb1-4c0c-aae6-fac0b99c9a35].
Waiting for cluster creation operation...done.
ERROR: (gcloud.dataproc.clusters.create) Operation [projects/myprojectname/
regions/global/operations/cf20466c-ccb1-4c0c-aae6-fac0b99c9a35] failed: Multiple
 Errors:
 - Google Cloud Dataproc Agent reports failure. If logs are available, they can
be found in 'gs://myjupyterbucketname/google-cloud-dataproc-metainfo/231e5160-75f3-
487c-9cc3-06a5918b77f5/my-dataproc-cluster-m'.
 - Google Cloud Dataproc Agent reports failure. If logs are available, they can
be found in 'gs://myjupyterbucketname/google-cloud-dataproc-metainfo/231e5160-75f3-
487c-9cc3-06a5918b77f5/my-dataproc-cluster-w-1'..

那么文件在那里,所以我认为这可能不是一些访问权限问题。名为“dataproc-initialization-script-0_output”的文件具有以下内容:

/usr/bin/env: bash: No such file or directory

有任何想法吗?


嗯,找到了我的答案here https://stackoverflow.com/questions/18172405/getting-error-usr-bin-env-sh-no-such-file-or-directory-when-running-command-p

事实证明,该脚本具有 Windows 行结尾,而不是 Unix 行结尾。

使用进行在线转换dos2unix http://www.fileformat.info/convert/text/dos2unix.tr现在运行良好。

在来自的帮助下@tix https://stackoverflow.com/users/4988140/tix我可以使用与集群的 SSH 连接检查该文件是否可访问(成功"gsutil cat gs://myjupyterbucketname/jupyter.sh")

并且,初始化文件已正确保存在本地目录中"/etc/google-dataproc/startup-scripts/dataproc-initialization-script-0"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Google Dataproc 初始化脚本错误找不到文件 的相关文章

随机推荐