基于OpenStack构建私有云计算平台
2020-01-05许俊渊许建峰
许俊渊,许建峰
(浙江浙能天工信息科技有限公司,浙江 杭州 310000)
0 引 言
云计算作为一个新兴且正在蓬勃发展的技术,其相关技术的发展不仅有效推动了当今IT行业和通信行业的技术发展,也促使越来越多的企业和研究机构关注其云计算的相关技术。其中,私有云计算平台作为云计算技术的重要组成部分,不仅安全性和可控性突出,而且基于OpenStack的私有云计算平台还能够有效提升企业对IT资源的分配利用能力。基于此,对基于OpenStack构建的私有云计算平台进行相关的研究分析具有重要的现实意义。
1 私有云和OpenStack云操作系统
1.1 私有云的概念及特点
1.1.1 私有云的概念
所谓私有云,就是为一个客户单独使用而构建的云计算平台[1]。在实际应用过程中,私有云平台服务的提供者和使用者通常处于一个企业或者组织中。基于该种特性,私有云在实际使用过程中对数据资源的安全性和服务稳定性的控制效果更加突出,可以有效满足企业、组织以及个人的实际使用需求。
1.1.2 私有云的特点
(1)数据安全。相比公有云和混合云来说,私有云平台通常会被构建在防火墙的保护之后,所以外界想要获取私有云中的数据信息,必须突破防火墙的封锁。加上私有云通常为企业自身所构建,所以在实际使用过程中,私有云管理者可以及时有效地发现私有云运行中存在的诸多问题,进而采用针对性的解决办法防止问题再一次出现,促使私有云中的数据信息被攻击的可能性较小,有着较强的数据安全性。
(2)服务质量高。私有云平台通常由企业自身构建,且企业内部员工与私有云同处于防火墙的保护中,促使企业内部员工访问私有云时不会受到网络不稳定等因素的影响,服务质量更高。
(3)不影响现有的IT管理流程。由于私有云同企业内部员工共处于同一个防火墙的保护内,所以企业无需对其制定更多的相关机制,也无需因其而改变现有的工作流程,不会对现有的内部管理造成过多的影响。
(4)提高资源利用率。如今很多公司都有Legacy的应用,且该些应用是企业的核心应用。相比公有云和混合云来说,企业可以结合自身的实际需求构建相应的私有云平台,促使私有云对Legacy应用有着更好的支持效果[2]。此外,现有的很多私有云工具还能够利用企业现有的硬件资源构建私有云,提高企业资源利用率的同时,降低企业私有云构建的实际成本。
1.2 OpenStack概述
OpenStack是由Rackspace和NASA(美国国家航空航天局)合作开发的一种开源云计算平台,可以为私有云和公有云提高可扩展的弹性云计算服务,且有着操作简单、可拓展性强、标准统一等优点[3],已经被IT行业广泛运用与云计算平台开发过程。
2 OpenStack项目的构成单元
OpenStack主要由Nova组件(计算组件)、Swift组件(对象存储组件)、Keystone(身份认证组件)、Horizon组件(仪表盘组件)、Cinder组件(块存储组件)、Quantum组件(网络组件)以及Glance组件(镜像服务组件)7大组件组成。本文将主要介绍7大组件中的Nova组件、Swift组件Keystone组件以及Glance组件。
2.1 Nova组件
Nova组件作为云计算的核心组件,将会为云计算部署的虚拟机实例提供一个框架。基于此框架,用户可以通过可编程的API在自己的云计算系统中构建、销毁以及管理自身的虚拟服务器。因此,Nova组件也常常被用作云计算平台的控制器,用户可以通过Nova组件提供的工具部署云计算系统,进而达成包括创建和运行虚拟化实例、网络管理、控制用户和其他项目等云计算控制管理效果。此外,为能有效保障云计算平台的安全性,用户还可以通过Nova组件将虚拟化实例构建在防火墙的保护后,并以此为基础搭建私有云网络平台,促使私有云能够与外界网络达成有效隔离,增强私有云和虚拟化实例的安全性。
2.2 Keystone组件
在OpenStack平台框架中,Keystone组件提供的API调用接口是身份认证API,进而以此为基础达成用户身份认证、用户信息管理等功能。在实际应用过程中,Keystone组件将发挥服务器纵向或者OpenStack平台框架的注册表效果,通过Keystone组件登录和退出注册服务[4]。此外,任何两个服务器之间的信息交互效果都需经过Keystone组件的身份验证,只有完成身份验证授权后,一台服务器才能够获取另一条服务器中的数据信息或者调用相应的服务。
2.3 Swift组件
在OpenStack平台框架中,Swift组件将会作为一个对象存储的角色,结合其具有的大容量、可拓展性强、内置冗余及容错机制,在正常情况下可以同时为诸多应用提供对象数据存储、新应用整合等服务。Swift组件通常被用于存储静态数据,而该些静态数据通常被长期存储。它存储到Swift组件后,大多时候并不会对其进行迁移或者删除,只会对其进行调整、更新以及检索。Swift组件虽然不具备控制节点或者中心单元,但可以提供更灵活、更具有弹性的内置冗余及容错机制,所以也可以为Glance组件提供镜像储存或者为Cinder提供备份服务。
2.4 Glance组件
Glance组件的主要作用是向用户提高虚拟映像查询、注册获取等功能,并以此实现对云计算映像的管理效果,简化用户对映像管理的操作流程。另外,Glance组件会向用户提供restful API,帮助用户查询镜像的metadata。应用过程中,Glance组件可以将多种虚拟映像存储到不同的存储设备上,然后对其进行统一集中化管理,有效提高映像的可操作性和容错性。
3 基于OpenStack构建私有云计算平台的实现
3.1 私有云计算平台的总体架构
设计的私有云计算平台的基础公用计算操作系统选用Unbuntu Server。从现有的私有云计算平台来看,大多数的私有云计算平台都由控制、计算以及网络3类节点组成。其中,控制节点的作用是监控、协调及管理私有云计算平台。基于控制节点,用户可以对私有云计算平台的各个组件进行有效的控制管理,并达成自身所需要的个性化服务。计算节点的主要作用是负责私有云计算平台末端环节的计算运行工作。网络节点作为私有云计算平台的中间环境,将负责私有云计算平台中各种信息及数据的传输和配置工作。
3.2 私有云计算平台的工作原理
因为设计的私有云计算平台基于OpenStack平台构建,所以在实际设计和工作过程中,私有云计算平台需要采用OpenStack平台中的诸多组件支撑重要功能的实现。其中,Horizon组件将会在私有云计算平台中发挥运行状态的启动和监控效果;Nova组件则会发挥对具体计算任务的执行和调度效果;Glance组件则会发挥对私有云计算平台虚拟映像的存储和检索服务;Swift组件则主要发挥对私有云计算平台数据信息的对象存储服务;Keystone组件的主要作用是在私有云计算平台运行过程中,实现用户信息认证和准入管理效果。
3.3 私有云计算平台的容错系统
从私有云计算平台的工作原理来看,私有云计算平台的设计和运行效果均会与OpenStack平台的诸多组件的实际功能效果息息相关。然而,在私有云计算平台实际运行过程中,因为OpenStack组件的运行信息通常存储在数据库和日志中,所以基于OpenStack平台的内置冗余及容错机制可以有效分析发掘出数据库和日志中的出错信息。但是,这种排除工作通常较为繁琐复杂,且在实施手动修改过程中还会造成投入过高、信息丢失等情况,需要在私有云计算平台中设计容错系统。首先,需要在容错系统中设置异常监控层,专门提取私有云计算平台运行过程中出现的异常数据,并结合数据库存储的诸多信息情况,将异常数据划分成已定义和未定义两大类。其次,完成分类后,对已定义识别的异常信息,系统会将信息发送到异常处理模块,然后通过异常处理模块修正或者替代异常信息;对于未定义识别的异常信息,系统会将信息传递给人机交互界面,并通知管理人员进行手动修正。最后,在完成异常信息处理后,容错系统将会再一次对私有云计算平台的运行数据进行负荷审查,若是发现问题仍旧未能够解决,将会直接通知管理人员进行手动修正。
4 结 论
基于OpenStack构建的私有云计算平台可以为中小型企业提供更加科学合理的弹性计算服务,从而满足企业在不同领域对不同用户的实际需求。本文提出了基于OpenStack构建私有云计算平台的整体架构、工作原理以及容错机制,后续将进一步完成私有云平台的实际控制、计算、网络等阶段的具体部署的相关研究,以期为中小型企业构建私有云计算平台的构建提供参考。