HM 南京信息工程大学 GPU 集群使用说明 Aaron Liu 2013-6-17 1
目 录 一 系统配置清单及产品介绍... 3 1.1 集群管理节点 (ServMax XN-12301,1 台 )... 4 1.2 存储节点配置 (ServMax XR-42303,1 台 )... 4 1.3 GPU 节点配置 (SerMax Xr-4801GK2,6 台 )... 4 二 系统规划及配置图... 5 2.1 系统网络拓扑图... 5 2.2 各节点 IP 及主机名分配... 5 三 集群基础及配置... 7 3.1. 支持的硬件架构... 7 3.2 最低硬件需求... 7 3.3 一般集群网络结构... 8 3.4 网络规划及 IP 地址分配... 8 3.5 集群的文件系统... 10 3.5.1 管理节点文件系统... 10 3.5.2 存储节点文件系统... 10 3.5.2 计算节点文件系统... 10 四 常用软件的路径... 12 五 资源管理器 Torque 的使用... 13 5.1 作业递交命令... 13 5.2 查看队列中的作业状态 :qstat... 13 5.3 挂起作业 :qhold... 14 5.4 取消挂起 :qrls... 14 5.5 终止作业 :qdel... 14 5.6 显示节点信息 :pbsnodes 和 qnodes... 14 六. windows 端用 ssh 工具远程登录... 15 6.1 安装... 15 6.2 从远程主机下载文件... 15 6.3 ssh 远程登录... 17 2
一 系统配置清单及产品介绍 总体配置 : 项目 描述 数量 管理节点 1U 1 台 存储节点 4U 1 台 GPU 计算节点 4U 6 台 集群附件 千兆网络交换机 Infiniband 交换机 KVM 等 1 套 3
1.1 集群管理节点 (ServMax XN-12301,1 台 ) 配置表 : 项目 描述 数量 CPU 6 核心 Intel E5-2620 2 内存 DDR3 1333 4G ECC REG 8 硬盘 600GB 企业级 SAS 盘 2 Infiniband 卡 Mellanox FDR(56Gb/s) 1 1.2 存储节点配置 (ServMax XR-42303,1 台 ) 配置表 : 项目 描述 数量 CPU 6 核心 Intel E5-2620 2 内存 DDR3 1333 4G ECC REG 8 硬盘 3TB 企业级 SATA 盘 16 硬盘 240GB 企业级 SSD 1 Infiniband 卡 Mellanox FDR(56Gb/s) 1 1.3 GPU 节点配置 (SerMax Xr-4801GK2,6 台 ) 配置表 : 项目 描述 数量 CPU 6 核心 Intel E5-2620 2 内存 DDR3 1333 8G ECC REG 8 硬盘 500GB 企业级 SATA 盘 1 Infiniband 卡 Mellanox FDR(56Gb/s) 1 GPU Tesla K20 6 4
二 系统规划及配置图 2.1 系统网络拓扑图 2.2 各节点 IP 及主机名分配 外网访问及 IPMI 系统管理管理网络计算网络 主机名 外网端口 IP( eth1) IPMI 端口 内网端口 ( eth0)ip ib0 hpccluster 192.168.1.x 10.2.x.253 10.1.1.1 10.3.3.1 nas-0-0 10.2.x.254 10.1.1.254 10.3.3.254 compute-0-1 10.2.x.1 10.1.1.253 10.3.3.253 5
compute-0-2 10.2.x.2 10.1.1.252 10.3.3.252 compute-0-6 10.2.x.6 10.1.1.248 10.3.3.248 6
三 集群基础及配置 AMAX 集群管理软件是一套以性能优秀 成熟和稳定的 RedHat Advance Server 基础, 融合节点管理, 任务管理, 状态监控等多种功能, 使用方便的集群管理系统 具有以下的功能和特点 : 在集群管理上, 由 FRONTEND( 前端或管理节点 ) 加 NODE( 计算节点 ) 组成, 默认的情况下前者承担集群的管理和服务, 后者承担计算任务 在系统的安装 维护方面简单易操作, 因为系统集成大量的自动化脚本及各种所需功能的软件包, 在安装的时候会自动设置好多种服务如 NFS 性能监控服务程序等, 计算节点全部通过 PXE 网络系统从主节点下载文件并自动完成所有的安装与设置, 增加删除节点等, 管理起来相当方便 在故障维护上也非常简单, 如对于故障节点, 在硬件修复完成后, 只需接入集群网络即会自动完成文件的下载与安装, 无需人为干预 这些工作在管理节点上就可以完成, 无需围绕每个计算节点重复设置 在任务管理与状态监控上, 集群管理系统提供了一整套基于 WEB 的组件用于监控自身的活动及配置状况, 如处理器 内存及交换分区使用情况 网络负载 节点状态和当前计算任务的进展等 3.1. 支持的硬件架构 处理器架构 : x86 (ia32, AMD Athlon.) x86_64 (AMD Opteron and EM64T) 网络 : 以太网支持一些专用网络及组件 (e.g., Myrinet, Infiniband, nvidia GPU) 可以从各自供应商的官网获得需要的硬件和软件信息 3.2 最低硬件需求 前端节点 ( 管理节点或头节点 ): 硬盘容量 : 30 GB 内存容量 : 1 GB 7
2 个以太网卡 ( 如 :"eth0" and "eth1") BIOS 启动顺序 : 光驱,Hard Disk 计算节点 : 硬盘容量 : 30 GB 内存容量 : 1 GB 1 个以太网卡 ( 如 "eth0") BIOS 启动顺序 : 光驱, PXE (Network Boot), 硬盘 3.3 一般集群网络结构 下图显示了前端节点与计算节点的连接关系 : 计算节点管前端节点的 eth0 网卡接在交换机上, 通过此网络提供集群的安装管理和文件系统的共享和传递 管理节点至少需要 2 个网卡, 除了一个 eth0 接在交换机上与计算节点通信外, 还有另外的 eth1 接在外部网络上, 可以是公网也可以是校内局域网 3.4 网络规划及 IP 地址分配 本次集群网络总共分为 3 个部分 : 8
其中外网访问 192.168.1.x; 千兆以太网占用 10.1.1.x 网段, 主要作为计算节点的管理网络, 同时作为 infiniband 网络的备份, 辅助计算网络, 保证 Infiniband 网络出现故障需要维护时, 整个计算集群也依然可以继续使用 ;IPMI 远程管理在 10.2.2.x 网段, 方便同时进行远程访问和系统管理, 计算网络主要使用 infiniband 网络进行计算数据传递, 在 10.3.3.x 网段 系统网络 IP 地址分配如下 : 外网访问及 IPMI 系统管理管理网络计算网络 主机名 外网端口 IP( eth1) IPMI 端口 内网端口 ( eth0)ip ib0 hpccluster 192.168.1.x 10.2.x.253 10.1.1.1 10.3.3.1 nas-0-0 10.2.x.254 10.1.1.254 10.3.3.254 compute-0-1 10.2.x.1 10.1.1.253 10.3.3.253 compute-0-2 10.2.x.2 10.1.1.252 10.3.3.252 compute-0-6 10.2.x.6 10.1.1.248 10.3.3.248 9
3.5 集群的文件系统 3.5.1 管理节点文件系统 Filesystem Size Used Avail Use% Mounted on /dev/sda1 197G 15G 173G 8% / tmpfs 16G 24K 16G 1% /dev/shm /dev/sda5 337G 3.8G 316G 2% /export /dev/sda2 7.9G 529M 7.0G 7% /var tmpfs 7.7G 49M 7.7G 1% /var/lib/ganglia/rrds nas-0-0.local:/export/home 15T 138M 14T 1% /export/home 其中 /export 下的一些目录还是 nfs 文件共享目录 ;/export/home 目录是通过网络共享的存储节点的文件系统, 所以文件其实是保存在存储节点, 这个目录保存的是普通用户的数据文件 3.5.2 存储节点文件系统 Filesystem Size Used Avail Use% Mounted on /dev/sda1 197G 31G 157G 17% / tmpfs 16G 0 16G 0% /dev/shm /dev/sda3 288G 191M 273G 1% /export/data1 /dev/sdb1 15T 139M 14T 1% /export/home /dev/sdb2 12T 154M 11T 1% /export/data2 /dev/sdb3 12T 154M 11T 1% /export/data3 3.5.2 计算节点文件系统 Filesystem Size Used Avail Use% Mounted on /dev/sda1 16G 5.1G 9.6G 35% / tmpfs 32G 0 32G 0% /dev/shm /dev/sda5 439G 2.2G 414G 1% /state/partition1 /dev/sda2 3.9G 163M 3.5G 5% /var nas-0-0.local:/export/home/user 15T 138M 14T 1% /home/user 10
其中 user 为实际用户名称的代表 11
四 常用软件的路径 /opt 大部分软件位于 /opt 下, 如 openmpi 位于 /opt/openmpi,torque 位于 /opt/torque 等, 是 Linux FHS 标准建议的软件安装路径 /share/apps 一些可执行程序可以放在 /share/apps 下, 计算节点就可以看到和运行, 因为这个目录是管理节点通过 NFS 共享出来给其它节点使用的目录 /export/local 在管理和计算节点实际创建的目录, 软件会真正安装在各个节点, 这样软件在启动和运行中就会减少网络占用, 提高效率, 但相比 /share/apps 来说安装会比较花费时间 /root/backup 此目录下暂时放置一些重要的配置文件, 软件 12
五 资源管理器 Torque 的使用 与作业相关常用的用户命令主要有 : pbsnodes: 显示节点信息 qdel: 取消指定的作业 qhold: 挂起一个作业 qmove: 将一个作业从一个队列移到另一个队列中 qnodes:pbsnodes 的别名, 显示节点信息 qorder: 交换两个作业的排队顺序 qrls: 将被挂起的作业送入准备运行的队列中 qselect: 显示符合条件的作业的作业号 qstat: 显示队列 服务节点和作业的信息 qsub: 提交作业 5.1 作业递交命令 qsub mytask.sh mytask.sh 为作业脚本, 下面为一简单样例 : #PBS -S /bin/bash #PBS -o script.out #PBS -j oe #PBS -l nodes=1:ppn=1:gpus=1 cd $PBS_O_WORKDIR /opt/nvidia_gpu_computing_sdk/c/bin/linux/release/fdtd3d 5.2 查看队列中的作业状态 :qstat 利用 qstat 可以查看作业的运行状态 : user@hpc:~$ qstat 输入上面命令后, 将给出类似下面的输出 : Job id Name User Time Use S Queue 4 8. hpc job name4 us e r 0 E dque 4 9. hpc job name1 us e r 0 0 : 0 0 : 0 0 R dque 5 0. hpc job name2 us e r 0 H dque 5 1. hpc job name3 us e r 0 Q dque 上面几列的含义分别为 : 作业号 作业名 用户名 使用的时间 状态 队列 名, 其中状态中的 C E H Q 和 R 分别表示作业处于完成 退出 挂起 排 队和运行中, 使用 qstat f 可以查询作业退出状态 13
5.3 挂起作业 :qhold qhold 命令可以挂起作业 ( 只能是排队等待的作业才能挂起, 正在运行的作业不能挂起 ), 被挂起的作业将不被执行, 这样可以让其余作业优先得到资源运行, 被挂起的作业在用 qstat 命令查询时显示的状态标志为 H, 下面命令将挂起作业号为 50.hpc 的作业 : user@hpc: $ qhold 50.hpc 5.4 取消挂起 :qrls 被挂起的作业可以利用 qrls 来取消挂起, 重新进入等待运行状态 : user@hpc:~$ qrls 50.hpc 5.5 终止作业 :qdel 用户如果想终止一个作业, 可以利用 qdel 来取消 : user@hpc: $ qdel 50.hpc 5.6 显示节点信息 :pbsnodes 和 qnodes 利用 pbsnodes 和 qnodes( 实际两者是同一个命令的两个名字 ) 可以显示系统各个节点的信息, 比如空闲 (free) 当机 (down) 离线 (offline) 例如 : 显示所有空闲的节点 : user@hpc: $ pbsnodes -l free 其输出为 : node0101 free node0102 free node0104 free 14
六. windows 端用 ssh 工具远程登录 SSH Secure Shell Client 3.2.9 是一个免费的基于 SSH 协议的远程工具 下载地址 :http://www.onlinedown.net/softdown/20089_2.htm 6.1 安装 双击安装, 按默认设置, 直到完成 安装后会在桌面产生两个快捷方式 : 一个 ( 白色图标的 SSH Secure Shell Client) 用于远程登录操作, 另一个 ( 黄色图标的 SSH Secure File Transfer Client) 可以用来上传 / 下载文件, 后面会用到 请见下图 : 6.2 从远程主机下载文件 软件在我们公司的集群管理节点上, 使用 SSH Secure File Transfer Client 下 载到本地 打开该文件, 如下图所示 15
点击左上方的 Quick Connect, 见下图红色方框圈住的地方 : 在弹出的窗口中输入 ip 地址和用户名, 如下图所示 : 16
接下来会提示密码 ( 见上面 ), 然后就可以登录了, 界面如下 : 6.3 ssh 远程登录 Ssh 远程登录通过 SSH Secure Shell Client, 登录方式和上述 SSH Secure File Transfer Client 一样 : 可以直接从双击 SSH Secure Shell Client 的白色图标开始, 象上述 SSH Secure File Transfer Client 一样登录, 登录后界面如下图所示 : 17
接下来就可以象在本地一样操作了 18