基于开源软件的高校云计算试验环境部署
2015-06-23孙涛
孙 涛
(安徽电子信息职业技术学院,安徽 蚌埠 233030)
基于开源软件的高校云计算试验环境部署
孙 涛
(安徽电子信息职业技术学院,安徽 蚌埠 233030)
云计算作为一种新的互联网技术和互联网产业模式提供方案,能够帮助用户低成本方便的获取弹性可扩展的计算资源。随着云计算越来越多的在教育、政务、商业等领域的运用,也对云计算教育产生更多的需求。本文基于开源云计算软件,探讨了搭建课堂云计算实验平台的方案,用以满足高校相关教学需要。
开源软件;云计算;Openstack
一、云计算相关技术
(一)技术介绍
云计算是一种基于互联网实现的计算方式。和其他计算方式的区别在于使用这种方式,可以将计算资源、存储资源等资源共享,被共享的软件、硬件资源以及信息,能够按照用户需求,提供给具体的终端。
根据提供服务层次的不同,云计算由以下三个部分组成:
基础设施即服务(IaaS)
平台即服务(PaaS)
软件及服务(SaaS)
以上三者之间的关系如图1所示:
图1
IaaS平台的作用是将具体的计算资源如存储、处理能力以及网络等打包为一个虚拟机,将这个打包好的虚拟机作为服务供用户使用,用户能够使用该虚拟机部署和运行各种软件,例如OS和应用程序,是整个云计算服务的基础。
PaaS平台的作用是将用户创建的具体的应用程序,部署到IaaS平台上,这样,用户就可以不用对下层的IaaS进行管理及控制,可以帮助用户专注于应用软件的开发工作。
SaaS平台的作用将运行在基础设施上的应用程序,通过各种终端设备给最终用户来使用,用户无需关心提供服务的云计算基础设施。从而拓展了应用程序的适用范围,增加了应用程序的易用性。
本文就是探讨IaaS的部署方案,为课堂云计算教学搭建基础设施服务平台。
(二)平台方案的选择
从使用成本、参考资料丰富程度等方面,本套部署方案,采用Openstack作为进行IaaS平台的搭建。
1.Openstack基本概念
OpenStack是一个开源项目,该项目最早由NASA(美国国家航空航天局)和Rackspace联合研发并进行推动,与此同时,Openstack也是一个开源社区,该社区已经在世界范围内得到了众多企业以及开发者的广泛使用和支持,这些企业与个人都采用OpenStack作为他们的基础设施即服务(IaaS)资源的前端。
现在,由于本身的快速成长,OpenStack已经得到了各大公司如IBM、AMD、Intel、DELL、思科等支持,发展前景广阔。
2.Openstack构成
Openstack由多个组件协同工作,最终提供基础架构即服务(IaaS)的解决方案。当前的Icehouse版本的Openstack,主要包含了以下核心组件:
Nova:作为计算组件,用于管理和配置计算资源。它是虚拟机管理的核心,支持包括KVM、ESX和Hyper-V等虚拟化技术。
Neutron:作为网络组件,用于管理与OpenStack云计算相关的网络,它允许管理员或用户自定义网络设置,然后按需启用或关闭各种不同的网络类型。
Swift:对象存储组件,用于自动复制存储其中的数据到多个节点,以确保冗余性和容错。如果一个节点出现故障,该对象会自动复制到该系统的新产品的节点。
Cinder :块存储组件,用于存储创建的计算实例。
Keystone:身份和访问管理组件,用于对云计算中用户身份验证和基于角色访问控制。
Horizon:仪表盘组件,用于提供图形化的用户界面。
Glance :镜像服务组件,用于管理、备份、复制或快照虚拟机镜像,并允许其重新创建。
Ceilometer:计量/监控服务组件,用于计费、基准测试及数据统计等功能。
Heat:编排组件,用于帮助开发人员自动化基础设施的部署。
各组件关系如图2所示
图2
3.Openstack特点
兼容性。OpenStack公有云的兼容性特点,能够让企业在将来更方便的将数据和应用进行迁移,从而部署到其他符合安全策略的、经济的以及符合商业标准的公有云中。
可扩展性。当前,主流的Linux系统,包括Fedora、SUSE等都将支持OpenStack。OpenStack在进行公有云的大规模部署时,在可扩展性上有更大的优势,而且也可用于私有云。
灵活性。OpenStack的灵活性,帮助用户根据自己的具体需要部署基础设施,也可以更加容易的为自己的集群扩大规模。
行业标准。全世界越来越多的大公司和机构,包括思科、戴尔、英特尔以及微软都参与到了OpenStack的项目中,而且在全世界采用OpenStack技术的云平台也在不断的增加。
实践检验。实践作为检验真理的唯一标准,OpenStack的云操作系统,已被全球正在运营的大型公有云和私有云技术所验证过。
二、基于Openstack的云计算实验环境设计
(一)环境部署方案
本实验环境采用两台服务器的双节点方式部署IaaS基础架构服务平台,其中一台服务器配置为控制节点(Controller),而另一台服务器配置为计算节点(Computer Node),两台服务器均安装CentOS6.5 —64位操作系统。
(二)安装部署过程
1.控制节点部署
为了同步服务器和其他组件的时间,首先要安装NTP时钟服务,使控制节点作为时间服务器,向其他组件(包括计算节点)提供时钟服务。
IaaS平台的各个组件存储需要数据库支持,这里采用MySQL数据库,需要在控制器上安装MySQL数据库服务端,在访问MySQL的任何其他的节点上安装MySQL客户端软件,通过chkconfig mysqld on命令,保证数据库服务开机自启动。
接下来安装Keystone服务。Keystone是IaaS的重要组件,也是核心组件,它实现了云安全框架的Identity API。
在Keystone服务中包含了5种不同角色,分别为Role、Tenant、Endpoint、Service、User、Role 表示角色, Roles表示一组用户能够访问的资源的权限,Tenant表示租户,它代表各个服务中能够访问的资源的集合。Endpoint,表示“端点”,可以把它理解为一个服务供用户访问的访问点,如果需要使用一个服务,则需要确定它的endpoint。Service表示服务,User表示用户,用来表示可以通过keystone服务来访问的人或程序。
此外,安装Keystone服务后,还不能直接使用,需要进一步完成令牌产生,身份服务定义一系列操作。可以通过keystone user-list 命令来验证安装结果。
下面是glanlce服务的安装,在安装好相应组件后,需要进入MySQL中配置Glance数据库,共Glance服务调用,配置Glance数据库采用如下命令 keystone user-create--name=glance--pass=$GLANCE_PASS--mail=$MAIL_GLANCE_ADDR
Nova服务的安装,nova提供虚拟机的按需分配,因此同样需要MySQL的管理支持,使用如下命令配置MySQL的管理支持openstack-config --set/etc/nova/nova.confdatabase connection mysql://nova:$NOVA_DBPASS@$HOSTNAME/nova
Dashboard的安装,作为图形界面控制台,Dashboard通过web页面访问,需要安装panel、table、view等组件。使用yum方式安装后,即可在浏览器地址栏内,输入控制节点IP地址进行访问,访问界面如图3所示
图3
打开Dashboard的界面,标志这以上控制节点安装配置的完成。至此,控制节点安装完毕。
2.计算节点的安装
在另外一台服务器上,进行计算节点的安装与配置,主要包括NTP时钟配置,Glance镜像存储服务安装,Nova服务安装等,这里步骤较多,就不一一列举,可参考系统自带配置文件完成。
3.网络配置
Icehouse版本的Openstack支持GRE网络,按照具体实验环境的网络拓扑图,分别配置控制节点和计算节点的IP地址,互相能够访问即可。
将以上控制节点、计算节点和网络配置完成后,一个双节点IaaS基础架构平台即搭建完毕,可以在次平台上进行PaaS等相关实验。
三、结语
作为当前新兴的云计算技术,各高校受限于实验条件所限,或商业软件的制约,不能及时的开展相关课程。本文利用开源进行IaaS平台的搭建,为有志于开设相关课程的教师提供参考,同时也为后续PaaS,SaaS课程的开展,提供了一个平台环境,以便于将来相关课程的深入学习。
[1]李知杰,赵建飞.Openstack开源云计算平台[J].软件导刊,2012,(12):10~11.
[2]马文杰.基于Openstack的高校实验云平台的研究与应用[J].绥化学院学报,2014,(12):146~150.
[3]刘鹏.云计算[M].(第2版).北京:电子工业出版社,2011.
[4]OpenStack[EB/OL].http://baike.baidu.com/view/4924215.htm,2014-06-15.
[5]黄志成.开源云计算 OpenStack 在高校计算机机房中的应用研究[J].计算机与现代化,2013,(3) :204~206.
2095-4654(2015)06-0022-03
2015-03-02
TP919
A