云计算及其虚拟化技术

2022-01-06 10:26:08 浏览数 (1)

云计算的定义和特点

云计算是分布式处理 ( Distributed Computing )、并行处理 ( Parallel Computing) 和网格计算 ( Grid Computing) 的延续和发展,或者说是这些计算机科学概念的商业实现。它不完全是计算,也不纯粹是存储,而是集计算和存储于一身,将服务器、网络、应用程序以及数据库等各种资源通过互联网为用户提供综合服务的一种理念。云计算环境具有以下特点:数据安全可靠、客户端需求低、高灵活度、超大计算能力资源等。

云计算服务层次

典型的云计算分为三个基本层次:基础设施层、平台层、应用层,每一层都可以单独为用户提供服务,进而出现了三种不同的云服务类型 : 基础设施即服务 (IaaS)、平台即服务 (PaaS)和软件即服务 (SaaS),根据所提供服务的类型划分层次的云计算,其层次是可以完全分开的,也就意味着层次中的某一层可以不依赖于其他层单独完成相应的用户请求。

应用程序虚拟化(Application Virtualization),它包括仿真、模拟、解释技术等。Java虚拟机是典型的在应用层进行虚拟化。基于应用层的虚拟化技术,通过保存用户的个性化计算环境的配置信息,可以实现在任意计算机上重现用户的个性化计算环境。服务虚拟化是近年研究的一个热点,服务虚拟化可以使业务用户能按需快速构建应用的需求,通过服务聚合,可屏蔽服务资源使用的复杂性,使用户更易于直接将业务需求映射到虚拟化的服务资源。

应用程序虚拟化是虚拟化大家族中的一个层面的技术,用于提供对集中化应用资源的多用户远程访问,从而将应用作为一种服务交付给用户。在传统的应用程序使用模式下,用户需要对每个应用程序进行安装,并准备足够的运算和存储空间以维持软件的运行,软件的日常备份维护,升级管理等比较麻烦,数据安全性差。

应用虚拟化的基本原理是:分离应用程序的计算逻辑和显示逻辑,即界面抽象化,而不用在用户端计算机安装软件。当用户通过网络访问虚拟化后的应用程序时,用户端计算机把访问的数据请求发送给虚拟化管理服务器,服务器端为用户需要运行应用程序建立单独的会话并进行逻辑运算,然后把产生的结果传送到用户端计算机桌面,用户能够透明地使用服务器上的虚拟化应用程序,获得在本地运行应用程序同样的体验。

虚拟化技术

云计算中的核心技术就是虚拟化,可以说虚拟化是云计算区别于传统计算模式的重要特点。采用虚拟化可以将应用程序的整个执行环境以打包的形式转到云计算平台中的其他节点处,实现了程序的执行环境与物理环境的隔离,使得应用程序的环境改变变得易于实现。正是由于虚拟化技术的成熟和广泛应用,云计算中的计算、存储、应用和服务都变成了资源,这些资源可以被动态扩展和配置,云计算最终才能在逻辑上以单一整体的形式呈现。随着虚拟化技术的不断发展,虚拟化概念已经延伸到 IT 技术的多个层面,目前的虚拟化技术主要包括 : 完全虚拟化、准虚拟化、操作系统层虚拟化、硬件虚拟化、应用虚拟化等 。

应用虚拟化

SaaS 和云计算作为近几年 IT 界讨论的热点,它们之间存在着重要的关系,SaaS 是云计算上的应用表现,云计算是 SaaS后端基础服务保障。SaaS 是一种以互联网为载体,以浏览器为交互方式,把服务端的程序软件传给远程用户来提供软件服务的应用模式。也就是说如今的 SaaS,大家谈论基本上就谈论的是基于浏览器的应用,而正是由于这种方式的限制,导致很多 SaaS 不能提供更为丰富的应用服务,而且在此模式下 SaaS应用的实现过程过于缓慢等,基于以上的缺点,应用虚拟化应运而生,应用虚拟化的出现,解决了信息化的困惑,必将为信息化建设的推进奠定划时代的意义。 应用虚拟化用于提供对集中化应用资源的多用户远程访问,从而将应用作为一种服务交付给用户。其基本原理是:分离应用程序的计算逻辑和显示逻辑,即界面抽象化,而不用在用户端安装软件。当用户访问虚拟化后的应用时,用户计算机只需把用户端人机交互数据传给服务器端,服务器端会为用户开设独立的会话来运行应用程序的计算逻辑,并把处理后的显示逻辑传回用户端,从而使得用户获得如同在本地运行应用程序一样的体验感受。

总体宗旨都是将应用程序的应用界面和实际应用分开,在用户访问服务器发布的应用时,在服务器上会为用户开设独立的会话,占用独立的内存空间,应用程序的计算逻辑指令在这个会话空间中运行,应用程序的界面会通过协议传送到用户计算机上,用户计算机只需要通过网络把键盘、鼠标及其他外设的操作传送到服务器端,从服务器端接收变化的应用程序界面,并且在用户端显示出来就可以获得在本地运行应用一样的访问感受,最终实现用户客户端使用人员不受终端设备和网络带宽的限制,在任何时间、任何地点、使用任何设备、采用任何网络连接,都能够高效、安全地访问服务器上的各种应用软件 。

应用虚拟化的优势

把应用程序从操作系统解放出来,使应用程序不受用户端计算机环境变幻等带来的影响,带来了极大的机动性、灵活性、IT 效率以及安全性和控制力。从用户角度而言,用户无需在自己的计算机上安装完整的应用程序,也不受自身有限的计算条件的限制即可获得极高的用户体验。应用虚拟化在云计算环境中的应用比基于浏览器的应用会更有效、快速地推动SaaS时代的到来,它具有以下几点优势:

(1)应用虚拟化可以实现基于浏览器方式无法实现的应用,让SaaS应用更丰富。从而提供更多的应用给用户。 (2)应用虚拟化可以以最快的速度实现 SaaS,比如:要改写当前的成熟应用,使用浏览器编程,会遇到大量的问题,除了内在逻辑,还有大量的优化,而使用应用虚拟化,无须重写应用,就可以直接将现有应用转变为 SaaS 模式,这也是为什么运营商对使用应用虚拟化技术实现 SaaS 非常有兴趣的原因之一。 (3)虚拟的应用使用和操作都与原来应用没有任何差别,用户体验没有任何变化,所以更容易成功被接受。 (4)可以在同一台计算机上运行不同版本的应用程序,透过应用虚拟化,使用者可以在相同的机器上运行不同版本的相同软件。 (5)应用虚拟化对于终端的广泛支持也会进一步推动其成功,其需要满足一定条件的设备即可,包括电视、pc和客户端等,而并不需要终端必须运行浏览器。

应用虚拟化需要重视的问题

任何技术从萌芽到成型,再到成熟,都需要经历一个过程。应用虚拟化技术在云计算环境中的应用作为一项有着广泛应用前景的新兴前沿技术,处在成型阶段的它,也面临着一些问题。

首先是可用性问题。应用虚拟化会有集中存储在一个地方,使用者透过网络下载,所以在架构设计上,必须考虑网络的负载,以及使用者的并发量;此外,应用虚拟化由于本身的技术框架的限制,并不是每个应用程序均可以进行虚拟化,所以必须考虑其虚拟化之后的可用性问题。

其次是安全问题。使用者对于应用虚拟化只有使用的能力,安全性的管理还是由管理员负责,管理员除了管理一些常用的应用设置外,还需要考虑到对于企业的机密软件是否允许使用者离线使用,避免在公司的网络环境外让有心人士轻易地泄露公司机密。而且在云计算复杂的网络环境下,对于原本就病毒、木马、黑客满天飞的互联网,让架于云计算环境之上的应用虚拟化的安全问题进一步加深。当然,由于虚拟过的应用程序是在虚拟的执行空间运行,所以在一定程度上可以避免恶意软件或者病毒的攻击。

0 人点赞