OpenStack是一个旨在为公共及私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设施即服务(简称IaaS)资源的通用前端。OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家利用OpenStack前端来设置及管理自己的公共云或私有云。
OpenStack 是由 Rackspace 和 NASA 共同开发的云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service, IaaS)。OpenStack 包含两个主要模块:Nova 和 Swift,前者是 NASA 开发的虚拟服务器部署和业务计算模块;后者是 Rackspace开发的分布式云存储模块,两者可以一起用,也可以分开单独用。OpenStack 是开源项目,除了有 Rackspace 和 NASA 的大力支持外,后面还有包括 Dell、Citrix、 Cisco、 Canonical 这些重量级公司的贡献和支持,发展速度非常快,有取代另一个业界领先开源云平台 Eucalyptus 的态势。
OpenStack七大套件功能介绍:
OpenStack每个版本都有不同的名称。在2010年10月,OpenStack第一版诞生,名为Austin,而在这个版本,仅有运算套件Nova与对象储存套件Swift。
随着OpenStack发展,各领域厂商加入,不同的套件推陈出新,陆续被加入在新的版本内。目前最新版名为Grizzly,就包含了上述的7个套件,并还有2个套件正处于开发阶段,分别是Orchestration层整合套件Heat,以及数据监控套件Ceilometer。
OpenStack 七大套件功能介绍:
OpenStack技术架构解析
OpenStack最新版Grizzly共有7个不同功能套件,分别是运算套件Nova、对象储存套件Swift、区块储存套件Cinder、网通套件Quantum、身分识别套件Keystone、镜像檔管理套件Glance仪表板套件Horizon,此图为Grizzly的架构图,简述了套件之间是如何运作的。
运算套件Nova
Nova套件主要提供部署与管理虚拟机器的功能。工程师可利用API开发云端应用程序,而IT管理人员则可透过网页式的接口查看或管理硬件资源运作的状况,并可重起、暂停、调整,甚至直接关闭虚拟机器。
IT人员可将Nova套件部署在多家厂商的虚拟化平台上,目前来说,以KVM和Xen虚拟化平台最为稳定。除了支持不同的虚拟化平台之外,在硬件架构的部份,OpenStack支持x86架构、ARM架构等。另外,Nova套件还支持Linux轻量级的虚拟化技术LXC,能够再切割虚拟机器,分出更多的虚拟化执行环境。
此外,Nova套件还具有管理LAN网络的功能,可程序化的分配IP地址与VLAN,快速部署网络与资安功能。Nova套件还可将某几台虚拟机器设为群组,和不同群组作隔离,并有基于角色的访问控制(RBAC)功能,可根据使用者的角色确保可存取的资源为何。
对象储存套件Swift
Swift套件提供可扩展的分布式储存平台,以防止单点故障的情况产生。使用者可透过API进行存取,可存放非结构化的数据,像是图像、网页、网志等,并可作为应用程序数据备份、归档以及保留之用。
透过Swift套件,可让业界标准的设备存放PB等级的数据量。而且,当新增服务器后,储存群集可轻易的横向扩充。
此外,因为Swift套件是透过软件的逻辑,确保数据被复制与分布在不同设备上,这可让企业使用较便宜的设备,节省成本。
区块储存套件Cinder
Cinder套件允许区块储存设备能够整合商业化的企业储存平台,像是NetApp、Nexenta、SolidFire等。区块储存系统可让IT人员设置服务器和区块储存设备的各项指令,包括建立、连接和分离等,并整合了运算套件,可让IT人员查看储存设备的容量使用状态。
Cinder套件并提供快照管理功能,可保护虚拟机器上的数据,作为系统回复时所用,快照甚至可用来建立一个新的区块储存容量。
网通套件Quantum
Quantum套件是个可扩展、随插即用,透过API来管理的网络架构系统,确保IT人员在部署云端服务时,网络服务不会出现瓶颈,或是成为无法部署的因素之一。
Quantum套件支持众多网通厂商的技术,IT人员可配置IP地址,分配静态IP或是动态IP。而且,IT人员可使用SDN技术,像是OpenFlow协议来打造更大规模或是多租户的网络环境。
此外,允许部署和管理其它网络服务,像是入侵侦测系统(IDS)、负载平衡、防火墙、VPN等。
身分识别套件Keystone
Keystone套件作为OpenStack的身分认证系统,具有中央目录,能查看哪位使用者可存取哪些服务,并且,提供了多种验证方式,包括使用者账号密码、Token(令牌)以及类似AWS的登入机制。另外,Keystone可以整合现有的中央控管系统,像是LDAP。
镜像文件管理套件Glance
Glance套件提供提供硬盘或服务器的镜像文件寻找、注册以及服务交付等功能。储存的镜像文件可作为新服务器部署所需的范本,加快服务上线速度。若是有多台服务器需要配置新服务,就不需要额外花费时间单独设置,也可做为备份时所用。
仪表板套件Horizon
Horizon套件提供IT人员一个图形化的网页接口,让IT人员可以综观云端服务目前的规模与状态,并且,能够统一存取、部署与管理所有云端服务所使用到的资源。
Horizon套件是个可扩展的网页式App。所以,Horizon套件可以整合第3方的服务或是产品,像是计费、监控或是额外的管理工具。