Starting from v1.3, this training operator provides Kubernetes custom resources that makes it easy to run distributed or non-distributed TensorFlow/PyTorch/Apache MXNet/XGBoost/MPI jobs on Kubernetes.
Note: Before v1.2 release, Kubeflow Training Operator only supports TFJob on Kubernetes.
- For a complete reference of the custom resource definitions, please refer to the API Definition.
- For details on API design, please refer to the v1alpha2 design doc.
- For details of all-in-one operator design, please refer to the All-in-one Kubeflow Training Operator
- For details on its observability, please refer to the monitoring design doc.
- Version >= 1.16 of Kubernetes
- Version >= 3.x of Kustomize
- Version >= 1.21.x of Kubectl
kubectl apply -k "github.com/kubeflow/training-operator/manifests/overlays/standalone"
kubectl apply -k "github.com/kubeflow/training-operator/manifests/overlays/standalone?ref=v1.5.0"
For users who prefer to use original TensorFlow controllers, please checkout v1.2-branch
, patches for bug fixes will still be accepted to this branch.
kubectl apply -k "github.com/kubeflow/training-operator/manifests/overlays/standalone?ref=v1.2.0"
Training Operator provides Python SDK for the custom resources. More docs are available in sdk/python folder.
Use pip install
command to install the latest release of the SDK:
pip install kubeflow-training
Please refer to the quick-start-v1.md and Kubeflow Training User Guide for more information.
Please refer to following API Documentation:
You can:
- Join our Slack channel.
- Check out who is using this operator.
This is a part of Kubeflow, so please see readme in kubeflow/kubeflow to get in touch with the community.
Please refer to the DEVELOPMENT
Please refer to CHANGELOG
The following table lists the most recent few versions of the operator.
Operator Version | API Version | Kubernetes Version |
---|---|---|
v1.0.x |
v1 |
1.16+ |
v1.1.x |
v1 |
1.16+ |
v1.2.x |
v1 |
1.16+ |
v1.3.x |
v1 |
1.18+ |
latest (master HEAD) |
v1 |
1.18+ |
This project was originally started as a distributed training operator for TensorFlow and later we merged efforts from other Kubeflow training operators to provide a unified and simplified experience for both users and developers. We are very grateful to all who filed issues or helped resolve them, asked and answered questions, and were part of inspiring discussions. We'd also like to thank everyone who's contributed to and maintained the original operators.
- PyTorch Operator: list of contributors and maintainers.
- MPI Operator: list of contributors and maintainers.
- XGBoost Operator: list of contributors and maintainers.
- MXNet Operator: list of contributors and maintainers.