1.7.2 使用命令行管理开发环境

优质
小牛编辑
132浏览
2023-12-01

简介

Xiaomi Cloud-ML支持使用 cloudml 命令行管理开发环境。

第一步,初始化命令行工具,首次使用时执行初始化。

第二步,创建开发环境,使用命令行工具提交dev创建请求。

第三步,查看开发环境,开发环境经过排队-调度-创建过程后,进入running状态,标识该实例创建完成。

第四步,登录开发环境,根据开发环境的IP和端口,SSH连接登录到开发环境。

第五步,进行开发测试,SSH连接到开发环境后,用户可以像使用本地机器一样,进行各种开发测试工作,包括软件安装,代码编写,训练,模型导出等。

第六步,关闭开发环境,开发环境实例使用完毕后,用户可以删除该实例。

初始化命令行工具

第一次使用命令行工具时,需要初始化Xiaomi Cloud-ML命令行工具环境。 对已经初始化过的命令行工具环境,再次执行初始化命令,会覆盖现有设置。

cloudml init

创建开发环境

cloudml dev create -n mydev -p mypassword

命令的参数可以使用cloudml dev create --help 查看,主要使用的参数包括:

  • -n 是必选参数,开发环境名称。
  • -p 是必选参数,root用户的密码,同样也是SSH和Jupyter的登录密码。
  • -F 是可选参数,表示使用的深度学习框架,可以使用cloudml framework list查看系统预定义的框架。
  • -V 是可选参数,表示使用的深度学习框架版本。
  • -d 是可选参数,表示使用用户自定的容器镜像地址,注意不可与 -F-V 同时使用。
  • -c 是可选参数,实例的CPU核数,例如1,2,3,默认是0.5
  • -M 是可选参数,实例的内存大小,例如500M,1G,默认是100M
  • -g 是可选参数,实例的GPU数量,例如1,2,3,默认是0(即不使用GPU)
  • -fe 是可选参数,挂载FDS存储的FDS机房地址,生态云武清机房的地址是cnbj2.fds.api.xiaomi.com
  • -fb 是可选参数,挂载FDS存储的bucket名称。

查看开发环境

列出可以访问的所有开发环境

cloudml dev list

根据名称查看一个开发环境的详细信息,使用返回的SSH连接地址即可登录该实例

cloudml dev describe mydev

当开发环境创建失败,或者使用过程中发生crash,可以根据名称查看该开发环境的事件日志

cloudml dev events mydev

登录开发环境

running状态的开发环境,对外正常提供服务。用户可以根据上一步拿到的SSH地址连接到实例。

ssh -p 40001 root@10.0.0.2

进行开发测试

SSH连接到开发环境后,用户可以像使用本地机器一样,进行各种开发测试工作,包括软件安装,代码编写,训练,模型导出等。

删除开发环境

使用下列命令,根据开发环境的名称,删除不需要的开发环境。

cloudml dev delete mydev

休眠与重启开发环境

休眠功能与删除功能的区别是,休眠不删除当前环境,只是释放资源,会保存当前环境的数据和配置,需要时可重启。

cloudml dev stop mydev
cloudml dev restart mydev