1、PBS作业管理系统内内 容容任务管理系统概述PBS作业调度系统作业调度系统的使用2022/10/312任务管理系统的功能任务管理系统的功能单一系统映象机群松散的结构的整合系统资源整合异构系统的整合多用户的管理用户提交的任务的统一安排,避免冲突用户权限的管理非授权用户的控制2022/10/313任务管理系统的简史任务管理系统的简史2022/10/314任务管理系统的分类任务管理系统的分类基于进程级别的调度由机群中的操作系统或者运行时Runtime内部支持,对运行的作业进行监控;以实现机群内的透明调度、以及自动优化进程的分配和平衡负载 基于作业级别的调度这种方式由独立的作业管理系统实现。该系统通过
2、专门的入口,接收用户提交的任务,送入相应的队列等待调度;并在适当的时机分配资源,为任务创建作业,将作业提入运行,在作业运行结束后完成收尾工作,并提供记帐功能。管理员和用户还可以在机群中查询并预订符合要求的资源,从而实现对作业和资源的全程交互控制。2022/10/315任务管理系统的比较任务管理系统的比较管理管理实现级别 进程程级作作业级调度方式透明,基于最小负载可以基于网络拓扑/程序特性/负载/自定义策略调度管理层次 低级,仅根据局部信息 高级,根据全局信息负载均衡方式支持动态负载均衡支持静态负载均衡;如有checkpoint功能,可支持动态负载均衡 资源共享仅能够共享硬件资源可以共享硬件、软
3、件和证书等资源服务质量Qos可能造成大作业饥饿,无Qos只要策略适当,可以保证Qos机群一致性的层次入口不一致,仍为多机系统;可以提供存储一致性 提供单一系统入口和存储一致性对用户权限、资源和作业的高级管理策略无法实现能够很好地实现系统结构规模可扩展 如果规模过大,会遇到前述的O()的通讯问题,难以扩展 通讯量与系统规模成线形放缩,可以很好的扩展对作业类型的限制如前述,不适合于系统调用较多的程序(如I/O密集型)对程序类型无限制2022/10/316内内 容容任务管理系统概述PBS作业调度系统作业调度系统的使用2022/10/317PBS作业调度系统作业调度系统 PBS最初由NASA的Ames
4、研究中心开发,为了提供一个能满足异构计算网络需要的软件包。它力求提供对批处理的初始化和调度执行的控制,允许作业在不同主机间的路由。2022/10/318PBS的技术特色的技术特色力求控制对批处理的初始化和调度执行,对批处理的初始化和调度执行,允许作业在不同主机间在不同主机间的路由。的路由。独立的调度模块独立的调度模块存有各个可用的排队作业、运行作业和系统资源使用信息,并且允许系统管理员定义资源和每个作业可使用的数量。在作业调度策略上,PBS提供了默认的公平共享和独占公平共享和独占FIFO调度调度策略,策略,还提供了TCL、BACL、C三种过程语言和调度类,并定义了一些调度需要的函数和完整的AP
5、I,方便实现新的调度策略。实现新的调度策略。提供文件传送,File Stage-in 和和Stage-out。满足POSIX1003.2d 标准,支持作业依赖,作业依赖,和完整的安全认证。安全认证。提供用户映射用户映射功能,使PBS 能用于用户不一致的系统中。2022/10/319PBS的结构的结构2022/10/3110PBS 的组成的组成服务器:pbs_server调度器:pbs_sched执行器:pbs_mom命令行:用户脚本,管理命令等2022/10/3111PBS 的基本原理的基本原理2022/10/3112PBS 的优缺点的优缺点支持系统级检查点功能(需底层操作系统支持)很好的大规
6、模扩展性独立的调度模块*支持作业依赖 符合POSIX 1003.2d 标准-只支持Unix类操作系统-多集群协作功能有限-不支持用户级检查点功能2022/10/3113术术 语语节点节点(node)一个单一的操作系统映像,一个统一的虚拟内存映像一个或多个cpu,一个或多个IP地址的计算机系统被称之为一个节点。通常执行主机(execution host)也被称之为节点。节点属性节点属性 队列、服务器和节点都有与自己相关的属性,这些属性提供控制信息。与节点相关的属性有:状态、类型、虚拟处理器的个数、作业列表(本节点被分配给的作业)以及节点的特性。节点特性节点特性 为了提供一组节点的分配的方法,零个
7、或者多个特性被赋给每个节点。这个特性不过是一串对于PBS没有含义的字母和数字的组合(第一个字符必须是字母)。2022/10/3114PBS 安装安装解压源文件包解压源文件包 rootnode1/public#tar-zxvf openpbs-2.3.16.tar.gz 编译设置编译设置 rootnode1/public/OpenPBS_2.3.16./configure-disable-gui-set-server_home=/var/spool/pbs-enable-docs-x-libraries=/usr/X11R6/lib64 其中,-x-libraries=/usr/X11R6/li
8、b64是在X86_64(AMD64或EM64T)上安装时,需要指明系统64位库的位置。编译安装编译安装 rootnode1/public/OpenPBS_2.3.16#make rootnode1/public/OpenPBS_2.3.16#make install 2022/10/3115PBS在机群上安装在机群上安装由于节点系统相同,因而可以用如下SHELL script在node2node8上安装;#!/bin/bash for i in seq 2 8 do echo“node$i-“rsh node$i“cd/public/openpbs;make install”echo“-“ec
9、ho“”done 2022/10/3116服务进程配置和启动文件服务进程配置和启动文件系统配置文件/etc/pbs.conf#!/bin/sh pbs_home=/var/spool/pbs 指定系统的pbs的设置的目录位置 pbs_exec=/usr/local 指定pbs可执行程序的目录位置 start_server=1 start_sched=1 当为1是表示守护进程启动,0为守护进程不启动 start_mom=1 系统启动脚本/etc/init.d/openpbs Server的系统启动脚本/etc/init.d/pbs_server Scheduler系统启动脚本/etc/init.
10、d/pbs_sched Mom系统启动脚本/etc/init.d/pbs_mom 2022/10/3117Server端设置端设置初始化server:(第一次运行或者重新配置)/usr/local/sbin/pbs_server t createServer配置目录/var/spool/pbs/server_priv/节点属性声明:/var/spool/pbs/server_priv/nodesnode2 R220A np=2node3 R220A np=2node4 dualcore np=4node5 dualcore np=4node6 R4280A np=4node7 R4280A n
11、p=42022/10/3118mom端设置端设置mom配置目录:/var/spool/pbs/mom_priv/mom配置文件:/var/spool/pbs/mom_priv/config#MOM server configuration file#if more than one value,separate it by comma.#rule is defined by the name$ideal_load 1.5$ideal_load 1.5$max_load 2$max_load 2#host allowed to connect to Mom server on unprivile
12、ged port$restricted*.$restricted*.#log event:#0 x1ff log all events+debug events#0 x0ff just all events$logevent 0 x0ff$logevent 0 x0ff#host allowed to connect to mom server on privileged port$clienthost node1$clienthost node1#alarm if the script hang or take very long time to execute$prologalarm 30
13、$prologalarm 30 2022/10/3119Server端的动态设置端的动态设置PBS要能正常运行还需要通过qmgr命令的server进行配置,设置一些属性。输入qmgr命令进入配置交互命令。下面是让PBS可以正常运行的一些步骤。创建队列创建队列create queue create queue 队列名队列名 queue_type=Excuttion queue_type=Excuttion打开和启动队列打开和启动队列set queue set queue 队列名队列名 enable=t,started=t enable=t,started=t打开调度打开调度set server
14、scheduling=tset server scheduling=t设置默认队列设置默认队列set server default_queue=set server default_queue=队列名队列名2022/10/3120qmgr命令(管理员使用)命令(管理员使用)输入qmgr进入交互式模式后即可输入各种命令 qmgr动作:对象类型和操作符 动作动作 对象类型对象类型 对象名对象名 属性属性 操作符操作符 值(,属性值(,属性 操作符操作符 值)值)createcreate创建一个对象创建一个对象deletedelete删除一个对象删除一个对象setset设置对象的属性设置对象的属性u
15、nsetunset除去对象的属性除去对象的属性printprint打印对象的属性打印对象的属性listlist列出对象的属性列出对象的属性serverserver服务器服务器queuequeue队列队列nodenode节点节点2022/10/3121PBS队列设置队列设置导入server配置文件:rootnode1 root#qmgr queue.conf配置文件例子:create queue defaultcreate queue defaultset queue default queue_type=executionset queue default queue_type=executi
16、onset queue default max_running=20set queue default max_running=20set queue default enabled=Trueset queue default enabled=Trueset queue default started=Trueset queue default started=Trueset server scheduling=Trueset server scheduling=Trueset server max_user_run=20set server max_user_run=20set server default_queue=defaultset server default_queue=default set server query_other_jobs=True set server query_other_jobs=True2022/10/3122Scheduler调度行为配置调度行为配置Scheduler的行为由配置目录下的sched_priv/sched_config文件进行控
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1