Presentation is loading. Please wait.

Presentation is loading. Please wait.

黄秋兰/高能所计算中心 Fabio Hermandez/IN2P3-CC

Similar presentations


Presentation on theme: "黄秋兰/高能所计算中心 Fabio Hermandez/IN2P3-CC"— Presentation transcript:

1 黄秋兰/高能所计算中心 Fabio Hermandez/IN2P3-CC 2011-07-06
支持AFS环境的批作业管理系统 黄秋兰/高能所计算中心 Fabio Hermandez/IN2P3-CC

2 主要内容 系统研究背景及意义 系统设计与实现 系统部署与评价 总结与展望

3 集群系统概况 网格 探测器集群 分布式文件系统 登录节点 AFS NFS GRASS系统 作业管理系统 磁盘池 Lustre 计算节点
磁带库 计算节点

4 作业管理系统的问题 系统方面 管理方面 目前集群的所有用户管理和认证都采用AFS认证管理
OpenAFS(Andrew File System)采用Kerberos认证,每个AFS tokens的生命周期有限(默认25小时) 作业管理系统Torque 完全支持工作在采用标准UNIX用户认证的共享文件系统中,比如NFS、Lustre等,但不支持工作在AFS环境中。Torque无法保证用户从AFS的HOME目录提交作业的运行结果写会用户的HOME目录 管理方面 目前集群的所有用户管理和认证都采用AFS认证管理 系统管理需要同时提供AFS和NFS系统的在线服务,不是长久之计

5 如何解决? 方案一:放弃AFS系统,所有用户目录$HOME都采用NFS 方案二:集成Torque和AFS,使作业管理系统支持AFS环境
软件库的共享及并发访问问题,如BOSS软件的Gaudi库等 方案二:集成Torque和AFS,使作业管理系统支持AFS环境 集群可以不提供NFS服务 保证用户在AFS的用户目录下提交各种作业类型,都能正确的将运行结果写回用户的AFS目录 采用方案二,设计了PAFSI(PBS and AFS Integration)系统,有效的弥补了Torque的不足

6 系统总体设计 系统的设计采用客户端/服务器C/S结构,集群中消息的通信机制基于开源的ActiveMQ消息总线机制。

7 服务器端AFSTokenServer

8 服务器端AFSTokenServer的组成
运行在AFS的服务器上,负责保存、伪造及修改用户的AFS Tokens Token-Generator模块 监控集群节点的Tokens请求(节点名、作业ID、作业属主等信息) 验证请求的合法性 伪造合法的Tokens 延长Tokens的生命周期 记录Tokens请求 Token-Dispatcher模块 Tokens的分发,以消息为载体,发送有效的tokens给相应的计算节点,同时修改记录的标志位 请求信息的清理

9 AFSTokenServer的实现 无需修改AFS的源码
充分利用AFS的开源特性,调用AFS-DEVEL的相关接口,编写自定义的tokens接口 实现的接口有: forgeToken activateToken extendToken 服务器端对Tokens的操作,只需用户提供JOBID,JOBOWNER信息(不需要用户提供任何密码),即可完成有效的tokens伪造 采用ActiveMQ实现与客户端的消息通信,服务器端以消息为载体,发送有效的tokens给相应的计算节点

10 客户端AFSTokenClient 客户端的实现主要是对Torque PBS的pbs-mom模块扩展
运行在所有计算节点上,负责请求、接收、保存并设置作业运行环境以激活用户的AFS Tokens PBS-MOM jobs AFSTokenClient Exist valid tokens? no Send tokens request Receive tokens Activate tokens in jobs’ environment Create PAG yes 当调度到新作业时,向服务器端发送tokens请求,( JOBID,JOBOWNER,HOSTNAME) 接收从AFSTokenServer端以消息形式发送过来的Tokens,并保存 设置作业运行环境以激活tokens

11 系统的消息服务层 基于开源消息中间件ActiveMQ实现系统消息服务层
ActiveMQ是一个开放源码基于Apache 2.0 licenced发布并实现了Java Message Service(JMS1.1)规范 AFSTokenServer ActiveMQ Pending Queue2 Pending QueueN Pending Queue1 AFSTokenClient

12 作业的生命周期对比 作业创建 作业提交 作业执行前 作业执行 作业结束 作业生命周期 PAFSI作业管理系统
Torque PBS作业管理系统 作业创建 用户通过shell命令组成的批处理的脚本文件 作业提交 qsub命令提交作业 作业执行前 1、pbs_mom对作业运行的资源、环境进行判断 2、发送AFS tokens请求,获取用户的AFS tokens 3、设置作业运行环境,激活AFS tokens pbs_mom对作业运行的资源、环境进行判断 作业执行 检测AFS tokens的生命周期,延长tokens生命周期 作业结束 1、销毁用户的AFS tokens 2、释放计算资源 释放计算资源

13 PAFSI系统与Torque的作业处理过程
Torque PBS的作业处理过程 PAFSI系统的作业处理过程

14 系统的部署情况 系统采用C/S框架,涉及服务端和客户端的部署 高能所计算中心已部署了16个计算节点,128个CPU cores
服务端部署在AFS服务器上 客户端部署在所有计算节点上 高能所计算中心已部署了16个计算节点,128个CPU cores 在今年8月份,大规模投入使用,部署600多个计算节点,支持数千个作业并发执行

15 系统评价 使用方面 实现方面 资源使用方面 PAFSI系统实现对用户透明 用户无需修改作业脚本,采用传统的方式提交
系统不需要用户提供账号密码 本系统就不存在如下问题,以美国圣母大学开发的PSR (Password Storage and Retrieval System)系统为例 当用户密码发生改变时,PSR管理员需要重新要求用户告知密码。 告知密码,用户的安全性得不到保障,同时用户若是频繁的更换密码,对PSR管理员和用户来说,都是一个很繁琐的过程 资源使用方面 客户端只有一个守护进程 每个作业没有额外的伴随进程,节省系统资源开销

16 小结 本系统旨在解决Torque PBS的不足,保证用户在AFS的用户目录下提交各种类型的作业,包括各种长作业、短作业等,都能正确的将数据写回用户的AFS目录。 系统的主要特点有: 采用传统的客户端/服务器框架,在实现过程中模块相对独立,易于维护 不需要修改AFS源码,调用AFS-DEVEL的相关库,编写伪造、修改AFS Tokens的相关接口 不需要用户提供账号密码,即可伪造有效的tokens,保证用户访问AFS系统 采用ActiveMQ,实现高效的消息通信 使用方面,实现对用户透明 性能上与Torque PBS相当,支持数千个任务的并发运行 PAFSI系统兼容传统的Torque PBS系统,支持NFS、Lustre等存储环境

17 谢谢大家!


Download ppt "黄秋兰/高能所计算中心 Fabio Hermandez/IN2P3-CC"

Similar presentations


Ads by Google