Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 如何在google数据流管道中设置diskSourceImage_Google Cloud Platform_Google Cloud Dataflow - Fatal编程技术网

Google cloud platform 如何在google数据流管道中设置diskSourceImage

Google cloud platform 如何在google数据流管道中设置diskSourceImage,google-cloud-platform,google-cloud-dataflow,Google Cloud Platform,Google Cloud Dataflow,我一直在尝试使用定制的图像来运行我的google数据流管道。根据本文提供的信息,我已经测试了以下代码片段: DataflowPipelineOptions options = PipelineOptionsFactory.create().as(DataflowPipelineOptions.class); ... options.setDiskSourceImage("ubuntu-1504-vivid-v20150911"); options.setDiskSourceImage("proj

我一直在尝试使用定制的图像来运行我的google数据流管道。根据本文提供的信息,我已经测试了以下代码片段:

DataflowPipelineOptions options = PipelineOptionsFactory.create().as(DataflowPipelineOptions.class);
...
options.setDiskSourceImage("ubuntu-1504-vivid-v20150911");
options.setDiskSourceImage("projects/ubuntu-os-cloud/global/images/ubuntu-1504-vivid-v20150911");
options.setDiskSourceImage("https://www.googleapis.com/compute/beta/projects/ubuntu-os-cloud/global/images/ubuntu-1504-vivid-v20150911");
上述所有尝试都导致我的管道中出现以下错误:

(b9c7b66a676906f4):无法创建虚拟机。原因:(b9c7b66a67690aef):错误:消息:字段“resource.disks[0]。initializeParams.sourceImage':“[Edit]”的值无效。必须是指向正确类型HTTP代码为400的计算资源的URL


setDiskSourceImage有一个微妙的问题——它使用“beta”而不是当前的计算引擎“v1”版本。如果您尝试以下操作,它应该会起作用:

options.setDiskSourceImage("https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/images/ubuntu-1504-vivid-v20150911");

在数据流中使用自定义磁盘映像不是可行的选择。diskSourceImage标志已弃用,将在未来的SDK版本中删除。不再支持它的原因是,数据流服务依赖于VM映像中的版本化资源。所以数据流需要控制VM映像,以便我们可以根据需要对其进行升级。如果用户提供自己的自定义图像,我们就无法使它们与数据流服务的要求保持同步

如果自定义VM映像基于数据流映像,那么在下一版本的数据流VM映像之前,您将能够使用该自定义映像执行作业。没有一种合理的方法可以使自定义映像与Dataflow的VM映像保持同步,从而使其保持工作状态


如果您想定制虚拟机映像,请告知原因(例如,通过dataflow向我们发送电子邮件)-feedback@google.com所以我们可以建议另一种解决方案,或者在将来考虑支持你的用例。

实际上意识到它与图像的别名起作用。(由
gcloud compute images list
命令给出。这并不能解决自定义图像的问题,因为似乎无法设置别名:如果将“beta”替换为“v1”,是否解决了问题在URL中?@SamMcVeety是的!成功了。我从控制台复制了URL,但将beta更改为v1解决了问题。我可以为数据流运行自定义图像。谢谢。将其作为答案写下来,我会确认。完美,我可以确认它也适用于自定义图像。