Google 云新集群生成失败。

Google Cloud new cluster generation failure.

我一直在尝试使用 Web UI 和以下命令创建一个新集群: gcloud dataproc clusters create cluster-2 --zone europe-west1-b --master-machine-type n1-standard-1 --master-boot-disk-size 50 --num-workers 2 --worker-machine-type n1-standard-1 --worker-boot-disk-size 50 --project <project-name>

集群由一个主节点和两个工作节点组成,是一个非常小的集群。虚拟机已生成并且正常 运行ning。但是,集群生成失败。

集群生成期间显示的错误消息将我指向文件 "dataproc-startup-script_output"。我发现的唯一错误消息是该文件中的 Error: "--max_wait_seconds" does not look like a port

我的虚拟机数量是5台,单机可以创建,运行成功。在最近(几天前),我能够毫无问题地创建一个集群。但是,该集群现在已被删除。一个人可以创建多少个集群有限制吗?

总结通过电子邮件线程单独跟进的发现,一般情况下:

  1. 失败需要超过 10 分钟,并且
  2. 您完全更改了项目网络设置

那么一个潜在的罪魁祸首是网络配置错误。一般来说,Dataproc 集群需要完全内部 IP 网络相互访问,并且通常在您的 Google Compute Engine 网络中有一个防火墙规则,它打开所有 udp:1-65535,tcp:1-65535,icmp 但仅限于内部 IP "source IP range".

在这种情况下,由于 typo/misconfiguration,项目确实缺少必要的规则,其中 default-allow-internal 规则意外地限制了源 IP 范围,完整掩码 /32.

如果您不进行高级 VPN 配置或跨项目网络,重新添加一个简单的 10.0.0.0/8 udp:1-65535;tcp:1-65535;icmp 防火墙规则应该可以。如果你正在做更高级的网络,你可能希望将源范围限制得更具体一些,例如,如果你的网络的 IPv4 范围是 10.128.0.0/16 那么你应该设置你的 "allow internal"防火墙也使用 10.128.0.0/16 源范围。

通过 cloud console 添加防火墙规则为选择适用的源 IP 范围提供了方便的方法,当您的子网手动枚举很混乱时尤其方便。