OpenStack入门 之 初步了解
1. 写在前面
从 OpenStack 基础知识开始学起,剖析 OpenStack 架构,分析 OpenStack 的各个组件的功能、原理和使用方法,通过实战演练来掌握 OpenStack 的部署和操作。为今后学习 OpenStack 的高级课程以及基于 OpenStack 构建企业级云计算系统打下基础。
在接下来的几天里,我将会学到以下主要内容:
- OpenStack 基础知识
- OpenStack 各组件间的关系社交网络挖掘算法与实践
- OpenStack 各组件解析(基础)
- OpenStack 各组件解析(进阶)
- OpenStack 实际操作
- OpenStack 扩展话题
我的学习目标:
- 了解 OpenStack 的历史;
- 了解 OpenStack 的生态圈;
- 了解 OpenStack 管理的资源;
- 掌握 OpenStack 的基本组件。
2. 对OpenStack基本了解
OpenStack 是最火的开源软件之一,活跃度呈指数级别上升;
是一组开源项目,诞生之初是由两个项目组成,目前十几个项目;
是一个云操作系统,OpenStack is a cloud operating system that …
OpenStack具有哪些特点呢?
OpenStack 管理的资源不是单机的而是一个分布的系统,把分布的计算、存储和网络、设备、资源组织起来,形成一个完整的云计算系统;OpenStack 也提供一个UI,这里包括一个图形化的UI: Horizon,也提供命令行的界面,还提供了一套API支持用户开发自己的软件…
OpenStack是一套框架——API,有下面这两个特点:
-
它是一个中间层,可以创建管理和销毁虚拟机,但是要完成这些操作需要依赖于第三方的 Hypervisor,通过这个 Hypervisor 去完成虚拟化的工作,OpenStack 并不能自己去提供一个虚拟化的运行环境,OpenStack 有个组件叫 Cinder(用来提供块存储服务的),但是 OpenStack 自己并不能进行数据的存储和读写,它需要依赖一个实际的块存储设备的支持,这个设备可以是一个分布式的存储系统,比如说 Ceph,也可以是一个存储设备,比如说 EMC 的 SAN,也可以是存储服务器的本地硬盘,但是它必须依赖一个存储设备的支持,OpenStack 本身并不具备这个功能。这就是第一方面,OpenStack 是一个中间层。
-
框架有一个很重要的特点,它能提供一批 API 支持应用开发,这也是我们业内对框架的一个定义,OpenStack 当然也有这个特点,云计算的愿景就是让用户能够像用电一样去使用计算,OpenStack 的设计也是朝着这个愿景去做设计的,但是实际上我们平时是不能直接用电的,我们需要用的是电冰箱、电脑、电视等等这些电器。同理,对于云计算来说,提供 API 去支持开发应用这个事情就合情合理的非常的重要了,具备完备的 API 是 OpenStack 的突出优点。
OpenStack 使用 Python 实现的软件。( 分布式系统的逻辑非常复杂,所以用更高级的语言去做,可以把精力更多的放在逻辑上,而不是说纠结与底层的细节,因为高级语言的底层机制已经优化的非常好了,C/C++写出来的东西真不一定就高;事实上在分布式系统这个领域,有很多很好的例证,比方说 OpenStack 用 Python 写的,Hadoop 使用 Java 写的,UC Berkeley 的 Spark 使用 Scala 语言写的,Twitter Storm 是用Clojure 语言开发的,这些都是很著名的分布式系统,都是用的更高层的语言而不是C )
OpenStack不是什么?
-
它不是虚拟化软件(必须知道这点),OpenStack 虽然管理虚拟机,但不具备虚拟化的功能,它给上层提供一个虚拟化的运行环境,必须得依赖一个第三方的虚拟化软件来实现,比如默认支持的 Linux 内核虚拟机,装完Linux 之后就自动带了,集成到 Linux 内核里面了,KVM,另外它还支持 Xen,还支持微软的 Hyper-V,支持 VMware 的 Vshpere,还支持像 Linux Container 和 Docker 这样轻量级的虚拟化技术。总之,OpenStack 本身不提供虚拟化,依赖第三方软件;
-
需要了解的第二层含义:这个云化和虚拟化实际上是不一样的,云 != 虚拟化,云化的目的是为了实现效用计算,弹性计算,动态资源调度,多租户等这样的一些特性;而虚拟化只是实现云计算的这些特性中的一个技术手段而已,而且它不是必需的。比方说 IBM 的 Softlayer 是 IBM 现在主推的它的这个云服务,它中间有一个非常大的特点就是,它支持 Bare Metal Server,直译过来就是 “金属裸机”,也就是 Softlayer 在上面不做虚拟化,而是直接用物理服务器来实现云,直接给用户、租户提供的就是物理服务器,Softlayer 也可以在上面来实现多租户 、弹性计算等等特性。总之,Softlayer 没有虚拟化,但是 Softlayer 也做了云。第二个例子,OpenStack 有一个孵化的项目叫作 Ironic,为了去通过管理 “金属裸机”来实现云而提出的这样一个项目。
网络MOOC学习笔记 From 高校帮 《OpenStack 入门 @讲师 李明宇》
2016/3/29 16:08:32 原文地址:http://blog.csdn.net/heartyhu/article/details/51006725