深入解析大数据虚拟化的架构(下)- 系统架构

继《零起点部署大数据虚拟化》系列教程之后,本着“知其然,亦知其所以然”的原则,本系列走进大数据虚拟化的内部,分上下两篇博文,帮助读者了解vSphere Big Data Extensions(以下简称BDE)的部署架构和系统架构,理解部署原理和内部构成,以及各自的作用。希望对您有所帮助,也欢迎您留言评价。

上: Serengeti虚拟化应用

下: Serengeti管理服务器的系统架构(即本文)

Serengeti管理服务器的系统架构

Serengeti管理服务器包括几个重要的模块:Serengeti Web Service,Ironfan Service,Chef Server,Package Repository和vHadoop Runtime Manager。这里会简单介绍各个模块的功能。

Serengeti管理服务器的系统架构图

Serengeti Web Service

Serengeti Web Service是Serengeti的工作流控制中心,提供对外的RESTAPI,外部客户端可以通过REST API访问所有Serengeti提供的功能。

这是一个运行在Tomcat之上的Web Service,大量使用了SpringFramework提供的各种功能,包括使用Spring Batch进行Workflow的控制,Spring Security保证用户安全性,Spring MVC提供REST API,以及集成Hibernate进行内部数据的管理。

Web Service同时集成了vCenter Extension的注册和管理。在Serengeti部署完成之后,注册成为vCenter的扩展服务器。负责和VC的通讯,VC 会话的管理,虚拟机的创建,配置和管理。

在Web Service中,一个重要的功能就是虚拟机的分布计算(Virtual Machine Placement)。

在虚拟化环境之下,用户提出的请求通常都是创建多少个node,可用的资源有哪些,比如那些主机(host),那些存储(datastore)可以使用。那么在这些要求之下,我们面对的一个问题抽象来说,就是在n个host之上,创建m个VM,每个VM的硬盘,网络有一定的要求。

在这个命题之下,Serengeti为了满足hadoop对资源使用的特殊要求,开发了一些通用的分布算法。比如典型的应用是在可用host之上平均分布。这样就保证Hadoop的节点不会分布在同一台host之上,为数据的可靠性提供了基础。

为了满足数据和计算能力的分离,Serengeti还提供了节点关联的策略。具体来说就是在每台host之上,同时放置m个节点,其中k个是存放数据的节点,j个是进行计算的节点。并且满足k+j=m的条件。

之后的文章中会详细介绍Serengeti支持的VM placement算法,以及适合的应用场景,在此不做详细讨论。

Chef Service

Chef是当前流行的分布式软件配置管理工具,在数据中心管理运维中广泛使用。例如Facebook和Amazon都是Chef的用户。Serengeti在虚拟机创建完成之后,使用Chef的脚本进行hadoop软件的安装和管理。

Serengeti包含一系列Chef脚本,支持多个hadoop发行版的安装和配置,包括Hadoop1.x,Hadoop2.x,和HBase。这些脚本都预先安装在Chef Server之上。

Chef Client组件预先安装在Serengeti创建的虚拟机之中。当虚拟机创建完成之后,Chef Client将会从Chef Server下载并运行相应的脚本,真正完成Hadoop的安装和配置工作。

时间: 2024-08-04 07:36:10

深入解析大数据虚拟化的架构(下)- 系统架构的相关文章

深入解析大数据虚拟化的架构(上)- 部署架构

继<零起点部署大数据虚拟化>系列教程之后,本着"知其然,亦知其所以然"的原则,本系列走进大数据虚拟化的内部,分上下两篇博文,帮助读者了解vSphere Big Data Extensions(以下简称BDE)的部署架构和系统架构,理解部署原理和内部构成,以及各自的作用.希望对您有所帮助,也欢迎您留言评价. 上: Serengeti虚拟化应用(即本文) 下: Serengeti管理服务器的系统架构 Serengeti虚拟化应用 vSphere Big Data Extensi

大数据虚拟化零起点(二) 基础运维第一步 环境规划和准备

大数据的虚拟化之旅以POC开启最为合适.POC是Proofof Concept的简称,意思是概念验证,也就是通常意义上指的测试,用以了解产品的特性是否符合预期的需求. 那么,如何从零起点部署大数据虚拟化的POC环境呢? 我认为,工欲善其事,必先利其器. 这里的"器",就是虚拟化环境.虚拟化环境是开始搭建大数据基础架构的一个前提,但是,我相信各位读者的"器"目前可能各不相同.所以,为了保证所有读者都能顺利完成部署,我会从一开始的搭建虚拟化环境开始,从源头帮助大家了解搭

大数据,数据分析,机器学习,架构等相关系统名称名词解释

常用的一些软件或其他 1.日志(日志收集,日志处理) 风来了.fox 1.1 Logstash Logstash是一款轻量级的日志搜集处理框架,可以方便的把分散的.多样化的日志搜集起来,并进行自定义的处理,然后传输到指定的位置,比如某个服务器或者文件. 1.2 Filebeat Filebeat是一个开源的文件收集器,主要用于获取日志文件,并把它们发送到logstash或elasticsearch 1.3 Scribe Scribe是Facebook开源的日志收集系统,在Facebook内部已经

大数据虚拟化零起点(四) 部署vCenter Server Virtual Appliance 5.1

在大数据虚拟化零起点基础运维第二步中,我们完成了vSphere5.1的安装.接下来,我们可以开始第三步--部署vCenterServer Virtual Appliance 5.1. 在开始部署之前,我想先介绍一下什么是vCenterServer Virtual Appliance(VSVA),以让大家了解部署它的用途和价值. 顾名思义,VSVA本质上是vCenterServer,但其部署模式变成了vApp形式.在这种形式下,VSVA保留了vCenterServer的特性,包括可以管理多个ESX

大数据不只是数据大 全面解析大数据

在写这篇文章之前,我发现身边很多IT人对于这些热门的新技术.新趋势往往趋之若鹜却又很难说的透彻,如果你问他大数据和你有什么关系?估计很少能说出一二三来.究其原因,一是因为大家对新技术有着相同的原始渴求,至少知其然在聊天时不会显得很"土鳖";二是在工作和生活环境中真正能参与实践大数据的案例实在太少了,所以大家没有必要花时间去知其所以然. 我希望有些不一样,所以对该如何去认识大数据进行了一番思索,包括查阅了资料,翻阅了最新的专业书籍,但我并不想把那些零散的资料碎片或不同理解论述简单规整并堆

大数据虚拟化零起点(七) 安装Big Data Extensions Plugin

今天我们就将实现大数据虚拟化POC环境的零起点部署.在下面的文章内容中,我将通过6个步骤,带领大家完成BigData Extensions Plugin的安装.具体步骤如下: 1.在浏览器打开Big Data Extensions的plugin注册界面: 输入URL http://<serengeti-mgmt-server's-ip-address:8080/register-plugin,选择Install.如下图所示: 2.输入vCenter Server的IP地址(注意不要在IP前加ht

大数据虚拟化零起点(六) 使用CLI创建Apache Hadoop集群

在大数据虚拟化基础运维第五步创建Hadoop集群开始之前,我想先说明,这里我不通过BDE提供的可视化界面来创建集群.原因是,我们之前部署好的vApp包括BDE管理服务器,是通过虚机的方式在运行.此时,它还没能跟vSphereWeb Client进行绑定,从而暂时无法交付可视化管理界面.在之后的博客文章里,我将介绍如何交付可视化界面. 但大家不要担心,BDE管理服务器自身已经提供了完备的对外服务接口(RestAPI),用户只需通过命令行(CLI)的方法操控它,就能开始对Hadoop集群进行快速部署

大数据虚拟化零起点(三) 基础运维第二步 安装vSphere 5.1

在大数据虚拟化的环境规划和准备完成之后,我们便可以开始安装vSphere5.1了.安装vSphere5.1并不复杂,却是大数据虚拟化基础运维的重要一步.在下面的文章里,我将把安装vSphere5.1归纳为12个步骤,带领大家一步一步完成安装. 1.登录Dell PowerEdge服务器.方法是通过http://<remote_host_ip>.你需要从网络管理员手中获得这台服务器所在网络的IP地址,以及管理员账号和密码,以用来远程登陆这台服务器的管理界面.如下图所示: 这里需要提醒以下两点:

大数据未来是App 并非基础架构

[编者按]本文作者Justin LaFayette,为我们解读他眼中大数据的未来. 在大数据被各种媒体热炒的同时,真相被蒙蔽了:App才是大数据的未来.过去http://www.aliyun.com/zixun/aggregation/13748.html">基础架构和平台一直是被捧吹的对象,但它们只提供了承载大数据的环境,无法利用大数据创造长期价值,所以它们并不是大数据的未来核心. 在市场上它需要公司提供大数据App,能够洞察特定市场版块或业务流程.及时反馈数据.到达尽可能多的调差对象.