如何在不使用时终止 dataproc 集群?
How to terminate dataproc cluster when not in use?
我有一个接受用户作业的系统。这些作业 运行 作为 dataproc 上的 spark 作业。白天 运行ning 有很多工作,但晚上可能就没有了。我想知道在这些停机期间终止集群并在收到新作业后重新启动或重新创建集群的最佳方法是什么?这里的目标是在不活动期间不收费。
您可以使用以下两种主要方法之一:
- 将集群缩小到最少数量的工人(2 个工人)[1]
- 删除集群,稍后重新创建[2]
当您使用 Google Cloud Storage Connector [3] 而不是 HDFS 来存储数据时,这两种方法效果最佳。
要缩减集群规模,您可以在非高峰时段运行执行此命令:
gcloud dataproc clusters update <cluster-name> --num-workers <new-number-of-workers>
要删除非高峰时段的集群,请使用:
gcloud dataproc clusters delete my-dataproc-cluster-name
使用 Dataproc 完全支持的 Preemptible VM [4],您可以将 Dataproc 的持续成本降低多达 70%。
[3]Google Cloud Storage Connector for Spark/Hadoop
[4] Preemptible VMs
Dataproc 现在原生支持 scheduled cluster deletion。您可以安排在特定时间(例如晚上 7 点)或空闲一段时间(例如 1 小时)删除集群。
您还可以查看 cluster autoscaling。
https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/scheduled-deletion
看起来您正在寻找 --max-idle 可在集群创建期间使用的选项。
来自文档:
--max-idle :集群进入空闲状态到集群开始删除的时长。以 IntegerUnit 格式提供持续时间,其中单位可以是 "s, m, h, d"(分别为秒、分钟、小时、天)。示例:“30m”或“1d”(集群空闲后 30 分钟或 1 天)。 1秒10分钟14天
--expiration-time : 开始删除集群的时间,格式为ISO 8601 datetime。以正确格式生成日期时间的一种简单方法是通过时间戳生成器。例如“2017-08-22T13:31:48-08:00”指定UTC-8:00时区的过期时间13:21:48。距当前时间 1 秒 10 分钟 距当前时间 14 天
--max-age :从提交集群创建请求到集群开始删除的时长。以 IntegerUnit 格式提供持续时间,其中单位可以是 "s, m, h, d"(分别为秒、分钟、小时、天)。示例:“30m”(从现在开始 30 分钟); “1d”(从现在起 1 天)。 1
我有一个接受用户作业的系统。这些作业 运行 作为 dataproc 上的 spark 作业。白天 运行ning 有很多工作,但晚上可能就没有了。我想知道在这些停机期间终止集群并在收到新作业后重新启动或重新创建集群的最佳方法是什么?这里的目标是在不活动期间不收费。
您可以使用以下两种主要方法之一:
- 将集群缩小到最少数量的工人(2 个工人)[1]
- 删除集群,稍后重新创建[2]
当您使用 Google Cloud Storage Connector [3] 而不是 HDFS 来存储数据时,这两种方法效果最佳。
要缩减集群规模,您可以在非高峰时段运行执行此命令:
gcloud dataproc clusters update <cluster-name> --num-workers <new-number-of-workers>
要删除非高峰时段的集群,请使用:
gcloud dataproc clusters delete my-dataproc-cluster-name
使用 Dataproc 完全支持的 Preemptible VM [4],您可以将 Dataproc 的持续成本降低多达 70%。
[3]Google Cloud Storage Connector for Spark/Hadoop
[4] Preemptible VMs
Dataproc 现在原生支持 scheduled cluster deletion。您可以安排在特定时间(例如晚上 7 点)或空闲一段时间(例如 1 小时)删除集群。
您还可以查看 cluster autoscaling。
https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/scheduled-deletion
看起来您正在寻找 --max-idle 可在集群创建期间使用的选项。
来自文档:
--max-idle :集群进入空闲状态到集群开始删除的时长。以 IntegerUnit 格式提供持续时间,其中单位可以是 "s, m, h, d"(分别为秒、分钟、小时、天)。示例:“30m”或“1d”(集群空闲后 30 分钟或 1 天)。 1秒10分钟14天
--expiration-time : 开始删除集群的时间,格式为ISO 8601 datetime。以正确格式生成日期时间的一种简单方法是通过时间戳生成器。例如“2017-08-22T13:31:48-08:00”指定UTC-8:00时区的过期时间13:21:48。距当前时间 1 秒 10 分钟 距当前时间 14 天
--max-age :从提交集群创建请求到集群开始删除的时长。以 IntegerUnit 格式提供持续时间,其中单位可以是 "s, m, h, d"(分别为秒、分钟、小时、天)。示例:“30m”(从现在开始 30 分钟); “1d”(从现在起 1 天)。 1