设置 fs.defaultFS 属性 时无法创建 Dataproc 集群?

Cannot create a Dataproc cluster when setting the fs.defaultFS property?

这已经是之前讨论的对象 post, however, I'm not convinced with the answers as the Google docs 指定可以创建集群设置 fs.defaultFS 属性。此外,即使可以通过编程方式设置此 属性,但有时从命令行设置它会更方便。

所以我想知道为什么传递给我的集群创建命令的以下选项不起作用:--properties core:fs.defaultFS=gs://my-bucket?请注意,我没有包含所有参数,因为我 运行 命令没有前面的标志,它成功创建了集群。然而,当传递这个时,我得到:"failed: Cannot start master: Insufficientnumber of DataNodes reporting."

如果有人通过设置 fs.defaultFS 成功创建了一个 dataproc 集群,那该多好?谢谢

确实,由于对实际 HDFS 的某些依赖性,仍然存在已知问题;文档并不是要暗示在集群创建时将 fs.defaultFS 设置为 GCS 路径会起作用,而是简单地提供一个 属性 出现在 core-site.xml 中的方便示例;例如,理论上可以将 fs.defaultFS 设置为 不同的 预先存在的 HDFS 集群。我已经申请更改文档中的示例以避免混淆。

两个选项:

  1. 只需在作业提交时使用每个作业的属性覆盖 fs.defaultFS
  2. 通过显式设置 fs.defaultFS 使用初始化操作而不是群集属性来解决一些已知问题。

选项 1 更容易理解,因为集群级别的 HDFS 依赖项不会改变。选项 2 之所以有效,是因为大多数不兼容仅发生在初始启动期间,并且初始化操作 运行 在相关守护进程已经启动之后。要覆盖 init 操作中的设置,您可以使用 bdconfig:

bdconfig set_property \
    --name 'fs.defaultFS' \
    --value 'gs://my-bucket' \
    --configuration_file /etc/hadoop/conf/core-site.xml \
    --clobber