简体   繁体   English

每晚TF /克隆的TFX-如何为Kubeflow管理图像?

[英]Nightly TF / Cloned TFX - how to manage Image for Kubeflow?

When I access my Kubeflow endpoint to upload and run a pipeline using a cloned TFX, the process starts hanging at the first step producing this message: 当我访问Kubeflow端点以使用克隆的TFX上载并运行管道时,该过程开始于挂起的第一步,并显示以下消息:

"This step is in Pending state with this message: ImagePullBackOff: Back-off pulling image "tensorflow/tfx:0.14.0dev", which is the same image used in the created pipeline yaml file. “此步骤通过以下消息处于待处理状态:ImagePullBackOff:后退拉取图像“ tensorflow / tfx:0.14.0dev”,该图像与在创建的管道yaml文件中使用的图像相同。

My overall goal is to build an ExampleGen for tfrecords files, just as described in the guide here . 我的总体目标是建立tfrecords文件的ExampleGen,正如指南中所描述这里 The most recent tfx version in pip is 0.13 and does not yet include the necessary functions . pip中最新的tfx版本是0.13, 尚未包含必需的功能 For this reason, I install tf-nightly and clone/build tfx (dev-version 0.14). 因此,我每晚安装tf并克隆/构建tfx(dev版本0.14)。 Doing so and installing some additional modules, eg tensorflow_data_validation, I can now create my pipeline using the tfx components and including an ExampleGen for tfrecords files. 这样做并安装一些其他模块,例如tensorflow_data_validation,我现在可以使用tfx组件并为tfrecords文件包括ExampleGen来创建管道。 I finally build the pipeline with the KubeflowRunner. 我终于用KubeflowRunner构建了管道。 Yet this yields the error stated above. 但这会产生上述错误。

I now wonder about an appropriate way to address this. 我现在想知道解决这个问题的适当方法。 I guess one way would be to build an image myself with the specified versions, but maybe there is a more practical way? 我想一种方法是使用指定的版本自己构建映像,但是也许有更实用的方法吗?

TFX doesn't have a nightly image build as yet. TFX尚无每晚图像生成。 Currently, it defaults to using the image tagged with the version of the library you use to build the pipeline, hence the reason the tag is 0.14dev0 . 当前,默认情况下,它默认使用标记有用于构建管道的库版本的图像,因此标记的原因是0.14dev0 This is the current version at HEAD, see here: https://github.com/tensorflow/tfx/blob/a1f43af5e66f9548ae73eb64813509445843eb53/tfx/version.py#L17 这是HEAD的当前版本,请参见此处: https : //github.com/tensorflow/tfx/blob/a1f43af5e66f9548ae73eb64813509445843eb53/tfx/ve​​rsion.py#L17

You can build your own image and push it somewhere, for example gcr.io/your-gcp-project/your-image-name:tag , and specify that the pipeline use this image instead, by customizing the tfx_image argument to the pipeline: https://github.com/tensorflow/tfx/blob/74f9b6ab26c51ebbfb5d17826c5d5288a67dcf85/tfx/orchestration/kubeflow/base_component.py#L54 您可以构建自己的映像并将其推gcr.io/your-gcp-project/your-image-name:tag某处,例如gcr.io/your-gcp-project/your-image-name:tag ,并通过自定义管道的tfx_image参数,指定管道使用该映像,而不是: https://github.com/tensorflow/tfx/blob/74f9b6ab26c51ebbfb5d17826c5d5288a67dcf85/tfx/orchestration/kubeflow/base_component.py#L54

See for example: https://github.com/tensorflow/tfx/blob/b3796fc37bd4331a4e964c822502ba5096ad4bb6/tfx/examples/chicago_taxi_pipeline/taxi_pipeline_kubeflow.py#L243 参见例如: https : //github.com/tensorflow/tfx/blob/b3796fc37bd4331a4e964c822502ba5096ad4bb6/tfx/examples/chicago_taxi_pipeline/taxi_pipeline_kubeflow.py#L243

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM