nasp.ob.ac.cn -> nasp.fit #4
|
@ -1,9 +1,9 @@
|
||||||
# 集群注册登录说明
|
# 集群注册登录说明
|
||||||
集群登录账户通过[NASP Registry](https://git.nasp.ob.ac.cn/NASP/registry)仓库管理。
|
集群登录账户通过[NASP Registry](https://git.nasp.fit/NASP/registry)仓库管理。
|
||||||
|
|
||||||
## 使用方法
|
## 使用方法
|
||||||
|
|
||||||
集群的跳板机(`nasp.ob.ac.cn:36022`)、重装后的实验机(`g1`-`g16`),均强制使用秘钥对的方法登录,不能通过密码登录。如果你没有现成的秘钥对,需要先创建一个。
|
集群的跳板机(`nasp.fit:36022`)、重装后的实验机(`g1`-`g16`),均强制使用秘钥对的方法登录,不能通过密码登录。如果你没有现成的秘钥对,需要先创建一个。
|
||||||
|
|
||||||
你需要把**公钥**上传到仓库的`/authorized_keys/<your_user_name>/`目录下。路径中的用户名将成为你在实验机上的用户名,需要满足unix用户名标准,即:以小写字母开头,只能包含小写字母、数字、连字符和下划线。你可以用下面的命令测试你的用户名:
|
你需要把**公钥**上传到仓库的`/authorized_keys/<your_user_name>/`目录下。路径中的用户名将成为你在实验机上的用户名,需要满足unix用户名标准,即:以小写字母开头,只能包含小写字母、数字、连字符和下划线。你可以用下面的命令测试你的用户名:
|
||||||
|
|
||||||
|
@ -25,19 +25,19 @@ check_username "a111"
|
||||||
|
|
||||||
`/authorized_keys/<your_user_name>/`目录下可以包含一个或多个文件,每个文件中可以包含一个或多个(由换行符分隔开的)公钥,可以按照你的喜好安置文件。
|
`/authorized_keys/<your_user_name>/`目录下可以包含一个或多个文件,每个文件中可以包含一个或多个(由换行符分隔开的)公钥,可以按照你的喜好安置文件。
|
||||||
|
|
||||||
[NASP Registry](https://git.nasp.ob.ac.cn/NASP/registry)仓库的主分支(main)受到保护,用户无法直接向其推送更新。所以你需要:
|
[NASP Registry](https://git.nasp.fit/NASP/registry)仓库的主分支(main)受到保护,用户无法直接向其推送更新。所以你需要:
|
||||||
- 如果你是新用户,联系管理员,把你加入NASP组织;
|
- 如果你是新用户,联系管理员,把你加入NASP组织;
|
||||||
- 克隆仓库到本地,创建一个新的分支:`git clone https://git.nasp.ob.ac.cn/NASP/registry && cd registry && git checkout -b <your_branch_name> `
|
- 克隆仓库到本地,创建一个新的分支:`git clone https://git.nasp.fit/NASP/registry && cd registry && git checkout -b <your_branch_name> `
|
||||||
- 根据上面的指导,添加你的公钥;
|
- 根据上面的指导,添加你的公钥;
|
||||||
- 在修改完成之后,提交修改,推送新分支到远端:`git add -A && git commit -m "add my key" && git push -u origin <your_branch_name>`
|
- 在修改完成之后,提交修改,推送新分支到远端:`git add -A && git commit -m "add my key" && git push -u origin <your_branch_name>`
|
||||||
- 在网站上创建[合并请求(mr)](https://git.nasp.ob.ac.cn/NASP/registry/compare/main...main),拉取从你的分支合并到主分支;可参考:[#41](https://git.nasp.ob.ac.cn/NASP/registry/pulls/41)
|
- 在网站上创建[合并请求(mr)](https://git.nasp.fit/NASP/registry/compare/main...main),拉取从你的分支合并到主分支;可参考:[#41](https://git.nasp.fit/NASP/registry/pulls/41)
|
||||||
- 找到另一位在NASP组织内的同学,让其批准你的合并请求,如图:![](attachments/6386bc2c5a9d3dc7dc0c9ee5a4b67ed.png)
|
- 找到另一位在NASP组织内的同学,让其批准你的合并请求,如图:![](attachments/6386bc2c5a9d3dc7dc0c9ee5a4b67ed.png)
|
||||||
- 随后,你可以进行合并操作(创建压缩提交),并删除你的分支。
|
- 随后,你可以进行合并操作(创建压缩提交),并删除你的分支。
|
||||||
|
|
||||||
至多五分钟后,你就可以登录跳板机。跳板机的地址是`nasp.ob.ac.cn`,用户名固定为`ssh`,端口号`36022`:
|
至多五分钟后,你就可以登录跳板机。跳板机的地址是`nasp.fit`,用户名固定为`ssh`,端口号`36022`:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ssh -p 36022 ssh@nasp.ob.ac.cn
|
ssh -p 36022 ssh@nasp.fit
|
||||||
```
|
```
|
||||||
|
|
||||||
随后,在跳板机上,你可以用你的用户名登录实验机(端口号`12022`):
|
随后,在跳板机上,你可以用你的用户名登录实验机(端口号`12022`):
|
||||||
|
@ -52,7 +52,7 @@ ssh -p 12022 <your_user_name>@g7
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# the same for scp/sftp
|
# the same for scp/sftp
|
||||||
ssh -p 12022 -o ProxyJump=ssh@nasp.ob.ac.cn:36022 <your_user_name>@g7
|
ssh -p 12022 -o ProxyJump=ssh@nasp.fit:36022 <your_user_name>@g7
|
||||||
```
|
```
|
||||||
|
|
||||||
或者在`~/.ssh/config`里面配置:
|
或者在`~/.ssh/config`里面配置:
|
||||||
|
@ -62,7 +62,7 @@ Host g7
|
||||||
HostName g7
|
HostName g7
|
||||||
User <your_user_name>
|
User <your_user_name>
|
||||||
Port 12022
|
Port 12022
|
||||||
ProxyJump ssh@nasp.ob.ac.cn:36022
|
ProxyJump ssh@nasp.fit:36022
|
||||||
```
|
```
|
||||||
|
|
||||||
从而能够在vscode中远程连接。
|
从而能够在vscode中远程连接。
|
||||||
|
@ -73,9 +73,9 @@ Host g7
|
||||||
|
|
||||||
```
|
```
|
||||||
# 检查到跳板机的连接性
|
# 检查到跳板机的连接性
|
||||||
ssh -v -i path/to/your/private_key -p 36022 ssh@nasp.ob.ac.cn
|
ssh -v -i path/to/your/private_key -p 36022 ssh@nasp.fit
|
||||||
# 检查到实验机的连接性
|
# 检查到实验机的连接性
|
||||||
ssh -v -i path/to/your/private_key -p 12022 -o ProxyJump=ssh@nasp.ob.ac.cn:36022 <your_user_name>@g7
|
ssh -v -i path/to/your/private_key -p 12022 -o ProxyJump=ssh@nasp.fit:36022 <your_user_name>@g7
|
||||||
```
|
```
|
||||||
|
|
||||||
如果你无法解决连接问题,请联系集群管理员协助。
|
如果你无法解决连接问题,请联系集群管理员协助。
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
本文档默认你已经能够登录实验机,参考:[registry](registry.md)。
|
本文档默认你已经能够登录实验机,参考:[registry](registry.md)。
|
||||||
|
|
||||||
## sudo权限
|
## sudo权限
|
||||||
只有部分命令能够通过sudo免密运行,定义在文件[nasp](https://git.nasp.ob.ac.cn/NASP/registry/src/branch/main/scripts/nasp)中,列出如下:
|
只有部分命令能够通过sudo免密运行,定义在文件[nasp](https://git.nasp.fit/NASP/registry/src/branch/main/scripts/nasp)中,列出如下:
|
||||||
- `docker`
|
- `docker`
|
||||||
- `reboot`
|
- `reboot`
|
||||||
- `whoami`
|
- `whoami`
|
||||||
|
@ -20,14 +20,14 @@
|
||||||
## 启动docker容器
|
## 启动docker容器
|
||||||
实验机使用容器化管理。所有实验环境均在docker环境中,裸机环境仅用于启动容器、配置防火墙等。
|
实验机使用容器化管理。所有实验环境均在docker环境中,裸机环境仅用于启动容器、配置防火墙等。
|
||||||
|
|
||||||
裸机环境均配置了`dnew`命令([源码](https://git.nasp.ob.ac.cn/NASP/configurations/src/branch/dev/testbed/scripts/dnew)),方便用户交互式地启动容器。
|
裸机环境均配置了`dnew`命令([源码](https://git.nasp.fit/NASP/configurations/src/branch/dev/testbed/scripts/dnew)),方便用户交互式地启动容器。
|
||||||
|
|
||||||
```
|
```
|
||||||
================== dnew ===================
|
================== dnew ===================
|
||||||
=== contact: xd21@mails.tsinghua.edu.cn ===
|
=== contact: xd21@mails.tsinghua.edu.cn ===
|
||||||
Use GPU? [yN]: y # 按需选择,默认否
|
Use GPU? [yN]: y # 按需选择,默认否
|
||||||
Use RDMA? [yN]: y # 按需选择,默认否
|
Use RDMA? [yN]: y # 按需选择,默认否
|
||||||
Image name (default: git.nasp.ob.ac.cn/nasp/nasp-ubuntu): # 如果没有特殊要求,直接回车
|
Image name (default: git.nasp.fit/nasp/nasp-ubuntu): # 如果没有特殊要求,直接回车
|
||||||
Start up command (default: /etc/startup.sh): # 如果没有特殊要求,直接回车
|
Start up command (default: /etc/startup.sh): # 如果没有特殊要求,直接回车
|
||||||
Will run:
|
Will run:
|
||||||
=====
|
=====
|
||||||
|
@ -39,7 +39,7 @@ sudo docker run -d --net=host -v /home2:/home2 \
|
||||||
--runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=all \
|
--runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=all \
|
||||||
--device=/dev/infiniband/rdma_cm --device=/dev/infiniband/issm0 \
|
--device=/dev/infiniband/rdma_cm --device=/dev/infiniband/issm0 \
|
||||||
--device=/dev/infiniband/umad0 --device=/dev/infiniband/uverbs0 \
|
--device=/dev/infiniband/umad0 --device=/dev/infiniband/uverbs0 \
|
||||||
-it git.nasp.ob.ac.cn/nasp/nasp-ubuntu /etc/startup.sh
|
-it git.nasp.fit/nasp/nasp-ubuntu /etc/startup.sh
|
||||||
=====
|
=====
|
||||||
Start the container? [yN]: # 检查上面的命令,选择是否执行
|
Start the container? [yN]: # 检查上面的命令,选择是否执行
|
||||||
```
|
```
|
||||||
|
@ -62,7 +62,7 @@ Start the container? [yN]: # 检查上面的命令,选择是否执行
|
||||||
通过`dnew`脚本创建的容器会把物理机上`/home2`挂载到容器内的`/home2`,建议将所有的重要数据都放置在这里面。容器内除了`/home2`之外的文件,都可能会在容器销毁后丢失。
|
通过`dnew`脚本创建的容器会把物理机上`/home2`挂载到容器内的`/home2`,建议将所有的重要数据都放置在这里面。容器内除了`/home2`之外的文件,都可能会在容器销毁后丢失。
|
||||||
|
|
||||||
### 安装软件
|
### 安装软件
|
||||||
默认的`git.nasp.ob.ac.cn/nasp/nasp-ubuntu`镜像是一个基于Ubuntu 20的、包含cuda和rdma支持的镜像。要安装软件,使用`apt`,用法与物理机上无异。
|
默认的`git.nasp.fit/nasp/nasp-ubuntu`镜像是一个基于Ubuntu 20的、包含cuda和rdma支持的镜像。要安装软件,使用`apt`,用法与物理机上无异。
|
||||||
|
|
||||||
```
|
```
|
||||||
sudo apt update
|
sudo apt update
|
||||||
|
@ -85,12 +85,12 @@ sudo apt install zsh
|
||||||
随后,你就能从跳板机直接访问容器内部了。如:
|
随后,你就能从跳板机直接访问容器内部了。如:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ssh -p <your_port> -o ProxyJump=ssh@nasp.ob.ac.cn:36022 root@g7
|
ssh -p <your_port> -o ProxyJump=ssh@nasp.fit:36022 root@g7
|
||||||
```
|
```
|
||||||
|
|
||||||
> 这里使用了`root`用户,即你在容器内的用户名。如果你在容器内改用了别的用户,请相应修改。
|
> 这里使用了`root`用户,即你在容器内的用户名。如果你在容器内改用了别的用户,请相应修改。
|
||||||
|
|
||||||
## 自动开关机
|
## 自动开关机
|
||||||
按照FIT楼的消防要求,放置在4-103的服务器应当每晚关机。自动关机的流程是:每晚的22:59,启动一个[关机脚本](https://git.nasp.ob.ac.cn/NASP/configurations/src/branch/dev/testbed/scripts/schedule-poweroff.sh),该关机脚本的逻辑是:检查是否存在文件`/tmp/skip-poweroff`;若存在,则将其删除,然后脚本直接退出;若不存在,则启动时长为一小时的自动关机。机器将在23:59自动关闭。
|
按照FIT楼的消防要求,放置在4-103的服务器应当每晚关机。自动关机的流程是:每晚的22:59,启动一个[关机脚本](https://git.nasp.fit/NASP/configurations/src/branch/dev/testbed/scripts/schedule-poweroff.sh),该关机脚本的逻辑是:检查是否存在文件`/tmp/skip-poweroff`;若存在,则将其删除,然后脚本直接退出;若不存在,则启动时长为一小时的自动关机。机器将在23:59自动关闭。
|
||||||
|
|
||||||
自动开机是通过Wake-on-lan实现的,每天早上,由g18分批向实验机发送唤醒包。相关配置文件可以在[这里](https://git.nasp.ob.ac.cn/NASP/configurations/src/branch/dev/g18/wakeonlan)找到。
|
自动开机是通过Wake-on-lan实现的,每天早上,由g18分批向实验机发送唤醒包。相关配置文件可以在[这里](https://git.nasp.fit/NASP/configurations/src/branch/dev/g18/wakeonlan)找到。
|
Loading…
Reference in New Issue
Block a user