通过VSCode远程链接ModelArts开发环境

举报
yangzilong 发表于 2021/06/19 09:33:14 2021/06/19
【摘要】 本文介绍了如何使用VSCode联通ModelArts的开发环境,并远程进行Python代码的调试。 主要包括如何创建开发环境,如何配置VSCode,以及Python远程调试的实操。

1. 创建开发环境

需要有ModelArts新版Notebook的白名单权限,实例管理页面链接如:https://console.huaweicloud.com/modelarts/?region=cn-north-4#/dev-container

点击“创建”按钮进行环境创建,配置时选择合适的基础镜像以及环境规格,一定要打开“SSH远程开发”功能。详细配置如截图:

秘钥对的创建和配置按提示处理即可,如果提示权限不足请联系账号管理员。

IP白名单可以配置为空(即,全部放通),如需更高安全性请配置IP白名单。本机IP地址的查询,请直接百度或使用: https://tool.lu/ip/

查看远程访问地址,以及修改IP白名单的方法如下:

 

 

2. 通过ssh链接实例

2.1 ssh远程访问测试

打开自己常用的ssh远程访问软件,这里使用MobaXterm

直接输入命令即可(其中,KeyPair-9a94.pem是对应的秘钥文件):

ssh ma-user@dev-modelarts-cnnorth4.huaweicloud.com -p 30300 -i MyDocuments/KeyPair-9a94.pem

联通以后的效果如截图:

注意:MobaXterm可能会导致PC上的key文件权限异常,请单独拷贝一个key文件给MobaXterm使用。

2.2 SCP功能测试

这里使用一个能连通公网的Linux服务器来进行测试,提前把Key.pem文件创建好(通过vi即可)。如果ssh的时候报"Key.pem"的权限过大导致连接不上,请使用chmod命令把对应文件权限配置成400或者600。

直接输入命令即可将Key.pem文件远程拷贝:

scp -P 32222 -i Key.pem Key.pem ma-user@dev-modelarts-cnnorth4.huaweicloud.com:/home/ma-user/work/

注意:"-P"和"-i"参数需要放前头;和ssh的命令不同,这里的P是大写的。

ssh登陆&scp文件流程的测试效果如截图:

3. 通过VS Code链接实例

3.1 VS Code及依赖插件安装

VSCode安装参考教程: https://zhuanlan.zhihu.com/p/264785441

本地Python安装参考教程: https://www.liaoxuefeng.com/wiki/1016959663602400/1016959856222624

需要在VSCode额外安装Remote-SSH插件和Python插件:

打开VSCode以后,点击左侧列表Extensions图标选项,在搜索框中输入SSH,点击Remote-SSH插件的install按钮,完成插件安装。如截图:

点击左侧列表Extensions图标选项,在搜索框中输入Python,点击Python插件的install按钮,完成插件安装。如截图:

 

3.2 一键连接VS Code

详细流程参考博客:https://bbs.huaweicloud.com/blogs/363908

启动路径:在Notebook详情页-->实例信息-->更多-->“VS Code接入”。

在本地电脑已安装VSCode的前提下会弹窗(如下图),选中后会自动打开VS Code并引导秘钥配置及依赖插件安装。

image.png

3.3 手工配置VS Code链接

点击左侧Remote Explorer按钮,在上方的下拉列表中选择SSH Target是,然后再点击页面上的设置按钮,此时会出现ssh配置文件路径。

点击列表中出现的ssh路径按钮,对ssh文件进行配置。

对打开的config文件进行配置。

HOST remote-dev

    hostname dev-modelarts-cnnorth4.huaweicloud.com

    port 30300

    user ma-user

    IdentityFile C:\Users\xxx\Documents\KeyPair-9a94.pem

    UserKnownHostsFile=/dev/null

    StrictHostKeyChecking no

Host:自定义设置的云上开发环境名称

HosName:云上开发环境的IP

Port:云上开发环境的端口

User:固定为ma-user

IdentityFile:存放在本地的云上开发环境私钥文件

 

再配置云上开发环境系统平台File --> Preference --> Settings --> Remote-SSH, 对于其中的Remote Platform进行配置,点击Add Item选项。

Key:在ssh config中配置的Host的名称

Value:在下拉选择框中选择远端开发环境平台

 

配置完成后,点击OK。

再回到SSH TARGETS页面,点击右侧的connect to Host in New Window按钮,该按钮会显示远程开发环境名称。

在新打开的页面中,看到下图所示界面,即表示连接成功。

可能会出现pem的问题导致无法使用对应的key来登录,需要按照教程处理: https://blog.csdn.net/joshua2011/article/details/90208741

也可以把key文件放到C盘user目录下(建议放到目录"C:\Users\xxxx\.ssh\"),也可以直接解决权限过大的问题。


3.4 上传本地代码到云端

在VSCode界面,从左侧Explorer -> OpenFolder入口进行打开云端路径。

选择要打开的路径,点击OK按钮。

此时,会在IDE左侧出现该开发环境下的目录结构,把想要上传的代码及其他文件直接拖拽至对应得文件夹内即完成本地代码上传至云端。

 

4. 远程调试代码

在VScode中打开要执行的代码文件,在执行代码之前需要选择合适的python版本路径,点击下方的默认的python版本路径,此时在上方会出现该远程环境上所有的python版本,选择自己需要的即可。

对于打开的代码文件,点击run按钮,即可执行,可以在下方的terminal中看到代码输出信息。

如果要对代码进行debug调试,需要点击左侧run -> Run and Debug。

选择当前打开的默认的python代码文件进行调试。

对当前代码进行打断点,即在代码左侧进行单击,就会出现小红点。

此时,即可按照正常的代码调试步骤对代码调试,在界面左边会显示debug信息,代码上方有相应的调试步骤。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。