ML引擎上的Tensorflow:副本主机0以非零状态1退出

时间:2018-03-22 17:25:16

标签: tensorflow google-cloud-ml

我在ML Engine上启动了tensorflow任务,大约2分钟后,我不断收到错误消息“副本主机0退出时非零状态为1。

(该任务顺便使用ml-engine local。)

问题:是否有任何地方或日志文件,我在哪里可以看到有关发生的事情的进一步信息?

日志查看器只提供以下内容:

{
 insertId:  "ibal72g1rxhr63"  
 logName:  "projects/**-***-ml/logs/ml.googleapis.com%2Fcnn180322_170649"  
 receiveTimestamp:  "2018-03-22T17:08:38.344282172Z"  
 resource: {
  labels: {
   job_id:  "cnn180322_170649"    
   project_id:  "**-***-ml"    
   task_name:  "service"    
  }
  type:  "ml_job"   
 }
 severity:  "ERROR"  
 textPayload:  "The replica master 0 exited with a non-zero status of 1."  
 timestamp:  "2018-03-22T17:08:38.344282172Z"  
}

提前感谢任何指针!

2 个答案:

答案 0 :(得分:2)

明显缺少日志文件的解决方案缺少写入日志的权限。

在IAM&amp; admin,添加 Logs Writer 角色,帐户cloud-ml-service@<project_id>.iam.gserviceaccount.com解决了问题,并使主人和工作人员能够按预期将日志消息写入Stackdriver。

有关类似讨论和其他一些信息,请参阅Stackdriver logs not available for Cloud ML jobs since migration to V2

感谢所有人提供意见!

答案 1 :(得分:0)

Stackdriver代理可以监控许多指标并提供有关ML引擎的详细信息。有关详细信息,请参阅here。 AFAIK,正常事件记录和Stackdriver代理是监视GCP上ML作业的唯一工具。

请注意,Tensorflow中使用的Python 2.7适用于相对导入。您可能在本地使用Python 3.4,它使用绝对导入。这就是为什么它在本地工作但不在Google Cloud上工作的原因。您可以参考this post来修改您的import语句。因此,如果在代码顶部包含行“from __future__ import absolute_import”,则在“将tensorflow导入为tf”行之前,您的代码可能会起作用。