Notebook在跨工作空间迁移
ModelArts通过工作空间来隔离不同iam子账户的资源,并且可以实现在企业项目中的计费统计。
工作空间能力是以白名单形式进行开放,需要使用的用户可以通过提工单的方式开启此功能。工单创建方式参考如下链接。
https://bbs.huaweicloud.com/blogs/197722
具体的工作空间操作流程可以参考阅读 https://bbs.huaweicloud.com/blogs/273333
下面介绍如何进行Notebook跨工作空间迁移
当前假设我要将default工作空间下的notebook-yiming这个notebook迁移到新的工作空间下。
迁移的方式是将存储类型为EVS的notebook数据上传到OBS,然后将OBS上的数据下载到新的notebook上。因为notebook本身是基于docker的,所以不影响任何使用。
注意:只需要迁移存储类型为EVS的notebook,如果存储类型是OBS,只需要新创建的notebook挂载同一个obs目录就可以了
查看Notebook存储类型方式如下,下面的这个Notebook就是EVS类型存储。
首先我们创建一个新的公共工作空间
创建一个叫做algo_team的工作空间,这个工作空间挂在algo_group企业项目下面,类型设置为PUBLIC
启动notebook后,打开notebook
启动一个termial
执行
注意这里我用的是tf 1.13的镜像所以能看到tf1.13,有的人使用的是tf 2.1的镜像,那么只能看到tf 2.1的conda环境,使用任何一个tf或者torch的conda环境都可以,里面都有moxing库
cat README
source /home/ma-user/anaconda3/bin/activate TensorFlow-1.13.1
如下图
将数据上传到OBS,我们使用moxing接口来完成,使用mox.file.copy_parallel接口完成,更详细的接口描述参考
https://github.com/huaweicloud/ModelArts-Lab/blob/master/docs/moxing_api_doc/MoXing_API_File.md
因为EVS磁盘是挂载到/home/ma-user/work目录下的,如下图
例如我要将目录上传到我自己的infer-log-test桶下面的notebook-bak目录下面,我首先在桶下面创建notebook-bak目录
然后执行
import moxing as mox
mox.file.copy_parallel('work/', 'obs://infer-log-test/notebook-bak')
执行完成后我们就可以看到数据已经保存在了obs中
下一步切换工作空间,创建新的notebook,并将数据下载到新的notebook中
创建新的notebook
同样打开notebook,创建一个terminal,并且激活tf conda环境
我们能够看到这样数据就同步过来了
最后一步就是我们关闭default工作空间这样,注意这一步必须要由root账户来操作,普通的账户无法操作,因为系统认为default工作空间是root账户的。关闭default工作空间以后,大家以后就只能在心创建的algo_team下工作了,计费也可以正常的统计到algo_team这个工作空间关联的企业项目下
将工作空间类型改为private,这样iam子账户就无法使用了,iam子账户只能在algo_team这个工作空间下使用资源
- 点赞
- 收藏
- 关注作者
评论(0)