曙光集群简明使用手册 技术支持中心.

Slides:



Advertisements
Similar presentations
Linux 环境及 Shell 程序 操作系统实验 1. 二、 Shell 编程与进程通信 常用 shell 命令 文件及文件属性操作 ls 、 cp 、 mv 、 rm ln 、 ln –s 、 chmod 、 groupadd 、 useradd 输入输出操作 echo 、 cat >> 、
Advertisements

第 3 章操作系统基础 3.1 操作系统概述 3.2 操作系统的功能模块 3.3 典型操作系统概述.
中科院昆明动物研究所培训 云南昆明 售前工程师:张希韬 TEL:
Linux 安裝入門與基本管理 課程目標: 學習Linux平台下的安裝設定 與 建置一個基本的Linux伺服器
辅导老师:隋秀峰 2008年10月22日 Lab3:MPI Programming 辅导老师:隋秀峰 2008年10月22日.
机群性能分析软件 Paramon & Paratune
上課教材 Database Slide Windows筆電 (32 bit)
Linux 網路教學 東南技術學院資訊工程系 職稱:講師 姓名: 曹茂勁 民國 92年 12月.
第七章 操作系统接口 7.1 联机用户接口 7.2 Shell命令语言 7.3 系统调用 7.4 UNIX系统调用 7.5 图形用户接口.
Linux并行计算平台搭建及应用 王彦棡 2010年5月.
集群作业管理系统简介 报告人:罗正平 导 师:肖炳甲研究员.
红旗Linux认证培训 课程介绍.
技术支持部 张新凤( ) 并行机群系统安装、使用和管理 技术支持部 张新凤( )
Linux 的檔案管理.
第六章 Linux的系統管理基礎 課前指引 身為Linux系統管理員,除了熟悉作業系統的安裝、圖形介面的操作及系統指令的使用與軟體套件的安裝外,更需要瞭解基礎的Linux系統管理技巧。本節,將針對此部分進行說明。
資訊安全與系統管理 2013/3/13 Chien wei lin.
UNIX系統與資料庫安裝 Why UNIX 常用的工具程式介紹 資料庫的安裝.
宁波材料所高性能计算集群普通用户培训 曙光公司.
“服务器服务于Internet”报告会 倪光南 1999年7月6日
Linux 的進階檔案處理.
Confidential Property
嵌入式Linux开发快速入门 迟思堂工作室 李迟
Linux.
Linux的認識與使用 2013/01/05.
Vi 編輯器的練習的說明 因為本課程的實習課是Unix 的工作環境。過去的經驗告訴我,如果你完全未用過Unix 的指令及其 vi 編輯器,你將很難跟上進度,希望學員一定要預先作練習。我們提供了Unix 指令的簡介,以及 vi 編輯器的介紹 ( 請参閱網站中的13&14-unix.pdf 為其講義;13-unix.exe、14-fortran.exe則為其課程錄影.
雲端計算 參考書籍:Python+Spark 2.0+Hadoop 機器學習與大數據分析實戰
第 2 章 上機使用 Unix/Linux 內容: 操作介面 主機連線 登入主機 認識系統環境 使用者常用命令.
Web Server 架設.
台灣大學計算機及資訊網路中心 教學研究組 張傑生
高效能運算服務 (High Performance Computing) 建置之經驗分享
并行计算实验上机 国家高性能计算中心(合肥).
Shell Script 程式設計.
第 6 章 X Window 基本操作 著作權所有 © 旗標出版股份有限公司.
Linux 圖形操作介面 GUI -- X-window 與 Webmin
Hadoop平台使用 计算中心
Linux 基础与常用命令简介 生物信息学培训班 杭州,2018年1月18日 周银聪.
曙光信息产业(北京)有限公司 技术支持中心 戴荣 2007年12月
第二天 计算机基础技能培训 (一)linux基础知识
Linux server 連線軟體: 主機:kitty.cs.pu.edu.tw 帳號:dar 密碼:n….w.
工作站簡介 ROOT小組.
Linux基本操作 程設實習課 ( 2/25 ).
伺服器探索營 Day 1 指導老師: 張啟中 (JohnAxer) 教學助理:
李恒锐 北京景行锐创软件有限公司 2017年6月 西北农林科技大学 超算系统现状和调度系统使用 讲解 李恒锐 北京景行锐创软件有限公司 2017年6月.
Windows與Linux資源共享 SAMBA
远程登录管理.
编辑文本文件 软件包管理 Samba 在Linux下使用Windows共享打印机
利用ICE通信中间件构建分布式应用程序开发框架
7.1.1 设备管理的功能(P95) 分配设备:按设备的不同类型和操作系统选用的算法分配。包括分配相应的通道、设备控制器以及对未分配到的任务或怍业进行排队等; 控制和实现真正的输入输出操作。包括通道程序控制、启动设备、及时响应及处理中断讯号等; 对输入输出缓冲区进行管理。例如逻辑名的管理,多个缓冲区的分时以及串并行操作,同类多个外部设备的均衡工作,避免“忙的忙”和“闲的闲”;
环境配置及使用.
系统管理员培训(I期) 浙江省基层人民法院 -V8版介绍及系统管理培训 二OO八年四月二十三日 法院事业部经理:周春宏
第二章 UNIX系统安装与常用命令.
如何有效率的學習Linux 培養組合能力 多用程式, 少寫程式 從錯誤訊息中學習 養成略讀 “各種文件” 加強英文基本閱讀能力 勤作筆記
Confidential Property
UNIX指令-檔案與目錄操作.
杨振伟 清华大学 第一讲:Linux环境下编程(1)
实验一:编译运行Linux内核并使用gdb进行调试
Lab01 工作站&Linux操作 日期:2011/03/07.
1.3操作系统提供的服务和用户接口 操作系统提供的用户接口 程序接口与系统调用 操作接口与系统程序
台灣大學計算機及資訊網路中心 教學研究組 張傑生
如何連上工作站 WorkStations: 1. Solaris 2. Linux Use X-Win32 (for Solaris)
程序管理 蘇偉順助教.
第12章 Linux與 嵌入式uClinux系統
粒子物理与核物理实验中的数据分析 杨振伟 清华大学 第1讲:Linux环境下的编程.
杨振伟 清华大学 第一讲:Linux环境下编程(1)
Linux网络配置管理.
劉庠宏、林合治編著 國立高雄大學應用數學系 2005年3月1日
2015年度中科院超级计算环境青岛分中心培训 中科院超算中心 中科院海洋所超算中心
第六章 文件系统与文件管理 6.4 Linux文件管理 1、比较MS DOS 与 Linux的目录结构 一、Linux文件系统的树形结构
Presentation transcript:

曙光集群简明使用手册 技术支持中心

目录 一、曙光集群的概念 二、曙光集群系统整体架构 三、曙光集群的使用 远程登录系统 上传下载数据 Linux常用命令 安装和运行程序 使用作业调度

一、曙光集群的概念

什么是集群 集群系统是利用高性能通信网络将一组计算机(节点)按 某种结构连接起来,在并行化设计及可视化人机交互集成 开发环境支持下,统一调度、协调处理,实现高效并行处 理的系统 所有计算机节点一起工作如同一个单一集成的系统资源, 实现单一系统映像(SSI) 集群是目前高性能计算机三大体系结构之一,是目前最主 流的和最有生命力的体系结构 集群是目前性能价格比最高的高性能计算机体系结构 集群特点:容易实现、容易维护、较好用的高性能计算机

曙光集群是使用Infiniband、Myrinet等高速网络或者千 兆网络节点机网络连接,进行高性能并行计算; 使用千兆网络连接,进行网络管理监控; 一个节点就是一台机器,N台机器通过连接高速网、安装 系统(系统的一致性,即系统配置必须一致)、调试并行 环境、安装应用软件来进行计算;

曙光集群可扩展性强,如果现有的计算资源无法满足需要, 可以根据实际需求,动态增加计算节点; 曙光6000 (星云),部署在深圳超算 曙光集群可扩展性强,如果现有的计算资源无法满足需要, 可以根据实际需求,动态增加计算节点; 曙光集群的易管理性:GridView、CloudView等监控管 理软件,协助管理集群系统;

二、曙光集群系统整体架构

曙光集群硬件系统的基本架构 集群系统的硬件组成 基于节点的集群 CPU:AMD 系列Opteron、Intel系列Xeon 高中低端产品: 八路、四路、双路、单路 外围设备: 机柜系统 网络系统 集群监控系统 集群管理系统 视频管理系统

集群系统的体系结构

集群系统的物理架构 (InfiniBand) 10

曙光集群的计算系统 计算节点 GPGPU节点 一般为双路或四路刀片或机架式服务器,为计算系统的主力。 SMP 胖节点 GPU即图形处理单元,GPGPU的意思为使用显卡做通用计算,由于GPU卡具有更多计算核心数,更高的能效比和更强的浮点计算能力,所以对于适合GPU,并在GPU上移植成功的应用软件提供更高的性能 计算系统 SMP 胖节点 一般用于一些有大内存、高IO或单机多核处理的需求,满足一些特殊应用的需求。 内容

曙光集群功能节点 管理节点 登陆节点 IO节点 登陆节点 IO节点 管理节点 用于用户登陆集群,在集群上实现作业提交,文件上传,编辑,程序编译等操作。可靠性要求高,数量少 用于运行系统级的管理软件,性能要求不高,但可靠性要求高,数量少 用于连接存储设备,提供共享存储空间。小型项目,使用单一IO节点提供NFS解决。大中型,使用并行文件系统,多个IO节点和存储空间解决IO瓶颈 登陆节点 IO节点 管理节点

高性能集群三要素 统一的文件印象 统一的系统印象 无密码访问 对于普通用户来说,所有节点看到的某一个文件都是相同的文件。 通过nfs或者并行文件系统实现。 通过NIS或同步用户信息来实现。 网络全通 rsh或ssh无密码访问配通

曙光集群物理视图(示例) 主要参数 种类名称:风冷机柜 长宽高:110*60*200 重量: 180KG 压强:500KG/MM 容量: 42U 通风设计:风冷 布线设计:电源、网络

曙光集群网络拓扑图(示例)

曙光集群用户视图(示例)

三、曙光集群的使用 远程登录系统 上传下载数据 Linux常用命令 安装和运行程序 使用作业调度

远程登录系统

登录工具 Putty VNC 一款免费的Telnet和SSH终端实现,可使用在Win32平台下。 Virtual Network Computing,可跨操作系统实现对远程桌面的 控制,对网络带宽要求较低; 由于采用远程桌面的模式,遇到网络连接中断不会影响实际操作, 重新连接即可;

Putty简介 完全免费; 在Windows 9x/NT/2000/Win7下运行的都非常好; 全面支持ssh1和ssh2; 绿色软件,无需安装,解压后即可使用; 体积很小,仅364KB (0.54 beta版本); 操作简单,所有的操作都在一个控制面板中实现。

Putty登录终端

Putty登录终端

VNC简介 VNC 是虚拟网络计算机(Virtual Network Computing)的缩写,属 于一种显示系统,能将完整的窗口界面通过网络,传输到另一台计算 机的屏幕上。 VNC是一款优秀的远程控制工具软件,由AT&T的欧洲研究实验室开 发,是基于UNIX和Linux操作系统的免费开放源码软件,远程控制能 力强大,高效实用。 VNC由两部分组成:一部分是客户端的应用程序(vncviewer);另外 一部分是服务器端的应用程序(vncserver)。VNC在UNIX、Linux和 Windows操作系统中都有相应的实现方式,图形用户界面友好,可 跨操作系统互访桌面。

VNC连接Linux远程桌面 创建VNC连接密码:首次启动VNC时要求创建密码 [dawn@node110 ~]$ vncserver You will require a password to access your desktops. Password: Warning: password truncated to the length of 8. Verify: Would you like to enter a view-only password (y/n)? n New 'X' desktop is node110:1 Creating default startup script /home/dawn/.vnc/xstartup Starting applications specified in /home/dawn/.vnc/xstartup Log file is /home/dawn/.vnc/node110:1.log 修改VNC密码:使用vncpasswd重设密码;或删除其passwd文件,再启动VNC时重新创建密码 [dawn@node110 ~]$ rm ~/.vnc/passwd 修改VNC启动界面的参数:xterm界面过于简陋,改为常用的gnome界面;注意行末“&”符号 [dawn@node110 ~]$ vi ~/.vnc/xstartup 1 #!/bin/sh 2 3 xrdb $HOME/.Xresources 4 xsetroot -solid grey 5 #xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & 6 #twm & 7 gnome-session &

VNC连接Linux远程桌面 关闭VNC远程桌面: 重新打开VNC远程桌面: [dawn@node110 ~]$ vncserver -kill :1 Killing Xvnc process ID 22016 重新打开VNC远程桌面: [dawn@node110 ~]$ vncserver New 'X' desktop is node110:1 Starting applications specified in /home/dawn/.vnc/xstartup Log file is /home/dawn/.vnc/node110:1.log 在Windows客户端,通过VNC View连接远程Linux的桌面,注意远程桌面的描述格式:

VNC连接Linux远程桌面 VNC控制远程Linux桌面:

上传下载数据

WinSCP简介 WinSCP是一个Windows环境下使用SSH的开源图形化 SFTP客户端,并支持SCP协议。 它的主要功能就是在本地Windows与远程Linux服务器之 间安全地复制文件。

WinSCP登录界面

WinSCP登录界面

WinSCP操作界面

Linux常用命令

查询Linux命令使用方法:man man是“manual”的简写,可查询Linux常用命令的手册。 格式:man [关键字]

显示文件列表:ls ls是“list”的简写,用来显示指定目录下的内容。 格式:ls [参数] [路径或文件名]

编辑文件:vi vi是Linux终端下最常用的文档创建和编辑工具。 格式:vi [参数] [文件名]

检索字符串:grep grep是强大的检索工具,可用正则表达式检索字符串。 格式:grep [参数] [文件名]

远程复制文件:scp scp采用SSH协议,通过网络在节点之间传输文件。 格式:scp [[user@]host1:]file1 [[user@]host2:]file2

登录不同节点:ssh ssh采用加密传输协议,用于登录网络上的其它节点。 格式:ssh [user@]hostname [command]

文件目录类命令 浏览文件命令 cat:显示一个文本文件的全部内容; more/less:浏览文本文件的内容,没有编辑功能; head/tail:显示文本文件的头/尾若干行,默认为10行; 目录操作命令 mkdir:创建目录; rmdir :删除目录; 文件操作命令 touch:创建一个空文件,或者将指定文件的时间戳改为当前时间; rm:删除文件;“rm -rf”可以迭代方式删除整个目录,慎用; cp:拷贝文件; mv:移动文件,或者将文件重命名; ln -s:创建文件软链接,类似于快捷方式; tar:将一组文件、目录打包或解包,通过参数可设定是否压缩文件;

安装和运行程序

Linux安装程序 示例:编译、安装OpenMPI: 示例:设置OpenMPI的环境变量 tar -xzvf openmpi-1.4.3.tar.gz cd openmpi-1.4.3 ./configure --prefix=/public/software/ompi-1.43-gnu make make install 示例:设置OpenMPI的环境变量 vi ~/.bashrc export MPIDIR=/public/software/ompi-1.43-gnu export PATH=$MPIDIR/bin:$PATH export LD_LIBRARY_PATH=$MPIDIR/lib:$LD_LIBRARY_PATH export INCLUDE=$MPIDIR/include:$INCLUDE export MANPATH=$MPIDIR/share/man:$MANPATH source ~/.bashrc

Linux的环境变量 什么是环境变量? Linux是一个多用户的操作系统。多用户意味着每个用户登录系统后,都有自己专用的运行环境。而这个环境是由一组变量所定义,这组变量被称为环境变量。用户可以对自己的环境变量进行修改以达到对环境的要求。 定制环境变量 环境变量是和Shell紧密相关的,它是通过Shell命令来设置的。环境变量又可以被所有当前用户所运行的程序所使用。对于bash来说,可以通过变量名来访问相应的环境变量。 全局环境变量 /etc/profile、/etc/profile.d/*.sh这些文件中设置的环境变量对所有用户都起作用,登录时自动生效,称为全局环境变量。全局环境变量可用来设定一些默认的应用环境,如指定编译器、MPI并行库等。 用户环境变量 安装一个应用程序后,相关的环境参数尽量不要加入的全局环境变量,避免版本冲突。 可在/public/software/profile.d/目录下创建相应的env文件,让用户在~/.bashrc 或PBS脚本中自由选择source。

Linux的环境变量 显示环境变量:echo 命令 [dawn@vnode110 ~] echo $HOME /home/dawn 设置一个新的环境变量:export 命令 [dawn@vnode110 ~] export NAME="RaidCheng“ [dawn@vnode110 ~] echo $NAME RaidCheng 清除环境变量:unset 命令 [dawn@vnode110 ~] unset NAME [dawn@vnode110 ~] echo $NAME [dawn@vnode110 ~] 几个关键的环境变量: HOME:当前用户的主目录 PATH:决定了shell将到哪些目录中寻找命令或可执行程序 LD_LIBRARY_PATH:shell在哪些目录寻找动态链接库,非常重要 INCLUDE:编译程序时,设定在哪些目录下寻找头文件

运行串行程序 方法一 方法二 cd /home/your_account/your_workdir ./your_code cd $HOME vi .bashrc export PATH=/home/your_account/your_workdir:$PATH your_code

运行并行程序(1) 确认自己的并行环境 ## Open MPI ## source /public/software/profile.d/ompi143-gnu-env.sh which mpirun /public/software/ompi143-gnu/bin/mpirun ## Intel MPI ## source /public/software/profile.d/impi-env.sh /public/software/intel/impi/4.0.0.028/intel64/bin/mpirun

运行并行程序(2) 采用OpenMPI 单机并行 cd /home/your_account/your_workdir vi hosts.txt node1 slots=2 node2 slots=2 node3 slots=2 node4 slots=2 采用OpenMPI 单机并行 cd /home/your_account/your_workdir source /public/software/profile.d/ompi143-gnu-env.sh mpirun –np 4 ./your_code 跨节点并行 vi hosts.txt mpirun –np 8 –machinefile hosts.txt ./your_code

运行并行程序(2) 采用Intel MPI 设定节点之间的通讯密码 vi hosts.txt node1:2 node2:2 node3:2 node4:2 采用Intel MPI 设定节点之间的通讯密码 echo secretword=xxxxxx > $HOME/.mpd.conf chmod 600 $HOME/.mpd.conf 单机并行 cd /home/your_account/your_workdir source /public/software/profile.d/impi-env.sh mpirun –np 4 ./your_code 跨节点并行 vi hosts.txt mpirun –np 8 –machinefile hosts.txt ./your_code

使用作业调度

作业管理系统的结构

PBS 的基本命令 在PBS系统中,用户使用qsub命令提交用户程序。 注释,以“#”开头 PBS指令,以“#PBS”开头 SHELL命令 [dawn@node1 ~]$ vi vasp.pbs #PBS –N vasp.Hg #PBS –l nodes=2:ppn=8 #PBS –q high echo "This jobs is "$PBS_JOBID@$PBS_QUEUE cd $PBS_O_WORKDIR source /public/software/profile.d/ompi143-gnu-env.sh export vasp_exe=/public/software/vasp/vasp5.2.11-ompi mpirun -np 16 -machinefile $PBS_NODEFILE $vasp_exe [dawn@node1 ~]$ qsub vasp.pbs

#PBS –l: 申请计算资源 #PBS -l mem=200mb #PBS -l walltime=01:00:00 $TORQUEHOME/server_priv/nodes node01 np=4 bigmem dualcore node02 np=8 bigmem matlab …… #PBS -l mem=200mb #PBS -l walltime=01:00:00 #PBS -l nodes=1:ppn=4 #PBS -l nodes=4:ppn=2 #PBS -l nodes=node01+node02+node03 #PBS -l nodes=server:ib+3:bigmem:ib #PBS -l nodes=2:blue:ppn=2+red:ppn=3+b1014 #PBS -l nodes=4:ppn=4,mem=200mb #PBS -l other=matlab

qmgr –c: 查询队列信息 qmgr -c 'p s' …… # Create and define queue high create queue high set queue high queue_type = Execution set queue high acl_user_enable = True set queue high acl_users = dawn set queue high acl_users += root set queue high Priority = 30 set queue high resources_max.nodect = 4 set queue high max_user_queuable = 10 set queue high max_user_run = 4 set queue high enabled = True set queue high started = True …… qmgr -c “set queue high acl_users += guest”

pestat: 查询节点状态 [dawn@node1 ~]$ qsub example.pbs 2743.node200 [dawn@node1 ~]$ pestat node state load pmem ncpu mem resi usrs tasks jobids/users node10 excl 8.06* 24025 12 24025 662 0/0 12 2743 dawn node11 free 0.00 24025 12 24025 661 1/1 0 node12 free 0.00 24025 12 24025 661 1/1 0 node13 free 0.00 24025 12 28127 660 0/0 0 node14 free 0.00 24025 12 28127 661 1/1 0 node16 free 0.99* 24025 12 28127 1233 6/2 2 2733 NONE* 2735 NONE* node17 free 1.33 24025 12 24025 1011 3/1 1 2740 NONE* node18 free 0.00 24025 12 24025 661 1/1 0 node19 free 0.00 24025 12 28127 660 0/0 0 node20 offl* 0.00 48267 24 52369 1203 0/0 0 node21 offl* 0.00 48267 24 52369 1204 0/0 0 node22 offl* 0.00 48267 24 52369 1203 0/0 0 node23 free 0.00 48267 24 52369 1219 0/0 0 node24 free 0.00 48267 24 52369 1211 1/1 0 node25 free 0.00 48267 24 52369 1211 1/1 0 node26 free 0.00 48267 24 52369 1212 1/1 0 node27 free 0.00 48267 24 52369 1207 1/1 0 node28 free 0.00 32107 16 36209 894 0/0 0 node29 free 0.00 32107 16 36209 891 0/0 0 节点状态 excl :所有CPU资源已被占用; busy :CPU已接近满负荷运行; free :全部或部分CPU空闲; offl :管理员手动指定离线状态;

查询作业运行状态 查询作业命令 qstat [参数],其中参数可为: -q :列出系统队列信息 -B :列出PBS服务器的相关信息 [dawn@node1 ~/pbs]$ qsub example.pbs 2739.node200 [dawn@node1 ~/pbs]$ qstat -an node200: Req'd Req'd Elap Job ID Username Queue Jobname SessID NDS TSK Memory Time S Time -------------------- -------- -------- ---------------- ------ ----- --- ------ ----- - ----- 2739.node200 dawn high pbsTest 5905 1 2 -- 00:00 R -- node40/1+node40/0 查询作业命令 qstat [参数],其中参数可为: -q :列出系统队列信息 -B :列出PBS服务器的相关信息 -Q :列出队列的一些限制信息 -an:列出队列中的所有作业及其分配的节点 -r :列出正在运行的作业 -f jobid :列出指定作业的信息 -Qf queue:列出指定队列的所有信息

查询和删除作业 作业删除命令:qdel 作业号 注意事项 1、非root用户只能查看、删除自己提交的作业; [root@node1 ~]$ qstat Job id Name User Time Use S Queue ---------------- ---------------- ---------------- -------- - ----- 93.node1 test.pbs dawn 0 R default 95.node1 vasp.Hg vasp 0 E default 111.node1 structure amber 0 Q default [dawn@node1 ~]$ qdel 93.node1 作业删除命令:qdel 作业号 注意事项 1、非root用户只能查看、删除自己提交的作业; 2、在提交作业时,可根据算例规模的大小合理估算所需的walltime和Mem,把其写进作业脚本里,这样有助于更快、更有效地分配资源;

谢谢! Q&A