浅谈基于OpenStack的云计算平台的部署

2016-12-27 13:20游俊慧
科学与财富 2016年29期
关键词:计算资源租户开源

摘要:本文介绍了OpenStack云平台的基本功能及组成,阐述了其一般部署流程及部署特性,可为OpenStack云平台部署的实际应用提供具有一定价值的参考。

关键词:OpenStack;云平台

1. 引言

随着云计算技术的发展,无论是资源利用率还是弹性分配计算资源的能力,云计算架构都明显优于传统计算资源架构[1]。OpenStack作为一个开源的云计算管理平台,在云服务中属于基础设施服务(IaaS),简单地理解就是主要提供硬件资源方面的服务。OpenStack由美国国家宇航局和Rackspace合作研发,其主要目标是管理计算资源、存储资源和网络资源等。OpenStack云管理平台对外向各个租户即企业等机构提供服务,这些机构无需建设自己的机房,无需购买设备,更不需承担设备升级维护的费用,只要向给它提供云服务的企业按需、定期支付云计算资源使用费用即可。这种IT资源使用模式在长远看来将更加节约运营成本,因此这也使得云计算发展成为一个趋势。由于OpenStack的开源特性及其对不同类型云环境的广泛支持,使其被众多厂家认可并逐渐成为云平台架构中的主流[2]。

2. OpenStack的功能及组成

OpenStack采用模块化设计, 其8大核心项目组件包括:提供计算服务的Nova;支持多租户的分布式对象存储组件--Swift;负责注册、检索、管理虚拟镜像文件的Glance;提供组件间消息认证服务的Keystone;提供灵活物理网络管理服务的Neutron;提供可预定义的云部署服务的Heat;执行volume等相关功能的块存储组件Cinder;提供用户Web访问界面的Dashboard组件Horizon。这些项目组件可组合在一起为租户提供云架构服务,也可分开独立工作,为用户提供云存储、镜像、操作系统、虚拟化等服务[3]。

3. OpenStack的部署

3.1 部署的特点

部署OpenStack云平台时需要考虑到实际的应用环境,一般需要满足以下3个条件[4]:

(1)扩张容易:由于实际应用可能由于业务的增加而增加,扩张性的部署架构会带来严重的后遗症。此外,部署是否简单方便也影响着扩张的难度。

(2)维护简单:当节点呈数量级上升后,维护的难度亦会随之增加。

(3)高稳定性:高可靠性的架构可提供持续稳定的服务。

为便于阐述,以下的部署主要在主控节点和计算节点两种节点上进行。其中,主控节点运行Dashboard、Keystone、MySQL、RabbitMQ、Swift Proxy、Cinder API、Quantum Server、Glance和Nova API服务,这些服务仅提供Web UI、Restful API和安全认证等功能,不参与实际操作;计算节点运行Nova Compute、Quantum Agent、Cinder Volume和Swift Storage Node服务,这些服务完成创建虚拟机、建立存储设备及虚拟网络等实际操作。

以上部署的优点在于:

(1)结构清晰:只有两种节点,每种节点固定运行某些服务。

(2)部署容易:新加入的计算节点只需部署相应的4种服务即可。

(3)维护简单:只需要知道节点类型,即可测试相应的服务。

3.2 部署流程

实际情况下部署通常涉及多个节点,即多个物理机与虚拟机,因此应准备足够的物理资源以供使用。主控节点由于需要运行更多服务,其配置应略高于计算节点。

3.2.1 准备工作

首先,为创建虚拟机应在物理节点上做好相应准备:在物理节点上安装虚拟化所需要的一系列软件包,下载安装包并建立目录树,准备好虚拟机磁盘,即将虚拟磁盘文件复制到/cloud/_base目录下,形成相应的目录树结构。检查主机网络配置保证主机网络的正常运行。

3.2.2 创建Repo Server

接下来建立虚拟机Repo Server,运行如下脚本:

cd/cloud

./vm.sh repo-server -d

脚本运行成功之后,将会自动运行创建的虚拟机。如有需要,可适当修改vcpu的数量和虚拟内存的大小,vcpu的数量应根据物理CPU的核与线程数来决定,通过cat/proc/cpuinfo可查看物理CPU的详细参数。

完成以上步骤后使用$virsh list -all 和$virsh vncdisplay repo-server检查虚拟机是否正常启动运行。

在同一节点上搭建小型的apt-get系统包源以及python包源,以避免apt-get因节点无法正常访问网络而不能使用,随后修改相关配置即可。

3.2.3 创建控制节点

首先利用cd /cloud和 ./easy.sh m-controller -d创建控制节点的虚拟机并设置网卡,配置成功后修改localrc配置文件中的PHP_HOST项值为192.168.111.4。

为方便局域网节点复制安装包,统一配置文件,在repo-server上建立一个供局域网节点使用的NFS目录。

后期的工作则是针对MySQL、RabbitMQ、Keystone、Swift Proxy、Glance、Cinder、Quantum Server、Nova API、Dashboard服务配置localrc文件,并安装相应的服务。

3.2.4 创建计算节点

创建计算节点的前期工作与创建控制节点一样,包括创建虚拟机和配置网卡。其后则是安装Nova Compute、Quantum Agent、Cinder Volume、Swift Storage服务。

4. 结论

OpenStack相较其他的开源云计算平台而言,具备模块松耦合、组件配置灵活、二次开发容易等优势,其未来在各行各业的发展空间不容小觑,有着广阔的发展前景。然而,若要更好地满足不同阶段、不同用户的要求,仍需对OpenStack如何提供更具弹性的计算服务的问题进行深入研究,以便为不同的实际需求提供软硬件资源、系统架构与实际环境相匹配并能最大限度提高资源利用率的云计算环境。

参考文献:

[1] 万宏凤. 基于OpenStack的教学云计算平台的构建与应用[J]. 中国高新技术企业, 2015(20): 45-46.

[2] 金永霞, 孙宁. 基于OpenStack的云计算实验平台建设与应用[J]. 实验技术与管理, 2016(6): 145-149.

[3] 武佳宁. 基于OpenStack的云平台虚拟集群部署设计[J]. 微型电脑应用, 2016(32): 15-17.

[4] 戢友. OpenStack开源云王者归来--云计算、虚拟化、Nova、Swift、Quantum与Hadoop[M]. 北京: 清华大学出版社, 2014.

作者简介;

游俊慧(1983.11--),女,汉族,广东佛山人,讲师,硕士,主要从事计算机教学

猜你喜欢
计算资源租户开源
基于模糊规划理论的云计算资源调度研究
基于多租户隔离的云安全建设
改进快速稀疏算法的云计算资源负载均衡
五毛钱能买多少头牛
基于Wi-Fi与Web的云计算资源调度算法研究
耦合分布式系统多任务动态调度算法
基于MVC模式的多租户portlet应用研究*
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0
开源计算机辅助翻译工具研究