0

我在 GCE 中建立了一个小型集群来使用它,但是尽管创建了一些实例,但有些故障会阻止它正常工作。我正在按照https://cloud.google.com/hadoop/downloads中的步骤进行操作

到目前为止,我正在使用(截至目前)最新版本的 gcloud(143.0.0)和 bdutil(1.3.5),全新安装。

./bdutil deploy -e extensions/spark/spark_env.sh

使用debian-8作为镜像(因为 bdutil 仍然使用 debian-7-backports)。

在某个时候我得到了

Fri Feb 10 16:19:34 CET 2017: Command failed: wait ${SUBPROC} on line 326.
Fri Feb 10 16:19:34 CET 2017: Exit code of failed command: 1

完整的调试输出在https://gist.github.com/jlorper/4299a816fc0b140575ed70fe0da1f272 (项目 ID 和存储桶名称已更改)

创建了实例,但甚至没有安装 spark。在 ssh 之后,我设法在 master 中运行 spark 安装和启动 hadoop 命令。但是在启动时它失败了spark-shell

17/02/10 15:53:20 INFO gcs.GoogleHadoopFileSystemBase: GHFS version: 1.4.5-hadoop1
17/02/10 15:53:20 INFO gcsio.FileSystemBackedDirectoryListCache: Creating '/hadoop_gcs_connector_metadata_cache' with createDirectories()...
java.lang.RuntimeException: java.lang.RuntimeException: java.nio.file.AccessDeniedException: /hadoop_gcs_connector_metadata_cache
    at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522)

而不能import sparkSQL。对于我所阅读的内容,一切都应该自动启动。

到目前为止,我有点迷茫,不知道还能做什么。我错过了任何步骤吗?是否有任何命令错误?提前致谢。

更新:已解决

正如在接受的解决方案中指出的那样,我克隆了 repo 并且集群创建没有问题。当试图开始spark-shell虽然它给了

java.lang.RuntimeException: java.io.IOException: GoogleHadoopFileSystem has been closed or not initialized.`

对我来说,这听起来像是连接器没有正确初始化,所以在运行之后

 ./bdutil --env_var_files extensions/spark/spark_env.sh,bigquery_env.sh run_command_group install_connectors

它按预期工作。

4

1 回答 1

0

https://cloud.google.com/hadoop/downloads上的最后一个 bdutil 版本有点陈旧,我建议在 github 上使用 bdutil 的最新版本:https ://github.com/GoogleCloudPlatform/bdutil .

于 2017-02-10T17:02:28.450 回答