如今,IT迎来以云计算为核心的第三次变革,其中云计算又分IaaS、PaaS和SaaS三种服务类型。对于企业和用户来说,它们都更像是“熟悉的陌生人”,人们对这些拗口的名词早有耳闻,但对随之衍生的各类技术非常陌生,尤其是以OpenSatack为代表的开源技术。
大家都知道Openstack火,但是对于它的理解却往往存在误区。实际上OpenStack并不是一个软件或一个硬件,而是无数个软件和数千个硬件,它不是云,也不是一个项目或者一个产品,不是虚拟化系统、API、用户界面,也不是一套标准。从字面上看,Open意为开放,Stack则是堆砌,OpenStack相当于许多开源组件的堆积集合,但1 + 1 > 2,其系统功能也更为强大。
更明确的说,OpenStack实际上是一个大的调度框架,作为一种中间层存在,对不同服务器的虚拟化进行管理、调度和对接。这个框架能够为从单节点的中小企业到在全球都有数据中心的大公司提供IT基础设施。
OpenStack由美国国家航空航天局和Rackspace合作研发,以Apache许可授权,并且是一个自由软件和开放源代码项目,任何人都可以通过Openstack自行建立和提供云端运算服务。
从架构上看,OpenStack不是单纯一个软件,而是由以下五个相对独立的组件构成:虚拟机计算或实例启动控制设备Nova;虚拟机镜像检索及管理系统Glance,支持内置冗余及容错的对象存储机制Swift;负责用户身份服务与资源管理的Keystone;以及基于Django的仪表板接口与图形化管理前端Horizon.
OpenStack推出旨在打造易于部署、功能丰富且易于扩展的云计算平台,其首要任务是简化云的部署过程并为其带来良好的可扩展性。从组件构成来看OpenStack有许多子项目,用于对云计算平台中的各种资源(如计算能力、存储、网络)提供敏捷管理,并提供对相应虚拟化技术的支持。