文档章节

【翻译】Nova系统架构

zhouxingxing
 zhouxingxing
发布于 2012/11/13 15:11
字数 476
阅读 2K
收藏 16

「深度学习福利」大神带你进阶工程师,立即查看>>>

最近之前一直在看swift,现在想研究一下nova,毕竟在云计算领域,不懂虚拟化,那就搞笑了。。

翻译自openstack官方文档:http://docs.openstack.org/developer/nova/devref/architecture.html   

Nova系统架构

     Nova建立在无共享,基于消息的架构,所有的主要的nova组件可以运行在多台服务器上。这意味着大部分的组件之间的通信,需要经由消息队列。为了避免由于每个组件等待一个响应引起的阻塞,,我们使用延时对象,当收到一个响应就触发一个回调。

    Nova使用基于SQL的中央数据库,系统中所有的组件共享这个数据集,数据的数量和深度非常适合使用sql数据库。对于小型的部署这看起来是最佳的解决方案。对于大规模的部署,特别是涉及到安全性。nova将倾向于使用多重数据存储通过许多种聚合系统。

    组件

    下面这张图将解释不同组件之间的关系

/- ( LDAP )
                [ Auth Manager ] ---
                        |           \- ( DB )
                        |
                        |
                        |
[ Web Dashboard ] -> [ api ] -- < AMQP > ------ [ network ] - ( Flat/Vlan )
                        |                \
                     < HTTP >   [ scheduler ] - [ compute ] - ( libvirt/xen )
                        |                           |
                 [ objectstore ] < - retrieves images
  • DB: sql数据库用来存储数据。被所有的组件使用
  • Web Dashboard: 潜在的外部组件用来调用api
  • api: 组件接收http请求,命令和其他组件进行通信通过队列或者http(在使用对象的情况下)
  • Auth Manager: 组件负责 users/projects/roles。可以与后端DB或者LDAP。这不是一个单独的二进制文件,而是一个python类,用于系统中的大部分组件
  • objectstore: http服务器 复制s3 api同时允许存储和检索镜像
  • scheduler: 决定哪台组件获取Vm
  • network: 管理ip转发,桥,虚拟网络。
  • compute: 管理 hypervisor (管理程序)与虚拟机之间的通讯。
zhouxingxing
粉丝 70
博文 69
码字总数 48470
作品 0
杭州
程序员
私信 提问
加载中
此博客有 3 条评论,请先登录后再查看。
用vertx实现高吞吐量的站点计数器

工具:vertx,redis,mongodb,log4j 源代码地址:https://github.com/jianglibo/visitrank 先看架构图: 如果你不熟悉vertx,请先google一下。我这里将vertx当作一个容器,上面所有的圆圈要...

jianglibo
2014/04/03
4.3K
3
我的架构演化笔记 功能1: 基本的用户注册

“咚咚”,一阵急促的敲门声, 我从睡梦中惊醒,我靠,这才几点,谁这么早, 开门一看,原来我的小表弟放暑假了,来南京玩,顺便说跟我后面学习一个网站是怎么做出来的。 于是有了下面的一段...

强子哥哥
2014/05/31
976
3
DNS 管理系统--NamedManager

NamedManager 是一个基于 Web 的 DNS 管理系统,可用来添加、调整和删除 DNS 的 zones/records 数据,支持 Bind 作为后端的 DNS 服务,支持 IPv4 和 IPv6。...

匿名
2013/01/23
8.9K
0
实时分析系统--istatd

istatd是IMVU公司工程师开发的一款优秀的实时分析系统,能够有效地收集,存储和搜索各种分析指标,类似cacti,Graphite,Zabbix等系统。实际上,istatd修改了Graphite的存储后端,重新实现了...

匿名
2013/02/07
3K
1
集群存储系统--YFS

YFS集群存储系统由多个元数据服务器(MDS)、多个块数据服务器(CDS)和多个客户端(client)互联组成集群; 数据被分成64M固定大小的数据块(Chunk),每个数据块在CDS本地以常规文件的形式...

匿名
2013/02/19
1.8K
0

没有更多内容

加载失败,请刷新页面

加载更多

信息系统项目管理师(15)

软件需求分析的目的是对各种需求信息进行分析并抽象描述,为目标系统建立一个概念模型。通过需求分析,可以检测和解决需求之间的冲突;发现系统的边界;并详细描述出系统的需求。 访问控制授...

LitStone
20分钟前
5
0
按属性值对对象数组进行排序 - Sorting an array of objects by property values

问题: I've got the following objects using AJAX and stored them in an array: 我使用AJAX获得了以下对象并将它们存储在数组中: var homes = [ { "h_id": "3", "ci......

法国红酒甜
26分钟前
9
0
spring-boot集成redis

集成的客户端 1)lettuce方式集成 <dependency><groupId>org.apache.commons</groupId><artifactId>commons-pool2</artifactId></dependency><dependency><groupId>io.lettuce</gro......

简到珍
今天
12
0
Java 8中Lambda表达式默认方法的模板方法模式,你够了解么?

为了以更简单的术语描述模板方法,考虑这个场景:假设在一个工作流系统中,为了完成任务,有4个任务必须以给定的执行顺序执行。在这4个任务中,不同工作流系统的实现可以根据自身情况自定义任...

北柠Java
今天
3
0
阅文集团上半年总收入32.6亿元 同比增长9.7%

  腾讯科技讯,8 月 11 日消息,阅文集团(0772.HK)公布 2020 年中期业绩。报告显示,阅文集团 2020 上半年实现总收入 32.6 亿元,同比增长 9.7%;毛利润为 17.3 亿元,同比增长 6.8%。 ...

gfhtw
今天
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部