论文部分内容阅读
网络操作系统又称服务器操作系统,主流系列包括Windows服务器系列和Linux服务器系列。《网络操作系统》是中职计算机网络专业的专业核心课程之一,要上好这门课程要求电脑主机能够安装并流畅运行虚拟机软件,譬如VMware Workstation或者Virtualbox等。据了解,目前大部分学校机房电脑主机仍然停留在4G内存和机械硬盘的硬件水平,比较少学校的机房能够配置8G内存以及固态硬盘的电脑主机,加上机房硬盘老化和还原卡的影响,导致虚拟机软件运行服务器操作系统卡顿,为教师实训教学带来较大的难度,学生实训质量跟不上甚至无法实训。
笔者一直任教《网络操作系统》课程,所在学校也碰到上述的难题,促使笔者不断寻找能够解决《网络操作系统》实训教学的理想方案,最终笔者从Openstack云计算技术中找到思路并开发出实训平台,下面为大家分享基于Openstack云计算技术实训平台在《网络操作系统》教学中的应用。
Openstack是一种基于分布式计算的云计算服务,它能够迅速有效地调配相关的硬件资源来响应系统的应用需求,简单来说就是按需分配,负载均衡。目前Openstack占据了主流的云计算服务市场,它是基于开源的Linux内核,主要搭建在Ubuntu和CentOS两类主流Linux平台上,已有思科、华为、RedHat等多家公司宣布对它进行支持开发,接下来将会有更多更好的版本推出。本文实训平台采用的是OpenstackOcata版本,该版本比较稳定,在生产应用中有比较好的口碑。
1.硬件资源要求低,不依赖宿主机
得益于Openstack强大的云计算能力,实训平台只需要较少的硬件资源即能满足较大的系统应用需求,本实训平台选用的硬件资源均能在电商平台选购组装完成,分为适合Linux和Windows实训两大系列,如下表:
2.部署简单快捷、不受空间限制
本实训平台采用单点部署Openstack,即控制节点Controller,计算节点Compute以及存储节点Storage都部署在同一台服务器上的方案,类似官方的All-in-one(多合一)模式,能够满足随时随地切换到任意机房上课的需求。
3.可行性分析
目前,我校现存14个电脑机房,有四分之三的机房电脑主机老化较严重,但是还能够运行谷歌浏览器以及其他小型程序,机房内局域网传输速度稳定在百兆网络水平。我校计算机专业每班学生平均40人左右,学生对《网络操作系统》学习兴致比较高,特别是Linux服务器系列。综上所述,实训平台恰好能够解决《网络操作系统》机房实训难题,满足学生的学习愿望,保障实训环境稳定统一。
实训平台采用CentOS7.4和Shell脚本来实现自动安装Openstack,新手可以采用官方的DevStack方式来安装,其中有6大组件要安装,分别是计算服务Nova,镜像服务Glance,网络服务Neutron,存储服务Cinder,认证服务Keystone以及Web管理服务Horizon,这里就不具体展开安装过程。由于Openstack是调用Linux底层KVM来实现虚拟化,实训平台安装后要检查修改配置文件/etc/nova/nova.conf中的“kvm_type=kvm”,确保优先调用KVM。安装成功后,用谷歌浏览器登录http://192.168.88.100/dashboard进行管理,主页如图1所示,其中192.168.88.100是管理口网卡的IP,可以自定义为任意网段,默认以管理员admin登录操作。登录进去之后通过四个方面来完善实训平台的构建:
1.制作和上传镜像
实训平台安装完成后要制作各类操作系统的镜像文件,镜像文件采用的是qcow2格式,这一点类似于VMware的虚拟硬盘vmdk文件。我校《网络操作系统》的教学范畴包括Windows服务器系列和Linux服务器系列,因此一共需要制作和上传五个镜像文件,分别是Windows2003.qcow2,Windows2008.qcow2,Windows2012.qcow2,Centos6.9.qcow2和Centos7.4.qcow2。制作qcow2文件時要注意的是Windows系统镜像在安装制作过程中必须加载官方提供的Virtio虚拟硬盘和网卡驱动,才能确保镜像应用后能够正常使用和联网。
2.创建网络和路由
实训平台由两张网卡来负责数据传输,其中一张为管理网卡,负责客户端对实训平台的Web访问和底层SSH管理。另一张为业务网卡,负责实训平台和外部网络的互联。一般来说,机房网络都是采用VLAN的管理方式,实训平台通过创建Flat网络和VLAN网络可以和任意VLAN网段的机房互联,实现快速接入和切换。如图2所示,首先建立一个Flat外部网络,它的网段(例如88网段)和接入的机房网段务必相同,接着建立VLAN55的内部网络,它将为内部虚拟机分配192.168.55.X/24的IP,最后通过配置路由,把Flat网络和VLAN网络通过各自的网关地址192.168.88.200和192.168.55.1转发实现互联成功。接下来只要将接入机房的电脑主机的网关地址重新指定为192.168.88.200即可实现机房电脑直接访问实训平台的内部网络。如果要保持机房主机网关地址不变,则要对机房VLAN重新配置,比较麻烦,此举为最快捷的做法。
3.创建实例类型和实例
实例指的是由镜像生成的虚拟机,实例类型即是虚拟机配置模板,它为批量创建实例提供统一快捷的标准,这一点和VMware的vmx文件有异曲同工之妙。根据我校计算机专业班级平均人数,实训时需要创建的实例数大约45个左右,如果采用Web图形化来创建实例效率相对较低,我们选择采用CLI命令行创建方式,通过编写Shell脚本来快速批量创建实例。创建单个实例时间视镜像文件大小而定,第一次创建实例成功后接下来的实例都是快速生成的。例如,要创建45个最小化安装的CentOS6.9实例,单个实例从创建到运行大约5秒时间,创建45个实例总用时不到一分钟。如果启动已经事先创建好的45个实例费时则小于30秒。而Windows服务器系统因为镜像文件普遍较大,实例的创建时间会稍微长一点,同系列服务器的实例创建时间均大同小异。
4.设置安全访问规则
Openstack默认实例的连接规则是只允许ICMP包的进出,不允许Remote以及SSH等远程服务连接,这样对课堂教学远程操作Windows和Linux会比较不方便,因此我们在实训平台中要添加新的出入访问规则,如添加SSH协议的22端口访问规则满足Linux的远程登录,添加TCP协议的3389端口的访问规则满足Windows的远程接入,这样机房主机便不用依赖宿主机的硬件资源实现远程实训《网络操作系统》。
1.在Linux服务器实训教学中的应用
目前,大部分Linux教材以CentOS6为主,实训教学包括基础命令练习,配置FTP,DHCP,DNS等常用服务以及数据库配置与管理等。按照常规的实训教学,学生只能在VMware中操作,使用实训平台后,通过Xshell5等SSH连接软件在宿主机上便可直接连接到实训平台上的Linux实例,既快捷又稳定。下面以配置FTP服务中某个子实验为例,首先教师在实训平台创建并启动45台CentOS6.9虚拟机(实例),分别命名为CentOS6.9-1,2,3...,并约定实例的编号对应学生的座位号,再通过VLAN55为实例分配对应座位号的IP,最后每位学生只要通过IP地址就可以连接登录到对应的实例上去,开始实训FTP服务配置内容。我们以座位号为26的学生(实例IP地址为192.168.55.26)为例:
第一步,先讓学生在自己登录的实例上修改YUM源让其自动寻找指定的服务器来下载安装包,YUM源repo文件内容的关键语句如下:
baseurl=ftp://192.168.55.200
笔者一直任教《网络操作系统》课程,所在学校也碰到上述的难题,促使笔者不断寻找能够解决《网络操作系统》实训教学的理想方案,最终笔者从Openstack云计算技术中找到思路并开发出实训平台,下面为大家分享基于Openstack云计算技术实训平台在《网络操作系统》教学中的应用。
一、Openstack云计算技术简介
Openstack是一种基于分布式计算的云计算服务,它能够迅速有效地调配相关的硬件资源来响应系统的应用需求,简单来说就是按需分配,负载均衡。目前Openstack占据了主流的云计算服务市场,它是基于开源的Linux内核,主要搭建在Ubuntu和CentOS两类主流Linux平台上,已有思科、华为、RedHat等多家公司宣布对它进行支持开发,接下来将会有更多更好的版本推出。本文实训平台采用的是OpenstackOcata版本,该版本比较稳定,在生产应用中有比较好的口碑。
二、实训平台特色及可行性分析
1.硬件资源要求低,不依赖宿主机
得益于Openstack强大的云计算能力,实训平台只需要较少的硬件资源即能满足较大的系统应用需求,本实训平台选用的硬件资源均能在电商平台选购组装完成,分为适合Linux和Windows实训两大系列,如下表:
2.部署简单快捷、不受空间限制
本实训平台采用单点部署Openstack,即控制节点Controller,计算节点Compute以及存储节点Storage都部署在同一台服务器上的方案,类似官方的All-in-one(多合一)模式,能够满足随时随地切换到任意机房上课的需求。
3.可行性分析
目前,我校现存14个电脑机房,有四分之三的机房电脑主机老化较严重,但是还能够运行谷歌浏览器以及其他小型程序,机房内局域网传输速度稳定在百兆网络水平。我校计算机专业每班学生平均40人左右,学生对《网络操作系统》学习兴致比较高,特别是Linux服务器系列。综上所述,实训平台恰好能够解决《网络操作系统》机房实训难题,满足学生的学习愿望,保障实训环境稳定统一。
三、实训平台的构建
实训平台采用CentOS7.4和Shell脚本来实现自动安装Openstack,新手可以采用官方的DevStack方式来安装,其中有6大组件要安装,分别是计算服务Nova,镜像服务Glance,网络服务Neutron,存储服务Cinder,认证服务Keystone以及Web管理服务Horizon,这里就不具体展开安装过程。由于Openstack是调用Linux底层KVM来实现虚拟化,实训平台安装后要检查修改配置文件/etc/nova/nova.conf中的“kvm_type=kvm”,确保优先调用KVM。安装成功后,用谷歌浏览器登录http://192.168.88.100/dashboard进行管理,主页如图1所示,其中192.168.88.100是管理口网卡的IP,可以自定义为任意网段,默认以管理员admin登录操作。登录进去之后通过四个方面来完善实训平台的构建:
1.制作和上传镜像
实训平台安装完成后要制作各类操作系统的镜像文件,镜像文件采用的是qcow2格式,这一点类似于VMware的虚拟硬盘vmdk文件。我校《网络操作系统》的教学范畴包括Windows服务器系列和Linux服务器系列,因此一共需要制作和上传五个镜像文件,分别是Windows2003.qcow2,Windows2008.qcow2,Windows2012.qcow2,Centos6.9.qcow2和Centos7.4.qcow2。制作qcow2文件時要注意的是Windows系统镜像在安装制作过程中必须加载官方提供的Virtio虚拟硬盘和网卡驱动,才能确保镜像应用后能够正常使用和联网。
2.创建网络和路由
实训平台由两张网卡来负责数据传输,其中一张为管理网卡,负责客户端对实训平台的Web访问和底层SSH管理。另一张为业务网卡,负责实训平台和外部网络的互联。一般来说,机房网络都是采用VLAN的管理方式,实训平台通过创建Flat网络和VLAN网络可以和任意VLAN网段的机房互联,实现快速接入和切换。如图2所示,首先建立一个Flat外部网络,它的网段(例如88网段)和接入的机房网段务必相同,接着建立VLAN55的内部网络,它将为内部虚拟机分配192.168.55.X/24的IP,最后通过配置路由,把Flat网络和VLAN网络通过各自的网关地址192.168.88.200和192.168.55.1转发实现互联成功。接下来只要将接入机房的电脑主机的网关地址重新指定为192.168.88.200即可实现机房电脑直接访问实训平台的内部网络。如果要保持机房主机网关地址不变,则要对机房VLAN重新配置,比较麻烦,此举为最快捷的做法。
3.创建实例类型和实例
实例指的是由镜像生成的虚拟机,实例类型即是虚拟机配置模板,它为批量创建实例提供统一快捷的标准,这一点和VMware的vmx文件有异曲同工之妙。根据我校计算机专业班级平均人数,实训时需要创建的实例数大约45个左右,如果采用Web图形化来创建实例效率相对较低,我们选择采用CLI命令行创建方式,通过编写Shell脚本来快速批量创建实例。创建单个实例时间视镜像文件大小而定,第一次创建实例成功后接下来的实例都是快速生成的。例如,要创建45个最小化安装的CentOS6.9实例,单个实例从创建到运行大约5秒时间,创建45个实例总用时不到一分钟。如果启动已经事先创建好的45个实例费时则小于30秒。而Windows服务器系统因为镜像文件普遍较大,实例的创建时间会稍微长一点,同系列服务器的实例创建时间均大同小异。
4.设置安全访问规则
Openstack默认实例的连接规则是只允许ICMP包的进出,不允许Remote以及SSH等远程服务连接,这样对课堂教学远程操作Windows和Linux会比较不方便,因此我们在实训平台中要添加新的出入访问规则,如添加SSH协议的22端口访问规则满足Linux的远程登录,添加TCP协议的3389端口的访问规则满足Windows的远程接入,这样机房主机便不用依赖宿主机的硬件资源实现远程实训《网络操作系统》。
四、实训平台在实训教学中的应用
1.在Linux服务器实训教学中的应用
目前,大部分Linux教材以CentOS6为主,实训教学包括基础命令练习,配置FTP,DHCP,DNS等常用服务以及数据库配置与管理等。按照常规的实训教学,学生只能在VMware中操作,使用实训平台后,通过Xshell5等SSH连接软件在宿主机上便可直接连接到实训平台上的Linux实例,既快捷又稳定。下面以配置FTP服务中某个子实验为例,首先教师在实训平台创建并启动45台CentOS6.9虚拟机(实例),分别命名为CentOS6.9-1,2,3...,并约定实例的编号对应学生的座位号,再通过VLAN55为实例分配对应座位号的IP,最后每位学生只要通过IP地址就可以连接登录到对应的实例上去,开始实训FTP服务配置内容。我们以座位号为26的学生(实例IP地址为192.168.55.26)为例:
第一步,先讓学生在自己登录的实例上修改YUM源让其自动寻找指定的服务器来下载安装包,YUM源repo文件内容的关键语句如下:
baseurl=ftp://192.168.55.200