Kubeflow

综述

Kubeflow 任务类型,用于在Kubeflow上创建任务。 后台主要使用 kubectl 命令来创建kubeflow任务, 并持续Kubeflow上资源状态直至任务完成。 目前主要支持通过使用yaml文件来创建kubeflow任务。 如果需要发布kubeflow pipeline任务可以使用python任务类型

创建任务

  • 点击项目管理-项目名称-工作流定义,点击“创建工作流”按钮,进入 DAG 编辑页面;
  • 拖动工具栏的 Kubeflow - 图1 任务节点到画板中。

任务样例

组件图示如下:

kubeflow

首先介绍一些DS通用参数

Kubeflow组件独有的参数

  • Namespace:集群命名空间参数
  • yamlContent:CRD YAML文件内容, 如:
  1. apiVersion: "kubeflow.org/v1"
  2. kind: TFJob
  3. metadata:
  4. name: tfjob-simple
  5. namespace: kubeflow-user-example-com
  6. spec:
  7. tfReplicaSpecs:
  8. Worker:
  9. replicas: 2
  10. restartPolicy: OnFailure
  11. template:
  12. metadata:
  13. annotations:
  14. sidecar.istio.io/inject: "false"
  15. spec:
  16. containers:
  17. - name: tensorflow
  18. image: gcr.io/kubeflow-ci/tf-mnist-with-summaries:1.0
  19. command:
  20. - "python"
  21. - "/var/tf_mnist/mnist_with_summaries.py"

环境配置

配置Kubernetes环境

参考集群管理和命名空间管理

只需填写必填项即可,其他无需填写,资源管理依赖于具体Job中的YAML文件定义。

kubectl

安装kubectl,并确保kubectl能正常提交任务到kubeflow。