【转载】FusionSphere架构详解
FusionSphere底层使用Xen架构:
1.单台物理机上建立hypervisor系统。
2.将所有单个hypervisor系统整合起来管理使用。
安装CNA节点,所有的物理服务器都会先成为CNA节点(Computing Node Agent),安装CNA节点的过程实际上就是安装FusionSphere底层操作系统的过程,裸物理服务器安装了FusionSphere底层操作系统后就成为了CNA,并成为了UVP平台的一个成员(Universal Virtualization Platform通用虚拟化平台),该操作系统我们成为Cloud OS。
在多个物理服务器安装了Cloud OS后,我们还需要将所有已经虚拟化的资源用起来,这时候就需要用到VRM(Virtual Resource Management)组件,VRM的功能体现在对FusionSphere hypervisor的统一管理上,简单的说就是把安装了Cloud OS的各个独立的CNA节点统一管理起来,并对各个节点中的计算资源、网络资源、存储资源三大资源进行统一管理和分配,具体表现在虚拟机的创建和管理,分布式虚拟交换机的创建和管理,存储资源的应用,datastore的创建和管理等功能。
FusionCompute就是VRM功能的外化管理界面,同时为更好的使用FusionCompute所提供的的虚拟化资源管理功能,有了FusionManager这个组件,FusionManager是一个在FusionCompute上层的hypervisor管理软件,除了可以管理FusionCompute还可以管理vSphere,Hyper-v等其他厂商和平台的hypervisor,通过不同平台所提供的的开放接口调用平台的基本功能,在这些功能上作进一步的资源调度管理就是FusionManager的作用了。
在FusionSphere这个系统中,FusionCompute、FusionManager等组件都是以虚拟机形式存在于hypervisor之上,安装了FusionCompute和FusionManager虚拟机的节点作为MCNA,也就是管理节点,拥有管理节点的集群为管理集群。我们在安装VRM和FusionCompute等组件时都是用华为提供的虚拟机模板直接导入的。
XEN虚拟化架构中的几个重要概念,XEN hypervisor,Domain 0和Domain U
Xen hypervisor是计算机硬件的软件抽象层,它直接运行与硬件之上,并将其计算能力通过抽象接口(虚拟机)提供给运行于其上的任何操作系统。它的首要任务是在各虚拟机之间进行CPU资源调度,内存资源分配及中断请求管理,并负责控制共享处理环境的各虚拟机的执行。但它并不负责实现计算机系统应该具备的网络、外部存储设备、显示设备或其他通用I/O功能等。
Domain0
Xen虚拟化环境中用Domain来描述各虚拟机,每个域都有其id等属性,因此各虚拟机常表示为domain0、domain1等。DOM0是运行Xen hypervisor上的一个独特的虚拟机,其操作系统为经过特殊修改的Linux内核,其能够直接访问硬件I/O资源及与其他虚拟机进行交互。其他的域没有直接访问硬件I/O资源的权限,并且彼此间是高度隔离的。因此,DOM0又称为特权域,其他域则统称为DomU,需要注意的是,DomU通过DOM0来实现I/O功能,因此,在运行DomU之前必须先启动Dom0。
DomainU
DomU是非特权域,它们均无权限直接访问硬件资源,Xen支持两种不同类型的虚拟模式:PV(paravirtualization)和HVM(Hardware-assisted or Full Virtualization),它们可以同时运行于同一个Xen Hypervisor上,并且甚至可以在HVM环境使用PV技术。
Xen半虚拟化(Xen Paravirtualization)
半虚拟化(Paravirtualization,简称为PV)是由Xen开发的高效且轻量级的虚拟化技术,现已经为众多虚拟化平台所借用。PV不要求CPU支持虚拟化扩展,但依赖于Xen-PV-enabled内核和PV驱动程序,因此,客户机guest明确知道自己运行于hypervisor之上,它不需要仿真硬件,从而能高效运行。
PV客户机中包含两类特殊驱动:网络前端驱动(Network Frontend Driver)和块设备前端驱动(Block Frontend Driver),分别用以与Dom0中对应的后端驱动通信以完成网络访问和块设备访问。
Xen完全虚拟化(Xen Full Virtualization)
完全虚拟化也成为硬件辅助的虚拟化,它利用CPU的特殊扩展功能实现客户机的虚拟。HVM依赖于Intel VT或AMD-V硬件扩展,同时,Xen还使用Qemu来为HVM模拟PC硬件,如BIOS、IDE磁盘控制器、VGA图形适配、USB控制器及网络适配器等,而CPU的虚拟化扩展技术还能够大大提升这些仿真硬件的性能。HVM不要求操作系统做出任何修改即可正常运行,故此,Windows等操作系统均可运行于HVM环境。但需要注意的是,HVM虚拟机需要仿真多种硬件,因此其性能不如PV虚拟机。
原文地址:http://blog.sina.com.cn/s/blog_c079d59e0102wjs1.html
【转载】FusionSphere架构详解的更多相关文章
- [转载]领域驱动设计(Domain Driven Design)参考架构详解
摘要 本文将介绍领域驱动设计(Domain Driven Design)的官方参考架构,该架构分成了Interfaces.Applications和Domain三层以及包含各类基础设施的Infrast ...
- 领域驱动设计(Domain Driven Design)参考架构详解
摘要 本文将介绍领域驱动设计(Domain Driven Design)的官方参考架构,该架构分成了Interfaces.Applications和Domain三层以及包含各类基础设施的Infrast ...
- NopCommerce源码架构详解--初识高性能的开源商城系统cms
很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从中学习很多企业系统.软件开发的规范和一些新的技术.技巧,可以快速地提高我们 ...
- WeChatAPI 开源系统架构详解
WeChatAPI 开源系统架构详解 如果使用WeChatAPI,它扮演着什么样的角色? 从图中我们可以看到主要分为3个部分: 1.业务系统 2.WeChatAPI: WeChatWebAPI,主要是 ...
- hdfs文件系统架构详解
hdfs文件系统架构详解 官方hdfs分布式介绍 NameNode *Namenode负责文件系统的namespace以及客户端文件访问 *NameNode负责文件元数据操作,DataNode负责文件 ...
- NopCommerce源码架构详解
NopCommerce源码架构详解--初识高性能的开源商城系统cms 很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从 ...
- RESTful 架构详解
RESTful 架构详解 分类 编程技术 1. 什么是REST REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移. 它首次 ...
- Nop--NopCommerce源码架构详解专题目录
最近在研究外国优秀的ASP.NET mvc电子商务网站系统NopCommerce源码架构.这个系统无论是代码组织结构.思想及分层都值得我们学习.对于没有一定开发经验的人要完全搞懂这个源码还是有一定的难 ...
- Zookeeper系列二:分布式架构详解、分布式技术详解、分布式事务
一.分布式架构详解 1.分布式发展历程 1.1 单点集中式 特点:App.DB.FileServer都部署在一台机器上.并且访问请求量较少 1.2 应用服务和数据服务拆分 特点:App.DB.Fi ...
随机推荐
- iOS开发:父子控制器简介:
#import "ViewController.h" #import "ScoietyViewController.h" #import "HotVi ...
- Lucene学习总结之四:Lucene索引过程分析 2014-06-25 14:18 884人阅读 评论(0) 收藏
对于Lucene的索引过程,除了将词(Term)写入倒排表并最终写入Lucene的索引文件外,还包括分词(Analyzer)和合并段(merge segments)的过程,本次不包括这两部分,将在以后 ...
- session了解及超时处理
Session了解 Session是什么 引言 在web开发中,session是个非常重要的概念.在许多动态网站的开发者看来,session就是一个变量,而且其表现像个黑洞,他只需要将东西在合 ...
- ios开发之多线程---GCD
一:基本概念 1:进程:正在运行的程序为进程. 2:线程:每个进程要想执行任务必须得有线程,进程中任务的执行都是在线程中. 3:线程的串行:一条线程里任务的执行都是串行的,假如有一个进程开辟了一条线程 ...
- Django之富文本编辑器kindeditor 及上传
1.什么是富文本编辑器 百度百科(https://baike.baidu.com/item/%E5%AF%8C%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91%E5%99%A8 ...
- [Docker] Container & image (docker run)
image: stopped container Run a container: docker run -d --name web -p : nigelpoulton/pluralsight-doc ...
- 【codeforces 765A】Neverending competitions
[题目链接]:http://codeforces.com/contest/765/problem/A [题意] 给你一个人的n个行程 行程都是从家到某个地方或从某个地方到家; 且是无序的,且如果到了非 ...
- CocoaPods详解之(一)----使用篇
CocoaPods详解之----使用篇 作者:wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/18737437 一.什么是Coc ...
- Ruby开发环境
Windows上Ruby开发环境的配置 最近公司项目上有需要,需要开发一个puppet的自动化工具,这个工具需要操作存储设备上的各种资源,而鉴于puppet不是善于完成这个任务的首选语言,于是我们 ...
- MinGW安装和使用(不是mingw-w32)
MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++.ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便.MinGW提 ...