45 Star 647 Fork 37

MindSpore / ms-operator

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 1.95 KB
一键复制 编辑 原始数据 按行查看 历史
fangzehua 提交于 2022-05-06 17:05 . add ms node id

MindSpore Operator

MindSpore Operator 是MindSpore在Kubernetes上进行分布式训练的插件。CRD(Custom Resource Definition)中定义了Scheduler、PS、Worker三种角色,用户只需配置yaml文件,即可轻松实现分布式训练。

安装

安装方法可以有以下几种

1. 使用yaml直接安装

kubectl apply -f deploy/v1/ms-operator.yaml

安装后: 使用kubectl get pods --all-namespaces,即可看到namespace为ms-operator-system的部署任务。 使用kubectl describe pod ms-operator-controller-manager-xxx-xxx -n ms-operator-system,可查看pod的详细信息。

2. 使用make deploy安装

make deploy IMG=swr.cn-south-1.myhuaweicloud.com/mindspore/ms-operator:latest

3. 本地调试环境

make run

Samples

当前ms-operator支持普通单Worker训练、PS模式的单Worker训练以及自动并行(例如数据并行、模型并行等)的Scheduler、Worker启动。

config/samples/中有运行样例。 以数据并行的Scheduler、Worker启动为例,其中数据集和网络脚本需提前准备:

kubectl apply -f config/samples/ms_wide_deep_dataparallel.yaml

使用kubectl get all -o wide即可看到集群中启动的Scheduler和Worker,以及Scheduler对应的Service。

开发指南

核心代码:

pkg/apis/v1/msjob_types.go中为MSJob的CRD定义。 pkg/controllers/v1/msjob_controller.go中为MSJob controller的核心逻辑。

镜像制作、上传

make docker-build IMG=swr.cn-south-1.myhuaweicloud.com/mindspore/ms-operator:latest
docker push swr.cn-south-1.myhuaweicloud.com/mindspore/ms-operator:latest

常见问题

  • 镜像构建过程中若发现gcr.io/distroless/static无法拉取,可参考issue
  • 安装部署过程中发现gcr.io/kubebuilder/kube-rbac-proxy无法拉取,参考issue
Go
1
https://gitee.com/mindspore/ms-operator.git
git@gitee.com:mindspore/ms-operator.git
mindspore
ms-operator
ms-operator
master

搜索帮助