在上一篇《云计算-共享&服务》介绍过:云计算的本质是一种IT资源通过虚拟化进行的共享,是一种更高维度的服务。本文介绍:云计算和虚拟化有哪些区别,以及基于OpenStack的云计算。
一、云计算和虚拟化的区别
1、新品装旧酒吗?
许多人认为云计算是新瓶装旧酒,认为云计算基本就是虚拟化,其实不然。云计算的技术底层确实是虚拟化,在技术上云计算并没有太多创新。
但是我们看待一个事物或者看待一个技术,不能只从一个面去看,要站在更高和更全的视角去看待,拔高视角,比如在三维看待二维。
再比如移动通话,如果单从一个技术角度去看待的话,2G、3G、4G,其实技术变化不算太大,都是渐渐改进式的微创新。但如果从更全面的角度去看待的话,这个渐渐改进式微创新,带来了极大的生活便利,带来了极大的商业价值,催生出了极大的繁荣。
这么一看,你还认为云计算基本就是虚拟化吗?
2、区别
云计算的底层技术基本是虚拟化,但是两者的侧重点不同。
虚拟化侧重解决:资源利用率的问题。
云计算侧重解决:IT服务化的问题。
虚拟化:
- 环境隔离,资源充分复用
- 降低隔离损耗,提升运行效率
- 提供高级虚拟化特性
云计算:
- IT能力服务化,提升服务维度,让IT资源触手可及。
- 按需使用,按量计费,给业务提供了尝试容错的能力。
- 多租户隔离,给安全性隔离性提供了保障。
二、云计算与OpenStack
构建云计算的技术框架主要是OpenStack,大公司一般是基于OpenStack源代码做二开,或者选用部分OpenStack功能。总之,OpenStack技术是主流云计算管理工具。
OpenStack虽然是云操作系统,但是他不等于云,因为除了OpenStack之外,还有许多其余重要部件。为了构建一个云还需要许多其他的重要的东西。OpenStack只是云计算系统的控制面,处在中间层,比如用它来控制虚拟化软件创建虚拟机等。
1、OpenStack概述
首先,OpenStack是偏底层的云计算管理工具,用来管理基础设施层的资源池(服务器、存储和网络)。
OpenStack的核心任务是管理数量庞大的的虚拟机,次级任务是网络管理、镜像管理、统一身份认证、计算资源管理等,OpenStack被称为是“云操作系统”。
之所以称为“云操作系统”,是因为OpenStack管理着大量的物理服务器。类似于:个人笔记本的“操作系统”管理着进程,“云原生操作系统”Kubernetes管理着容器。
2、OpenStack核心部件
OpenStack是由一套软件组成,包括多个基本组件(Nova、Neutron、Placement、Keystone、Glance、Cinder、Horizon等)和多个额外可选组件。
每个组件对外提供RESTful API服务,组件之间通信是调用对方的RESTful API服务。一个组件由若干个进程组成,这些进程之间使用消息队列通信,组件的状态数据被保存在数据库中。
各个组件的关系图如下:
- Nova:提供计算的组件。Nova组件提供计算服务,即在安装了nova-compute软件包的机器上才能跑虚拟机,这样的机器称为计算节点。Nova本身不是虚拟化软件,需要在计算节点上必须安装第三方虚拟化软件(比如KVM、QEMU等)。安装在计算节点上的nova-compute相当于一个中间人,它一方面上传机器的资源信息,如剩余内存情况、CPU空闲情况等,另一方面下达操控虚拟机的命令,如启动虚拟机、关闭虚拟机等。
- Cinder:提供存储的组件。Cinder组件支持的第三方块存储后端有NAS/SAN、NFS、Ceph等。每一种后端都需要给Cinder组件提供相应的驱动。
- Swift:提供对象存储的组件。
- Netron:提供网络的组件。
- Glance:提供镜像的组件。
- Keystone:提供鉴权管理的组件。
- Horizon:提供UI界面的组件。
- Queue:OpenStack内部的通信是基于Queue组件。
- Ceilometer:使用资源的度量和计费组件。
- 数据库:OpenStack本身也依赖一个数据库,自身运行的相关存放在数据库中。
3、OpenStack的组件分层
4、云计算中OpenStack所处位置
三、总结
本文主要介绍了,云计算、虚拟化、OpenStack的一些概念。核心如下:
- 不用纠结云计算和虚拟化是否相同,关注他俩的侧重点就行。虚拟化侧重资源利用率,云计算侧重IT服务化。
- OpenStack是“云操作系统”,是主流的云计算管理工具。OpenStack的核心部件和其余重要部件共同构建了云。
本篇完结!感谢你的阅读,欢迎点赞 关注 收藏 私信!!!