集群使用补充说明¶
1. 存储类型¶
集群用户的个人目录为 /public/<username>
, 默认存储池为 base_pool
。
全部ceph存储池:
base_pool
(HDD, 无数据保护)metapool
(SSD, 2x冗余,仅存放元数据)ssd_store_pool
(SSD, 无数据保护)ecpool
(HDD, 3+1纠错)
可以通过 setfattr
设定空目录的存储池 (详见: CephFS File Layouts)
例如:
mkdir my_precious_data
setfattr -n ceph.dir.layout.pool -v ecpool my_precious_data
my_precious_data
目录下的文件会存储在 ecpool
。
2. 使用 module 加载软件环境¶
集群中一部分预装的软件,或者环境配置比较复杂、或者安装在非标准目录、或者安装了多个版本相互冲突,因此默认没有加载。需要通过 module
命令手动加载相应的软件模块。
例如,加载 Matlab:
$ matlab # 未加载 Matlab 模块
-bash: matlab: command not found
$ module avail # 查看系统中所有软件模块
------------------------- /public/.shared/modulefiles --------------------------
caffe/1.0 matlab/R2017a (D) matlab/R2018b
$ module load matlab/R2017a # 加载 Matlab R2017a 模块
$ matlab -nosplash -nodesktop
MATLAB is selecting SOFTWARE OPENGL rendering.
......
$ module unload matlab/R2017a # 卸载模块
加载 CUDA 12.4:
$ module load cuda/12.4
在批处理脚本中使用包括 Matlab 在内的未默认加载的软件时,也需要先加载对应模块。
3. 容器¶
~~容器, 由于集群使用的nft作为防火墙,存在与docker的兼容性问题 (Docker and nftables, is there a way linux?), 因此仅在g20装有docker,如果需要container,可以使用singularity~~
注意: Singularity 长期未更新,现在已经几乎不可用。