笔者使用的阿里云平台PAI主机(首次使用免费三个月额度),由于其默认不设置公网IP,所以在该主机上启动HTTP服务后无法访问测试。
这里使用ssh来作隧道穿透,首先需要配置ssh。
云主机配置ssh
1. 修改root账号密码
在云主机上执行
passwd root
2.配置root账户可密码登录
在云主机上修改文件:
/etc/ssh/sshd_config
将配置#PermitRootLogin prohibit-password
修改为PermitRootLogin yes
,去除注释符号#, 保存并退出。
3.尝试重启服务
在云主机上执行
service ssh stop
service ssh start
如果找不到服务,可以直接重启云主机
本地配置proxy-client
(PS: 也可以配置直接访问, 但直接访问需要付费, 这里笔者这样的价格敏感型用户就使用proxy-client了)
找到自己操作系统的proxy-client
如果是Mac或者Linux, 还需要增加权限
chmod 755 proxyclient
1. 获取对应的region-id
region-id查询地址
网页左上角,工作台右侧是云主机所在region,然后在地址和可用区列表 查找对应的region_id,
笔者这里是上海,对应的region_id是cn-shanghai。
2. 获取AccessKey和AccessSecret
在阿里云网站上操作
- 登录RAM控制台
- 鼠标移动到右上角用户头像,会展开如下界面,在其中单击【AccessKey 管理】
3. 在认证管理页签下的AccessKey区域,单击创建AccessKey。
4. 接下来,根据界面提示完成安全验证
5. 成功获得AccessKey和AccessSecret,一定要保存好!!!!!
3. 保存配置到本地
在本地主机执行如下代码:
# Mac,Linux。
./proxyclient config
# Windows。
proxyclient.exe config
依据提示将上两步获取到的相关信息填入。
其中STSToken为子账号访问时配置,你可以这样获取。
4. 添加实例到访问列表
目录
获取DSW实例ID, 你可以访问你的PAI工作如下操作,复制你需要ssh的实例id
在本机执行如下命令:
proxy-client add -i=<实例ID>
尝试进行ssh访问
在配置了proxy-client的机器上执行
ssh <实例ID>
其中实例ID可以通过PAI控制台获取,也就是在配置proxy-client时添加的实例ID
要求输入密码,即正常访问,如下
则说明配置成功。
ssh隧道端口映射
ssh -L localhost:8502:localhost:8501 root@<实例ID>
其中,localhost:8502 为本地绑定的主机接口以及端口,localhost:8501 为DSW实例上启动的接口和端口。
输入密码登录成功后,就可以通过浏览器访问 localhost:8502 来访问DSW实例上部署的HTTP服务了。
PS:还可以通过scp命令相互拷贝文件,示例如下:
scp -r chatglm3-6b-32k root@<实例ID>:/mnt/workspace/
scp -r root@<实例ID>:/mnt/workspace/ChatGLM3/finetune_demo/output ./law_chatglm3