`
ssydxa219
  • 浏览: 610250 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

OpenStack

 
阅读更多

一、OpenStack简介

    OpenStack 是由 Rackspace 和 NASA 共同开发的云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service, IaaS)。OpenStack 包含两个主要模块:Nova 和 Swift,前者是 NASA 开发的虚拟服务器部署和业务计算模块;后者是 Rackspack 开发的分布式云存储模块,两者可以一起用,也可以分开单独用。OpenStack 是开源项目,除了有 Rackspace 和 NASA 的大力支持外,后面还有包括 Dell, Citrix, Cisco, Canonical 这些重量级公司的贡献和支持,发展速度非常快,有取代另一个业界领先开源云平台 Eucalyptus 的态势。

Openstack

图1 OpenStack 基础架构

 

    OpenStack包含了一组由社区维护的开源项目,主要项目有Compute(Nova), Object Storage(Swift),Image Service(Glance)。 

    Nova提供虚拟计算服务,Swift提供存储服务,Glance提供虚拟机镜像的注册、分发服务。

 

    三个项目的基本关系如下图3所示:

Openstack

 

    OpenStack Compute,为云组织的控制器,它提供一个工具来部署云,包括运行实例、管理网络以及控制用户和其他项目对云的访问(the cloud through users and projects)。它底层的开源项目名称是Nova,其提供的软件能控制IaaS云计算平台,类似于Amazon EC2和Rackspace Cloud Servers。OpenStack Compute又包含Web前端、计算服务、存储服务、身份认证服务、存储块设备(卷)服务、网络服务、任务调度等多个模块。OpenStack Compute的不同模块之间不共享任何信息,通过消息传递进行通讯。因此,不同的模块可以运行在不同的服务器上,也可以运行在同一台服务器上。

    OpenStack Object Storage,是一个可扩展的对象存储系统。对象存储支持多种应用,比如复制和存档数据,图像或视频服务,存储次级静态数据,开发数据存储整合的新应用,存储容量难以估计的数据,为Web应用创建基于云的弹性存储。 OpenStack Object Store可以利用通用服务器搭建可扩展的海量数据仓库,并且通过冗余来保证数据的安全性。同一份数据的在多台服务器上都有副本,将出现故障的服务器从集 群中撤除不会影响数据的完整性,加入新的服务器后系统会自动地在新的服务器上为相应的文件创建新的副本。从功能上讲,OpenStack Object Store同时具备Eucalyptus中的Walrus服务和弹性块设备(SC)服务。不过OpenStack Object Store不是一个文件系统,不能够保证数据的实时性。从这个方面来考虑,OpenStack Object Store更适合用于存储需要长期保存的静态数据,例如操作系统映像文件和多媒体数据。

Openstack 
图2 OpenStack Object Store

    OpenStack Image Service,是一个虚拟机镜像的存储、查询和检索系统,服务包括的RESTful API允许用户通过HTTP请求查询VM镜像元数据,以及检索实际的镜像。VM镜像有四种配置方式:简单的文件系统,类似OpenStack Object Storage的对象存储系统,直接用Amazon's Simple Storage Solution (S3) 存储,用带有Object Store的S3间接访问S3。

 

二、OpenStack Compute(Nova)的软件架构  

    下图是Nova的软件架构,每个nova-xxx组件是由python代码编写的守护进程,每个进程之间通过队列(Queue)和数据库(nova database)来交换信息,执行各种请求。而用户通过nova-api暴露的web service来同其他组件进行进行交互。Glance是相对独立的基础架构,nova通过glance-api来和它交互。

Openstack

    OpenStack Compute软件架构中,组件中的绝大多数可分为两种自定义编写的Python守护进程(custom written python daemons)。

    a)接收和协调API调用的WSGI应用(nova-api, glance-api, etc)

    b)执行部署任务的Worker守护进程(nova-compute, nova-network, nova-schedule, etc.)

    然而,软件架构中有两个重要的部分,既不是自定义编写,也不是基于Python,它们是消息队列和数据库。二者简化了复杂任务(通过消息传递和信息共享的任务)的异步部署。

三、Nova各个组件的作用 

1.nova-api是Nova的中心。它为所有外部调用提供服务,除了提供OpenStack本身的API规范外,他还提供了兼容EC2的部分API,所以也可以用EC2的管理工具对nova进行日常管理。 

2.nova-compute负责对虚拟机实例进行创建、终止、迁移、Resize的操作。工作原理可以简单描述为:从队列中接收请求,通过相关的系统命令执行他们,再更新数据库的状态。 

3.nova-volume管理映射到虚拟机实例的卷的创建、附加和取消。 

4.nova-network从队列中接收网络任务,然后执行任务控制虚拟机的网络,比如创建桥接网络或改变iptables的规则。 

5.nova-scheduler 提供调度,来决定在哪台资源空闲的机器上启动新的虚拟机实例 

6.Queue为守护进程传递消息。只要支持AMQP协议的任何Message Queue Sever都可以,当前官方推荐用RabbitMQ。 

7.SQL database存储云基础架构中的各种数据。包括了虚拟机实例数据,网络数据等。 

8.user dashboard是一个可选的项目。它提供了一个web界面来给普通用户或者管理者来管理、配置他们的计算资源。

 

四、Nova的硬件架构 

    Nova采用无共享、基于消息的架构,我们能安装每个nova-xxx组件在单独的服务器上,这样可以根据不同目的进行不同的配置安装 

单结点:一台服务器运行所有的nova-xxx组件,同时也驱动虚拟实例。这种配置只为尝试Nova,或者为了开发目的进行安装。

 

      Openstack  

1 控制节点+N个计算节点:一个控制结点运行除nova-compute外的所有nova-services,然后其他compute结点运行nova- compute。所有的计算节点需要和控制节点进行镜像交互,网络交互,控制节点是整个架构的瓶颈,这种配置主要用于概念证明或实验环境。 

Openstack

 

 

多节点:增加节点单独运行nova-volume,同时在计算节点上运行nova-network,并且根据不同的网络硬件架构选择DHCP或者VLan模式,让控制网络和公共网络的流量分离。 

 

Openstack

五、OpenStack能够做什么 

OpenStack能帮我们建立自己的IaaS,提供类似Amazon Web Service的服务给用户: 

普通用户可以通过它注册云服务,查看运行和计费情况 
开发和运维人员可以创建和存储他们应用的自定义镜像,并通过这些镜像启动、监控和终止实例 
平台的管理人员能够配置和操作网络,存储等基础架构 
Openstack
运用范围:
    OpenStack是IaaS(基础设施即服务)?软件,让任何人都可以自行建立和提供云端运算服务。 
    此外,OpenStack也用作建立防火墙内的“私有云”(Private Cloud),提供机构或企业内各部门共享资源。
分享到:
评论

相关推荐

    openstack设计与实现

    《Open Stack设计与实现》是一本介绍OpenStack设计与实现原理的书。《Open Stack设计与实现》以Juno版本为基础,覆盖了OpenStack的学习方法到设计与实现等各个方面内容,致力于帮助读者形成OpenStack及其各个主要...

    华为基于OpenStack的华为FusionSphere解决方案培训.rar

    2.1_什么是OpenStack(2017.5.30) 2.2_OpenStack之于虚拟化(2017.5.30) 2.3_OpenStack之于云计算(2017.5.30) 2.4_OpenStack发展历程(2017.5.30) 2.5_OpenStack的设计准则(2017.5.30) 2.6_OpenStack的架构(2017.5...

    云计算OpenStack Cloud Computing Cookbook 英文电子书

    云计算OpenStack Cloud Computing Cookbook 英文电子书.pdf Openstack以Python编程语言+Twisted软件框架编写。整合Tornado网页服务器、Nebula运算平台。遵循Open Virtualization Format、AMQP、SQLAlchemy等标准。所...

    openstack自动化搭建脚本

    openstack自动化搭建脚本,openstack私有云平台部署。 这次是基于devstack进⾏⾃动化部署,后续会通过解析这个部署脚本的源代码的形式,学习openstack的部署,同时⼀步步阅读 openstack其他服务的源码,⽐如keystone...

    华为FusionSphere Openstack云数据中心资料汇总集【视频 PDF】.rar

    fusionsphere openstack 云数据中心搭建36计-04.mp4,网盘文件,永久链接 fusionsphere openstack 云数据中心搭建36计-05.mp4 fusionsphere openstack 云数据中心搭建36计-06.mp4 fusionsphere openstack 云数据中心...

    openstack一键安装3

    openstack一键安装(含安装包、自制工具)支持centos6.5最小化安装 本资源分为3部分下载: (1.openstack一键安装1 (2.openstack一键安装2 (3.openstack一键安装3 注意:下载完整后,请放在同一目录下解压 =====...

    OpenStack.Trove.Essentials.1785285610.pdf

    Build your own cloud based Database as a Service using OpenStack Trove About This Book Familiarize yourself with the concept of Database as a Service and make your existing system scalable and ...

    OpenStack高可用集群(上册):原理与架构

    资源名称:OpenStack高可用集群(上册):原理与架构 内容简介:本书是一本理论与实战结合,并全面讲解OpenStack相关技术知识点的书籍。书中首先介绍了与OpenStack相关的基础架构软件,同时深入讲解和分析了...

    OpenStack论文以及搭建OpenStack的过程.docx

    计算已成为IT业界出现频率最高的热门词语之...包括OpenStack计算(代号为Nova),OpenStack对象存储(代号为Swift),并OpenStack镜像服务(代号Glance)的集合。OpenStack提供了一个操作平台,或工具包,用于编排云。

    OpenStack 部署运维实战

    本文为您介绍了网易公司基于 OpenStack 开发的一套云计算管理平台,以及在开发、运营、维护过程中遇到的问题和经验分享。网易作为大型互联网公司,IT 基础架构需要支撑包括生产、开发、测试、管理等多方面的需要,...

    《OpenStack云平台实战》课程测试试卷.docx

    Openstack 测试 试卷 ,学校考试可以用,百度花钱买的,需要的下载吧。 OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache...

    Openstack图文安装详细步骤教程(亲自安装并截图整理).pdf

    基于 Fuel 的 Openstack 详细安装图文教程; 由于工作需要为第三方部署 Openstack 私有云 ,而尝试了很多网络上的教程之后,发现很多教程本身存在一些问题,倒是尝试一直失败; 最终经过夜以继日的尝试和配置,终于...

    Common OpenStack Deployments pdf

    OpenStack is today’s leading technology for building and integrating public and private clouds. Common OpenStack Deployments is a complete, practical guide to deploying OpenStack and understanding ...

    Mastering.OpenStack.178439564

    Design, deploy, and manage a scalable OpenStack infrastructure About This Book Learn how to design and deploy an OpenStack private cloud using automation tools and best practices Gain valuable ...

    OpenStack Days China大会Keynote讲师PPT汇总

    7月14日,久负盛名的OpenStack Days全球巡展中国站来到北京,超过2000位云计算产业从业者齐聚国家会议中心,共同探讨OpenStack技术的发展趋势与技术特点,分享OpenStack在不同行业的应用实践最佳案例和成果,通过...

    OpenStack Cloud Computing Cookbook

    The Fourth Edition of the industry-acclaimed OpenStack Cloud Computing Cookbook, from four recognized experts, updated to the latest OpenStack build including Cinder, Nova, and Neutron. Key Features ...

    openstack温哥华峰会docker

    openstack温哥华峰会docker总结。 一年两度的OpenStack峰会在温哥华结束了,和前段时间国内的一些OpenStack负面信息不太一致, 峰会上一些Keynotes的用户实际案例证明,OpenStack现在已经进入“Open For Business”...

Global site tag (gtag.js) - Google Analytics