暂停Dataproc群集 - Google Compute引擎

时间:2016-01-01 17:38:53

标签: apache-spark google-cloud-dataproc

有没有办法暂停Dataproc群集,所以当我没有主动运行spark-shell或spark-submit作业时,我不会收到账单?此链接上的群集管理说明:https://cloud.google.com/sdk/gcloud/reference/beta/dataproc/clusters/

仅显示如何销毁群集,但我已安装spark cassandra连接器API。我唯一的选择是创建一个我每次都需要安装的图像吗?

1 个答案:

答案 0 :(得分:8)

通常,最好的做法是将用于自定义群集的步骤提取到一些设置脚本中,然后使用Dataproc的initialization actions在群集部署期间轻松自动执行安装。

这样,您可以轻松地重现自定义,而无需手动参与,例如,您需要在多个并发Dataproc群集上执行相同的设置,或者想要更改机器类型,或者接收子小版本错误修复了Dataproc偶尔发布的问题。

目前确实没有官方支持暂停Dataproc集群的方式,这在很大程度上仅仅是因为能够进行可重现的集群部署以及下面列出的其他一些注意事项意味着99%的时间使用初始化更好 - 操作自定义而不是就地暂停群集。也就是说,可能存在短期黑客攻击,例如进入Google Compute Engine page,选择要暂停的Dataproc群集中的实例,然后单击“停止”而不删除它们。

计算引擎每小时收费,Dataproc的每个vCPU费用仅在基础实例运行时产生,因此当您手动“停止”实例时,尽管仍然存在Dataproc或Compute Engine的实例小时费用Dataproc仍然将群集列为“RUNNING”,尽管有警告您将看到是否转到Dataproc群集摘要页面的“VM Instances”选项卡。

应该然后只需点击Google Compute Engine page页面中的“开始”即可让群集再次运行,但重要的是要考虑以下注意事项:

  1. 群集可能偶尔会再次无法启动到健康状态;任何使用本地SSD的东西都无法停止并再次干净利落,但除此之外,Hadoop守护程序可能因任何原因而无法刷新重要的东西,如果关闭不顺序,或者甚至用户安装的设置可能已经破坏以未知的方式启动过程。
  2. 即使虚拟机被“停止”,它们依赖于剩余的基础Persistent Disks,因此即使在“暂停”的情况下,您仍会继续收取费用;如果我们假设每GB每月0.04美元,并且每个Dataproc节点默认500GB磁盘,则每个实例继续支付〜$ 0.028 /小时;一般来说,只需将数据放入Google云端存储以进行长期存储,而不是试图将其长期保存在Dataproc群集的HDFS上,您的数据将更易于访问且更便宜。
  3. 如果您过分依赖手动群集设置,那么如果您需要调整群集大小,更改机器类型或更改区域等,重新执行操作将变得更加困难。使用Dataproc的初始化操作,您可以使用Dataproc's cluster scaling feature调整集群大小,并自动为新创建的工作程序运行初始化操作。