文章目录
使用集群
集群架构
PC -------- 跳板机(数据中心) ---- 内网 ---- 计算节点
数据中心中的个人目录会挂载到计算节点的目录下
在数据中心存放自己的环境和代码
在计算节点跑实验
用MobaXterm登录数据中心和计算节点
新建session
ssh跳板机(数据中心)
填写这些即可连上
ssh计算节点
要ssh内网的计算节点必须通过跳板机
就ok了
用命令行ssh到数据中心和计算节点
ssh -p [端口号] [用户名]@数据中心/计算节点IP
ssh跳板机(数据中心)
ssh -p 跳板机登录端口号 username@跳板机ip
ssh计算节点
ssh -o StrictHostKeyChecking=no 服务器ip
不同集群间传数据
数据集在集群A,代码在集群B
情景1:集群A通过路由器C的c端口访问
在代码所在的集群B的数据中心输入:
scp -P [c_port] -r [B_dir] [username]@[C_ip]:[remote_dir]
-P(大写):指定数据传输的端口
-r: 指定递归传输文件夹(传递单个文件不需要)
[]: 没用的东西,让大家看得清楚,使用命令的时候删了
更多选项参考:https://blog.csdn.net/yyfgw/article/details/120835774
情景2:集群A通过跳板机路由器C的c端口访问
在代码所在的集群B的数据中心输入:(没验证过,摘录别人博客里的)
scp -P endpoint_server_port -o 'ProxyJump user1@jump_server_ip_or_name -p port' file.txt user2@endpoint_server_ip_or_name:~
可参考博客:
https://www.cnblogs.com/zhangyjblogs/p/15236883.html
https://blog.csdn.net/whatday/article/details/105953406
远程跑代码
使用tmux hold on窗口
http://www.ruanyifeng.com/blog/2019/10/tmux.html
配Anaconda虚拟环境
配在数据中心,数据中心的目录会挂载到计算节点
看这篇:在服务器上配置Anaconda以及简单使用
配完数据中心,source activate env(首次需要source activate,此后可以conda activate直接激活)在计算节点上依旧是不能生效的,
所以计算节点那里也要把conda写进环境变量一下,因为没有root权限,用export的方式:
export PATH="/$HOME/anaconda3/bin:$PATH"
export PATH="$PATH:$HOME/anaconda/bin"
配好了就可以source activate了。
设置Anaconda默认进入虚拟环境设置(base或自行指定)
在~/.bashrc中写入:
source activate
conda activate <你的环境名>
复制Anaconda虚拟环境
网上都是在教用conda内置的打包工具
其实直接copy过去就能用
- 不同集群间:直接copy到env目录下(用户名一致的情况下)
- 不同用户间:(场景:你想用同门的环境)直接copy到env目录后,修改自己目录的.bashrc文件,全局搜索文件中同门的user名字和相关路径,替换为自己的user名字和相关路径; /bin/pip修改为自己的路径
- 同个用户想要copy一份自己的环境:conda create -n 新环境名 --clone 旧环境名
配PyCharm远程解释器
免密登录服务器参考:设置远程免密登录服务器
设置免密登录后,配置Pycharm参考:PyCharm在使用ssh-key免密码登陆跳板机及服务器后的设置
可能出现的问题以及解决方法:
问题1:
win10 ssh 上传**过程,出现 无法将“ssh-copy-id”项识别
问题2:
ssh登录提示RSA Host key认证失败的解决方法
问题3:
CreateProcessW failed error:2 posix_spawnp: No such file or directory
:
- 用git bash来输入ssh命令;
- 遇到
kex_exchange_identification: Connection closed by remote host Connection closed by UNKNOWN port 65535
:关闭vpn全局代理 - 重新输入ssh命令,成功
用PyCharm远程debug
指定使用的显卡:
本地浏览器远程访问服务器tensorboard(MobaXterm)
参考:https://blog.csdn.net/z13653662052/article/details/98761242?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-0.pc_relevant_default&spm=1001.2101.3001.4242.1&utm_relevant_index=2
- 在mobaxterm的tunnel中设置
- start the tunnel
(剩下没经过验证,因为自己这次也没成功看到,防火墙关了都不行 - 命令行指定端口:
tensorboard --logdir=/home/yuhan/projects/DDAS_code/logs/1/test/ --port=6006
,注意这个port是指定server发送的端口 - 在localhost:6007查看自己的