Laxcus大数据管理系统(4)- 第一章 基础概述 1.3 节点

1.3 节点

  按照我们给Laxcus集群的设计定义,Laxcus集群被分为内部和外部两个网络环境。内部网络由集群的所有权人负责实施和管理,为保证集群能够有效可靠运行,需要遵守一系列的集群部署和管理规定。外部网络是用户负责范围,用户可以通过互联网或者VPN的方式,远程登录进入集群,然后通过交互命令传达到集群上,执行数据操作。这样一个布局,可以理解为集群层面的客户机/服务器结构。此外,如果集群组织者没有对外服务的需要,也可以将集群全部部署在内部网络里,成为一个纯粹的Intranet集群。

  如前所述,节点是Laxcus集群的基本单位,由前端节点、网关节点、工作节点、管理节点4类节点组成。理论上,一台物理计算机上可以部署任意多个节点,包括组成一个小型的集群。从节点的工作性质来看,它具有双重身份,即是服务器又是客户机。当它做为服务器使用时,它接受其它节点的命令请求和执行数据处理;当处于客户机状态时,又可以向其它节点发送命令。软件层面上,节点实质是操作系统下的一个进程,在后台运行,通过网络与外界保持联系。在Laxcus 2.0版本中,节点共设计有4类11种节点。对每一种节点,我们都规定了它们的工作内容和处理范围,以下将逐一进行介绍。

图1.1   Laxcus集群

1.3.1 Top节点

  Top是管理节点,在Laxcus集群的二级管理构架中,是整个集群的核心,必须保证绝对存在。集群中的其它节点都是Top节点的下属节点。按照Laxcus集群管理规定,这些节点的工作,必须在Top节点启动后启动,在Top节点停止前停止。因为Top的顶级管理节点身份,它节点只负责最关键的数据资源管理工作,包括用户账号的建立、删除、查询,用户操作权限的授权和回收,数据库资源的分配、释放、检查。Top有两个直接的下属节点:Home、Aid,Top要接受它们的注册,以及监测它们的运行状态。由于Top节点在集群中的重要性,它的故障将造成整个集群的管理混乱,所以在实际部署时,要求一个Top节点在运行的同时,还应该有最少一个Top备用节点。为了区分这两类节点,在Laxcus集群管理规定里,我们把接受和执行业务处理中的Top节点称为Master节点,备用的Top节点称为Monitor节点。Monitor节点的工作,除了监视Master节点运行外,还会同步备份它的数据资源和运行记录。当Master节点发生故障失效后,Monitor节点将启动故障切换过程,接手它的全部管理工作。如果有多个Monitor节点,它们会通过协商的方式,在它们中间推举一个Monitor节点成为新的Master节点。新的Master节点会要求原来的下属节点重新注册它的下面,来保证集群继续有效运行,同时新Master节点还把故障和切换过程通知集群管理员,由管理员来负责后续的故障计算机检查、维修工作。

  因为Top节点只负责数据资源管理,以及与Home、Aid节点保持少量的通信,所以通常情况下,它的工作负荷很轻。

1.3.2 Home节点

  Home是管理节点,在Laxcus集群二级管理架构中,它是子域集群的核心。对上,向Top节点注册,和接受Top节点的管理;对下,接受下属节点的注册,以及监督和协调它们的运行。在Laxcus集群里,工作节点全部运行在Home节点下面,并且弱中心化管理思想也主要体现在Home节点上。运行过程中,它只负责两项工作:追踪工作节点运行状态,收集和分析工作节点元数据。这些工作的数据量和产生的计算量都很小,不会对Home节点正常运行构成影响。与Top节点一样,Home也要求有一个Master节点和最少一个Monitor节点。当Master节点发生故障时,Monitor节点可以接替Master节点的工作。

1.3.3 Task节点

  Task是工作节点,注册到Top节点下面,为用户的分布任务组件提供存储、管理、转发服务。在实际使用时,Top会把它重定向给关联的Home节点,再经过Home节点结合自己的数据资源进行判断后,分派给自己的下属节点,让它们与Task节点进行数据交互。与Task节点进行直接数据交互的节点有Data、Work、Build、Call四种节点,它们将根据自己的业务需要,请求关联的分布任务组件,并把分布任务组件下载下来,部署在自己的节点上,为用户提供分布数据处理。同时,每一个与Task节点执行过成功交互的节点,Task节点会记录下它们的信息,当有新的分布任务组件上传后,Task节点会把这些新的分布组件,同步推送给这些节点,使得用户在发布分布任务组件后,集群可以立即部署和生效,省却了用户的等待时间。

  按照上述流程介绍,实质上,Task节点是跨子域集群存在的,我们为Task节点设计了一个Top/Home/Home下属节点的三层定向机制,每个Task节点可以为整个集群提供分布任务组件服务,而不必拘泥于某个子域集群的限制。管理员也可以按照自己的需要,设置规则,为不同的用户选择合适的发布空间,提高了管理灵活性。

1.3.4 Log节点

  Log节点是工作节点,注册到Home节点下面。为本集群的其它节点保存它们的日志数据,并提供格式化的日志检索服务。这样的工作内容使得Log节点成为Laxcus集群里最简单的一个节点。对于上传的日志,Log节点将根据每个节点的类型和地址,在磁盘上分别建立目录和文件,然后按照时间的格式排列保存下来。在Laxcus集群里,各节点上传的日志内容,通常是它们的工作流程和运行错误,这些信息为分布状态下的数据追踪和分析、程序调试、快速定位和判断节点运行故障提供了重要的依据。所以Log节点的工作虽然简单,但是非常重要,这也是为什么要单独把日志单独保存并且列为一类节点的原因。

1.3.5 Data节点

  Data节点是工作节点,注册到Home节点下面,提供基于磁盘和内存的数据存取服务。在Laxcus集群里,Data节点保存着整个集群的数据,是所有数据处理的源头。为了保证正确的数据处理,我们在Data节点上,为数据处理设计了一系列的可靠性保证,包括数据完整性、一致性要求,以及各种数据纠错和冗余能力。这些元素的加入,使得Data节点的复杂性,远高于集群中的其它节点,它在集群中的重要性,也仅次于Top、Home节点。

  另外Data节点与其它节点不同的是,Data节点具有“级别”概念,在运行时,被分为主节点(Prime Site)和从节点(Slave Site)两种类型。它们的区别在于,主节点具有“读写”能力,可以执行全部数据操作,包括添加、删除、更新、检索。从节点只拥有“读”的能力,即数据检索操作。这个特点在实际应用中是非常重要的,它为Laxcus集群的许多初始指标,如数据冗余、平衡计算、并行处理,提供了基本的保证,成为了Laxcus集群实施大规模数据处理的必要条件。

1.3.6 Work节点

  Work节点是工作节点,注册到Home节点下面,提供数据计算服务。在Laxcus集群中,Work节点承接来自Data节点的数据,大量重要性高、计算量大的数据处理工作都发生在Work节点上,这使得Work节点在整个Laxcus集群中,成为工作负荷最重的节点,也因此成为体现数据处理效率最关键的一环。

  为了获得更高的数据处理效率,在Laxcus 2.0中,Work节点通常会把有限的硬件资源集中起来,采用任务队列的手段和快进快出的原则,来解决几个最重要的数据计算工作,从而避免因为无谓的任务空耗硬件资源,而其它需要作业的任务又不能获得工作许可的问题。使得Work节点在应对大规模数据处理时,能够充分利用硬件资源,来加快数据计算速度,同时也提高了数据处理效率。

1.3.7 Build节点

  Build节点是工作节点,注册到Home节点,提供ETL服务。ETL是的提取、转换、装载(extract、transform、load)的简称,这个名词很好地描述了一种数据处理过程,是当前许多商业数据应用和互联网数据处理业务的重要组成部分,可以理解为数据计算的前奏和加速器。ETL的核心要旨是把各种数据,按照各自不同的需求,经过重新组织整理后,形成新的数据。这些新的数据,将成为后续数据计算的必要材料。

  在许多业务处理中,我们通常是采用ETL的方式,把一些数据组合工作从数据计算过程中分离出来,做成一个独立的单元,提前完成,来供后面的数据计算使用,以达到简化数据计算流程的目的。实际上,这种简化的数据计算工作,在很多大规模数据处理业务中使用时,不止是简化了数据处理流程,往往还获得了更高的处理效率。

1.3.8 Call节点

  Call节点是网关节点,注册到Home节点下,提供分布数据管理和任务调度服务。在Laxcus集群中,Call节点是一个“中间人”的角色,起到类似路由器的作用。对内,它收集Data、Work、Build节点的元数据,并把这些元数据按照各种要求重新组合,保存在内存里。对外,它只接受Front节点的注册和命令请求,同时具有对外屏蔽了集群内部拓扑结构的作用,防止可能由外部发起的网络攻击,即使因此发生宕机现象,也可以做到尽量避免波及到集群内部其它节点。当收到Front节点的命令后,它将按照命令的要求,为Front节点筛选集群内部的数据资源,和定位目标节点。在目标节点完成数据处理后,Call节点把数据结果返回给Front节点,从而完成一次数据处理工作。

  与Task节点一样,Call节点也是可以跨越多个子域集群的。至于是否需要跨越,则由注册的Front节点来决定。当Front节点需要的数据分别存在于多个子域集群时,那么Call节点将自动发生跨越子域集群行为。

1.3.9 Aid节点

  Aid节点是网关节点,注册到Top节点下面,提供账号和账号资源的管理服务。Aid节点唯一的服务对象是Front节点,所有类型的Front节点都要首先注册到Aid节点下面,才能获得进入集群和操纵数据的权力。Front节点发出的每一道命令,当通过Aid节点审核后,才能交给Call节点并转发到集群内部。与Call节点一样,Aid节点也对Front节点屏蔽内部网络环境,避免可能的网络攻击行为影响到内部集群运行。Aid节点这种布局和处理方式,具有分解数据业务负荷和保证集群安全的双重作用。

  在Laxcus 2.0版本中,Aid节点新增加事务处理能力,这样命令在获得核准前,为了防止命令之间可能存在的事务冲突,Aid节点给每个命令都增加了事务检查环节。

1.3.10 Front节点

  Front节点是Laxcus集群唯一的前端节点,由用户操作和使用,被要求注册到Aid节点下面,为用户提供进入集群和操作集群数据的能力。当Front节点成功注册到Aid节点后,Front节点会向Aid节点请求关联的Call节点地址,然后主动与它们建立联系,来获得执行命令的能力。

  在Laxcus集群里,Front节点被分为三种类型:字符界面的控制台、图形界面的终端、没有操作界面的驱动程序。前两种被用户直接使用,分别针对了Linux和Windows用户的使用习惯。用户在窗口上输入命令后,通过Aid、Call这两道网关节点的审查,被发往集群内部处理。后一种是嵌入到其它软件中使用(如Apache、Tomcat这类Web软件),命令由这些开放接口传递过来,经过Aid、Call节点审查通过,发往集群内部处理。图形界面的Front节点现在有三种语言版本:英文、中文、西里尔语,另外其它语种的图形版Front节点也在筹划中。

  三类Front节点允许同时并行存在,每一类又可以同时并发多组命令,所有命令都在Aid节点管理下,各自执行自己的数据处理工作,不会发生冲突。至于命令最大并发数,则由集群管理员分配,Aid节点负责执行。

图1.3.10.1 Front控制台

图1.3.10.2 Front终端

1.3.11 Watch节点

  Watch是工作节点,可以选择注册到Top或者Home节点下面,提供监视主域集群或者子域集群的服务。在Laxcus集群里,Watch节点是唯一完全由集群管理员操纵的节点,它也是Laxcus集群另一种拥有图形操作界面的节点,为集群管理员提供可视化的管理工作。集群管理员通过Watch节点,能够实时追踪和检查所有节点、所有用户的当前状态。当集群中的节点需要通知管理员,或者感知、捕获到运行故障时,也会通过网络传递给Watch节点,Watch节点将以文字、图像、声音的方式,提醒管理员加予关注,或者要求管理员去排除已经发生的故障。

图1.3.11 Watch节点图形界面

时间: 2024-11-20 03:27:00

Laxcus大数据管理系统(4)- 第一章 基础概述 1.3 节点的相关文章

Laxcus大数据管理系统(3)- 第一章 基础概述 1.2 产品特点

1.2 产品特点 Laxcus大数据管理系统运行在计算机集群上,特别强调软件对分布资源可随机增减的适应性.这种运行过程中数据动态波动和需要瞬时感知的特点,完全不同与传统的集中处理模式.这个特性衍生出一系列的新变化,需要重新审视产品的目标,设计新的架构,当我们把这些需求和定位综合起来,然后逐一分解归并后,最终形成与以往完全不同的结果. 1.2.1 以节点为单位的计算集群 在Laxcus设计里,节点是计算机集群的基本单位.相较与物理性质的计算机来说,节点是一个逻辑概念的单位.以一台实体计算机为例,在

Laxcus大数据管理系统(2)- 第一章 基础概述 1.1 基于现状的一些思考

第一章 基础概述 1.1 基于现状的一些思考 在过去十几年里,随着互联网产业的普及和高速发展,各种格式的互联网数据也呈现爆炸性增长之势.与此同时,在数据应用的另一个重要领域:商业和科学计算,在各种新兴技术和产业需求的推动下,对数据存储和计算要求也日益提高,并且对计算数据的准确性和精度也远高于互联网数据.而在这些现象的背后,当前的数据计算早已经突破MB量级,GB成为常态,TB变得流行,正在向PB迈进的时候,面对如此庞大的数据量,如果管理和使用它们,满足各种计算需求,发现和筛选其中有价值的信息,通常

Laxcus大数据管理系统2.0(9)- 第七章 分布任务组件

第七章 分布任务组件 Laxcus 2.0版本的分布任务组件,是在1.x版本的基础上,重新整合中间件和分布计算技术,按照新增加的功能,设计的一套新的.分布状态下运行的数据计算组件和数据构建组件,以及依此建立的新的运行框架.操作管理规范.API接口等. 新分布任务组件的改变主要体现在数据处理能力方面.经过重新调整后的运行架构,原来因为架构问题受到的诸多限制被全部取消,分布任务组件可以随着集群的不断扩充,同步提供无限制的数据处理能力.这足以满足我们当前以及未来相当长一段时间内,对各种大规模数据处理业

Laxcus大数据管理系统2.0(8)- 第六章 网络通信

第六章 网络通信 Laxcus大数据管理系统网络建立在TCP/IP网络之上,从2.0版本开始,同时支持IPv4和IPv6两种网络地址.网络通信是Laxcus体系里最基础和重要的一环,为了能够利用有限的网络资源,获得最大化的使用效率,我们根据大数据网络环境的特点,设计了一套专属网络通信协议,以及在此协议基础上实现的多套网络通信方案,它们共同组成了Laxcus集群的网络通信基础.本章将以TCP/IP协议为起点,介绍与网络通信有关的各个组成部分. 6.1 FIXP协议 Laxcus采用FIXP协议通信

Laxcus大数据管理系统(5)- 第二章 数据组织

第二章 数据组织 在数据的组织结构设计上,Laxcus严格遵循数据和数据描述分离的原则,这个理念与关系数据库完全一致.在此基础上,为了保证大规模数据存取和计算的需要,我们设计了大量新的数据处理技术.同时出于兼顾用户使用习惯和简化数据处理的目的,继续沿用了一些关系数据库的设计和定义,其中不乏对SQL做适量的修订.在这些变化中,核心仍然是以关系代数的理念去处理数据,以及类自然语言风格的数据描述.所以用户在使用体验上,和关系数据库相比,不会感觉到有太多的差异. 本章将介绍Laxcus数据结构的组成,并

Laxcus大数据管理系统2.0(10)- 第八章 安全

第八章 安全 由于安全问题对大数据系统乃至当前社会的重要性,我们在Laxcus 2.0版本实现了全体系的安全管理策略.同时我们也考虑到系统的不同环节对安全管理的需求是不一样的,所以有选择地做了不同的安全设计和处理.图8是Laxcus安全管理架构,首先使用SHA1签名获得基本确认,然后在FIXP网络层面,数据通信采用RSA加密,后面分别是对称加密.系统安全策略.签名.用户安全策略.SHA1是一种数字签名,可以保证网络间传输的内容正确性,RSA是目前安全度最高的加密手段,对称加密则次之,系统安全策略

Laxcus大数据管理系统单机集群版

Laxcus大数据管理系统是我们Laxcus大数据实验室历时5年,全体系全功能设计研发的大数据产品,目前的最新版本是2.1版本.从三年前的1.0版本开始,Laxcus大数据系统投入到多个大数据和云计算项目中使用.2.0版本的Laxcus大数据管理系统,已经从紧耦合架构转为松耦合架构,整合了最新的大数据和关系数据库的技术,实现了一站式数据处理,大幅度提高了并行处理能力,同时兼具易操作.易维护.运行稳定的特点,节点数和数据存储计算规模已经达到百万台级和EB量级.目前已经覆盖的技术包括:行列混合存储.

Laxcus大数据管理系统集群单机版

Laxcus大数据管理系统是我们Laxcus大数据实验室历时5年,全体系全功能设计研发的产品,目前已经发展到2.1版本,并投入到多个大数据和云计算项目中使用.Laxcus大数据管理系统采用松耦合架构,整合了大数据和关系数据库的技术,实现了一站式数据处理,具有易操作.易维护.运行稳定的特点,并行节点数和数据存储计算规模可以达到百万台级和EB量级.Laxcus大数据管理系统涉及的技术包括:行列混合存储.分布计算.数据构建(ETL).内存计算.网络通信.网络安全和数据安全.人机交互.冗灾管理.SQL.

Laxcus大数据管理系统2.0(14)- 后记

后记 Laxcus最早源于一个失败的搜索引擎项目,项目最后虽然终止了,但是项目中的部分技术,包括FIXP协议.Diffuse/Converge算法.以及很多新的数据处理理念却得以保留下来,这些成为后来研发Laxcus的基础.此后又经历过一些海量数据处理项目,因为时代和行业的变化,用关系数据库做底层存取已经越来越无法满足不断扩张的业务需要,于是希望改用能够支持海量数据处理的软件,然后在其之上结合实际应用做进一步整合.项目完成后,在推广和使用中遇到了很多阻碍.这里面除了产品本身的一些问题外,更多的困