【发布时间】:2019-04-09 01:07:12
【问题描述】:
我在 Dataproc 上创建了一个集群,效果很好。但是,在集群空闲一段时间(约 90 分钟)后,主节点将自动停止。这发生在我创建的每个集群上。我看到这里有一个类似的问题:Keep running Dataproc Master node
看起来是初始化动作的问题。然而,这篇文章没有给我足够的信息来解决这个问题。以下是我用来创建集群的命令:
gcloud dataproc clusters create $CLUSTER_NAME \
--project $PROJECT \
--bucket $BUCKET \
--region $REGION \
--zone $ZONE \
--master-machine-type $MASTER_MACHINE_TYPE \
--master-boot-disk-size $MASTER_DISK_SIZE \
--worker-boot-disk-size $WORKER_DISK_SIZE \
--num-workers=$NUM_WORKERS \
--initialization-actions gs://dataproc-initialization-actions/connectors/connectors.sh,gs://dataproc-initialization-actions/datalab/datalab.sh \
--metadata gcs-connector-version=$GCS_CONNECTOR_VERSION \
--metadata bigquery-connector-version=$BQ_CONNECTOR_VERSION \
--scopes cloud-platform \
--metadata JUPYTER_CONDA_PACKAGES=numpy:scipy:pandas:scikit-learn \
--optional-components=ANACONDA,JUPYTER \
--image-version=1.3
我的集群需要 BigQuery 连接器、GCS 连接器、Jupyter 和 DataLab。
如何保持我的主节点运行?谢谢。
【问题讨论】:
-
您的项目是否有任何共享的 GCE 启动脚本,这些脚本可能在空闲逻辑上具有某种自动关闭功能?您的项目中是否还有其他 GCE 虚拟机正在运行任何类型的收割机来关闭他们认为空闲的其他虚拟机?如果您转到“计算引擎”和“活动”日志下的 Stackdriver 审核日志,您应该会看到发出关闭命令的记录;是发出这些命令的计算引擎默认服务帐户吗?
-
是的,它是默认服务帐户。 (在日志的 authenticationInfo 下列出)。但是,在同一个项目上运行的其他实例具有相同的服务帐户,并且在空闲时不会自动关闭。另外,只有master节点自动停止,worker节点一直在运行..
-
我刚刚在具有相同服务帐户的同一项目下测试了在没有任何初始化操作的情况下启动集群。事实证明,集群正在运行,没有自动停止...
-
可能是Datalab自动关机(默认90分钟)cloud.google.com/datalab/docs/concepts/auto-shutdown
-
Datalab 使用环境变量
DATALAB_DISABLE_IDLE_TIMEOUT_PROCESS来控制自动关机。您可以尝试使用-e "DATALAB_DISABLE_IDLE_TIMEOUT_PROCESS=true"运行Docker 容器吗?
标签: google-cloud-platform google-cloud-dataproc google-cloud-datalab