您的当前位置:首页基于socket技术的集群网络监控管理实现

基于socket技术的集群网络监控管理实现

2020-08-31 来源:乌哈旅游
5j:l圈— -  。; 。 信息技术 基于s o c k e t技术的集群网络监控管理实现 徐香明 (中石化胜利油田物探研究院计算室 山东东营 25 7022) 摘要:本文利用socket技术,通过鳊写程序实现控制信息加密解密.1inux系统进程控制、系统信息采集控制、linux并行命令管理,用 户安全认证、类shell终端等功能,从而实现了通过同络对集群系统进行监控.管理的功能。 关键词:socket通讯技术 控制信息加密/解窘 采集控制 进程控制 并行命令管理 安全机制 中图分类号:TP39 3.05 文献标识码:A 文章编号:1 67 2--3791(20lO)O6(c)-0020-01 微机集群已经广泛地应用于国际高端计 发过程中将网络技术与远程监控理论基础 算领域。在中石化上游,微机集群承担着绝大 相结合,实现了以下功能。 用户通过界面发出命令,然后通过 socket程序将命令发送到服务器,由服务器 发出命令完成对服务的操作. 部分的大型计算任务,在海量地震资料处理、 2.1目的控制信息加密/解密 油藏数值模拟等方面是生产科研的主力机 为保证用户控制信息的安全性,对用 型,而且需求和规模都在不断扩大,如何提高 资源利用率,充分发挥投资价值,是集群应用 2.4并行命令管理 系统管理员用于完成集群并行管理任 务,执行系统提供的非交互命令。 户控制信息使用DES(单钥密码体制,是一 种传统的加密算法,是指信息的发送方和 面临的重要问题。因此,有必要通过研究集群 接收方共同使用同一把密钥进行加解密。 用户通过界面发出并行命令,然后通 系统网络监控、调度管理和资源优化等,开发 加解密速度快,破译极其困难。)加密与解 过socket发送到客户端;在客户端通过监听 一套通用的微机集群监控管理系统,以提高 密,并把每个用户的密钥存放在数据库里, 程序,收到界面发过来的命令执行,并将命 资源的利用率。 在socket客户端(界面),用户每发一条控制 令的执行结果返回,能够按照节点分组、返 命令,先从数据库中检查有没有该账号,若 回信息整理等。 1关键技术:socket通讯技术 没有,则为该账号生成一个密钥,并存到数 当收集到所有节点的返回信息后,若 socket通常也称作“套接字”,用于描述 据库里,并根据密钥对用户控制信息加密, 后面没有其他的命令,则直接返回这些信 然后通过socket发出控制信息;若有,则从 息,如果有,则以这些信息作为其他其命令 数据库里取出密钥,并根据密钥对用户控 能够的输入,显示处理的结果。 IP地址和端口,是一个通信链的句柄。应用 程序通常通过“套接字”向网络发出请求或 者应答网络请求。生成套接字,主要有3个 制信息加密,然后通过SOcket发出控制信 2.5类sheII终端 参数:通信的目的IP地址、使用的传输层协 息。 集群系统的各个主机运行类shell终端 监听客户端的请求,为了确保安 改(TCP或UDP)和使用的端口号。socket原 在socket ̄务器端,需要从数据库中取 服务程序,意是“插座”,通过将这3个参数结合起来, 出相对应的密钥,再根据密钥从socket传过 全性,使用了telnet的用户验证模式,当收 与一个“插座”socket绑定,应用层就可以和 来的信息中取出其控制信息并解密。socket 到一个连接信息的时候,首先要求用户输 客户端(界面),加密的密文;socket ̄务器 入帐号名和口令,并从数据库中对其输入  用程序进程或网络连接的通信,实现数据 端,解密后的字符串。的帐号和密码进行对比,若帐号和密码一 传输的并发服务。 2,2进程控制 致,则为其建立连接,并进行远程登陆进行 用户通过查看节点的工作情况,包括 管理;若帐号和密码不一致,则不允许远程 要通过互联网进行通信,至少需要一 传输层通过套按字接口,区分来自不同应 对套接字,一个运行于客户机端,称之为 主要运行的程序,同时能够完成对节点上 登陆,并断掉该连接。 ClientSocket,另一个运行于服务器端,称之 运行的进程相应控制,包括停止、刷新等工 建立连接后,相当于为用户开了一个 为ServerSocket。根据连接启动的方式以及 作。同时为了防止误操作,对用户的权限进 远程终端,只允许该帐号在此终端上进行 本地套接字要连接的目标,套接字之间的 行了限制,普通用户只能看到他自己的进 管理,普通的命令一般都可以运行,像cd、 连接过程可以分为三个步骤:服务器监听, 客户端请求,连接确认。 程,只有root用户才能看到所有的进程。 ls、ps、kill等不需要DISPLAY的命令和脚本 在设计上,进程监控不同于节点信息 等都可以运行。当用户输入exit命令或 ctrl+d命令时,退出终端,并断掉此连接。 2.6用户安全认证 为保证系统的安全性、用户的安全性, (1)进程的信息数据量偏大,如果几千 个节点的同时不断的向数据库写入,会影 有必要对用户进行安全认证,以防止非法 用户的操作、合法用户的非法操作以及确 响网络正常数据的传输,增加网络负担。  (2)进程信息保存价值不大,它不像节 保合法用户信息的保密。为达到上述目的,我们采取了如下措施:对用户进行合法认 点的CPu数据,可以用于统计和分析,掌握 证、对合法用户进行命令限制、对合法用户 集群使用效率,因此没必要对进程信息进 的信息进行加密保护。 行保存。 服务器监听:服务器端套接字并不定 的监控,没有将集群所有节点的信息存入 位具体的客户端套接字,而是处于等待连 数据库中,原因如下。 接的状态,实时监控网络状态。 客户端请求:指由客户端的套接字提 出连接请求,要连接的目标是服务器端的 套接字。为此,客户端的套接字必须首先描 述它要连接的服务器的套接字,指出服务 器端套接字的地址和端口号,然后就向服 务器端套接字提出连接请求。 连接确认:指当服务器端套接字监听到 基于上面两点,在实现时采用即用即 3结语 或者说接收到客户端套接字的连接请求,它 取的原则,即当用户需要进行进程查看时, 目前,该系统业已完成,作为中石化 就响应客户端套接字的请求,建立一个新的 Socket/]g务程序根据用户权限,从主机采 大规模集群资源管理系统优化与应用》的 线程,把服务器端套接字的描述发给客户端, 集相应的信息,然后传回用户界面。 子系统之一,部署在我院微机集群系统上, 旦客户端确认了此描述,连接就建立好了。 2.3采集控制 一而服务器端套接字继续处于监听状态,继续 接收其他客户端套接字的连接请求。 用户通过界面完成对节点的采集程 序的控制,控制的信息有采集的内容 (CPU信息、内存信息、I/O信息)和采集频 运转良好。 2系统实现 率的控制,通过控制达到减少系统负载 本系统采用socket网络编程实现。在开 的占用情况。 2O 科技资讯SCIENCE&TECHNOLOGY INFORMATION 

因篇幅问题不能全部显示,请点此查看更多更全内容