阅读更多

0顶
1踩

开源软件

原创新闻 OpenStack最新版本Folsom架构解析(续)

2012-11-19 14:50 by 见习记者 Adela_09 评论(0) 有4508人浏览

两年前OpenStack基于NASA的Nova项目和Rackspace的Swift项目合并得以建立,而今OpenStack已经成为云计算领域的一颗新星,继2012年四月发布Essex版本之后,在今年九月底OpenStack第6版Folsom正式发布,本文简要分析了OpenStack Folsom的架构。


Folsom逻辑结构图

Object Store

Swift结构是分布式的,这样既可以防止任何单一的节点上出问题,又可以进行横向的扩展。它包含的组件有:

Prox server:它负责接受由OpenStack Object API传入的请requests或者直接就接受HTTP requests。接受的请求有文件上传,修改元数据和创建container单元。此外还为浏览器提供文件和continer的列表。通常我们会使用一个可选的缓存来提高它的性能。

Account servers:它们负责管理由object存储服务创建的账户。
Container servers:它们负责管理object存储服务里面containers(也就是文件夹)映射。
Object servers:它们负责管理storage节点上的真正的objects。(也就是文件)
在服务器上通常有许多用来执行日常任务的周期性进程。其中最重要的就是replication services,它通过集群保证了一致性和可以用性。其他的一些周期进程有:auditors,updaters和reapers。

Object store也通过HTTP为静态页面和对象服务。实时上,本文的那张图片就是来自Rackspace Cloud的Switf service。

Image Store

自从Cactus版本发布以后,Glance结构相对来说比较稳定。最大的结构变化大概就是在Diablo版本加入了身份验证。让我们快速浏览下Glacnce的四个主要部分:

glance-api:她接受Image API的发现图片,检索图片和存储图片的请求。
glance-registry:她存储,处理和检索元图片元数据。(像大小,类型等)
一个存储图片元数据的数据库。像Nova一样,你可以根据你的需求参数选择你的数据库。(但大部分人都选择MySQL或者SQlite)
一个存贮实际图片文件的图片库。在上面的图片中,Swift被当作了图片库,而且这是可以配置的。除了Swift,Glance支持普通的文件系统,RADOS块设备,Amazon S3和HTTP。需要清楚的一点儿是这些选择中的一部分是有只读限制的。
就像你在上面的概念结构图部分看到的一样,Glance在所有IaaS图片服务中是个核心角色。她接受来自终端用户或者Nova组件的图片(或者图片元数据)的API requests,并且她可以把她的文件存在object storage service(Swift)中。

Identity

Keystone把OpenStack policy,catalog,token和authentication等功能集成于一身。不仅处理API requests,同时也提供可以配置的catalog,policy,token和identity服务。

每一个Keystone功能都有一个允许用不同方式使用它的独特服务的插件化后台。大部分功能都支持标准的后台,比如LDAP,SQL和Key Value Stores等。

Network

Quantum在其他OpenStack服务管理的接口设备之间提供网络连接服务。她首先允许用户创建他们自己的网络,然后给他们提供接口。和其他的OpenStack服务一样,Quantum使用了插件化结构,这使得他可以被详细配置。这些插件使用了不同的网络设备和软件。这样,结构和部署就非常的灵活了。在上面的结构中,使用了一个非常简单了Linux网络。

quantum-server:接受API requests然后把他们转发到合适的quantum插件去执行。
quantum 插件和代理执行插件的添加或者卸载,创建网络或者子网和IP地址分配等实际操作。这些插件和代理在特定的云服务里面依赖不同公司和使用不同的技术。Quantum装载了的插件和代理有:Cisco的虚拟的和物理的交换机,Nicira的NVP产品,NECO的OpenFlow产品,Open vSwitch,Linux的bridging和Rye的网络操作系统。Midokua也为Quantum集成服务提供了一款插件。Quantum中普通的代理有L3,DHCP和定制的代理插件。
大部分的Quantum设备都通过一个消息队列来转发在quantum-server和各种代理之间的信息,也有一个用来存储每个插件自己的网络状态的数据库。Quantum主要和Nova进行交互,Nova为他的实例提供网络和链接。

 

Block Storage

Cinder 将之前在OpenStack Compute中的部分持久性块存储功能分离了出来,集成到了自己的服务中。OpenStack块存储API允许对卷,卷的类型,卷的快照进行处理。

cinder-api 接受API requests并且将他们转发到cinder-volume去执行。
cinder-volume处理cinder数据库的维护状态的读写请求,通过消息队列和直接在块存储设备或软件上与其他进程交互。
和nova-scheduler非常相似,后台进程cinder-scheduler会选择在最优的块存储提供节点上去创建卷。
Cinder deployments也使用消息队列去转发cinder进程之间的消息并且使用一个数据库来存储这些卷的状态信息。和Quantum类似,Cinder主要和Noa交互,为她提供她的卷需要的实例。
(康文博/编译 王旭东/审校)

原文链接:OpenStack Folsom Architecture

相关阅读:OpenStack最新版本Folsom架构解析

 

来自: CSDN
0
1
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • hibernate映射文件

    hibernate入门的基础,hibernate的映射文件,方便学习

  • java根据实体类生成Hibernate映射文件

    根据实体类生成简单的Hibernate映射文件,对不用Myeclipse的童鞋还是有用

  • Hibernate映射文件id的generator配置方法

    下面小编就为大家分享一篇Hibernate映射文件id的generator配置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

  • Hibernate映射文件配置.mhtml

    此文档是对Hibernate框架进行的初次映射文件配置,内容包括Hibernate的简介和优点,进行建立实体Bean并且配置xml并且进行代码测试

  • myeclipse自动生成hibernate映射文件

    在hibernate中,每个数据表对应的其实是一个实体类,每个实体类有一个对应的hbm.xml配置文件匹配,myeclipse中有个MyEclipse ...运用myeclipse的MyEclipse Database Explorer可以在2分钟内生成hibernate的映射文件

  • Hibernate 映射文件自动生成

    NULL 博文链接:https://bbpbbf.iteye.com/blog/827305

  • Hibernate映射文件主键的生成

    NULL 博文链接:https://zhangzhi199129.iteye.com/blog/1663919

  • 自动生成hibernate映射文件和实体类

    自动生成hibernate映射文件和实体类

  • IntelliJ IDEA下自动生成Hibernate映射文件以及实体类

    主要介绍了IntelliJ IDEA下自动生成Hibernate映射文件以及实体类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  • 生成hibernate映射文件工具

    用来生成hibernate映射文件.从而实现不需手动写入。。。很实用的东东哦。。

  • 用MyEclipse自动生成hibernate映射文件和实体类

    用MyEclipse自动生成hibernate映射文件和实体类 一、创建数据库,创建相应的表 二、 生成文件操作

  • 浅谈hibernate之映射文件VS映射注解

    下面小编就为大家带来一篇浅谈hibernate之映射文件VS映射注解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  • hibernate映射文件配置分析及要点

    hibernate 映射文件 配置分析及要点,你还在为配置hibernate 映射文件而发愁吗?这里总结了它的常用元素及属性。session,SessionFactory的应用

  • 快速了解hibernate配置文件与映射文件

    主要介绍了快速了解hibernate配置文件与映射文件,具有一定参考价值,需要的朋友可以了解下。

  • Hibernate映射文件[文].pdf

    Hibernate映射文件[文].pdf

  • Hibernate 映射文件 结构

    NULL 博文链接:https://jackyin5918.iteye.com/blog/1925082

  • node-v0.8.10-sunos-x64.tar.gz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

  • 【课程设计】实现的金融风控贷款违约预测python源码.zip

    【课程设计】实现的金融风控贷款违约预测python源码.zip

  • node-v0.10.27-x86.msi

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

  • 课设毕设基于SSM的高校二手交易平台-LW+PPT+源码可运行.zip

    课设毕设基于SSM的高校二手交易平台--LW+PPT+源码可运行

Global site tag (gtag.js) - Google Analytics