公开/公告号CN103051697A
专利类型发明专利
公开/公告日2013-04-17
原文格式PDF
申请/专利权人 北京思特奇信息技术股份有限公司;
申请/专利号CN201210545152.0
发明设计人 谢元胜;
申请日2012-12-14
分类号H04L29/08;
代理机构北京轻创知识产权代理有限公司;
代理人杨立
地址 100086 北京市海淀区中关村南大街6号中电信息大厦16层
入库时间 2024-02-19 18:48:14
法律状态公告日
法律状态信息
法律状态
2017-07-28
授权
授权
2013-07-31
实质审查的生效 IPC(主分类):H04L29/08 申请日:20121214
实质审查的生效
2013-04-17
公开
公开
技术领域
本发明涉及大规模节点服务的控制技术领域,特别是涉及一种基于云节 点实现云服务控制的方法和系统。
背景技术
随着云计算时代的到来,大型乃至超大型系统将不断出现。如何有效快 速控制部署的计算节点,协调各个节点更加有效的工作以及降低维护成本等 问题,是大型系统将面临的主要问题之一,本发明的技术方案即是为了有效 地解决这个问题。
发明内容
本发明所要解决的技术问题是提供一种基于云节点实现云服务控制的 方法和系统,用于解决如何有效快速控制部署的计算节点、协调各个节点更 加有效的工作、降低维护成本等问题
本发明解决上述技术问题的技术方案如下:一种基于云节点实现云服务 控制的方法,包括:
步骤1,统一对控制指令进行配置和分配,使各云节点的控制指令在云 服务中唯一;
步骤2,启动云节点,且各云节点向云节点控制服务器进行指令注册, 明确各云节点能执行的指令;
步骤3,前端服务器发送控制指令给云节点控制服务器,云节点控制服 务器根据指令注册结果将控制指令发送给相应的云节点;
步骤4,云节点对控制指令进行处理,并将处理结果通过云节点控制服 务器返回给前端服务器。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,步骤1中的控制指令采用Json数据格式进行配置。Json数据 格式(JavaScript Object Notation)是一种轻量级的数据交换格式,它是 基于JavaScript(Standard ECMA-262 3rd Edition-December 1999)的 一个子集。
进一步,所述步骤2还包括:云节点控制服务器要对自身的指令进行指 令注册。
进一步,前端服务器与云节点控制服务器之间采用HTTP协议进行通信。
进一步,云节点控制服务器和各云节点之间采用socket通信方式和/或 与消息队列通信方式。
进一步,若云节点控制服务器与云节点部署在同一台机器上,则采用消 息队列通信方式;若云节点控制服务器与云节点部署在不同机器上,则采用 socket通信方式,通讯方式可配置。
进一步,所述方法还包括:云节点定时向云节点控制服务器发送心跳指 令。
对应于上述方法,本发明的技术方案还包括:一种基于云节点服务控制 的系统,包括一个前端服务器、一个云节点控制服务器和至少一个云节点:
所述前端服务器,其与所述云节点控制服务器通信,用于统一对控制指 令进行配置和分配,并将控制指令发送给所述云节点控制服务器;
所述云节点控制服务器,其与各云节点均通信,用于进行各云节点的指 令注册,还用于根据指令注册结果将前端服务器发送的控制指令发送给相应 的云节点;
所述云节点,其与所述云节点控制服务器通信,用于进行处理控制指令, 并将处理结果通过云节点控制服务器返回给前端服务器。
进一步,前端服务器采用Json数据格式配置控制指令。
进一步,前端服务器与云节点控制服务器之间采用HTTP协议进行通信, 云节点控制服务器和各云节点之间采用socket通信方式和/或消息队列通信 方式。
本发明的有益效果是:本发明有效快速地控制部署的计算节点,协调 各个节点更加有效地进行工作,降低了维护成本。本发明架构简单,适用于 大规模节点服务的控制,如云存储服务中心控节点、云服务指令控制节点搭 建等。本发明的方法及系统操作简单,对于运维者来说,只需要提出要做什 么,至于是那个节点来做不需要关注,直接在前端服务器发送指令即可。综 合地说,本发明为云服务系统提供高效、低成本的控制与维护方案。
附图说明
图1为本发明所述基于云节点实现云服务控制的方法的流程示意图;
图2为本发明所述基于云节点实现云服务控制的系统的结构示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本 发明,并非用于限定本发明的范围。
如图1所示,实施例一是一种基于云节点实现云服务控制的方法,包括:
步骤1,统一对控制指令进行配置和分配,使各云节点的控制指令在云 服务中唯一。指令格式采用的Json数据格式,具体格式为:指令+资源的方 式+参数内容。
步骤2,启动云节点,且各云节点向云节点控制服务器进行指令注册, 明确各云节点能执行的指令,以表明该节点可以做什么动作。此外,云节点 控制服务器也要被看成一个特殊云节点,也需要注册自身的指令。
步骤3,前端服务器发送控制指令给云节点控制服务器,云节点控制服 务器根据指令注册结果将控制指令发送给相应的云节点。云节点需定时向服 务器发送心跳指令,以表示该节点是处于活动状态,云节点服务器根据云节 点发送过来的心跳来判断该节点是否还是活动状态,如果发现该节点处于不 活动状态,将其测试的指令删除。
步骤4,云节点对控制指令进行处理,并将处理结果通过云节点控制服 务器返回给前端服务器。
对于上述方案,前端服务器与云节点控制服务器之间采用HTTP协议进 行通信,且云节点控制服务器和各云节点之间采用socket与消息队列共存 的通信方式,如果控制服务器与云节点部署在同一台机器上,则采用消息队 列通讯;如果控制服务器与云节点部署在不同机器上,则采用socket通讯, 通讯方式可配置。
如图2所示,对应上述方案,实施例一还提供了一种基于云节点服务控 制的系统,其包括一个前端服务器、一个云节点控制服务器和至少一个云节 点(如图所示的云节点1、云节点2、云节点3、云节点m、云节点n-2、云 节点n-1、云节点n):
所述前端服务器,其与所述云节点控制服务器通信,用于统一对控制指 令进行配置和分配,并将控制指令发送给所述云节点控制服务器;
所述云节点控制服务器,其与各云节点均通信,用于进行各云节点的指 令注册,还用于根据指令注册结果将前端服务器发送的控制指令发送给相应 的云节点;
所述云节点,其与所述云节点控制服务器通信,用于进行处理控制指令, 并将处理结果通过云节点控制服务器返回给前端服务器。
对于实施例一中统一对控制指令进行配置和分配,以下面的程序段为 例,具体为:其通过前端服务器统一规划配置以保证指令跟资源的唯一性。 指令格式采用指令+资源的方式+参数内容(采用Json数据格式传递)。
发送的函数参数类型如下:
Method定义了四种操作方法,为方便用位于运算,分别定义成1、2、4、 8。
调用函数声明如下:
std::auto_ptr<Json::Value>sendCommand(const char* resource, Method method,const Json::Value* root);
输入:指令+资源+参数内容。
输出:返回结果。
举个例子:假设getmachineinfo_1,getmachineinfo_2, getmachineinfo_3分别表示节点1,节点2,节点3的三个资源。
在指令统一分配服务里就可能有如下指令:
getmachineinfo_1#8#cpu
getmachineinfo_1#8#mem
getmachineinfo_2#8#cpu
getmachineinfo_2#8#mem
getmachineinfo_3#8#cpu
getmachineinfo_3#8#mem
在这些命令中资源跟指令为统一分配,各个节点不会重复,最后一个参 数根据具体需求有不同的输入。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明 的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发 明的保护范围之内。
机译: CILKRAS-基于云的铁路控制系统。 -这是一个联锁系统,可利用基于共享云服务器的资源和服务,高速数据网络的强大功能和经济性,可访问性和可靠性不断提高的高效率运行火车。这将使铁路基础设施的建设更加容易和经济。这将特别有利于铁路网络的商业用户,如煤炭和其他矿产资源行业。铁路网络运营商将有更多选择,以最适合他们的方式实施网络控制。
机译: 提供基于云的驾驶员自定义服务的云服务器,包括该云服务器的操作系统和其操作方法
机译: 基于云的提供驾驶员定制服务的云服务器,包括云服务器的操作系统及其操作方法