7.3基础设施
基础设施是一种将虚拟化提供给云计算解决方案的方式。我们以前讨论过虚拟化,它同时跨Internet(使机器运行在远程服务器上并在系统内显示)和本地(使客户的会话运行在本地服务器上并显示在他们的桌面上)。我们将探讨如何标准化虚拟化(一种相当新的计算解决方案)以及主要的参与者如何协同工作,使得各方消除分歧,形成统一的标准。
7.3.1虚拟化
无论何时在计算的世界里发生了什么新鲜事,竞争者都会想方设法使他们的实现成为标准。虚拟化有所不同,主要的参与者协同工作来开发一个标准。在虚拟化环境中,应用程序在服务器上运行并在客户上显示。服务器可以在本地或者在云的另一端。VMware、AMD、BEA Systems、BMC Software、Broadcom、Cisco、Computer Associates International.Dell、Emulex、HP、IBM、Intel、Mellanox、Novell、QLogic和Red Hat全都协同工作,推进开放的虚拟化标准。
(1)扩展虚拟化解决方案。VMware Community Source的开放标准的虚拟化接口的可用性和协作性质旨在加快新的虚拟化解决方案的可用性。
(2)扩展的互操作性和可支持性。用于管理程序的标准接口有望支持顾客与异种虚拟化环境之间的互操作性。
(3)加快新的虚拟化感知的技术的可用性。跨技术堆栈的供应商可以优化现有的技术,并且引入在虚拟环境中运行的新技术。
7.3.1.1开放式管理程序标准
管理程序是虚拟基础设施的基础组件,并且支持计算机系统分区。开放标准的管理程序框架可以通过支持跨可互操作的虚拟化供应商和解决方案的生态系统的创新而使顾客受益。作为最初的一步,V Mware基于其虚拟化产品贡献了现有的接口框架,称为VMHI(Virtual Machine Hypervisor Interfaces),以便用一种行业中立的方式开发这些标准。一致采用开放式接口预期将促进跨异种虚拟化环境的互操作性和可支持性。开放式管理程序标准周围的协作预期将重点关注虚拟化环境的互操作性和性能优化的以下领域:(1)平台的框架,管控标准化操作,并且管理独立的虚拟机环境以及高度动态的、数据中心规模的虚拟化系统的部署。(2)管理程序和另外操作系统之间的协作式虚拟化API。(3)支持跨平台的虚拟机迁移和恢复的虚拟机格式。
7.3.1.2Community Source
Community Source程序给行业合作伙伴提供了一个机会,在免收版税许可证下访问VMware ESX Server源代码。合作伙伴可以贡献出共享的代码或者创建二进制模块,激励和扩展可互操作的、集成的虚拟化解决方案。其思路是结合传统的商业模型和开源开发模型这两者的最佳优点。社区成员可以通过架构委员会参与和影响VMware ESX Server的管控。这种方法将有助于驱动开放式协作,同时仍然可以保留合作伙伴构建有差异的、受知识产权保护的解决方案的能力。对于用户来说,VMware Community Source程序预期将生成一组更丰富、更广泛的合作伙伴解决方案,它们能很好地与VMware虚拟基础设施产品集成在一起。对于合作伙伴来说,源代码访问和开发模型允许他们围绕VMware ESX Server代码高效地交付补充的解决方案或者有差异的产品能力。
7.3.2OVF
作为VMware与其行业合作伙伴努力工作的结果,已经开发了一个名为开放虚拟化格式(Open Vitualization Format,OVF)的标准。OVF描述了怎样以供应商中立的格式打包虚拟器具,以便运行在任何管理程序上。它是一种与平台无关的、可扩展的开放式规范,用于由一种或多种虚拟机组成的虚拟器具的打包和分发。OVF允许顾客和开发人员基于价格、首选参数和功能选择任何管理程序,并且会阻止供应商锁定。这种用于虚拟器具的标准打包和分发格式对于加快虚拟器具的采用很重要。
作为与其他供应商合作的一部分,VMware开发了一个具有下面这些特性的标准:(1)为分发而进行优化;(2)支持虚拟器具的可移植性和分发;(3)支持行业标准的内容验证和完整性检查;(4)提供了用于软件许可管理的基本模式;(5)简单、自主的用户体验;(6)启用一种稳定的、用户喜欢的方法简化安装过程;(7)验证整个程序包,并且能确定是否应该安装每个虚拟机;(8)验证与本地虚拟硬件的兼容性;(9)可移植的虚拟机打包;(10)支持获得特定平台;(11)支持用于虚拟机的广泛虚拟硬盘格式,并且可扩展成处理将来开发的格式;(12)简洁、准确地获得虚拟机属性;(13)供应商和平台独立;(14)不依赖于使用特定的宿主平台、虚拟机平台或另外操作系统;(15)可扩展;(16)被设计成随着行业与虚拟器具技术一起向前发展时可以进行扩展;(17)可本地化;(18)支持多个区域中用户可见的描述;(19)在器具安装期间支持交互式过程的本地化;(20)允许单个打包的器具提供多种市场机会。
VMware将领导该标准的开发似乎是合乎逻辑的,因为它是虚拟化世界中最具优势的力量之一。鼓励他们向合作伙伴开放他们自己的代码,使得该标准成为真正的行业开发标准。
7.4服务
Web服务(Web Service)“是一种软件系统,旨在支持可互操作的机器——机器通过网络进行交互”,它们可以被其他云计算组件访问。Web服务通常是通过网络(如Internet)访问的Web API,并且在宿主请求服务的远程系统上执行。在本节中,我们将探讨一些流行的Web服务,如REST、SOAP和JSON。可以利用许多机制移动和提供数据。两种最流行的方法是JSON和XML。它们都基于领先的行业标准——HTML和JavaScript来帮助递送和展示数据。
7.4.1JSON
JSON是JavaScript Object Notation(Java Script对象表示法)的简写,它是一种轻量级计算机数据交换格式。它用于在一个称为序列化(serialization)的过程中通过网络连接传输结构化数据,也通常用做XML的替代方法。
JSON基础知识。JSON基于Java Script的子集,并且通常与该语言一起使用。但是,JSON被认为是语言无关的格式,并且解析和生成JSON数据的代码可用于多种程序设计语言。当JavaScript涉及数据交换时,如AJAX,这使得它成为XML的良好替代品。