个人中心
个人中心
添加客服WX
客服
添加客服WX
添加客服WX
关注微信公众号
公众号
关注微信公众号
关注微信公众号
升级会员
升级会员
返回顶部
智慧交通云平台方案建议书不得外传
智慧交通云平台方案建议书不得外传.doc
下载文档 下载文档
施工专题
上传人:地** 编号:1202368 2024-09-20 90页 8.14MB
1、目 录智慧交通云平台技术方案建议书目 录1系统总体设计11.1云计算系统设计方案概述11.1.1系统基本功能11.1.2主要设计思想和设计目标、设计原则11.1.3智慧交通云平台的云计算解决方案21.1.4系统的主要技术特点31.2系统总体构架41.2.1系统基本组成与构架41.2.2系统功能构架51.2.3系统总体构架与功能模块81.3系统基本功能与处理方案101.3.1交管数据入库功能与处理方案101.3.2数据存储功能与处理方案111.3.3查询分析功能与处理方案131.4系统互联与管理141.4.1组网方案141.4.2网络管理151.4.3系统安全161.5系统可靠性与扩展性171.2、5.1系统可靠性171.5.2系统扩展性191.6系统设计性能201.6.1交管数据流量处理能力201.6.2数据存储能力211.6.3查询分析计算性能221.7定制开发方案222系统设计实施与关键技术方法252.1系统软硬件平台252.2数据处理流程252.3数据存储子系统272.3.1海量数据分布式数据存储构架272.3.2适应应用需求的混合存储策略292.3.3HDFS数据存储292.3.4HBase数据存储322.3.5Database数据存储342.3.6数据存储的可靠性362.3.7数据压缩372.4数据查询与统计分析子系统392.4.1数据查询与统计分析系统基本构架392.4.23、交管数据查询功能与用户界面392.4.3实时报警功能与用户界面402.4.4车辆轨迹回放功能与用户界面412.5基于云方案的交管数据查询索引与查询优化技术412.5.1基于分布式数据库的交管数据查询索引处理方案412.6交管数据处理集群的可靠性与负载均衡设计422.6.1负载均衡处理机的单点失效容错处理422.6.2查询处理机的单点失效容错处理462.7计算与存储集群的可靠性与负载均衡设计472.7.1计算与存储集群Master单点失效容错处理472.7.2计算与存储集群的负载均衡处理532.7.3HDFS的可靠性设计562.7.4HBase可靠性设计582.7.5MapReduce计算可靠性4、设计602.8查询统计计算可靠性与负载均衡设计622.8.1基于Zookeeper的单点失效和负载均衡设计622.9系统安全性设计642.9.1安全保障体系框架642.9.2云计算平台的多级信任保护662.9.3基于多级信任保护的访问控制702.9.4云平台安全审计722.9.5云计算综合安全网关753综合业务应用功能接口及效果793.1实时监控793.1.1实时车辆监控793.1.2报警车辆实时监控793.2数据查询813.2.1车辆信息查询813.2.2报警车辆查询813.3车辆轨迹查询823.3.1车辆查轨迹823.4事件检测报警833.4.1套牌车辆自动报警833.4.2同行车辆分析报5、警833.5流量统计和分析844详细设备配置清单85图表 1 智慧交通云平台云计算解决方案3图表 2 智慧交通云平台的基本组成与构架4图表 3 智慧交通云平台总体构架与功能模块图8图表 4 智慧交通云平台架构10图表 5 数据存储处理架构12图表 6 交管数据接入13图表 7组网方案14图表 8 分布式文件存储系统吞吐量指标21图表 9 系统软硬件结构25图表 10 数据汇总上报处理流程26图表 11 实时数据入库流程26图表 12 分布式计算流程27图表 13 Hadoop结构28图表 14 Hdfs结构31图表 15 HDFS Namenode、DataNode和客户端们之间的交互32图表6、 16 HDFS数据压缩与组织38图表 17 数据查询子系统构架39图表 18 用户界面图40图表 19 实时报警功能40图表 20 车辆轨迹回放41图表 21 负载均衡机分布图43图表 22 负载均衡机宕机预案44图表 23 Master节点宕机预案45图表 24 查询处理单点失效容错处理46图表 25 Master单点失效容错处理47图表 26 AvatarNode0以Pimary启动过程49图表 27 AvatarNode1以Standby启动过程50图表 28 DataNode启动过程50图表 29 AvatarNode0宕机后的状态51图表 30 AvatarNode1切换为Prim7、ary过程51图表 31 AvatarNode0重启过程52图表 32 AvatarNode启动切换流程图53图表 33 Avatar体系架构图56图表 34 HBase系统架构58图表 35 作业提交61图表 36 JobTracker0宕机61图表 37 作业注销62图表 38 Zookeeper基本工作结构图62图表 39 基于Zookeeper的查询分析计算单点失效和64图表 40 基于深度防护战略的IATF模型64图表 41 云部署模型的实现65图表 42 多级信任保护66图表 43 基于可信第三方的平台认证67图表 44 主要因素平台证书67图表 45 云存储安全子系统接口关系图78、0图表 46 基于多级信任保护的多级访问控制流程71图表 47 数据安全交换平台71图表 48 云存储安全审计体系结构73图表 49 安全日志审计系统结构图74图表 50 Cloud-USG三种部署模式77系统总体设计1 系统总体设计1.1 云计算系统设计方案概述1.1.1 系统基本功能按照全省公安机关信息化建设总体规划,为实现对重点车辆的自动比对和动态管控、对异常车辆行踪的自动研判预警、对特定车辆行车轨迹的自动生成、对重要节点道路交通信息的远程再现、对基层单位和执勤民警的勤务实施管理等建设目标,为交通管理、治安管控、侦查破案、巡逻防范、反恐处突等各项公安工作提供服务保障。系统的基本功能和性能9、如下:海量历史交通监控数据汇总能够对千亿级的海量历史交通监控数据进行汇总处理。海量原始交通监控数据上报能够对千亿级的海量上报交通监控数据进行上报处理。海量原始数据实时入库、生成索引能够对流量超过10000条/m的全量原始交通监控数据流进行实时处理。海量数据存储、计算能够存储千亿级别的数据, 并完成各种复杂业务应用计算。千亿级数据秒级查询能力高效索引算法,智能化调度任务系统,满足秒级查询速度。秒级实时业务响应高效实时数据通道,对于像实时监控、告警等实时业务,提供秒级响应时间。1.1.2 主要设计思想和设计目标、设计原则设计思想:将海量数据分解到由大量X86架构计算机构成的低成本云计算平台上进行实10、时处理,依靠分布式云计算软件进行容错,从而提升智慧交通云平台海量数据分析的实时性和性价比。设计目标:利用大量性价比高的计算机,建立云计算平台,能够对流量超过10000条/s的原始交通监控数据流进行实时处理,提供实时监控、报警监控、车辆轨迹与回放、电子地图、报警管理、布控管理、设备管理、事件检测报警、流量统计和分析等多种业务支持。系统具有可动态可伸缩性、高度容错性和响应实时性,达到较之传统方案有一个数据量级的性能价格比提升。设计原则:(1)前瞻性技术与实际应用环境相结合本项目是既是先进技术应用示范项目,又是工程实施型项目。把握技术正确性和先进性是前提,但是前瞻性技术实施必须在云计算平台的实际应用11、环境和实际监控流量的基础上进行,必须结合云计算平台的实际情况进行研究和开发,只有与实际应用环境相结合才有实际应用价值。(2)学习借鉴国外先进技术与自主创新相结合在云计算平台用于超大规模数据处理方面,国内外几乎是在一个起跑线上;但在关键技术研究及既往的技术积累方面,国外一些大公司有着明显的优势。同时,智慧交通云平台所将要面对的交通监控数据流高达10000条/s,是一个世界级的云计算应用。我们将积极学习借鉴国外先进的云计算技术,同时与自主创新相结合,形成功能强大、性能卓越的能够满足实际应用环境需求的云计算数据处理和分析平台。(3)遵循公安320工程相关标准规范本项目的设计将严格遵循公安320工程相12、关标准规范。1.1.3 智慧交通云平台的云计算解决方案在公安网内部,构建若干X86架构计算/存储节点,虚拟出海量存储空间、处理能力和数据管理能力。同时研制面向应用的分布式数据处理软件,满足数据汇总、数据上报、数据入库、数据查询、数据计算和数据管理等应用需求。图表 1 智慧交通云平台云计算解决方案1.1.4 系统的主要技术特点实时性:平台在高效率并行分布式软件的支撑下,可以实时完成交管数据入库、分析和管理工作,如数据汇总、数据上报、数据入库、数据查询、数据计算和数据管理等。海量数据入库不会出现数据堆积现象,各类分析和查询工作基本都在秒级完成,具有前所未有的高效性。高可靠性:基于对云计算可靠性深厚13、的研究积累,彻底解决了当前分布式计算平台易出现的单点故障问题。任何一个节点出现故障,系统将自动屏蔽,而且不会出现丢失数据的现象。包括查询任务分配节点、计算任务分配节点、HDFS元数据节点、HDFS数据存储节点、MapReduceJob Tracker节点、MapReduce Worker节点、HBase管理节点、HBase Region节点等。可伸缩性:在不停机的情况下,增加节点,平台的处理能力自动增加;减少节点,平台的处理能力自动缩减。这样,可以做到与云计算平台的无缝对接,根据计算和存储任务动态地申请或释放资源,最大限度地提高资源利用率。高性价比:采用X86架构廉价计算机构建云计算平台,用软14、件容错替代硬件容错,大大节省成本。在目标性能和可靠性条件下,可比传统的小型机加商用数据库方案节省10倍左右的成本。全业务支持:采用分布式数据库模式,绝大部分海量数据存放于分布式平台并进行分布式处理,少量实时性要求很高的数据存放于关系数据库中,可支撑各种类型的业务。不仅支撑查询、统计、分析业务,还可支撑深度数据挖掘和商业智能分析业务。1.2 系统总体构架1.2.1 系统基本组成与构架智慧交通云平台是一个处于交管数据采集与交管数据监测应用之间的系统。从系统基本组成与构架上来看,该共享平台由7个主要部分组成:历史数据汇总处理系统,上报数据上报系统,实时数据入库系统,交管数据存储系统,交管数据查询分析15、应用系统,数据管理系统以及系统管理。在基础设施构架上,该平台将架构将构建在南京公安云计算平台之上,利用南京公安所提供的计算资源、存储资源和网络资源,作为智慧交通云平台的基础设施和支撑平台。图表 2 智慧交通云平台的基本组成与构架1.2.2 系统功能构架智慧交通云平台需要提供的7大主要功能描述如下。(1)历史数据汇总处理系统历史数据汇总处理主要负责把南京市6个分散的数据中心的历史数据,进行读取解析处理,并将处理后的历史数据汇入一个统一的数据中心。在内部处理模块上,历史数据汇总系统主要包括三个模块:读取模块、解析模块和汇总模块。读取模块主要负责各个数据中心历史数据的读取处理,解析模块主要负责把读取16、到的历史数据解析成合理的数据格式,而汇总模块主要负责把解析好的历史数据上传到统一的数据中心。在系统构架上,为了满足6个分散的数据中心处理需要,需要在每一个数据中心处安装一个数据汇总程序。(2)上报数据上报处理信系统上报数据上报处理负责把市数据中心的数据,按照一定的需求(按时间段或一定的数据量),上报给省厅数据中心。在内部处理模块上,上报数据上报系统主要包括三个模块:读取模块、解析模块和上报模块。读取模块主要负责市数据中心需要上报数据的读取处理,解析模块主要负责把读取到的数据解析成合理的数据格式,而上报模块主要负责把解析好的数据上传到的省厅数据中心。在系统构架上,为了满足市数据中心处理需要,需要17、在市数据中心处安装一个数据上报程序。而省厅数据中心需要提供数据上报的接口。(3)实时数据入库系统实时数据入库系统主要负责全市每个卡口产生的数据实时入库。在内部处理模块上,实时数据入库系统主要包括三个模块:接受模块、解析模块和数据入库模块。接受模块主要负责接收每个卡口产生的数据流,解析模块主要负责把接受到的数据流解析成合理的数据格式,而数据入库模块负责把解析好的数据加入到市数据中心。在系统架构上,为了使每个卡口的数据能实时入库市数据中心,需要在每一个负责接受卡口数据的工控机上安装一个实时数据入库系统。(4)交管数据存储系统原始交管数据,将全部存储在智慧交通云平台的云存储资源中。资源池提供两种存储18、资源:一种是结构化数据存储资源,用于存储少量的接口中间数据;另一种是分布式文件系统,用于存储海量的非结构化数据。为了满足和适应数据量、数据特征和查询处理的不同需求,将采用一种混搭式的数据存储方案。对容量巨大、常规数据库难以处理的数据,如交管数据,将主要存储在基于HDFS的分布式文件系统中;这些数据将通过HDFS接口进行访问和计算处理。而对于部分数据量不大、且查询响应性能要求很高的数据,如用于报警比对的中间数据,将被存放在关系数据库中。关系数据库将采用Sybase ASE版本。这些数据将通过结构化数据存储访问接口(如JDBC)进行访问。在存储构架上,若以存储3年的原始交管数据、报警信息数据和针对19、快速查询建立的索引数据,在10000条/s的交管数据流量下,将大约需要512TB的存储容量,按照每个存储节点16TB的存储容量,加上少量的冗余节点,将需要32个存储节点。(5)交管数据查询分析应用系统交管数据查询分析应用主要提供包括实时监控、报警监控、车辆轨迹与回放、电子地图、报警管理、布控管理、设备管理、事件检测报警、流量统计和分析等功能。车辆轨迹查询处理时,由于交管数据量巨大,难以存储在常规的关系数据库中,而如果直接存储在HDFS或HBase中又难以保证查询效率。为此,需要考虑对交管数据进行索引处理,并将索引数据存储在HDFS或Hbase中。为了建立交管数据索引,需要在交管数据传送到云存储20、系统中时,进行实时的索引处理。但由于交管数据流量巨大,需要调度使用多台服务器节点进行并行处理。此外,用户从客户端发起以上各种数据查询分析任务时,也会产生大量并发的查询任务。以上各种查询分析计算任务的处理将需要考虑在计算集群上进行并行化任务调度和负载均衡处理。这些并行计算任务及负载均衡处理将使用Zookeeper基于计算集群完成统一的控制和实现。在系统构架上,以上查询分析计算任务将需要使用一个大规模数据并行计算集群。在编程实现上,存储在数据库中的数据将使用常规的数据库查询语言实现;对存储在分布式文件系统中的交管数据,针对不同的处理要求,在数据量极大而处理实时性要求不是特别高的情况下,为了方便对海21、量数据的并行处理,将采用MapReduce编程方式实现;而对于那些实时性要求很高的查询分析计算,由于MapReduce启动作业需要较长的时间开销,将不适合采用MapReduce编程实现,而需要用非MapReduce编程方式实现。(6)数据管理系统在实际使用中,可能用户会对某一时间段或者类型的数据特别关心,就可以通过数据管理系统查询并导出这部分数据以供使用。包括数据查询和数据导出两大部分。数据查询让用户以自定义的条件查询出数据,而数据导出就是将这些数据以合理的格式导出到数据中心以外。(7)系统管理系统管理主要包括智慧交通云平台的配置管理、系统安全管理、系统用户管理,以及数据备份、系统故障监测复等22、管理维护功能。配置管理是其中最主要的部分,是系统各个模块正常运行的基础。系统应能够对网络地址、设备地址等进行配置;能够对用户做权限管理,以防止数据外泄;并能及时有效的对数据进行备份和故障检测等工作,防止数据的意外丢失。系统应支持树图、数据表格、网络拓扑图形式展示配置数据。1.2.3 系统总体构架与功能模块基于以上基本的系统组成和功能构架,系统的详细总体构架和功能模块设计如图所示。图表 3 智慧交通云平台总体构架与功能模块图上图中,自底向上分为五个层面。最下层是硬件平台层,将使用南京市公安局云计算中心所提供的计算、存储和网络资源。从系统处理系统的角度看,这一层主要包括云存储计算集群,此外还包括接23、口和管理服务器、包括用于实现客户端访问的Web服务器。第二层是系统软件层,包括移动的云存储系统软件,综合分析云计算软件平台,以及Web服务软件等。云存储系统将提供基于Sybase ASE关系数据库的结构化数据存储访问能力,以及基于HDFS的分布式文件系统存储访问能力,分别提供基于JDBC/SQL的数据库访问接口以及HDFS访问接口。综合分析云计算软件平台可提供对HDFS、Hbase数据的访问,并提供MapReduce编程模型和接口、以及非MapReduce模型的编程接口,以及用于实现并行计算任务负载均衡和服务器单点失效恢复的Zookeeper。第三层是智慧交通云平台中的数据层,包括原始交管数据24、索引数据、用于分析的中间数据、以及系统配置数据等。其中,原始交管数据、索引数据等海量数据将存储在南京公安局云存储系统的HDFS分布式文件系统中,用HDFS接口进行存储和访问处理;而其它用于分析的中间数据等数据量不大、但处理响应性能要求较高的数据,将存储在云存储系统的关系数据库系统中,用JDBC/SQL进行存储和访问处理。第四层是交管数据处理软件层,主要完成智慧交通云平台所需要提供的诸多功能,包括实时监控、报警监控、车辆轨迹查询与回放、电子地图、报警管理、布控管理、设备管理、事件检测报警、流量统计和分析、系统管理等功能。最上层是客户端用户界面软件,主要供用户查询和监视相关的数据信息,除了事件检25、测报警不需要用户界面外,其它部分都需要实现对应的用户界面。1.3 系统基本功能与处理方案1.3.1 交管数据入库功能与处理方案交管数据入库系统总架构如图:图表 4 智慧交通云平台架构智慧交通云平台通过实时数据入库系统接入采集层的交管数据,数据分配进入负载均衡机,负载均衡机根据集群各节点负载情况,动态分配交管数据到各存储处理机, 进行报警检测、建立索引等处理, 同时将交管数据存入分步式存储系统。负载均衡机功能监控所集群机器负载情况,动态分配交管数据。监控所有集群机器,如果发现问题,那么就把分配给这台机器的交管数据重新分配到其他机器,去除单点故障,提高系统可靠性。负载均衡机采用Paxos 算法解决26、一致性问题,集群在某一时刻只有一个Master负责均衡能力,当Master宕机后,其他节点重新选举Master。保证负载均衡机不会存在单点问题,集群机器一致性。实时业务对于实时性要求高的业务应用,如:实时监控、实时报警,走实时专道。1.3.2 数据存储功能与处理方案数据存储处理总架如图:图表 5 数据存储处理架构数据存储系统提供如下功能:交管数据处理:接收来自数据汇总和数据入库系统的交管数据, 索引模块实时生成索引,以提高查询速度。生成的索引存储到HDFS中,以供查询交管数据使用。专题业务分析,通过MapReduce并行计算,同期提取业务数据,将结果分存两路,一路存入Hbase或日志详单存储,27、 一路存入关系型数据库。报警数据处理智慧交通云平台对接收到的实时交管数据进行计算,以判断这辆车有没有符合报警条件。如果符合,会对报警信息入库,并同时通过对外实时报警的接口,将报警信息迅速展示到用户界面上。1.3.3 查询分析功能与处理方案交管数据查询构架如图:图表 6 交管数据接入当客户发起请求后, 客户端把请求发向查询接口服务器,查询接口服务器解析查询请求,后向Master任务调度机发送查询任务执行命令;Master回应执行命令节点信息,查询服务器根据节点信息将查询命令发向查询计算模块,进行具体查询操作,将查询结果返回给客户端,呈现给用户。1.4 系统互联与管理1.4.1 组网方案组网方案如28、图:图表 7组网方案我司可向公安数据中心申请VPN或公网IP服务,如果系统出故障,可以保障第一时间远程排查。1.4.2 网络管理1.4.2.1 服务器间网络安全检查系统自管理通过启用网络安全检查进程(netinspect),定期检查整个系统的网络状况,并上报各服务模块网络流量信息,在终端形成网络拓扑图,实时在界面呈现各节点网络状态,管理员也能及时了解,各服务模块的网络流量机承载的负荷。若出现网络故障,netinspect进程实时上报故障情况,在网络拓扑图上以报警方式提示,或以短信的方式提示,便于管理员及时发现问题,并恢复网络故障,确保系统在安全的网络环境下运行。1.4.2.2 服务模块进程监控29、管理系统自管理通过启用服务模块运行状态检查进程(proinspect),定期检查整个系统的服务模块进程运行状况,并上报各服务模块进程的运行状态信息,在终端将运行的进程的状态以表格形式显示,定时更新进程的运行状态信息。通过它管理员也能及时了解,各服务模块的进程运行负荷。若在固定的时间内没有更新,视为进程运行故障,启动主机代理自动恢复故障进程,保障各服务模块进程持续稳定的运行的状态。1.4.2.3 系统性能监控管理系统自管理通过启用服务模块性能检查进程(serverinspect),定期检查整个系统的各服务器性能指标,包括CPU开销、内存占用、IO峰值、网络流量、连接数等。并上报各服务性能指标,在30、终端形成拓扑图,实时在界面呈现各节点服务器性能状态,管理员也能及时了解,各服务节点处理性能及资源开销。若性能持续高负荷,拓扑图上以报警方式提示,或以短信的方式提示,便于管理员及时发现问题,查找问题的来源或重新评估服务器配置情况,为系统稳定运行提供一个确实可靠的标准。1.4.2.4 系统日志分析处理系统各服务模块在运行期间写日志文件,将进程的模块编号、服务器的IP、出错页码等日志的状态(错误、告警、提示)等级别的信息保存磁盘文件,供工程师来分析系统运行状态。同时日志分析进程(loganalyse)分析日志文件,将重要的日志信息,进行对比、分析并汇总后,生产统一格式的日志信息,提取出来,写入的数据31、库表中,终端管理通过查询界面来来显示,能及时了解到系统的运行的状态。1.4.2.5 系统运行状态及报警处理系统运行报警分为以下几种:服务器运行状态报警服务器网络状态报警服务模块进程报警日志模块状态报警1.4.3 系统安全1.4.3.1 网络安全为保障整个系统稳定运行,首先要保障系统在网络方面是安全的。从硬件、软件方面做相应的安全措施。硬件:所有的网络设备都要1+1 冗余配置,涉及以下网络硬件设备冗余配置以太网100M/ 1000M网卡以太网网络交换设备光纤网络接口FC/HBASAN光纤网络交换机软件:在整个系统上部署防火墙软件、及自产的安全管理管理软件模块来保障系统平稳运行。1.4.3.2 数32、据文件安全性见集群可靠性章节。1.5 系统可靠性与扩展性1.5.1 系统可靠性 HDFS可靠性概述:HDFS包括元数据节点(Namenode)和数据节点(Datanode),Namenode是一个中心服务器,负责管理文件系统的Namespace和客户端对文件的访问。,Datanode在集群中一般是一个节点一个,Datanode是文件系统中真正存储数据的地方。DataNode所在机器挂了怎么办? HDFS(Hadoop Distributed File System)默认的最基本的存储单位是64M的数据块(block)。 一个文件对应的所有BLOCK全部按照一定的部署策略存在于DataNode上33、,文件的所有block为了容错都会被复制(一般为3份),每个文件的block大小和replication因子都是可配置的。Datanode每3分钟向Namenode发送心跳,如果10分钟datanode没有向Namenode发送心跳,则Namenode认为该Datanode已经dead,Namenode将取出该Datanode上对应的block,对其进行复制。 Namenode挂了怎么办?Namenode主控服务器,为了避免主节点失效而影响整个系统正常工作,我们采用基于HDFS的改进方案Avatar,同时可开启两个Namenode,主Namenode和secondNamenode,实际工作的只34、有主Namenode。主Namenode将所有关于文件和目录的操作记录都会写入日志,并定时序列化到本地做镜像,并且保存到本地的NFS服务器,同时secondNamenode读取主Namenode所在NFS服务器的日志并对镜像日志做CheckPoint。故障后,secondNamenode升级为Namenode,通过镜像数据和文件日志迅速恢复系统。数据服务器可通过分布式协同服务机制得知关于主控服务器的更迭情况,然后向新的主控注册并继续发送心跳。 HBase可靠性概述:HBase系统由HBase集群和ZooKeeper集群组成。HBase的可靠性由其自身的ZooKeeper机制保证。HBase包括35、Hregion服务器群和Master主服务器构成。Master负责管理Hregion。物理上,一张表是被拆成多个块,一张完整的表格是保存在多个Hregion上面的。master挂掉怎么办?由于master只维护表和region的元数据,因此master下线短时间内对整个hbase集群没有影响,master保存的信息全是可以冗余信息(都可以从系统其它地方收集到或者计算出来),因此,启动HBase时可以再启动一个备用的master,实际工作的只有主master,当主master所在节点宕机,会自动切换到备用master所在节点。Hregionserver挂掉怎么办?物理上,表格分为多个Region36、一张表是被拆成多个块,一张完整的表格是保存在多个Hregionserver上面的。并且分布在多台Hregionserver中,物理上所有数据存储在Hadoop的HDFS上,由一些子表服务器来提供数据服务,提供服务时,子表先查HMemcache,如果没有,再查HDFS上的HStore,由HDFS来保证数据的可靠性。如果丢失Region的数据所在节点的datanode宕机,HDFS会自动映射到其他节点,从而保证Region数据的可靠性。ZooKeeper挂掉怎么办?Zookeeper分为2个部分:服务器端和客户端。启动Zookeeper服务器集群环境后,多个Zookeeper服务器在工作前会选举出37、一个Leader,在接下来的工作中这个被选举出来的Leader死了,而剩下的Zookeeper服务器会知道这个Leader死掉了,在活着的Zookeeper集群中会继续选出一个Leader,选举出leader的目的是为了可以在分布式的环境中保证数据的一致性。MapReduce可靠性概述:MapReduce整体上可以分为这么几条执行的线索,JobTracker与JobTracker是一个master服务,软件启动之后JobTracker接收job,负责调度job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracke38、r部署在单独的机器上。TaskTracker是运行于多个节点上的slaver服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。TaskTracker都需要运行在HDFS的DataNode上,JobTracker0挂掉怎么办?在系统启动时同时启动备份JobTracker1节点,当JobTracker0节点宕机时,ZooKeeper会在其上启动JobTracker进程替代JobTracker0节点,虚拟IP会指向此节点,TaskTracker会注册到此节点上,未完成的MapReduce作业会被ZooKeeper调度到此节点上重新执行。TaskTrack39、er挂掉怎么办?JobTracker是一个master服务,软件启动之后JobTracker接收job,负责调度job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。并且将其负责的task分配给其他TaskTracker上。1.5.2 系统扩展性已有的Hadoop集群规模Hadoop是一个相当有弹性和扩展性的平台,它既可以在成千上万的机器上跑,也可以在很小规模上运行。目前最大的Hadoop集群有四千台机器。 Hadoop扩展优势:与其它分布式系统相比,使用Hadoop的好处在于它的水平的可扩展性,在少量结点上,用Hadoop处理有限的数据40、时,不能展示Hadoop的性能,因为开始Hadoop程序相关的代价比较高,其它并行/分布程序方式,比如MPI (Message Passing Interface)可能在2台,4台或许10多台计算机上有更好的性能,尽管在少量机器上协同工作在这种系统上也许会取得更好的性能,但这种为性能所要付出的努力是非线性的增长。用其它分布式框架所写的程序在从十台机器的级别到成百上千台机器需要大量的重构工作,这也许要程序重写几次,并且其它框的基础元素会限制应用的规模大小。但是特别设计的Hadoop有着水平的可扩展性,一个Hadoop程序写完后,在10个结点上运行,如果迁徙到更大的集群上运行,几乎不需要做什么工作41、, Hadoop平台会管理数据和硬件资源并提供与可用资源成比例的可靠性能。Hadoop扩展方法:HBase集群具备线性扩展功能,只需要将配置好的region server节点加入到集群中。MapReduce集群具备线性扩展功能,只需要将配置好的TaskTracker节点加入到集群中,JobTracker节点就会将Map或Reduce任务分配给此节点处理。HDFS具备线性扩展功能,只需要将配置好的DataNode节点加入到集群中,并且在集群空闲时执行balancer工具以平衡集群中DataNode的数据块负载。1.6 系统设计性能1.6.1 交管数据流量处理能力交管数据集群完全采用分布式实现,支42、持线性扩展, 每节点采用低端X86PC Server处理500条/s流量。 对于全全市总量10000条/s的实时入库数据和大量的历史数据来说,需要34台处理机。以下是各部分处理能力统计: l 交管数据存储查询服务器配置: 8核CPU2,主频2.3GHz,内存32G,硬盘82T SATA处理能力:折合交管数据入库流量 500条/s/台l 应用分析服务器配置: 8核CPU2,主频2.3GHz,内存16G,硬盘2300G SAS处理能力:折合处理并发访问量500次/s/台1.6.2 数据存储能力原始交管数据存储采用云存储平台,分布式文件系统存储服务。性能指标:l 存储量指标单系统应支持PB级存储容量43、。l 吞吐量指标吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率。吞吐量根据应用系统读写方式和应用系统读取存储内容大小分成四个指标。分布式文件存储系统按照32个节点并发500个用户计算,单节点8块2T大小的硬盘情况下,每个节点指标具体内容如下表所示:表8分布式文件存储系统吞吐量指标编号读写方式存储内容大小平均吞吐量指标(MBps)1100%读1GB602100%写1GB303100%读100KB304100%写100KB15图表 8 分布式文件存储系统吞吐量指标l 系统响应时间指标千兆网络环境下,局域网客户端从分布式文件存储系统中读取4096字节存储内容的响应时间应不高于50ms。交管数44、据存储采用HDFS性能指标,如下:l 数据读取性能:4080MB/s节点;l 数据规模:10PB规模;l 数据负载均衡时间:可依据流量配置而确定;l 集群重新启动时间(10PB规模):分钟级别;1.6.3 查询分析计算性能 对任何实时分析操作的反应时间小于10秒; 查询、统计操作的首次响应时延小于1秒; 并发操作终端数大于30个 ; 基于交管数据的统计,记录5000万条以内,30秒可以统计完成。1.7 定制开发方案相对于已经完成的传统方案,云计算方案还需要在以下方面进行特定开发。(1)历史数据汇入处理平台定制开发历史数据入库系统需要使用与计算存储集群分立的专用机器(可安装在各县市现有的数据服务45、器上)。由于数据汇入处理不需要存储任何数据,仅仅需要读取、解析和入库数据。因此,数据汇入时对服务器的要求比较简单,不需要考虑和使用诸如Hadoop的大规模数据并行计算和存储系统,只需要一般的单一的服务器即可。(2)上报数据上报处理平台定制开发上报数据上报系统需要使用与计算存储集群分立的专用机器(可安装在市数据中心现有的数据服务器上)。由于数据上报处理不需要存储任何数据,仅仅需要读取、解析和上报数据。因此,数据上报时对服务器的使用比较简单,不需要考虑和使用诸如Hadoop的大规模数据并行计算和存储系统,只需要一般的单一的服务器即可。但是由于上报的数据量比较大,而上报时间又不会很长,所以对服务器的46、性能有一定要求。(3)交管数据实时入库并创建索引程序定制开发交管数据存储在Hadoop系统的HDFS中,但由于巨大的交管数据流量,每秒钟将有大量的交管数据产生,为了提供及时的数据查询,这些数据文件必须得到及时的索引创建处理,否则将造成大量的交管数据积压。因此,索引创建程序需要有较高的实时处理能力,以便能在毫秒级时间内保证处理完大量的一秒钟的交管数据。由于MapReduce计算任务需要较长的作业初始化时间,交管数据索引创建程序将难以用MapReduce程序实现,而需要基于HDFS、利用HDFS编程接口编写和定制较为复杂的非MapReduce程序,该程序不能依赖任何MapReduce的编程构架和接47、口,而需要自行编写程序完成全部的数据读出、解析处理、复杂的索引计算、以及索引数据的输出(输出到HDFS或者Hbase)处理过程。(4)查询分析接口开发智慧交通云平台会提供以下的应用接口:实时监控、报警监控、车辆轨迹查询与回放、电子地图、报警管理、布控管理、设备管理、事件检测报警、流量统计和分析、系统管理等。这些应用接口都需要根据实际的应用需求再进行合理的改进过程。(5)查询分析软件定制开发(可选)查询分析软件将设计为基于Web的应用程序,包括客户端查询用户界面以及服务器端查询服务程序。客户端查询用户界面可基于通用的浏览器实现,也可设计为独立(standalone)的客户端软件。具体的客户端界面48、将需要根据不同的查询功能需求设计实现不同的查询界面。查询服务软件将基于ApacheWeb服务器设计实现。需要特别考虑的是,大量并发的用户查询任务将需要设计实现查询任务分发时的负载均衡处理。(6)并行处理任务的负载均衡调度和单节点失效恢复机制的定制方案前述的交管数据入库、建立索引、数据汇总和数据上报、数据查询等处理中需要考虑的一个共性的重要问题是,为了对大量数据进行并行化的处理、或者大量用户同时发出了很多查询请求时,需要考虑并行计算任务的分发调度和负载均衡,尤其是负责分发调度的节点可能出现单节点失效而导致系统无法正常工作。为此,将基于Zookeeper设计实现一个可防止单节点失效的并行计算任务分49、发调度控制机制和程序框架。该框架中,Zookeeper将使用3台并行计算任务调度服务器,并有Zookeeper负责选择和确定一个主服务器进行工作,但当主服务器失效时,Zookeeper将能够自动感知并选择另一个服务器作为主服务器工作,以此完成单节点失效的恢复处理。进而,通过Zookeeper还可以控制和均衡调度使用大量的计算节点,从而完成并行计算任务分发调服时的负载均衡。(7)Hadoop计算与存储集群的可靠性设计和功能扩展 Hadoop作为一个开源的面向大规模数据并行计算的编程框架和平台,其可靠性和性能方面还存在不少需要改进的地方。比如,Hadoop集群的Master服务器虽然开用了一个备份50、Master服务器,但当主Master服务器失效时,备份Master服务器并不能自动完成失效恢复和切换处理。这就无法满足智慧交通的实时性处理需求。为此,我们需要对Hadoop进行改进,设计实现一个能自动完成Master服务器失效处理和切换的定制Hadoop系统,以便为智慧交通云平台提供一个高可靠性的大规模数据并行计算和存储平台。云技术方案建议书 第85页系统设计实施与关键技术方法2 系统设计实施与关键技术方法2.1 系统软硬件平台系统软硬件结构如图:图表 9 系统软硬件结构系统的物理硬件采用低端的x86 PC服务器,操作系统采用RedHat Linux。2.2 数据处理流程数据汇总上报处理流程51、如图:图表 10 数据汇总上报处理流程实时数据入库流程如图: 图表 11 实时数据入库流程2.3 数据存储子系统 2.3.1 海量数据分布式数据存储构架 云计算是一种超级的计算模式,可以把网络中的计算机虚拟为一个资源池,将所有的计算资源集中起来,并用特定软件实现自动管理,使得各种计算资源可以协同工作,这就使得处理数量巨大的数据成为了可能。 基于云计算的海量数据存储模型,是依据云计算的核心计算模式MapReduce,并依托实现了MapReduce 计算模式的开源分布式并行编程框架Hadoop,将存储模型和云计算结合在一起,实现海量数据的分布式存储。 MapReduce 是云计算的核心计算模式,是52、一种分布式运算技术,也是简化的分布式编程模式,用于解决问题的程序开发模型,也是开发人员拆解问题的方法。MapReduce 模式的主要思想是将自动分割要执行的问题,拆解成Map(映射)和Reduce(化简)的方式。在数据被分割后通过Map 函数的程序将数据映射成不同的区块,分配给计算机集群处理达到分布式运算的效果,在通过Reduce 函数的程序将结果汇整,从而输出开发者需要的结果。 MapReduce 借鉴了函数式程序设计语言的设计思想,其软件实现是指定一个Map 函数,把键值对(key/value)映射成新的键值对(key/value),形成一系列中间结果形式的key/value 对,然后把它53、们传给Reduce(规约)函数,把具有相同中间形式key 的value 合并在一起。Map 和Reduce 函数具有一定的关联性。MapReduce流程如图所示:图表 12 分布式计算流程 Hadoop 是一个实现了MapReduce 计算模型的开源分布式并行编程框架,程序员可以借助Hadoop 编写程序,将所编写的程序运行于计算机集群上,从而实现对海量数据的处理。此外,Hadoop 还提供一个分布式文件系统(HDFS)及分布式数据库(HBase)用来将数据存储或部署到各个计算节点上。借助Hadoop 框架及云计算核心技术MapReduce 来实现数据的计算和存储,并且将HDFS 分布式文件系54、统和HBase 分布式数据库很好的融入到云计算框架中,从而实现云计算的分布式、并行计算和存储,并且得以实现很好的处理大规模数据的能力。综合MapReduce和HDFS来看Hadoop的结构:图表 13 Hadoop结构在Hadoop的系统中,会有一台Master,主要负责Namenode的工作以及JobTracker的工作。JobTracker的主要职责就是启动、跟踪和调度各个Slave的任务执行。还会有多台Slave,每一台Slave通常具有DataNode的功能并负责TaskTracker的工作。TaskTracker根据应用要求来结合本地数据执行Map任务以及Reduce任务。 主服务控55、制集群相当于控制器部分,主要负责接收应用请求并且根据请求类型进行应答。存储节点集群相当于存储器部分,是由庞大的磁盘阵列系统或是具有海量数据存储能力的集群系统,主要功能是处理数据资源的存取。HDFS 和Hbase 用来将数据存储或部署到各个计算节点上。Hadoop 中有一个作为主控的Master,用于调度和管理其它的计算机(将其称之为TaskTracker),Master 可以运行于集群中任一台计算机上。TaskTracker 负责执行任务,必须运行于DataNode上,DataNode 既是数据存储节点,也是计算节点。Master将Map 任务和Reduce 任务分发给空闲的TaskTrack56、er,让这些任务并行运行,并负责监控任务的运行情况。如果其中任意一个TaskTracker 出故障了,Master 会将其负责的任务转交给另一个空闲的TaskTracker 重新运行。用户不直接通过Hadoop 架构读取及HDFS 和Hbase存取数据,从而避免了大量读取操作可能造成的系统拥塞。用户从Hadoop 架构传给主服务控制集群的信息后,直接和存储节点进行交互进行读取操作。2.3.2 适应应用需求的混合存储策略 混合存储策略可以简述为HDFS分布式文件系统用来存储海量数据,可以根据存储的数据类型建立索引,HBase也可用来存储海量数据,其由查询条件建立索引表, Database对小型数57、据的存储处理。 分布式文件系统HDFS是一个开源云计算平台Hadoop框架的底层实现部分,适合运行在通用硬件上的分布式文件系统,具有高容错性,能提高吞吐量的数据访问,非常适合于大规模数据集上的应用。MapReduce在HDFS的基础上实现的并行框架,为用户提供容易使用的并行编程模式,MapReduce计算包括两个阶段,Map(映射)阶段和Reduce(规范)阶段。首先,Map函数把一组(Key,Value)输入,映射为一组中间结果 (Key,Value),然后通过Reduce函数把具有相同Key值的中间结果,进行合并化简。MapReduce将计算作业分成许多小的单元,同时数据也会被HDFS分为58、多个Block,并且每个数据块被复制多份,保证系统的可靠性,HDFS按照一定的规则将数据块放置在集群中的不同机器上,以便MapReduce在数据宿主机器上进行计算。 HBase类似Bigtable的分布式数据库,是一个稀疏的,长期存储的,多维的,排序的映射表.这张表的索引是行关键字,列关键字和时间戳。所有数据库的更新都是一个时间戳标记,每个更新都是一个新的版本,而HBase会保留一定数量的版本,这个值是可以设定的。客户端可以获取距离某个时间最近的版本,或者一次获取所有版本。2.3.3 HDFS数据存储 分布式文件系统HDFS被设计为将海量文件存储在一个大集群的多台计算机上。HDFS将每一个文件59、以分块序列的形式进行存储,一个文件的所有分块除去最后一个分块外都是等大小的。为了实现容错将文件分块进行自动复制。文件分块的块大小和复制比例都是可以按照单个文件进行配置的。HDFS中的所有文件都是“只写一次”并且严格限定在任何时候只有一个写文件操作者。 HDFS是Hadoop框架的分布式并行文件系统,是分布式计算的存储基石。负责数据分布式存储及数据的管理,并能提供高吞吐量的数据访问。HDFS的基本特征如下:(l)对于整个集群有单一的命名空间。(2)文件会被分割成多个文件块,每个文件块被分配存储到数据节点上,而且根据配置会有复制的文件块来保证数据安全性。(3)数据一致性。适合一次写入多次读取的模型60、,客户端在成功创建文件之后,才能看到文件的存在。(4)Hadoop,包括HDFS,非常适合在廉价机器上的分布式存储和分布式处理。它是容错的、可伸缩的、非常易于扩展。并且,以简单性和适用性著称的MapReduce是Hadoop不可缺少的重要组成部分。(5)HDFS的默认配置适合于大多数安装的应用。通常情况下,只有在一个非常大规模的集群上才需要修改默认配置。(6)支持shell命令行风格的HDFS目录交互。(7)HDFS是用java编写的,可广泛运行在多种软硬件平台上。(8)HDFS经常性地实现新的特性和改进。(9)Namenode和DataNode都内建了Web服务器,可以方便地查看集群的状态。61、 HDFS的体系框架是Master/Slave结构,一个典型的HDFS通常由单个Namenode和多个DataNode组成。Namenode是一个中心服务器,负责文件系统的名字空间的操作,比如打开、关闭、重命名文件或目录,它负责维护文件路径到数据块的映射,数据块到DataNode的映射,以及监控DataNode的心跳和维护数据块副本的个数。集群中的DataNode一般是一个节点一个,负责管理它所在节点上的存储。HDFS暴露了文件系统的名字空间,用户能够以文件的形式在上面存储数据。从内部看,一个文件其实被分成一个或多个数据块,这些块存储在一组DataNode上。DataNode负责处理文件系统客62、户端的读写请求。在Namenode的统一调度下进行数据块的创建、删除和复制。 所有对目录树的更新和文件名和数据块关系的修改,都必须能够持久化,文件在HDFS中存储图如图:图表 14 Hdfs结构HDFS涉及到Namenode、DataNode和客户端们之间的交互。本质上,客户端与Namenode通讯是通过获取或者修改文件的元数据,与 DataNode进行实际的I/O操作。如图13所示,在HDFS中有三个重要的角色:Namenode、DataNode和Client,其中Client就是需要获取分布式文件系统文件的应用程序。这里通过三个操作来说明他们之间的交互关系:(l)文件写入。首先Client63、向Namenode发起文件写入的请求,Namenode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。Client将文件划分为多个Block,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。(2)文件读取。Client向Namenode发起文件读取的请求,Namenode返回文件存储的DataNode的信息。Client根据返回的信息读取DataNode上的文件信息。(3)文件Block复制。Namenode发现部分文件的Block不符合最小复制数或者部分DataNode失效,通知DataNode相互复制Block。DataNode收64、到通知后开始直接相互复制。图表 15 HDFS Namenode、DataNode和客户端们之间的交互2.3.4 HBase数据存储 HBase Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。其目的是处理庞大的表,可以用普通的计算机处理10亿行数据,并且有数百万列元素组成的数据表这张表的索引是行关键字。Hbase可以直接使用本地的文件系统和Hadoop作为数据存储方式,不过为了提高数据的可靠性和系统的健壮性,发挥Hbase处理大数据量等功能,需要使用Hadoop作为文件系统。1、65、数据模式 HBase类似Bigtable的分布式数据库,是一个稀疏的,长期存储的,多维的,排序的映射表.这张表的索引是行关键字,列关键字和时间戳。每个值是一个不解释的字符数组,数据都是字符串,没类型。用户在表格中存储数据,每一行都是一个可排序的主键和任意多的列。由于是稀疏存储的,所以同一张表里面的每一行数据都可以有截然不同的列。列名字的格式是:,都是由字符串组成,每一张表有一个family集合,这个集合是固定不变的,相当于表的结构,只能通过改变表的结构来改变。但是lable值相对于每一行来说都是可以改变的。HBase把同一个family里面的数据存储在同一个目录底下,而HBase的写操作时锁行66、的,每一个都是一个原子元素都可以加锁。所有数据库的更新都是一个时间戳标记,每个更新都是一个新的版本,而HBase会保留一定数量的版本,这个值是可以设定的。客户端可以获取距离某个时间最近的版本,或者一次获取所有版本。2、 概念视图一个表可以想象成一个大的映射关系,通过主键,或者主键+时间戳,可以定位一行数据,由于是稀疏数据,所以某些列可以是空白的,下面就是数据的概念视图: Row KeyTime StampColumnColumn anchorColumn mimen.wwwt9anchor:CNNt8anchor:my.look.caCNN.comt6.t5.text/htmlt3.3、物理视67、图从概念视图看每个表格是有很多行组成,但是在物理存储上,它是按照列来保存的。Row KeyTime StampColumn contentsn.wwwt6.t5.t3.Row KeyTime StampColumn anchorn.wwwt9anchor:CNNt8anchor:my.look.caCNN.comRow KeyTime StampColumn minen.wwwt6text/html在概念视图上面有些列是空白的,这样的列实际上并不会被存储,当请求这些空白的单元格的时候,会返回null值。如果在查询的时候不提供时间戳,那么会返回距离现在最近的那个版本数据。因为在存储的时候,数据会68、按照时间戳排序2.3.5 Database数据存储数据库(Database)是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。数据库中的数据有两种性质:1、数据整体性 数据库是一个单位或是一个应用领域的通用数据处理系统。数据库中的数据是从全局观点出发建立的,他按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一69、应用,而是面向全组织,具有整体的结构化特征。 2、数据共享性 数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。数据库的基本结构分为三层: 1.物理数据层它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。 2.概念数据层它是数据库的中间一层,是数据库的整体逻辑70、表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。 3.逻辑数据层它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。 数据库不同层次之间的联系是通过映射进行转换的。主要特点: (1)实现数据共享。 数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。 (2)减少数据的冗余度。 同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的71、一致性。 (3)数据的独立性。 数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。 (4)数据实现集中控制。 文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。 (5)数据一致性和可维护性,以确保数据的安全性和可靠性。 主要包括:安全性控制:以防止数据丢失、错误更新和越权使用;完整性控制:保证数据的正确性、有效性和相容性;并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用;故72、障的发现和恢复:由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏 (6)故障恢复。 由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或是逻辑上的错误。比如对系统的误操作造成的数据错误等。2.3.6 数据存储的可靠性 HBase采用的是Hadoop作为文件系统,hadoop以机柜为基础的数据存放策略, 那么不仅充分利用了网络宽带,而且提高数据可靠性。HDFS的主要目标就是实现在失败情况下的数据存储可靠性。常见的三种失败:Namenode failures, Datanode fail73、ures和网络分割(network partitions)。(1)硬盘数据错误、心跳检测和重新复制每个Datanode节点都向Namenode周期性地发送心跳包。网络切割可能导致一部分Datanode跟Namenode失去联系。 Namenode通过心跳包的缺失检测到这一情况,并将这些Datanode标记为dead,不会将新的IO请求发给它们。寄存在dead Datanode上的任何数据将不再有效。Datanode的死亡可能引起一些block的副本数目低于指定值,Namenode不断地跟踪需要复制的 block,在任何需要的情况下启动复制。在下列情况可能需要重新复制:某个Datanode节点失74、效,某个副本遭到损坏,Datanode上的硬盘错误,或者文件的replication因子增大。(2)集群均衡HDFS支持数据的均衡计划,如果某个Datanode节点上的空闲空间低于特定的临界点,那么就会启动一个计划自动地将数据从一个Datanode搬移到空闲的Datanode。当对某个文件的请求突然增加,那么也可能启动一个计划创建该文件新的副本,并分布到集群中以满足应用的要求。这些均衡计划目前还没有实现。(3)数据完整性从某个Datanode获取的数据块有可能是损坏的,这个损坏可能是由于Datanode的存储设备错误、网络错误或者软件bug造成的。HDFS客户端软件实现了HDFS文件内容的校验75、和。当某个客户端创建一个新的HDFS文件,会计算这个文件每个block的校验和,并作为一个单独的隐藏文件保存这些校验和在同一个HDFS namespace下。当客户端检索文件内容,它会确认从Datanode获取的数据跟相应的校验和文件中的校验和是否匹配,如果不匹配,客户端可以选择从其他Datanode获取该block的副本。(4)元数据磁盘错误FsImage和Editlog是HDFS的核心数据结构。这些文件如果损坏了,整个HDFS实例都将失效。因而,Namenode可以配置成支持维护多个FsImage和Editlog的拷贝。任何对FsImage或者Editlog的修改,都将同步到它们的副本上。76、这个同步操作可能会降低 Namenode每秒能支持处理的namespace事务。这个代价是可以接受的,因为HDFS是数据密集的,而非元数据密集。当Namenode重启的时候,它总是选取最近的一致的FsImage和Editlog使用。Namenode在HDFS是单点存在,如果Namenode所在的机器错误,手工的干预是必须的。目前,在另一台机器上重启因故障而停止服务的Namenode这个功能还2.3.7 数据压缩 (1)HDFS数据压缩与组织方法任何一种数据资源都具有生命周期,不同的时期有其存在的不同意义。在数据刚生成的数日内,访问频率最高,带来的使用价值也最高。随着时间推移,访问频率会逐渐降低77、,数据的价值也随之下降,低访问频率的数据量远远超过高访问频率的数据量。不同生命周期的数据是提供给不同使用对象的,这就为以最低的成本获得最高的使用价值提供了可能。通常情况下,某段时间内访问量比较大的数据只有不到20%,80%的数据是不经常被访问的,虽然这些数据访问量低,但这些数据仍然很重要,必须完好的保存。同时考虑到方便数据压缩,这里采用了分级存储策略,这样不仅可以方便为访问量大的数据项设置缓存,而且为数据压缩提供了方便,显著提高了效率。分级存储就是以信息生命周期管理理论为依据,根据数据所能提供的使用价值来决定存储成本、存储设备。文件依据用户需求有选择地对某些数据进行迁移,如进行远端备份等。数据78、分级存储之所以重要,是因为它既能最大限度地满足变化的需求,又能方便文件的组织和压缩。数据分级存储的优点有减少总体存储成本、性能优化、改善数据可用性、数据迁移对应用透明。借助云平台,分级存储满足以下要求:数据的安全性、数据的高可用性、容量可扩展性、设备的兼容性、管理的高效性、经济效益性。数据将被组织成两级,一级称为chuck,一级称为block。chuck被分为多个block,文件将以block的形式存储在数据服务器上。block的优点是方便文件压缩和文件的传输,适合多种备份方式,在很大程度上提高了存储效率和可扩展性。下图给出了基于分级存储的数据块级压缩方式。图表 16 HDFS数据压缩与组织处79、理流程如下:1)将一个chunk划分成为多个block。2)读取一个block,对该block进行数据压缩并写入到临时缓存中。3)将临时缓存的压缩数据拷贝到缓冲池中。4)重复2-3步直到一个chunk中的block都被压缩拷贝完成。5)将缓冲池中的内容按顺序回写到存储区域。2.4 数据查询与统计分析子系统2.4.1 数据查询与统计分析系统基本构架图表 17 数据查询子系统构架2.4.2 交管数据查询功能与用户界面对前台页面传来的json字符串信息进行解析并分析各个变量,得到需要查询的信息,然后把这些信息在封装成与数据库端相合的协议,调用数据库提供的接口对后台数据库进行查询。数据库端查询完毕后将80、byte形式的结果存放在指定文件中。接口服务器受到信号,读取文件,如果文件不存在,就直接显示1000条数据并再次调用json将结果封装成字符串发送到前台界面显示。用户界面: 图表 18 用户界面图2.4.3 实时报警功能与用户界面图表 19 实时报警功能 2.4.4 车辆轨迹回放功能与用户界面图表 20 车辆轨迹回放2.5 基于云方案的交管数据查询索引与查询优化技术传统的基于关系数据库存储和查询交管数据的方案在存储和查询较小的交管数据量时可以适用并有很好的查询性能,但其处理巨量的交管数据时存在存储和处理能力不足的缺陷,将难以适用。为此,需要基于云存储方案考虑将海量的交管数据存储在分布式文件系统81、HDFS中。但由此又将带来一个新的问题,以文本或二进制数据文件保存的交管数据难以支持高效的数据查询。一个有效的解决方法是对交管数据建立查询索引。有种解决方案,介绍如下。2.5.1 基于分布式数据库的交管数据查询索引处理方案这种种方案是使用HBase存储交管数据查询索引,并使用HBQL完成交管数据查询。(1)数据提取阶段在本过程中,我们会将HDFS的交管数据导入到HBase之中。具体流程如下:1)每当要处理一些新的交管数据的时候,我们先将这些数据读入内存。2)对于读入内存的交管数据,逐行扫描其中的每条交管记录,并将该记录的key值记录下来,与记录中药建索引的字段组合成一个新的变量,该变量的即做为82、索引头,而该记录的key值作为索引指向交管数据的指针。3)由于每个交管记录中的几十个字段中,只有少数几个是我们常用的,因此将某条交管记录插入到HBase中时,我们只需要对这些常用的几个字段建立索引即。4)抽象出来的具体描述:Inster (Index,CarNumber,) Into CLXX.(2)索引建立阶段上一阶段的主要工作是通过解析保存在HDFS上的交管数据,抽出其中常用的几项字段,将这些交管信息映射到HBase中。本阶段的工作是对已保存在HBase中经过字段精简之后的交管记录建立索引表,以方便后面的查询。在HBase中每条数据记录现在有20多个字段中,而其中用于我们查询的字段只有几个83、,因此我们只需要根据这几个字段建立几张索引表这里我们通过HBql建立索引表。索引表的数目有几张,以按车牌号码建立的索引表Table_NumberIndex为例,其中的每个ID字段是“号码+key”,该字段是自动生成的且会自动排序。对应地我们还保存了“key”,这样方便直接查找和读取。根据相关调查,HBql建立的索引表会自动实现新增索引的有序插入工作(底层开销有多大有待调查)。2.6 交管数据处理集群的可靠性与负载均衡设计2.6.1 负载均衡处理机的单点失效容错处理负载均衡机分布如图: 图表 21 负载均衡机分布图全量原始数据接入交换机,将数据发向指IP的负载均衡机,负载均衡机向负载均衡Mast84、er节点请求任务处理机,Master返回存任务处理机IP端口信息,负载均衡机根据任务处理机的IP端口信息将数据发向任务处理机。单点容错如图: l 当某一台负载均衡机宕机后:图表 22 负载均衡机宕机预案第一步 Master节点能过链接心跳得知宕机负载均衡机。第二步 Master节点从所有均衡机中选出负载小的负载均衡机,启动虚拟IP及相关进程第三步 启动虚拟IP接收原始交管数据,进行负载均衡l 当Master节点宕机后: 图表 23 Master节点宕机预案第一步Master节点宕机, 负载均衡节点及存储计算节点能过链接心跳得知Master宕机第二步所有负载均衡节点,重选举出Master节点,并85、通知存储计算节点新Master节点所有存储计算节点,根据负载均衡IP列表,请求新Master节点,后向新Master节点上报负载状态。第三步 新Master节点接管所有工作,对宕机的Master节点容错。2.6.2 查询处理机的单点失效容错处理图表 24 查询处理单点失效容错处理第一步:任务处理机宕机, 负载均衡机得知任务处理机宕机,缓存交管数据.同时Master得知任务处理宕机后, 将任务处理机信息删除待分配列表。第二步:负载均衡机向Master请求任务处理机,Master重新分配任务处理机给负载均衡机。第三步: 负载均衡机将原始数据发向新任务处理机,进行查询2.7 计算与存储集群的可靠性与86、负载均衡设计2.7.1 计算与存储集群Master单点失效容错处理图表 25 Master单点失效容错处理AvatarNode0以Primary方式启动,AvatarNode0作为Namenode节点与用户交互。AvatarNode1以Standby方式启动,它是一个处于safemode的Namenode。它定期读取AvatarNode0的日志来更新自己内存和磁盘中的元数据,并定期做checkpoint,更新AvatarNode0上的fsimage以及editlog。DataNode节点向AvatarNode0和AvatarNode1同时发送心跳信息和BlockReport,其中包括Block87、的位置信息。NFS服务器存储AvatarNode0和AvatarNode1的fsimage和editlog。AvatarNode的primary节点写入editlog,standby节点读取editlog,更新内存中的元数据信息,并且定期做checkpoint,将fsimage及editlog回写到nfs服务器。具体使用时:AvatarNode0以Primary方式启动,AvatarNode1以Standby方式启动,然后启动各个DataNode。当AvatarNode0确认故障后,手动切换AvatarNode1到Primary,同时,选取一个备用节点,以standby启动,这样,当Avata88、rNode1发生故障时,即可将备用节点切换到Primary状态,始终保持Namenode可以对外提供服务。 运行流程AvatarNode0以Pimary启动(1)等待DN的心跳信息 (2)图5-2中的sharedir为NFS服务器上的共享目录/usr/local/sharedir,share0、share1分别为AvatarNode0、AvatarNode1镜像日志的存储目录(3)一个DN抽象代表了所有的DataNodeAvatarNode0:PrimaryNFS服务器ClientDN读写镜像日志用户请求只能操作元数据AvatarNode1:XXXXsharedirshare1share0图表89、 26 AvatarNode0以Pimary启动过程 AvatarNode1以Standby启动(1)若启动参数中有 -sync,则AvatarNode1备份本地和NFS的镜像日志目录,而后用NFS中的AvatarNode0对应镜像日志目录中覆盖AvatarNode1的本地和NFS的对应目录;(2) 启动之后,处于保护模式;(3) 等待DN的心跳信息;(4)ingest线程从NFS中的AvatarNode0对应日志的目录中读取AvatarNode0启动后的日志后线程关闭;(5)启动ingest线程定期从NFS中的AvatarNode0对应日志的目录中读取AvatarNode0的日志。Avata90、rNode0:PrimaryClientDNAvatarNode1:Standby读日志用户请求,读写文件操作数据与元数据用户请求只能读操作NFS服务器NFS服务器sharedirshare1share0写镜像写日志写镜像图表 27 AvatarNode1以Standby启动过程DataNode启动(1)向Primary、Standby发送心跳信息。(2)AvatarNode0与AvatarNode1收集DN的心跳信息,构建Block元数据与Block备份位置的映射AvatarNode0:PrimaryClientAvatarNode1:Standby读日志用户请求,读写文件操作数据与元数据N91、FS服务器NFS服务器sharedirshare1share0写镜像写日志写镜像DN心跳信息心跳信息用户请求只能读操作图表 28 DataNode启动过程AvatarNode0宕机AvatarNode0:XXXXClientAvatarNode1:Standby读日志NFS服务器NFS服务器sharedirshare1share0写镜像写镜像DN心跳信息用户请求只能读操作图表 29 AvatarNode0宕机后的状态AvatarNode1切换为Primary(1)启动ingest线程最后一次从NFS中的AvatarNode0对应日志的目录中读取AvatarNode0的日志。结束ingest线程92、。(2) AvatarNode1将依据用户操作写入日志 AvatarNode0:XXXXClientDNAvatarNode1:Primary写日志心跳信息用户请求,读写文件操作数据与元数据NFS服务器sharedirshare1share0图表 30 AvatarNode1切换为Primary过程AvatarNode0以Standby重启或其它备用机器以Standby重启(1) AvatarNode0:Standby重新接收心跳信息,(2) 定期从NFS中的AvatarNode1对应存储的目录中读取AvatarNode1的日志。(3)当日志文件达到上限,则将日志与镜像合并,写入本地与NFS中93、的AvatarNode0对应的存储目录AvatarNode0:StandbyClientAvatarNode1:Primary读日志用户请求,读写文件操作数据与元数据NFS服务器NFS服务器sharedirshare1share0写镜像写日志写镜像DN心跳信息心跳信息用户请求只能读操作图表 31 AvatarNode0重启过程AvatarNode启动切换流程图AvatarNode0以Primary启动,AvatarNode1以Standby启动,AvatarNode0第一次宕机则改变配置文件的参数设置,当再有AvatarNode0、 AvatarNode1或其替代节点宕机时不再改变配置文件,并94、均以Standby方式启动,另一个节点在此之前若为Primary状态应切换到Standby状态。AvatarNode0以Primary启动AvatarNode1以Standby启动AvatarNode0或其他机器重新设置配置文件正常运行:AvatarNode0:PrimaryAvatarNode1:StandbyAvatarNode1或其他机器以Standby启动DataNode启动宕机AvatarNode1宕机AvatarNode0或其他机器以Standby启动AvatarNode0宕机宕机AvatarNode1宕机正常运行:AvatarNode0: Standby AvatarNode1:95、 PrimaryAvatarNode0宕机AvatarNode0切换为PrimaryAvatarNode0或其他机器以Standby启动AvatarNode1切换为PrimaryAvatarNode1或其他机器以Standby启动正常运行:AvatarNode0:PrimaryAvatarNode1:Standby宕机AvatarNode0宕机宕机AvatarNode1宕机AvatarNode1切换为Primary图表 32 AvatarNode启动切换流程图2.7.2 计算与存储集群的负载均衡处理负载的均衡,就是要让大家各尽其力齐心干活,发挥各自独特的优势,不能忙得忙死闲得闲死,影响战斗力。96、而且,负载均衡也是一个复杂的问题,什么是均衡,是一个很模糊的概念。 比如,在分布式文件系统中,总共三百个数据块,平均分配到十个数据服务器上,就算均衡了么?其实不一定,因为每一个数据块需要若干个备份,各个备份的分布 应该充分考虑到机架的位置,同一个机架的服务器间通信速度更快,而分布在不同机架则更具有安全性,不会在一棵树上吊死。在这里说的负载均衡,是宽泛意义上的均衡过程, 主要涵盖两个阶段的事务,一个是在任务初始分配的时候尽可能合理分配,另一个是在事后时刻监督及时调整。HDFS中,ReplicationTargetChooser类, 是负责实现为新分配的数据块寻找婆家的。基本上来说,数据块的分配工97、作和备份的数量、申请的客户端地址(也就是写入者)、已注册的数据服务器位置,密切相 关。其算法基本思路是只考量静态位置信息,优先照顾写入者的速度,让多份备份分配到不同的机架去。具体算法,自行参见源码。此外,HDFS的Balancer类, 是为了实现动态的负载调整而存在的。Balancer类派生于Tool类,这说明,它是以一个独立的进程存在的,可以 独立的运行和配置。它运行有NamenodeProtocol和ClientProtocol两 个协议,与主控服务器进行通信,获取各个数据服务器的负载状况,从而进行调整。主要的调整其实就是一个操作,将一个数据块从一个服务器搬迁到另一个服务器 上。Balan98、cer会向相关的目标数据服务器发出一个DataTransferProtocol.OP_REPLACE_BLOCK消 息,接收到这个消息的数据服务器,会将数据块写入本地,成功后,通知主控服务器,删除早先的那个数据服务器上的同一块数据块。MapReduce负载平衡用的是公平调度算法,公平调度是一种多用户的赋予作业(job)资源的策略,它的目的是让所有的作业随着时间的推移,都能获取与权值相应的共享资源。当单独一个作业在运行时,它将使用整个集群。当有其它作业被提交上来时,系统会将任务(task)空闲计算槽(slot)赋给这些新的作业,以使得每一个作业都大概获取到与权值相应的计算时间。这个特性让短作业在99、合理的时间内完成的同时又保证了长作业的服务质量。公平调度器按资源池(pool)来组织作业,默认情况下,每一个用户拥有一个独立的资源池。在节点的TaskTracker上设置有同时运行的Map任务和Reduce任务个数上限,若未达到上限,则就产生了空闲计算槽,包括Map和Reduce空闲计算槽。当集群上出现空闲计算槽时,调度按两步进行,首先空闲计算槽在作业池之间分配,其次在作业池内的作业间分配。最小份额和公平份额最小份额确保作业池总能获取到足够的资源,由用户设定。作业池的公平份额的计算是根据作业的权值将集群的资源总量划分给各个运行的作业池。在缺省的情况下,作业池权值的设定是基于优先级的,即优先级每100、升高一级,那么相应的权值就增加一倍即所分配的计算槽是次一级的两倍。例如:平台上有甲乙两个作业池,甲优先级为high,乙低一级为normal,则甲被分配计算槽总数的,则乙被分配计算槽总数的。通常情况下一个作业池的最小份额小于公平份额。池间的公平分配算法描述如下:1) 若存在没有达到最小份额的作业池,则设c为池内已分配到的计算槽,m为作业池的最小份额,值为最小的作业池将被优先分配计算槽,2) 若每个池都已得到最小份额,设w为计算槽的权重,则值为最小的作业池将被优先分配计算槽。3) 公平调度算法中为每个作业池维护着两个变量,最小份额时限T和公平份额时限T,当作业池在T时间内没达到最小份额或T时间内没101、达到公平份额的一半时,公平调度器将杀死最近开始运行的任务占用其计算槽,以最小化被浪费的计算。抢占不会导致被抢占的作业失败,因为Hadoop作业容忍任务丢失。每个作业池中有运行作业数量限制。若达到作业池上限,则后续作业将在调度队列中等待,直到早先的作业执行完成并释放计算槽。池内计算槽的分配池内作业间计算槽的分配,可以按照池间公平分配算法或按照hadoop默认的FIFO进行。当采取公平分配算法时,池内的作业也被设置最小份额并按权值被统计公平份额,作业间的公平分配与作业池间的公平分配基本类似。而由于较差的数据本地性,公平调度策略又提供了一个辅助的池内作业间的等待调度算法(Delay Scheduli102、ng),虽然牺牲了一定程度的公平性,但由于考虑到了hadoop平台的数据本地性,使得小作业的响应时间有了较大的改善并提高了集群的吞吐率。算法描述如下:在作业池内,当出现空闲计算槽时,按公平分配或FIFO排序的作业队列,头结点作业所需数据不在此计算槽所在的节点上时,则将此槽分配给下一个节点,以此类推。如果作业由于数据本地性未被分配计算槽超过一定时间,则此作业被允许分配一个计算槽,此计算槽所在节点可以与其所需数据所在节点在同一机架内,若再过一定时间后此作业仍然在等待,则允许分配一个计算槽,此计算槽所在节点可以与其所需数据所在节点不在同一机架内。2.7.3 HDFS的可靠性设计本存储系统采用基于HD103、FS的FaceBook版本的改进方案Avatar方案。图表 33 Avatar体系架构图各节点功能说明1) AvatarNode0以Primary方式启动,作为主Namenode节点接受用户请求。同时作为NFS服务器,存储AvatarNode0和AvatarNode1的fsimage和editlog。AvatarNode0的primary节点写入editlog,standby节点读取editlog,更新内存中的元数据信息,并且定期做checkpoint,将fsimage及editlog回写到nfs服务器。2) AvatarNode1以Standby方式启动,它是一个处于safemode的Nam104、enode节点。它定期读取AvatarNode0存储在NFS上的日志来更新自己内存中的元数据,并定期做checkpoint,更新AvatarNode0、AvatarNode1上的fsimage以及AvatarNode0的editlog。3) DataNode此节点存储数据块,并向AvatarNode0和AvatarNode1同时发送心跳信息和BlockReport,其中包括Block的位置信息。虚拟IP机制本方案在AvatarNode0 、AvatarNode1所在的节点上使用虚拟IP工具ucarp。客户端通过虚拟IP提交请求。具体流程1) 在AvatarNode0上启动ucarpucarp的105、启动脚本将会检测到AvatarNode1节点上的AvatarNode进程未启动,则以Primary方式启动AvatarNode进程,并且将虚拟IP指向AvatarNode0(真实IP:IP0);2) 在AvatarNode1上启动ucarpucarp的启动脚本将会检测到AvatarNode0节点上的AvatarNode进程已启动,则以Standby方式启动AvatarNode进程;3) 启动各个DataNode;4) AvatarNode0节点宕机若AvatarNode0所在节点(IP0)宕机, 此时在AvatarNode1上ucarp自动调用脚本使虚拟IP自动指向AvatarNode1(真实106、IP:IP1),同时调用脚本将AvatarNode进程切换到Primary状态(切换时间在20秒以内),保持HDFS可以对外提供服务,客户端通过VIP访问HDFS。2.7.4 HBase可靠性设计HBase系统由HBase集群和ZooKeeper集群组成。如图所示图表 34 HBase系统架构方案说明HBase的可靠性由其自身的ZooKeeper机制保证,ZooKeeper被包括在HBase的tar包中。各节点功能说明1) Zookeeper集群1 保证任何时候,集群中只有一个master2 存贮所有Region的寻址入口。3 实时监控Region Server的状态,将Region serv107、er的上线和下线信息实时通知给Master4 存储Hbase的schema,包括有哪些table,每个table有哪些column family2) Master1 为Region server分配region2 负责region server的负载均衡3 发现失效的region server并重新分配其上的region4 HDFS上的垃圾文件回收5 处理schema更新请求3) Region Server1 Region server维护Master分配给它的region,处理对这些region的IO请求2 Region server负责切分在运行过程中变得过大的region具体流程1) 启108、动ZooKeeper集群2) 启动多个Master节点最先启动的节点将会在zookeeper上的建立代表自己的文件,并获得该文件的独占锁,用来阻止其它master成为master。3) 启动各个region server;master使用zookeeper来跟踪region server状态。当某个region server启动时,会首先在zookeeper上的server目录下建立代表自己的文件,并获得该文件的独占锁。由于master订阅了server目录上的变更消息,当server目录下的文件出现新增或删除操作时,master可以得到来自zookeeper的实时通知。因此一旦region 109、server上线,master能马上得到消息。4) Master节点宕机由于master只维护表和region的元数据,而不参与表数据IO的过程,master宕机仅导致所有元数据的修改被冻结(无法创建删除表,无法修改表的schema,无法进行region的负载均衡,无法处理region上下线,无法进行region的合并,唯一例外的是region的split可以正常进行,因为只有region server参与),表的数据读写还可以正常进行。因此master下线短时间内对整个hbase集群没有影响。从上线过程可以看到,master保存的信息全是可以冗余信息(都可以从系统其它地方收集到或者计算出来)110、,因此,一般hbase集群中总是有一个master在提供服务,还有一个以上的master在等待时机抢占它的位置。2.7.5 MapReduce计算可靠性设计本方案通过使用ZooKeeper的选举机制解决MapReduce的单点故障,当JobTracker节点宕机时,能够在一台备用的JobTracker节点上启动JobTracker进程,并使用虚拟IP机制将虚拟IP指向备用JobTracker节点。在JobTracker进程启动后,ZooKeeper将未完成的MapReduce作业提交给备用JobTracker节点重新执行。各节点功能说明1.JobTracker0节点主JobTracker节点,111、接受客户端的MapReduce作业并处理。初始启动时虚拟IP会指向此节点。2.JobTracker1节点备份JobTracker节点,当JobTracker0节点宕机时,ZooKeeper会在其上启动JobTracker进程替代JobTracker0节点,虚拟IP会指向此节点,TaskTracker会注册到此节点上,未完成的MapReduce作业会被ZooKeeper调度到此节点上重新执行。 3.TaskTracker节点执行Map或Reduce任务。 4.ZooKeeper集群接受客户端提交的MapReduce作业的注册,监控JobTracker0和JobTracker1节点,当监控到Job112、Tracker0宕机时,会在JobTracker1节点上启动JobTracker进程,并将未完成的MapReduce作业提交给JobTracker1节点重新执行,轮询作业状态,当作业完成时注销作业具体流程1)启动MapReduce和ZooKeeper集群在JobTracker0节点上启动JobTracker进程,同时启动ucarp使得虚拟IP(VIP)指向此节点的真实IP(IP0),在TaskTracker节点上的TaskTracker进程;2)作业提交当客户端将作业提交给JobTracker0节点的同时需要在ZooKeeper上注册此作业;如图所示图表 35 作业提交3宕机:JobTrack113、er0宕机时,虚拟IP(VIP)会指向JobTracker1,TaskTracker节点注册到JobTracker1上,ZooKeeper会监测到JobTracker0已宕机,在JobTracker1节点上启动JobTracker进程,并将未完成的MapReduce作业提交给JobTracker1节点重新执行。如图所示图表 36 JobTracker0宕机 4.作业注销ZooKeeper轮询作业状态,当作业的状态为已完成时注销此作业。如图所示图表 37 作业注销2.8 查询统计计算可靠性与负载均衡设计2.8.1 基于Zookeeper的单点失效和负载均衡设计ZooKeeper可为分布式应用建立114、更高层次的同步(synchronization)、配置管理 (configuration maintenance)、群组(groups)以及命名服务(naming)。在编程上,ZooKeeper使用的数据模型风格很像文件系统的目录树结构,简单来说,有点类似windows中注册表的结构,有名称,有树节点,有Key(键)/Value(值)对的关系,可以看做一个树形结构的数据库,分布在不同的机器上做命名管理。Zookeeper的基本工作结构如下图所示。图表 38 Zookeeper基本工作结构图Zookeeper分为2个部分:服务器端和客户端,客户端只连接到整个ZooKeeper服务的某个服务器上。115、客户端使用并维护一个TCP连接,通过这个连接发送请求、接受响应、获取观察的事件以及发送心跳。如果这个TCP连接中断,客户端将尝试连接到另外的ZooKeeper服务器。客户端第一次连接到ZooKeeper服务时,接受这个连接的 ZooKeeper服务器会为这个客户端建立一个会话。当这个客户端连接到另外的服务器时,这个会话会被新的服务器重新建立。启动Zookeeper服务器集群环境后,多个Zookeeper服务器在工作前会选举出一个Leader作为主服务器。在后续工作中,如果这个被选举出来的主服务器失效,而剩下的Zookeeper服务器会感知这个事件,并在活着的Zookeeper集群中重新选出一个116、Leader作为新的主服务器,选举出leader的目的是为了可以在分布式的环境中保证数据的一致性。查询索引创建、以及各种查询分析计算任务的处理将需要调度和使用计算集群上的一组服务器节点进行并行任务的分发和负载均衡处理。而负责并行任务调度和分发的节点可能会出现单点故障,进而引起整个计算系统无法正常工作。因此,需要设计一个单点失效恢复机制,以保证查询分析计算的可靠性,以及正确的并行计算任务分发和负载均衡处理。在具体实现上,我们将使用Zookeeper基于计算集群完成统一的控制和实现。基本设计和实现方法是,将计算集群中所有的计算节点都纳入Zookeeper的管理,选择其中3个计算节点注册为Zooke117、eper的服务器节点负责并行计算任务的调度和分发节点,Zookeeper将自动在这3个服务器节点中选举一个主服务器节点。当主服务器节点出现故障时,Zookeeper将能自动从剩下的2个服务器节点中重新选举产生一个新的主服务器节点来接管失效的主服务器。以此,将能保证并行计算任务的分发和调度处理不会出现单点失效。Zookeeper能感知当前所管辖的节点中任何节点的失效并作出相应的处理。当Zookeeper保证有一个负责并行任务分发调度的主服务器工作后,该主服务器将能在Zookeeper中所维护的当前有效的计算节点中挑选一个空闲的节点,并把一个计算任务分发给该节点;当多个计算任务到达时,主节点将能有118、效地将计算任务分发给不同的计算节点,从而实现并行计算任务在整个集群节点上的负载均衡。图表 39 基于Zookeeper的查询分析计算单点失效和2.9 系统安全性设计2.9.1 安全保障体系框架NSA提出的信息安全保障技术框架(IATF),如下图所示。IATF依据“深度防护战略”理论,要求从整体、过程的角度看待信息安全问题,强调人、技术、操作这三个核心原则,关注四个层次的安全保障:保护网络和基础设施、保护边界、保护计算环境、支撑基础设施。 图表 40 基于深度防护战略的IATF模型IATF模型从深度防护战略出发,强调人、技术和操作三个要素:人:人是信息的主体,是信息系统的拥有者、管理者和使用者,119、是信息保障体系的核心,是第一位的要素,同时也是最脆弱的。正是基于这样的认识,安全组织和安全管理在安全保障体系中是第一位的,要建设信息安全保障体系,首先必须建立安全组织和安全管理,包括组织管理、技术管理和操作管理等多个方面。技术:技术是实现信息安全保障的重要手段,信息安全保障体系所应具备的各项安全服务就是通过技术机制来实现的。当然IATF所指的技术是防护、检测、响应、恢复并重的、动态的技术体系。操作:也可称之“运行”,它体现了安全保障体系的主动防御,如果说技术的构成是被动的,那操作和流程就是将各方面技术紧密结合在一起的主动过程,运行保障至少包括安全评估、入侵检测、安全审计、安全监控、响应恢复等内120、容。信息安全保障体系的实现就是通过建立安全组织、安全管理和防护技术体系,协调组织、技术、运作三者之间的关系,明确技术实施和安全操作中技术人员的安全职责,从网络和基础设施、区域边界、计算环境、支撑基础设施等多层次保护,从而达到对安全风险的及时发现和有效控制,提高安全问题发生时的反应速度和恢复能力,增强网络与信息的整体安全保障能力。对于云计算安全参考模型,云安全联盟CSA(Cloud Security Alliance)提出了基于3种基本云服务的层次性及其依赖关系的安全参考模型,并实现了从云服务模型到安全控制模型的映射。该模型显示PaaS位于IaaS之上,SaaS位于PaaS之上。该模型的重要特点121、是供应商所在的等级越低,云服务用户所要承担的安全能力和管理职责就越多。 根据资源或服务的管理权、所有权和资源物理位置的不同,CSA也给出了不同的云部署模型的可能实现方式及其不同部署模式下共享云服务的消费者之间的信任关系,如下图所示。图表 41 云部署模型的实现此图显示,对于私有云和社区云,有多种实现方式,可以和公共云一样,由第三方拥有和管理并提供场外服务(off-premises),所不同的是共享云服务的消费者群体之间具有信任关系,局限于组织内部和可信任的群体之间。 对于每一种云部署实现方式,都可以提供3种基本的云服务。云部署实现的不同方式和基本云服务的组合构成不同的云服务消费模式。结合云服务122、安全参考模型,可以确定不同的云服务消费模式下供应商和用户的安全控制范围和责任,用户评估和比较不同云服务消费模式的风险及现有安全控制与要求的安全控制之间的差距,做出合理的决策。2.9.2 云计算平台的多级信任保护云计算可信平台实现系统平台(计算环境)认证、应用系统完整性认证、分布式资源信任认证和用户身份认证4个层次。多层信任保护的具体结构如下图所示。图表 42 多级信任保护在上图中,平台认证是基础,为其他3种认证提供一个可靠的计算环境。平台认证、应用认证、资源认证和用户认证都通过统一的证书机制来实现。(1)云平台信任保护由于TPM(trust platform module)规范能够支持现有的公123、钥基础设施,并且TPM内部的认证密钥和64位物理唯一序列号都能很好地实现自身和平台的绑定。因此可信平台之间的信任关系可以借助基于可信第三方的证书机制来保障。即每一个节点将能够代表自身特征的关键信息以可靠地方式提交到可信第三方(如CA中心),可信第三方在核实这些数据的真实性和完整性后对其签名,并为其颁发一个平台证书。此后,该平台在和其他平台通信时可以出示该证书,以表明自己的合法身份。平台在向可信第三方提交平台信息和验证其他平台证书合法性时,都需要借助TPM的硬件支持。在下图所示的实例中,云平台A和B都从证书颁发中心获得自己的平台证书。当B请求与A建立连接并向A出示自己的证书后,A借助TPM验证B124、出示的证书的有效性。图表 43 基于可信第三方的平台认证为了确保云端用户访问云平台的可信性,并确保远程节点具有期望的完全保障条件,基于可信计算平台的多级信任保护方法构造包含下表中各种主要因素的平台证书。数据名称数据类型数据说明Cert_NumChar证书编号Cert_TypeShort证书类型Cert_DistributeTimeByte20颁发时间Cert_LimitTimeByte20有效期限TPM_IDByte8TPM序列号Hardware_CodeByte20平台硬件标识Software_CodeByte20平台软件标识SecureComponent_CodeByte20安全组织组件标125、识CA_SignatureByte128CA签名信息图表 44 主要因素平台证书在图中,TPM和端系统唯一绑定;硬件标识码代表了端系统中各种硬件设备的完整性信息,包括CPU序列号、主板型号、硬盘序列号、内存容量等;软件标识码代表了端系统中包含操作系统版本、补丁、主要服务等软件完整性信息;安全组件标识码是各种安全组件的完整性度量结果,包括防火墙类型、安全补丁、防病毒软件名称等。为了获取这些数据的完整性度量结果,采用Hash函数对系统中的硬件标识信息、软件版本信息或安全组件描述信息进行计算,得出一个代表该系统相关信息完整性的度量值。此处,选择SHA-1算法作为完整性度量函数。签名信息是可信第三方对126、证书内容的数字签名,签名信息的存在确保了证书的合法性和不可篡改性。(2)应用信任保护有了云平台认证,用户就能断言远程协作者在确定的节点和环境中进行工作。但在网络计算等复杂应用中,一个节点可能承载了多个应用系统、担负着多个计算任务。所以,需要确保单个应用系统不同部分间(如客户端和服务器端)的可信。Seshadri等人研究了代码的远程完整性验证方法。该方法从数据完整性的角度解决了授权执行的远程应用的可信性。借鉴他的思想,采用认证应用系统中进程完整性的办法对应用系统进行信任保护。即端系统控制各个应用的进程,只有通过完整性认证并授权执行的进程才能被启动。为此,系统为每个重要的分布式应用定义若干个进行完127、整性证书,证书的主要内容如下表所示。数据名称数据类型数据说明Process_IDByte20进程IDProcess_IntegrityByte20完整性度量值TPM_SignByte20TPM签名信息在图中,进程完整性度量值是采用单向散列函数对进程代码进行计算后得出的值。进程完整性证书中。进程完整性认证可以确保远程协作进程的可信性,一定程度上降低病毒和木马进行插入攻击的风险。(3)资源信任保护多级信任保护方法仍然采用证书机制实现对资源的信任保护。即端系统基于TPM给平台中共享的网络资源颁发完整性证书并签名。其他对等的端系统需要访问该资源时,可以验证该证书的合法性并从证书中获悉资源的完整性度量数128、据。由于采用单向散列函数计算出的资源完整性度量值能够代表该资源的可信性,因此远程用户可以据此决定是否访问该网络资源。考虑单纯采用单向散列函数计算资源的完整性消耗的时间过长,实际实现时根据资源可信要求的不同采取了一些灵活的措施。如一些可信要求不高的资源文件,只针对资源文件的基本属性或按样条规则抽出部分数据进行完整性度量;资源完整性证书的主要数据成员如下表所示。数据名称数据类型数据说明Process_IDByte20资源标识IDProcess_IntegrityByte20资源完整性信息TPM_SignByte20TPM签名信息(4)用户信任保护用户信任保护的需求在现有分布式应用中已经普遍存在,但129、现有基于身份认证的用户信任保护方法仅仅针对用户实体进行认证,无法将用户实体和计算环境以及用户的物理存在性联系起来。基于可信平台的多级信任保护方法在系统平台认证和应用认证的基础上进一步进行用户身份认证,从而能够将系统中的用户锁定到具体的计算平台和具体的应用系统。多级信任保护方法中的用户身份证书的主要数据成员如下表所示。数据名称数据类型数据说明User_IDByte16用户IDApplication_IDByte16应用IDPlatform_IDByte16平台IDApp_SignByte16应用签名TPM_SignByte16TPM签名在上表中,用户ID是系统中用户的惟一标识,可以使用用户编号(130、用户名称)或者用户拥有的智能卡(SKEY)的序列号;所属应用ID是用户所属应用的惟一标识,可以使用应用的完整性度量值来代替(单进程应用可以使用进程的完整性数据代替,多进程应用可以将各个进程完整性度量数据拼接后,计算出新的整个应用的完整性度量数据);平台ID是创建该用户的端系统标识,可以使用和平台绑定的TPM的惟一序列号。2.9.3 基于多级信任保护的访问控制用户管理与权限控制子系统的接口关系如下图所示,各模块间接口关系如下:身份服务模块在用户提交进入系统的申请后向身份管理系统模块提交用户信息和身份申请;身份管理系统模块在确认用户信息后将身份管理指令和身份信息反馈至身份服务模块;认证服务模块对用131、户身份进行验证,确认用户合法性;访问控制模块接收用户的授权请求后,向授权管理系统模块提交用户授权和相关信息;授权管理系统模块根据用户信息(如用户所对应角色、所在安全域等)为用户分配相应的权限或回收相应权限将结果反馈给访问控制模块;访问控制模块得到用户的权限信息后根据信息的内容和用户请求执行需要的具体操作。数据隔离、数据校验(防篡改)、数据加密和数据保护模块提供对存储数据的安全保护。图表 45 云存储安全子系统接口关系图在云平台中,用户有不同的访问权限,针对不同权限的用户可以设定不同等级的操作。同时存储在底层资源池中的资源也同样划分为不同的安全等级,不同等级的资源,访问途径是不相同的。本项目提出132、了基于可信平台的多级信任保护方法,其主要目标是能够认证访问云平台的应用(进程)、资源和用户的可信性,从而能够非常方便地服务于多级访问控制技术,为其提供良好的基础。简单地,可以将系统中的资源按可信性需求程度分为高、中和低3个等级。资源的可信要求越高,对访问该资源的用户的可信性也要求越高。具体流程如下图所示:图表 46 基于多级信任保护的多级访问控制流程为了更好的保护虚拟资源池的数据安全,首先要建立一个可信的资源访问控制,可以利用网闸和访问控制器建立一套监控机制,对访问资源池的请求进行监督,只允许外部连接通过专用的协议进行访问,而对其它非可信的访问一律拒绝,以防止恶意的非法入侵和攻击,包括漏洞攻击133、DDoS攻击和带宽攻击等,建立一个数据安全交换平台,如下图所示。图表 47 数据安全交换平台具体实现方式包括:会话终止:请求端通过网闸与资源池建立连接时,网闸的对外网络接口会通过模拟应用的服务器端,终止网络之间的会话连接,这样可确保在不可信和可信网络之间没有一条激活的会话连接;协议安全检查:对来自连接的数据包进行基于内部RFC的协议分析,也可以对某些协议进行动态分析,检查是否有攻击成分;数据抽取和内部封装:在协议检查同时,将协议分析后的数据包中的数据提取出来,然后将数据和安全协议一起通过特定的格式压缩、数据封装转化成网闸另一端能接受的格式;基于安全策略的决策审查:安全策略决策是运行在访问控制134、器上,由系统管理员定义。它分析外部来的数据,主要是源地址、目的地址以及协议等信息,并且和规则库进行匹配,看是否允许通过或丢弃;编码与解码:对静态的数据块进行编码,编码是相对复杂而且基于随机关键字的。一旦编码,则打乱了数据或命令的原有格式,使数据中可能携带的可执行恶意代码失效,阻止恶意程序执行。一旦数据经过了内容检测且确认是安全的,它就被解码,准备发送到内部网络;会话生成内部服务器模拟应用的客户端,将经检测过的数据发送到内部网络,和内部网络上真正的应用服务器建立一个新的连接,接着生成符合RFC协议的新通信包。同时,通过外部集成入侵检测系统IDS,对网络通信进行安全审计,及时发现和追踪各类非法连接135、行为;通过外部集成的负载均衡设备,为访问用户提供虚拟IP地址,保证物理机器对用户不可见,避免非法用户对真实物理机的直接访问,避免对物理机的可能操作动作。2.9.4 云平台安全审计云平台安全审计任务由分布于网络各处的功能单元协作完成,这些单元还能在更高层次结构上进一步扩展,从而能够适应网络规模的扩大。云安全审计体系结构如下图所示。图表 48 云存储安全审计体系结构它由三部分组成:l 主机代理模块:在受监视系统中作为后台进程运行的审计信息收集模块。主要目的是收集主机上与安全相关的事件信息,并将数据传送给中央管理者。l 局域网监视器代理模块:主要分析局域网通讯流量,根据需要将结果报告给中央管理者。l136、 中央管理者模块:接收包括来自局域网监视器和主机代理的数据和报告,控制整个系统的通信信息,对接收到的数据进行分析。在云安全审计体系结构中,代理截获审计收集系统生成的审计记录,应用过滤器去掉与安全无关的记录,然后将这些记录转化成一种标准格式以实现互操作。然后,代理中的分析模块分析记录,并与该用户的历史映像相比较,当检测出异常时,向中央管理者报警。局域网监视器代理审计主机与主机之间的连接以及使用的服务和通讯量的大小,以查找出显著的事件,如网络负载的突然改变、安全相关服务的使用等。对于安全审计系统来说,数据源可以分为三类:基于主机、基于网络和其他途径,下面分别对每类来源进行论述。(1)基于主机的数据137、源基于主机(包括虚拟机)的数据有以下四类:操作系统日志、系统日志、应用日志和基于目标的信息。(2)基于目标的数据源评估出系统中关键的或是有特殊价值的对象,针对每一个对象制定信息收集和监视机制,该对象即为审计的目标;对于审计目标的每一次状态转变,与系统的安全策略进行比较,所出现的任何异常都进行记录或响应。最常见的基于目标的审计技术是完整性校验,其审计对象多为文件。采用消息摘要算法,计算需要保护的系统对象(如关键文件)的校验值,并存储在安全区域。周期性地对目标进行检查,可以发现目标是否被改变,从而提供一定级别的保护。(3)基于网络的数据源网络数据源的基本原理是:当网络数据流在网段中传播时,采用特殊138、的数据提取技术,收取网络中传输的数据,作为安全审计系统的数据源。在计算机网络系统中,局域网普遍采用的是基于广播机制的IEEE 802.3协议,即以太网(Ethernet)协议。该协议保证传输的数据包能被同一冲突域内的所有主机接收,基于网络的安全审计正是利用了以太网的这一特性。安全审计方法描述:为系统描述方便,用T表示安全服务器,与外部网络隔离,它的通信安全性可由各种方法实现,如抵赖的令牌、VPN安全信道、SSL安全信道等,如内部网络中的安全服务器、安全的电子证据收集设备或安全的中央服务器等;用U表示不安全的系统,容易受到攻击却记录着日志的计算机系统,它在物理位置上并不安全,也就是说它是接入网络139、的,也没有有效的防御措施来确保不被攻击者控制,如个人PC、防火墙、入侵检测系统或其它应用系统等;用V表示某些授权用户使用的计算机,安全性介于U和T之间,它能被信任查看某些日志记录,但不能修改记录,也就是说并不支持所有的操作,如内部工作站等。本系统创建新的安全日志文件时,由U随机产生初始认证密钥,并由安全信道发送到T保存。U产生原始日志信息,通过多种加密的标准工具对原始日志的每条记录进行保护后写入安全审计日志文件中,并定期将安全审计日志文件备份到T中保存。安全审计时,T发送认证码给V,指定V查看或审计U和T中的日志文件的部分日志记录,也可由T直接对U中的日志文件进行安全审计,出现可疑信息时与T中140、的备份日志数据进行比较,发现确实不一致的则可初步判断U可能遭受攻击。安全日志审计系统结构如下图所示。图表 49 安全日志审计系统结构图U开始创建日志文件时与安全的认证系统T共享一个密钥,用这个密钥创建日志文件。对于分布式安全审计系统的具体实现来说,应用Agent技术是一个较好的解决方案,该技术已经在一些实际的安全审计系统中得到了应用。Agent最早起源于人工智能,现广泛地应用于人工智能、网络管理、软件工程等领域,。我们将Agent(代理)定义为“一个自治的实体,它能够感知环境,并且对外界的信息做出判断和推理,来控制自己的决策和行动,以便完成一定的任务”。基于Agent的安全审计系统是将Agen141、t分布于系统的关键点上,包括提供各项服务的服务器、重要的工作站、内部网关和防火墙上,完成大部分安全审计和响应任务。由于代理本身具有自治性,可以针对特定的应用环境编程和配置,使得代理占用系统资源最小;在将代理放入具体复杂环境前可以对它进行独立测试;同时通过Agent间的有限交互(包括数据和控制信息),可以获得更复杂的信息,有利于解决网络中的协作入侵活动。安全审计中Agent通过探查所在的系统的日志文件,捕获网络数据包或其他的信息源获取数据。此外,将审计任务分配到多台计算机上有利于减少监控计算机的负荷,而且能提高系统的处理速度和效率,提高系统的实时性;最后,Agent可以自动升级,而且对系统的其他142、部分保持透明。2.9.5 云计算综合安全网关我司参与研制的云计算综合安全网关(Cloud-USG)是满足云计算环境网络安全交付需求的综合安全网关, Cloud-USG采用高性能的硬件架构和一体化的软件设计(合理的Single Pass & Parallel Processing SP3软件体系及数据平面与控制平面分离的硬件架构),集防火墙、VPN(IPSec VPN/SSL VPN)、抗拒绝服务攻击(Anti-DoS/DDoS)、入侵防御(IPS)、Web应用防火墙(WAF)、上网行为管理、流量管理等功能,以及云数据中心边界安全防护技术于一身;可选的支持(地端的)防病毒、内容审计、反垃圾邮件等143、安全技术,同时全面支持QoS、高可用性(HA)、日志审计等功能,支持云计算环境下,不同虚拟系统的不同安全策略和防护手段,为云计算数据中心提供了全面、实时的安全防护和安全高效的云计算性能交付。Cloud-USG云计算综合安全交付网关采用了一体化的设计方案,在一个产品中协调统一地实现了接入安全需要考虑的方方面面,采用Cloud-USG云计算综合安全交付网关,可以从整体上解决接入安全的问题。用户可不必考虑产品部署、兼容性等困惑,也不再因为多个产品难于维护管理而苦恼,Cloud-USG云计算综合安全交付网关是低成本、高效率、易管理的理想解决方案。云计算综合安全网关(Cloud-USG)由三个部分组成:144、(1)Cloud-USG-Appliance,(安全网关服务器设备)Cloud-USG-Appliance设备部署在云计算数据中心,融合多种安全能力,针对恶意攻击、非法活动和网络资源滥用等威胁,实现精确防控的高可靠、高性能、易管理的网关安全设备。(2)Cloud-USG-Console,(安全网关管理控制台)部署在云计算数据中心内部管理区,对Cloud-USG-Appliance设备进行集中管理。对Cloud-USG-Appliance 设备集中管理、统一监控和升级中心,通过它可以集中配置、监控和管理所管辖的多台Cloud-USG-Appliance设备;按照一定的规则组织成层次结构,方便管理145、员对于整网Cloud-USG-Appliance设备的监控维护工作。(3)Cloud-USG-SDC(安全数据管理中心)部署在云数据中心或其他数据中心,集中存储多个安全网关的安全数据信息,并集中的进行分析处理。收集、存储多台Cloud-USG的安全数据信息;集中分析、审计和处理安全数据信息,形成相关决策建议或报告。Cloud-USG采用了以下三项独特的识别技术,可实现对应用程序、用户和内容的可视化和控制:App-ID、User-ID 和 Content-ID。系统采用统一安全策略管理,所有功能采用一套安全策略控制,只需要定制一个策略模板就可以实现全部的安全功能,这就是策略单通功能(One Po146、licy);同时,所有安全功能按照并行处理进行设计,每一个数据包只需要处理一次即可,大大节省了处理时间,确保网络性能的达成,这就是数据包单通功能(Single Pass)。Cloud-USG的三个组成部分,分别部署在不同的位置:Cloud-USG-Appliance设备部署在云计算数据中心,针对恶意攻击、非法活动和网络资源滥用等威胁,实现精确防控;Cloud-USG-Console部署在云计算数据中心内部管理区,对Cloud-USG-Appliance设备进行集中管理;Cloud-USG-SDC部署在云数据中心或其他数据中心,集中存储多个安全网关的安全数据信息,并集中的进行分析处理。Cloud147、-USG部署方式支持以下三种模式:支持路由、透明、混合等多种模式;支持分布式多级部署;支持http等透明代理。图表 50 Cloud-USG三种部署模式Cloud-USG针对不同虚拟域,可根据实际防护内容,采用不同防护手段;能够采用关联分析技术快速分析恶意URL、病毒、木马等不同安全风险,具备即时、立体的安全防御能力。Cloud-USG具有下列主要功能:(1)安全访问控制Cloud-USG支持云计算所用到的多种虚拟环境,包括应用于硬件抽象层、操作系统层、应用程序编程接口层和编程语言层等层次的高级虚拟机,以及应用虚拟化和存储虚拟化技术等;采用智能状态检测技术,不仅对数据包进行检测,还对控制通信的148、基本状态信息(例如,通信信息、通信状态、应用状态和信息操作性)进行检测;提供基于源/目的IP地址、协议/端口、时间、用户、VLAN、VPN、安全区的精细粒度的安全访问控制。(2)远程安全接入云Cloud-USG支持标准IPSEC VPN和SSL VPN;支持基于标准IKE协商的VPN通信隧道;支持多种IKE认证方式,如预共享密钥、数字证书;支持IKE扩展认证,如Radius认证等;支持3DES、DES、AES等算法;支持标准MD5、SHA-1认证算法;支持隧道的NAT穿越;支持隧道内的QoS。(3)抗拒绝服务能力Cloud-USG具备对SYN Flood、ICMP Flood、UDP Floo149、d等流量型DDoS攻击的防御能力;具备对CC攻击等应用层DDoS攻击的防御能力。(4)入侵检测/防护能力Cloud-USG除针对各种传统网络攻击,例如远程扫描、暴力破解、缓存区溢出、蠕虫病毒、木马后门等进行入侵检测和防护以外,重点针对虚拟化技术本身引入的hypervisor和其它管理模块所带来新攻击方式进行入侵检测;攻击规则不少于1000条,每条规则具备详细的攻击规则描述及解决方案,按照攻击手段、严重程度分类,还可以自定义规则。(5)WEB安全Cloud-USG系统内置先进、可靠的Web可信度判断机制,能够有效抵御Web安全威胁渗入;URL分类库:提供超过1000万条的URL分类库,提供多种精150、细分类(网络“钓鱼”、论坛聊天等),支持独立配置界面,实时告警、阻断并记录。(5)网关设备自身管理支持安全事件、网络流量、网络状态、设备状态日志查询;提供日志存储、事件检索、统计报表功能,支持用户自定义报表模版,同时提供定时自动发送报表功能,支持将生成的报表以html、word、uof等通用格式输出。综合业务应用功能3 综合业务应用功能接口及效果3.1 实时监控3.1.1 实时车辆监控画面:功能描述: 给授权用户提供(授权范围内)任意卡口点的实时图片数据 可同时查看4个不同卡口或者某1个卡口的实时监控数据 实时图片数据都以触发式显示,某个卡口有多幅大图时只显示首幅大图 关于实时监控的监控范围的151、指定,需要由部门-点位-方向-监控设备这样的选择方式 实时监控单页面,页面选择多个监控设备,要求能够多监控设备同时监控 实时监控四页面,每个画面都可以选择监控设备。3.1.2 报警车辆实时监控画面:功能描述: 前端采集的实时监控数据与布控信息比对,车牌一致则发出声光警报; 在报警界面上触发式显示相关报警信息提示处理,同时保存报警信息; 多条报警同时发生,提示首条报警,其它报警给出提示等待点击查看处理; 报警车辆实时监控页面,需要指定范围方案和报警类型(多选)来进行监控,并且根据登录人员ID能够取得上回保存的监控范围和报警类型。3.2 数据查询3.2.1 车辆信息查询画面:功能描述:查询条件:点152、位、时间段、行驶方向、车道、号牌号码、号牌颜色、车辆速度、处理标记。 显示查询结果一览; 查询结果可以导出到execl文件以备份; 提供数据打印3.2.2 报警车辆查询画面:功能描述:查询条件:警情类型、区域、号牌经过时间、处理标记。 显示查询结果一览; 显示查询明细; 查询结果可以导出到execl文件以备份3.3 车辆轨迹查询3.3.1 车辆查轨迹画面:功能描述:查询条件:连续时段、多个卡口。 显示指定时间段内指定的多个卡口都通过的车辆信息;3.4 事件检测报警3.4.1 套牌车辆自动报警功能描述: 报警条件:针对到达的车辆,如果在两分钟时间间隔内,在其他点位有相同号牌通行,则认定为套牌车,153、并报警提示。 检测触发方式:在设定的监控点位、方向上,每来一辆车就触发检测。3.4.2 同行车辆分析报警功能描述: 同行车定义:多辆车,在某个时间段内,都通过多个相同的卡口,且通过每个卡口时,车辆通行时间间隔都小于或等于设定的值,视为同行车。 报警条件:针对到达的车辆,在倒溯时间段内(默认值一天),查找其通过的所有点位上,与在它通行时间前后间隔1分钟的车辆记录;在这些车辆通行记录中,如果有其他车辆在3个或以上点位上都有记录,就认为有同行嫌疑,并报警提示。 检测触发方式:在设定的监控点位、方向上,每来一辆车就触发检测。3.5 流量统计和分析画面(没有模拟数据):功能描述:查询条件:车道、方向、车154、辆类别(大车、小车)和时段。 根据选择的查询条件,对流量进行统计分析,并以excel形式输出。详细设备配置清单4 详细设备配置清单总容量:512T服务器是存储与计算复用。序号名称规格单位数量单价小计1交换机千兆48口台160000600002云存储集成套件(硬件)机架、KVM、监控终端等套350,000150,0003云计算/存储元数据服务器8核CPU32G内存2T硬盘8台250,000100,0005云计算/存储节点服务器8核CPU16G内存2T硬盘8台3242,000134,40006应用服务器4核CPU16G 内存2T硬盘4台132,00032,0007云计算软件系统套1600,000云存储软件系统套18()软硬件总价2, 286,0009()施工与集成费用200,00010()系统备件成本费用200,00011()维护与服务费用200,00012()管理费用、税收160,00013总计=+ + + 3,046,00014折扣后实际收取费用2,800,000
会员尊享权益 会员尊享权益 会员尊享权益
500万份文档
500万份文档 免费下载
10万资源包
10万资源包 一键下载
4万份资料
4万份资料 打包下载
24小时客服
24小时客服 会员专属
开通 VIP
升级会员
  • 周热门排行

  • 月热门排行

  • 季热门排行

  1. 2022城区自来水提质改造智慧水务建设项目设计方案(199页).pdf
  2. 小区人员配置档案建立保洁绿化物业管理服务投标方案(593页).docx
  3. 陕西化学工业公司招聘管理与职业发展管理手册30页.doc
  4. 动火作业安全告知卡(1页).docx
  5. 高处作业安全告知卡(1页).docx
  6. 广场工程建设项目施工招标评标报告表格(24页).pdf
  7. 建筑工程外脚手架专项施工方案(悬挑式脚手架、落地式脚手架)(25页).doc
  8. 2020柏向堂房地产公司材料标准化手册3.0(143页).pdf
  9. 2021柏向堂房地产公司材料标准化手册4.0(108页).pdf
  10. 土建、装饰、维修改造等零星工程施工组织设计方案(187页).doc
  11. 深圳装饰公司施工图纸会审及设计交底管理制度【13页】.doc
  12. 工程变形测量之基坑监测培训课件(155页).ppt
  13. 房地产开发企业拿地操作指引方案.pdf
  14. 新规下的户型增值秘籍.ppt(22页)
  15. 房地产开发贷款实操指南(5页).pdf
  16. 鄂尔多斯空港物流园区总体规划方案(2017-2030)环境影响评价报告书(23页).doc
  17. 规划兰园西路道路工程环境方案环境影响评价报告书(89页).pdf
  18. 屋面圆弧形穹顶结构高支模施工方案(40米)(47页).doc
  19. 埋石混凝土挡土墙施工方案(23页).doc
  20. 重庆市五小水利工程建设规划报告(64页).doc
  21. 厂区至矿区管网蒸汽管道系统扩容改造工程施工组织设计方案(105页).doc
  22. 超高纯氦气厂建设项目办公楼、变电站、水泵房及消防水池、门卫、厂房、仓库、配套工程施工组织设计方案(140页).doc
  1. 房地产交易环节契税减征申报表(首套填写)(2页).doc
  2. 2024大楼室内精装修工程专业分包投标文件(393页).docx
  3. 苏州水秀天地商业项目购物中心100%室内设计方案(158页).pptx
  4. 2022城区自来水提质改造智慧水务建设项目设计方案(199页).pdf
  5. 小区人员配置档案建立保洁绿化物业管理服务投标方案(593页).docx
  6. 室内移动式操作平台工程施工方案(19页).doc
  7. 地铁6号线区间盾构下穿管线专项施工方案(30页).doc
  8. 矿山治理工程施工组织设计方案(240页).docx
  9. 老旧小区改造工程施工方案及技术措施(364页).doc
  10. 北京科技园公寓建设项目整体报告方案.ppt
  11. 川主寺城镇风貌整治景观规划设计方案(60页).pdf
  12. 建筑工程三级安全教育内容(24页).doc
  13. 新疆风电十三间房二期工程49.5mw风电项目可行性研究报告(附表)(239页).pdf
  14. 土建、装饰、维修改造等零星工程施工组织设计方案(187页).doc
  15. 四川凉山攀西灵山国际度假区小镇活力中心商业业态规划方案建议书(33页).pdf
  16. 埋石混凝土挡土墙施工方案(23页).doc
  17. 地下停车场环氧地坪漆施工方案(45页).doc
  18. 深圳装饰公司施工图纸会审及设计交底管理制度【13页】.doc
  19. 地铁深基坑及钢筋笼吊装安全专项施工方案【98页】.doc
  20. 住宅定价策略及价格表制定培训课件.ppt
  21. 西安名京九合院商业项目招商手册(28页).pdf
  22. 2010-2030年湖北咸宁市城市总体规划(32页).doc
  1. 建筑工程夜间施工专项施工方案(18页).doc
  2. 赣州无动力亲子乐园景观设计方案(111页).pdf
  3. 2016泰安乡村旅游规划建设示范案例(165页).pdf
  4. 房地产交易环节契税减征申报表(首套填写)(2页).doc
  5. 龙山县里耶文化生态景区里耶古城片区旅游修建性详细规划2015奇创.pdf
  6. 连云港市土地利用总体规划2006-2020年调整方案文本图集(78页).pdf
  7. 850亩项目塑钢门窗工程施工组织设计方案(34页).doc
  8. 老旧小区改造工程施工方案及技术措施(364页).doc
  9. 城市更新项目地价公式测算表.xlsx
  10. 房地产项目规划前期投资收益测算模板带公式.xls
  11. 存储器基地项目及配套设施建筑工程临时用水施工方案(40页).docx
  12. 铁路客运枢纽项目站前框构中桥工程路基注浆加固专项施工方案(19页).doc
  13. 室内移动式操作平台工程施工方案(19页).doc
  14. 装配式结构工业厂房基础、主体结构、门窗及装饰工程施工方案(83页).doc
  15. 地铁6号线区间盾构下穿管线专项施工方案(30页).doc
  16. 施工工程安全教育培训技术交底(13页).doc
  17. 老旧小区改造施工方案及技术措施(365页).doc
  18. 新建贵广铁路线下工程沉降变形观测及评估监理实施细则(126页).doc
  19. 消防火灾应急疏散演练预案(12页).doc
  20. 矿山治理工程施工组织设计方案(240页).docx
  21. 崖城站悬臂式挡墙施工方案(92页).doc
  22. 北京科技园公寓建设项目整体报告方案.ppt