云计算与虚拟化Openstack介绍
随着云时代的来临,我们离云服务越来越近。我们身边出现了很多云计算的产品,比如苹果的App store、Linode的VPS、Google的App Engine。其实从云计算的分类来说就是三种:
1.基础架构及服务(IaaS)作为运维人员,通常与基础架构服务搭建、测试、部署高可用息息相关。所以我关注云计算也是关注基础架构及服务方面的云。这个是我这篇文章的重点阐述的地方。
2.平台及服务(paas)这个平台的服务云就是开发人员可以在这个基础架构之上建设新的应用。比如APP引擎,比如新浪微博的引擎、腾讯微博的app引擎、google+的应用引擎,可以在此引擎上建立新的应用,我们常见的应用如微博应用、qq空间应用等。
3.软件及服务(SaaS)这个云服务是云服务商提供软件,客户直接从云端服务获取。客户可以提供需求,直接在云端公布,云上其他开发者进行开发。随需应变的软件云,这种云我们也在生活中见到,就是开头我说的Mac的App Store。App store就是一个应用仓库,大家都可以在其上免费或者付费获取所需的软件。
从上面三类云可以划分云产业分层即:云平台、云软件、、云设备。
下面主要从运维角度阐述基础架构云的应用以及现状,后文所称呼的云,均为基础架构云或者云平台。从云的规模和使用范围来说可以分为公有云和私有云,公有云就是我们常见的VPS服务云,他们都是建立在一些虚拟化的云端服务器上的,提供全世界各个用户使用。私有云就是企业内部自己搭建的云平台。比如我们要建立一个基础架构云,那么这个对于我们来说就是私有云。
基础架构云构成组件:
1.云操作系统
2.云存储
3.云高可用调度系统
拟化的出现加快了云平台的建设,虚拟化应该是云平台的基石。可以轻松使用虚拟化打造云数据中心。常见的虚拟化系统如Zone、Jail、OpenVZ、Xen、KVM、qemu、vmware、Hyper-V等等。他们各自的优缺点我就不说了,Xen是目前用的比较多的开源虚拟化方案。作为运维人员首先是考虑软件成本,如果都选择厂商的云方案,对于企业来说这是一笔灾难性的开支。
红帽未来会大力支持KVM虚拟化,不过以前都是主推Xen,包括红帽一系列认证均以Xen为考试重点。
常见的虚拟化云部署方案:
A.vmware方案:VC+ESXi+n*ESXi+共享存储
B.XenServer方案:Xenserver+Master+Slave+共享存储
C.Openstack方案:Compute+Object Storage+Image Service
A方案属于商业方案,许可证按照CPU物理数进行收费,BC方案是开源软件方案,软件费用没有,所以优势所在。
先介绍Openstack,因为我觉得Openstack在基础云架构中比较靠谱,国外比较大的基础架构云服务提供商在使用,从管理、安全、可靠性来说Openstack比较妥当,毕竟Xenserver公司主要产品是商业产品,并不是免费产品,后面来说Xenserver。
什么是Openstack?
官方网站:http://www.openstack.org/
OpenStack提供开放源码软件,建立公共和私有云。 OpenStack是一个社区和一个项目,以及开放源码软件,以帮助企业运行的虚拟计算或者存储云。 OpenStackd开源项目由社区维护,包括OpenStack计算(代号为Nova),OpenStack对象存储(代号为SWIFT),OpenStack镜像服务(代号Glance)的集合。 OpenStack提供了一个操作平台,或工具包,用于编排云。
所以从部署上来说部署Nova、Swift、Glance就是前面说的Compute、Object Storage、Image Service。
计算(Compute)是一个云控制器,用来启动一个用户或一个组的虚拟实例,它也用于配置每个实例或项目中包含多个实例为某个特定项目的联网。计算模块可以出现web 接口进行管理一组或者多组虚拟化服务群。
对象存储(Object Storage)是一个在具有内置冗余和容错的大容量系统中存储对象的系统。对象存储有各种应用,如备份或存档数据,存储图形或视频(流媒体数据传输到用户的浏览器),储存二级或三级静态数据,发展与数据存储集成新的应用程序,当预测存储容量困难时存储数据,创造弹性和灵活的云存储Web应用程序。
镜像服务(Image Service)是一个查找和虚拟机镜像检索系统。就是我们运维所说的操作系统镜像或者特定数据存储空间。要快速创建多个类似的OS时,默认的操作系统模板而已。
Openstack基础架构云的功能特点:
1. 允许应用用户注册云服务、查看使用情况以及账单。(适合VPS在线下单与帐务管理)
2. 允许开发商和开发人员创建和存储自定义的镜像。(适合VPS提供商自己创建VPS系统模板)
3. 允许开发商和开发人员启动、监控、停止虚拟机实例。(适合VPS提供商对客户帐务及资源管理)
4. 允许操作人员配置和操作云基础设施。(适合vps管理员与客户对基础云管理操作配置)
具体的部署以及管理相关手册请看http://www.openstack.org/
后续会测试openstack!