APP下载

云桌面虚拟化架构的研究与应用

2017-11-02霍旭轮蒋志松赵文

电脑与电信 2017年8期
关键词:中间件服务器端桌面

霍旭轮 蒋志松 赵文

(三亚航空旅游职业学院,海南 三亚 572000)

云桌面虚拟化架构的研究与应用

霍旭轮 蒋志松 赵文

(三亚航空旅游职业学院,海南 三亚 572000)

云技术已经成为时下流行的一种网络应用模式,在信息技术、网络技术不断发展的进程中,云桌面虚拟化已经成商业、家用电子、电器设备应用的主要模式。为此,本文研究桌面虚拟化理论,分别从服务器、Web管理中间件、桌面客户端三个方面设计基于KVM的云桌面虚拟化架构,并对云桌面进行环境搭建和系统配置,部署云桌面虚拟化平台,探讨其应用与效益。结果表明,本文构建的云桌面虚拟化平台具有良好的资源分配均衡性,拥有良好的经济效益和实用价值。

云桌面;虚拟化;云桌面架构;桌面虚拟化平台;KVM

1 前言

随着终端设备轻质化、便携式设计的流行,其自身存储能力和计算能力受到了一定的限制,而大型计算服务器具有海量存储能力和云计算能力,可多线程处理请求,为此利用互联网技术构建云服务提高终端设备的应用能力是新一代计算机应用的发展方向。此外,云计算能够将数据集中管理,提高了数据的安全性。利用云计算技术、虚拟化技术构建的桌面云服务器,其降低了客户端处理数据的压力,提高了客户端设备的应用效率。在服务器端,桌面云构建多个虚拟系统,灵活按照客户端需求分配资源,提高了硬件的利用效率,降低了工作时间和成本。在应用管理方面,由服务器端统一进行虚拟操作系统更新,降低了客户端系统升级的压力,数据的安全保护由服务器端进行管理,避免用户意外造成数据丢失。

2 桌面虚拟化理论概述

2.1 虚拟化技术

虚拟化技术将计算机底层资源逻辑化抽象成为客户端远程应用资源,通过云计算机技术构建服务器端的硬件、软件以及客户端系统应用的中间层,灵活动态地为客户端提供资源,满足上层结构的资源调用。由此可见虚拟化技术是作为一个中间层的架构建立在服务器端与客户端之间。虚拟化体系结构包括寄宿虚拟化和原生虚拟化,寄宿虚拟化是虚拟机运行在已有操作系统之上,通过寄宿的方式获取宿主机器操作系统各种资源,如:VMware Workstation、Virtual Box、Virtual PC等,此种虚拟化体系结构实现简单,但是性能较差。原生虚拟化是虚拟机软件与宿主机器实现虚拟操作系统与物理硬件上的交互,如:Citrix Xen、VMware ESX Server、Hyper-v和KVM,此种虚拟化体系结构实现复杂,但是其性能稳定,扩展性强。

虚拟化技术根据其实现的层次不同划分为程序级、语言级、系统级、硬件级和指令级。程序级虚拟化是采用中间层技术将操作系统与软件之间搭桥,以应用程序的方式实现在不同操作系统中运行同一软件的目的,如在windows操作系统下运行Linux软件或者在Linux操作系统下运行windows软件。语言级虚拟化是在应用层上创建基于特定语言的虚拟机,该虚拟机能够通过编译时应用程序在非物理机上运行,如JVM虚拟机、CLI虚拟机、AVM2虚拟机等。系统级虚拟化以Chroot技术实现Linux/UNIX共享内核,如:Solaris Container、Open VZ等。硬件级虚拟化是在同一台硬件主机上构建多个虚拟机,如:VMware、Citrix Xen、Hyper-V、KVM等。指令级虚拟化是采用模拟器的方式模拟其他计算机系统完成特性的操作,如:Bochs、QEMU。

2.2 桌面虚拟化

桌面虚拟化技术是由服务器端负责数据存储、软件调用和任务计算,客户端只负责在桌面显示服务器端提供桌面应用。由此客户端减小了存储、备份的压力,使系统更加流畅,同时数据的统一升级管理有助于资源的安全性。桌面虚拟化架构包括虚拟化桌面服务器、管理服务器、用户终端三个部分。虚拟化桌面服务器是将服务器配置成为虚拟化硬件设备,利用虚拟化系统建立多个虚拟机,每个虚拟机都具有独立的操作系统,虚拟机能够与客户终端相对应,服务器根据用户需求分配硬件资源。管理服务器是对用户连接服务器和用户申请虚拟机所构建的服务器,其作为服务器与客户端之间的中间件,可以管理多达上千个虚拟机,及众多的客户端。管理服务器能够实时检测物理主机和虚拟主机,判断是否出现硬件满载问题,同时还对接入的用户进行认证和资源调配。桌面终端是通过网络连接虚拟主机的用户终端,每个用户都使用IP地址连接服务器,客户通过认证后使用服务器端提供的虚拟桌面调用服务器资源进行应用。

3 云桌面虚拟化架构设计

3.1 总体设计

云桌面虚拟化架构包括虚拟化服务器、管理中间件、WEB管理应用端和用户桌面终端四个部分,虚拟化服务器包括Libvirt、SPICE服务、QEMU-KVM和虚拟机,管理中间件包括虚拟服务器代理、数据库管理、数据库接口、用户管理,WEB管理包括虚拟化平台监控、虚拟机管理、虚拟机申请管理,用户桌面终端包括终端配置和SPICE客户端。云桌面虚拟化架构如图1所示:

图1 云桌面虚拟化架构

由图1可见,用户桌面终端通过SPICE客户端连接虚拟化服务器的SPICE服务,二者对接后,通过QEMU-KVM进行交互,获取服务器音视频信息。SPICE服务连接Libvirt接口与QEMU-KVM进行交互,获取服务器虚拟机数据,同时对虚拟化服务器进行配置、管理和资源调用分配。管理中间件存储用户信息,WEB管理端通过管理中间件进行虚拟机的应用管理。QEMU-KVM作为云桌面虚拟化服务器的核心,KVM负责物理主机CPU和内存的虚拟化,QEMU负责物理主机I/O的虚拟化。

3.2 服务器设计

云桌面虚拟化服务器采用KVM技术(Keyboard,Video,Mouse)构建虚拟化平台,它利用网络恰当地配置和处理键盘、鼠标及显示器的关系,构建不同操作系统下的多台主机之间切换,实现一台主机、一套操作系统上访问和运行其他主机和不同操作系统中的数据及软件应用。其组件包括Libvirt虚拟化管理接口、QEMU-KVM虚拟化平台和SPICE协议。Libvirt虚拟化管理接口是Libvirt函数库提供的编程接口,可进行虚拟机的创建、修改、删除、控制和监视,Libvirt支持Hypervisor实现通用API接口。使用virsh的shell工具配置生成虚拟机,存储xml格式配置文件,配置虚拟机、网络存储卷、存储池等设备。QEMU-KVM虚拟化平台中QEMU作为虚拟化模拟器可以模拟多硬件架构的CPU指令,Virtio作为I/O虚拟化策略,KVM为虚拟化环境。SPICE协议是远程计算传输协议,其能够处理前端和后端的各种交互,协议包括有SPICE服务端、SPICE协议、SPICE客户端,通过各通道进行服务端与客户端的通信,每种类型的数据都具有特定的通道,由Main通道和Inputs通道进行控制。

3.3 Web管理中间件

Web管理中间件作为桌面虚拟化平台的管理工具可进行虚拟化平台的监控、虚拟机管理、用户管理和数据库管理。虚拟化平台的监控在服务器配置Libvirt服务,通过TCP/SSH调用Libvirt接口对虚拟化服务器的CPU性能、网络配置、内存占用、网络监控、存储管理等进行监控,实现云桌面虚拟化平台服务器的无缝管理。虚拟机管理是通过Libvirt提供的API接口进行虚拟机的创建、配置更改、访问控制、性能监控、虚拟机启动、挂起、迁移、保存、关闭等。用户管理是对云桌面虚拟化平台的使用用户进行管理,其用户主要分为两类,一是管理员用户,二是客户端使用者用户。管理员用户通过管理平台界面接入虚拟机管理,对用户的虚拟机申请和数据库进行管理,客户端使用者用户可进行虚拟机的申请和通过虚拟机调用服务器资源。虚拟机的使用需要对用户账户进行认证,并根据用户对资源的需求进行调度和资源分配,为了保证虚拟化服务器的使用效率,要对虚拟机用户申请数量进行控制,防止虚拟化服务器超过负载导致堵塞问题。对于数据库的管理是对用户信息、虚拟机信息、主机信息、虚拟机申请信息、虚拟机模板信息等进行数据库管理,使用Python对实体信息抽象模型关系映射框架,对数据库操作对象化,实现对实体模型对象的操作和管理。

3.4 桌面客户端设计

桌面客户端是通过安装SPICE协议客户端操作系统实现虚拟化桌面的应用,SPICE客户端软件通过SPICE协议和服务器端进行数据传输,SPICE协议支持Windows、Linux、Android、Web等客户端,可满足用户跨平台应用云桌面。云桌面客户端功能模块包括用户管理模块、桌面显示模块和桌面管理模块。用户管理模块可进行账号的注册和用户的登录,桌面显示模块是对桌面进行更新,桌面管理模块可显示桌面列表。客户端用户通过SPICE传输显示协议连接到云计算管理平台中心进行身份认证,认证成功者可返回获取个人虚拟桌面。

4 云桌面虚拟化系统实施与应用

4.1 环境搭建

云桌面虚拟化系统环境在服务器端需要较高的硬件配置来支持多用户的资源应用,因此在具体实施中本文选择使用联想万全R680 G7服务器,其CPU为Xeon E7-4820,内存为16G、硬盘为300G,千兆网卡,热插拔冗余高效能电源,RAID卡为LSI 9240-8i w/o R5。将RAID卡配置为RAID5的方式存储数据,并将BIOS中的CPU虚拟化支持设置为Enable。采用RHEL64位操作系统,安装Libvirt接口管理虚拟机。

4.2 应用与效益分析

在云桌面虚拟化应用过程中,所产生的成本主要包括前期的环境搭建资本投入和后期的运营维护成本投入。假设云桌面虚拟化环境用户数量为500人,虚拟化服务器配置与传统PC投资维护相同环境,CPU 2GHz、内存2G。实施成本内容包括:服务器搭建、设备采买,计算得到云桌面的成本为227万元,传统PC的成本为150万元。运维成本内容包括服务器能耗成本、终端能耗成本、软硬件维护与系统安全维护成本,计算得到云桌面每月成本消耗3.31万元,传统PC每月成本8.86万元,由此可见长期使用过程中,云桌面的成本有很强的经济优势,并且传统PC受设备老化、配置升级等方面因素的制约,其经济效益远不如云桌面方案。此外在安全方面,传统PC安全环境分散,不易于控制和管理,而云桌面则由服务器端集中管理,提高了数据应用的安全性。

5 结语

通过本文的研究明确了云桌面虚拟化架构的主要组成,包括虚拟化服务器、WEB管理中间件、WEB管理和客户端用户桌面。基于KVM技术设计虚拟化服务器、WEB管理中间件和桌面客户端,阐述其设计过程,并通过环境搭建和实施应用使其满足传统PC环境的应用效果。通过效益分析得出,虽然云桌面应用前期实施投入成本较高,但是其运营维护成本远低于传统PC,具有更加稳定和广阔的发展空间,同时鉴于其维护的安全性高、成本低,云桌面技术是未来计算机应用的主要发展趋势。

[1]郑文娟.云计算环境下实验室桌面虚拟化技术研究[J].信息系统工程,2016(4):59-60.

[2]高杨.基于云计算技术的桌面虚拟化研究[J].科技创新与应用,2015(34):93-93.

[3]唐红梅,郑刚.基于KVM的虚拟桌面基础架构设计与优化[J].计算机科学,2017,44(s1):560-562.

[4]王笑帝,张云勇,刘镝,等.云计算虚拟化安全技术研究[J].电信科学,2015,31(6):1-5.

[5]阚文枭,伍文静,AndreiTsaregorodtsev,等.支持多应用的桌面网格关键技术研究[J].计算机工程与应用,2016,52(23):25-34.

[6]王金海,黄传河,王晶,等.异构云计算体系结构及其多资源联合公平分配策略[J].计算机研究与发展,2015,52(6):1288-1302.

[7]胡金晖,秦智超,石磊,等.空间信息云服务平台架构及应用研究[J].中国电子科学研究院学报,2016,11(1):51-58.

[8]武志学.云计算虚拟化技术的发展与趋势[J].计算机应用,2017,37(4):915-923.

[9]刘夏.云桌面应用研究概述[J].计算机系统应用,2014,23(07):12-16.

[10]刘夏,孙鹏,霍旭轮,等.基于Citrix的云桌面方案[J].计算机系统应用,2016,25(02):93-98.

Research andApplication of Cloud Desktop VirtualizationArchitecture

Huo Xulun Jiang Zhisong Zhao Wen
(SanyaAviation and Tourism College,Sanya 572000,Hainan)

Cloud technology has become a popular network application mode.In the continuous development of information technology and network technology,cloud desktop virtualization has become the main mode of commercial application,home electronic application and electrical equipment application.This paper studies on the theory of desktop virtualization,and designs the cloud desktop virtualization architecture based on KVM from server,Web management middleware,and desktop client respectively.It also builds the environment and system configuration,deploys the cloud desktop virtualization platform,and discusses on its application and benefits.The results show that the cloud desktop virtualization platform constructed in this paper has good resource allocation and balance,and has good economic and practical value.

cloud desktop;virtualization;cloud desktop architecture;desktop virtualization platform;KVM

TP316;TP391.9

A

1008-6609(2017)08-0022-03

霍旭轮(1985-),男,陕西绥德人,学士,助理工程师、助教,研究方向为现代教育技术、计算机应用。

三亚市院地合作科技项目,项目名称:云桌面在三亚酒店业的应用研究,项目编号:2013YD64。

猜你喜欢

中间件服务器端桌面
Linux环境下基于Socket的数据传输软件设计
基于APP在线控制双挤出头FDM桌面3D打印机的研制
桌面云技术在铁路行业中的应用
RFID中间件技术及其应用研究
浅析异步通信层的架构在ASP.NET 程序中的应用
基于Android 平台的OSGi 架构中间件的研究与应用
桌面装忙
基于Qt的安全即时通讯软件服务器端设计
中间件在高速公路领域的应用
当灰尘厚厚地落满了桌面