在现有的Kubernetes上快速安装运行ML Workflow。
谁应该考虑使用Kubeflow?
根据当前功能,您应该考虑使用Kubeflow:
- 你希望在不同环境(例如本地,内部和云上)中训练/提供TensorFlow模型
- 你想使用Jupyter notebooks来管理TensorFlow训练jobs
- 你希望启动使用个人计算机上不可用的资源(例如额外的CPU或GPU)来训练jobs。
- 您希望将TensorFlow与其他进程结合使用
- 例如,你可能希望使用
tensorflow/agents
来运行模拟以生成用于训练强化学习模型的数据。
- 例如,你可能希望使用
此列表仅基于当前功能。我们正在投入大量资源来扩展功能,并积极向有兴趣贡献的公司和个人寻求合作。
设置Kubernetes
本文档假定您有一个Kubernetes集群。 如果没有,请先设置一个环境:
本地 - 有几种选择:
-
- Minikube利用
Virtual Box
或VMware Fusion
等虚拟化应用程序来托管虚拟机,并提供可在VM外部使用的CLI(命令行)。 - Minikube定义了一个完整的ISO,它包含一个已安装的最小操作系统和kubernetes。
- 如果您刚开始学习并且已经安装了一个虚拟化,则此选项可能很有用。
- Minikube利用
-
使用Microk8s的好处包括:
- 可以作为快照安装在任何Linux系统上
- 强大的隔离和更新 - 您单节点集群将会在上游Kubernetes发布后的短时间内就可以更新。
- GPU通过内置 - 例如
microk8s.enable gpu
如果您不在Linux计算机上,或者想要在受限环境中使用Kubeflow,请使用Multipass启动虚拟机。 好处包括:
- Ubuntu云图已经集成。
- 使用本机操作系统机制的轻量级
hypervisor
管理程序(例如MacOS上的Hypervisor Framework,Windows 10上的Hyper-V,Linux上的QEMU/KVM) - 无需安装单独的虚拟化应用程序。
- 您可以使用cloud-init来自定义VM(就像在云一样)
Cloud:
有关设置Kubernetes群集的更多常规信息,请参阅Kubernetes安装。如果要使用GPU,请务必遵循Kubernetes说明启用GPU。