软件世界网 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
移动开发 架构设计 编程语言 Web前端 互联网
开发杂谈 系统运维 研发管理 数据库 云计算 Android开发资料
  软件世界网 -> 云计算 -> 一、OpenStack入门之初步认识 -> 正文阅读

[云计算]一、OpenStack入门之初步认识


OpenStack入门 之 初步认识

写在前面


从 OpenStack 基础知识开始学起,剖析 OpenStack 架构,分析 OpenStack 的各个组件的功能、原理和使用方法,通过实战演练来掌握 OpenStack 的部署和操作。为今后学习 OpenStack 的高级课程以及基于 OpenStack 构建企业级云计算系统打下基础。
在接下来的几天里,我将会学到以下主要内容:
  • OpenStack 基础知识
  • OpenStack 各组件间的关系社交网络挖掘算法与实践
  • OpenStack 各组件解析(基础)
  • OpenStack 各组件解析(进阶)
  • OpenStack 实际操作
  • OpenStack 扩展话题

接下来我会掌握:
  • 了解 OpenStack 的历史;
  • 了解 OpenStack 的生态圈;
  • 了解 OpenStack 管理的资源;
  • 掌握 OpenStack 的基本组件。

1. 对OpenStack基本了解


OpenStack 是最火的开源软件之一,活跃度呈指数级别上升;
是一组开源项目,诞生之初是由两个项目组成,目前十几个项目;
是一个云操作系统,OpenStack is a cloud operating system that …
OpenStack具有哪些特点呢?
OpenStack 管理的资源不是单机的而是一个分布的系统,把分布的计算、存储和网络、设备、资源组织起来,形成一个完整的云计算系统;OpenStack 也提供一个UI,这里包括一个图形化的UI: Horizon,也提供命令行的界面,还提供了一套API支持用户开发自己的软件…
OpenStack是一套框架——API,有下面这两个特点:

  1. 它是一个中间层,可以创建管理和销毁虚拟机,但是要完成这些操作需要依赖于第三方的 Hypervisor,通过这个 Hypervisor 去完成虚拟化的工作,OpenStack 并不能自己去提供一个虚拟化的运行环境,OpenStack 有个组件叫 Cinder(用来提供块存储服务的),但是 OpenStack 自己并不能进行数据的存储和读写,它需要依赖一个实际的块存储设备的支持,这个设备可以是一个分布式的存储系统,比如说 Ceph,也可以是一个存储设备,比如说 EMC 的 SAN,也可以是存储服务器的本地硬盘,但是它必须依赖一个存储设备的支持,OpenStack 本身并不具备这个功能。这就是第一方面,OpenStack 是一个中间层。

  2. 框架有一个很重要的特点,它能提供一批 API 支持应用开发,这也是我们业内对框架的一个定义,OpenStack 当然也有这个特点,云计算的愿景就是让用户能够像用电一样去使用计算,OpenStack 的设计也是朝着这个愿景去做设计的,但是实际上我们平时是不能直接用电的,我们需要用的是电冰箱、电脑、电视等等这些电器。同理,对于云计算来说,提供 API 去支持开发应用这个事情就合情合理的非常的重要了,具备完备的 API 是 OpenStack 的突出优点。

OpenStack 使用 Python 实现的软件。( 分布式系统的逻辑非常复杂,所以用更高级的语言去做,可以把精力更多的放在逻辑上,而不是说纠结与底层的细节,因为高级语言的底层机制已经优化的非常好了,C/C++写出来的东西真不一定就高;事实上在分布式系统这个领域,有很多很好的例证,比方说 OpenStack 用 Python 写的,Hadoop 使用 Java 写的,UC Berkeley 的 Spark 使用 Scala 语言写的,Twitter Storm 是用Clojure 语言开发的,这些都是很著名的分布式系统,都是用的更高层的语言而不是C )
OpenStack不是什么?

  1. 它不是虚拟化软件(必须知道这点),OpenStack 虽然管理虚拟机,但不具备虚拟化的功能,它给上层提供一个虚拟化的运行环境,必须得依赖一个第三方的虚拟化软件来实现,比如默认支持的 Linux 内核虚拟机,装完Linux 之后就自动带了,集成到 Linux 内核里面了,KVM,另外它还支持 Xen,还支持微软的 Hyper-V,支持 VMware 的 Vshpere,还支持像 Linux Container 和 Docker 这样轻量级的虚拟化技术。总之,OpenStack 本身不提供虚拟化,依赖第三方软件

  2. 需要了解的第二层含义:这个云化和虚拟化实际上是不一样的,云 != 虚拟化,云化的目的是为了实现效用计算,弹性计算,动态资源调度,多租户等这样的一些特性;而虚拟化只是实现云计算的这些特性中的一个技术手段而已,而且它不是必需的。比方说 IBM 的 Softlayer 是 IBM 现在主推的它的这个云服务,它中间有一个非常大的特点就是,它支持 Bare Metal Server,直译过来就是 “金属裸机”,也就是 Softlayer 在上面不做虚拟化,而是直接用物理服务器来实现云,直接给用户、租户提供的就是物理服务器,Softlayer 也可以在上面来实现多租户 、弹性计算等等特性。总之,Softlayer 没有虚拟化,但是 Softlayer 也做了云。第二个例子,OpenStack 有一个孵化的项目叫作 Ironic,为了去通过管理 “金属裸机”来实现云而提出的这样一个项目。

2. OpenStack生态圈


一个成功的开源平台,有三个要素组成,技术+生态+用户;
OpenStack 诞生于2010年;华为是 OpenStack 的黄金会员;
了解一下:
  • 社区的组成
  • 基金会的管理机构
  • 项目的孵化

[img]http://blog.csdn.net/heartyhu/article/details/51013469/https:/raw.githubusercontent.com/Isayes/screenshotpictures/f97ab5fc511eb74ce2ff0d4cc8bb47531eeced7a/Mypicpick20160329-234839.png

2-1. 社区组成

  • 个人成员:2014.4/ E版本/2600+ , 2014.4/ I版本/15000+
  • 企业成员:白金成员(8个,不再增加),黄金成员(若干),企业赞助商(OpenStack 基金会主要的资金来源)

一家初创企业 UnitedStack 也是基于 OpenStack 做云服务的,在国内也是云计算这块有影响力的

2-2. 管理机构

  • 技术委员会(Technical Committee,13个人组成,讨论 OpenStack 的技术方向,还有一些跨项目的协作问题),
  • 董事会(讨论 OpenStack 的战略布局,基金会的运营,白金会员的任命,黄金会员的选举,个人会员的选举),
  • 用户委员会(User Committee,中国在西安有个正式的用户组);

2-3. 项目产生与发展


每个项目经过孵化阶段以后才能够集成发布,OpenStack 为项目的孵化提供了一整套的基础设施和资源,包括代码和文档的管理,还有配置管理,版本控制等等工具;这些基础设施能够支持全球范围内的大规模的协作开发,这些基础设施和工具本身也是代表了IT领域先进的生产工具;
每半年发布一个版本,会由技术委员会和版本发布经理以及项目的 TPL 来共同决定每个版本中间要发布哪些 Feature。

3. OpenStack资源管理


OpenStack 作为一个操作系统,管理资源是它的首要任务;OpenStack 管理资源主要有三个方面:计算存储网络
OpenStack 对资源进行管理,并且以服务的形式提供给上层应用或者用户去使用。这些资源的管理是通过OpenStack 中的各个项目来实现的。其中计算资源管理相关的项目是 Nova(又称为 OpenStack Compute);存储相关的主要有块存储服务 Cinder、对象存储服务 Swift、镜像存储服务 Glance 这三种;
与网络相关的主要是一个和软件定义网络相关的项目叫作 Neutron;另外,Nova 中间有一个管理网络的模块叫作 Nova Network,作为一个比较稳定的遗留组件仍在 OpenStack 里面和 Neutron 并存,我们在小规模部署里面经常为了追求这种稳定,并且减少工作量会去使用 Nova Network 这样的一个组件来对网络资源进行管理。
OpenStack 提供的这些服务和公有云上的服务往往有一种对应关系,OpenStack 一直在以追求像亚马逊学习为它的目标,这里以亚马逊的公有云 AWS 为例,看一下 OpenStack 的服务和亚马逊的服务之间的对应的关系:
[img]http://blog.csdn.net/heartyhu/article/details/51013469/https:/raw.githubusercontent.com/Isayes/screenshotpictures/f97ab5fc511eb74ce2ff0d4cc8bb47531eeced7a/Mypicpick20160330-004435.png
说明:Keystone 是后台的一个模块一个组件,在 AWS 的服务是看不见的,隐藏在叫作计费系统的后端(DOS系统的后端),AWS 在中国可以免费使用,可以体验一下。

4. OpenStack基本组件


OpenStack 核心的项目:
Nova 、 Cinder、 Neutron、 Swift、 Keystone、 Glance、 Horizon
[img]http://blog.csdn.net/heartyhu/article/details/51013469/https:/raw.githubusercontent.com/Isayes/screenshotpictures/f97ab5fc511eb74ce2ff0d4cc8bb47531eeced7a/Mypicpick20160329-233944.png

4-1. Nova


又被称为 OpenStack Compute,主要作用是控制虚拟机的创建,以及改变它的容量和配置,还可以做虚拟机的销毁,虚拟机的整个生命周期都是由 Nova 来控制的;
Nova的部署运行一般有两种情况:一类是 Nova 作为 Controller 节点去运行,Controller 节点是用来控制其它的一些计算节点的;另外一类节点就是 Compute 节点,是计算节点,上面是运行实际的虚拟机的;
那么有什么区别呢?
  • 在 Compute 节点上部署的 Nova,它上面核心运行的一个东西叫作 Nova Compute,主要是为了去对虚拟机进行控制,它去和 Hypevisor 进行交互,对虚拟机进行控制;
  • 在 Controller 上运行的 Nova 就相对复杂一些,它有 Scheduler、Conductor、Nova Cell;
  • Scheduler 在用户发起请求的时候决定这个虚拟机应该在哪个机器上启动,应该在哪个计算节点上启动;
  • Conductor 是对所有的计算节点进行一个统一的管理;

  • Nova Cell 的作用是级联
    控制虚拟机的生命周期
    控制节点:Scheduler(决定虚拟机的启动位置)、Conductor(对所有的计算节点进行统一管理)、Nova Cell(级联)
    计算节点:对虚拟机进行控制

4-2. Cinder


Cinder 组件主要的用途是提供块存储服务,最核心的两个部分是Scheduler 和 Cinder Volume。有读写存储服务请求的时候,Schduler决定通过哪个Cinder Volume进行读取操作,Cinder Volume是实际控制存储的设备

4-3. Neutron


有一个非常火的一个概念叫作SDN,软件定义网络,在OpenStack里边的一个实现,Neutron 有一个很大的特点就是提供Plugin模块,这个是用户可以自己去写的。

4-4. Swift


Swift 是一个比较有趣的组件,从OpenStack的诞生之初就已经有Swift的这个项目了,但是它发展到现在还是比较独立的,和其他组件的交互关系比较少,一个相对独立的发展套路,美国有一个公司叫作SwiftStack专门用Swift来做的一个初创公司,Swift是提供对象存储服务的 ,提供一个类似于像亚马逊S3或者像国内的七牛这样的一个存储服务。
其他的组件如果要用到对象存储的时候,就去Swift里边去写数据,读数据;
Swift可以利用Keystone来做认证

4-5. Glance


用Swift最多的一个组件,主要是用Swift来存虚拟机的镜像、快照等等这样一些东西

4-6. Keystone


主要是为各个组件提供用户的认证、建权等等这样的一些服务

4-7. Horizon


图形界面

4-8. Heat


是用来做各个服务的编排的

4-9. Sahara


把Hadoop能够放在OpenStack上去运行的一个组件

4-10. 如图所示


[img]http://blog.csdn.net/heartyhu/article/details/51013469/https:/raw.githubusercontent.com/Isayes/screenshotpictures/f97ab5fc511eb74ce2ff0d4cc8bb47531eeced7a/Mypicpick20160330-005152.png
[img]http://blog.csdn.net/heartyhu/article/details/51013469/https:/raw.githubusercontent.com/Isayes/screenshotpictures/f97ab5fc511eb74ce2ff0d4cc8bb47531eeced7a/Mypicpick20160330-003316.png
上面都只是对组件的简介,后续博客继续深入剖析。
网络MOOC学习笔记 From 高校帮 《OpenStack 入门 @讲师 李明宇》
By 胡飞
at 2016/3/30 12:48:23

......显示全文...
    点击查看全文


上一篇文章      下一篇文章      查看所有文章
2016-04-01 16:58:16  
云计算 最新文章
CentOS7上安装Zabbix(快速安装监控工具Zab
十分钟搭建NeuralStyle服务
solr入门之拼写纠错深入研究及代码Demo
3个netty5的例子,简单介绍netty的用法
RedhatOpenshift云平台注册使用
Akka框架——第一节:并发编程简介
Hadoop实战:Linux报tmp磁盘存储不足
linux安装thrift
感觉快更快规划计划高考韩国
solr相似匹配
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年1日历
2018-1-17 9:18:06
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  软件世界网 --