从 Linux 的角度探讨云计算,并发现一些最新颖、最流行的基于 Linux 的解决方案 —— 特别关注一些可以带来环境效益的选择。
我们已经在大量场合中从不同的角度讨论了云计算。对于嵌入式 Linux 工程师和爱好者,云计算的一个令人兴奋的方面就是它在瘦客户机上的应用。
云计算的一个基本概念就是利用通过 Internet 得到的资源。通过综合功能有限的客户机,云计算在很大程度上类似于借助 LAN 的客户机-服务器计算,使用了哑(dumb)终端或曾经十分流行的瘦客户机。(“瘦” 的含义是这些设备本身只有有限的处理能力(或根本没有处理能力),它们依赖于服务器上的处理能力)。
由于必须通过网络传输大量数据,带宽成为了限制因素。在 20 世纪 90 年代中期,图形化瘦客户机风靡一时,但是由于无法满足带宽需求,它们的应用在很大程度上仍然限制在 LAN 中。对于 Internet 来说,速度还有待提高。但是即使面对这样的限制,集中化 — 特别是硬件成本,因为计算机较贵而瘦终端很便宜 — 带来的好处仍然值得人们做出权衡。
网络计算
随着高速 Internet 访问的快速发展以及 Internet 基础结构自身功能的不断完善,不再需要作出上述的权衡。迁移到更高的吞吐量使各种有趣的技术变得可行。
现在,可以使用一个 Web 浏览器来在远程服务器上执行任务,而在以前这只能通过本地机器上托管的软件来实现 — 即使是一些页面布局或图像编辑等图形化操作。大量公司创建服务来满足需求。想象一下您在本地执行的任何任务,而一些位于其他位置的公司在线提供这种服务,并且很可能是免费的。
这一范例为通过网络访问信息的新方法铺平了道路,包括全新的软件和设备。不再使用哑终端,不再存在非常瘦的客户机。对于某些人来说,“瘦” 的定义已经得到了扩展,包含可以访问 Internet 的任何系统,而与总体功能无关:手机、netbooks 和移动 Internet 设备(MID)等新式设备,甚至重新设计的老式桌面和笔记本电脑。如果服务器在功能、内容和连接性方面能够达到和 Internet 相同的程度,那么所有客户机都属于瘦客户机。
大部分行业分析师都认为瘦客户机的应用 — 特别是手机 — 得到了急剧增长。事实上,在不久的未来,对于大部分人来说,瘦客户机将成为访问 Internet 的主要手段。
正如 John Gage 在 1984 年所预测的那样,网络最终演变成为计算机。
底线
然而,有用性通常并不是决定能否得到广泛采用的主要因素。在与价值有关的绝对成本和相对成本方面可以做出更加精确的判断(特别是考虑在发展中国家进行采用时)。客户机的 “胖瘦” 程度与它的成本有直接关系,因为功能较弱的系统在成本方面要低一些。类似地,基于云的软件的成本直接关系到它是否能够得到大规模采用。
创新的市场和成本价值比
云计算以及瘦客户机等支持技术正在促使组织考虑采用不同的投资和营销方法。例如,One Laptop Per Child (OLPC) 生产价格极其低廉的设备(目前价位在 US$200 左右),开发与教育有关的软件,并且为了在此前不具备任何 Internet 访问或技术培训的国家中创造教育机会,营销目标指向了发展中国家的政府,而不是个人。虽然这种行为必然会为公司带来丰厚的收益,但是,总体来说,它对于整个世界都是有益的。
OLPC 的案例也表明了价值和成本的关系的重要性。考虑 “胖” 客户机的总体成本。想像一名在咖啡馆使用笔记本电脑工作的技术作家。笔记本电脑中可能包含用于完成项目所需的所有资源 — 文字处理程序、页面布局程序、用于处理插图和图例的绘图工具、用于处理 XML 和 PDF 的转换工具 — 所有都包含在笔记本电脑中,这台笔记本电脑可能价值 2,000 美元,并且具有与桌面电脑类似的功能。软件的价格可能接近系统本身的价格,从而导致最终的总投资达到 4,000 美元。
相比之下,假设这个技术作家在同一家咖啡馆中使用的是瘦客户机 — 一种更小巧、资源有限的系统,其价格可能只有前面提到的昂贵笔记本电脑的十分之一。这要归功于云中提供的软件和存储,这个瘦客户机可能没有活动部件,只有一个非常简单的处理器、仅够运行现代 Web 浏览器的资源,以及快速的网络连接,但是这名技术作家却可以拥有大量资源,甚至可能要比本地用户拥有更多的资源,并且还拥有了良好的安全性,他或她能够知道在电池没电或笔记本电脑被盗的情况下,所做的工作是否能够保存下来。
与使用本地机器相比,云中的可用软件可以生成相同品质的文档,对最终的工作成果也采用同等程度的控制,但是它是完全免费的,同时得到了企业采用、广告宣传或其他一些创新的盈利过程。用户的总投资只有 200 美元。
云的特征
围绕云计算的瘦客户机的最佳操作环境具有以下特征:
高度可定制
廉价的甚至免费的操作系统
所有必需的应用程序,廉价的或免费的
联网功能被内置到操作系统内核中
足够小巧,可以放入到小型设备中
提供了足够的灵活性和功能性来运行完整的笔记本电脑
十分省电,可以最大限度地延长电池寿命
Linux 符合所有这些标准。它被应用于移动领域、企业领域和嵌入式领域,包括图书阅读器和 set-top 盒等专用消费设备。并且通过实现虚拟化,Linux 还可以运行针对 Windows?、Mac OS X 和其他操作系统构建的应用程序。
Linux:面向云的操作系统
Linux 已经发展成熟,并且已经可以作为嵌入式操作系统使用;它的免费性 — 在成本和免版税许可方面 — 彻底改变了以前只由少数几家公司统治的市场,这几家公司都要求严格按照使用单位交付版税。Linux 现在提供了实时支持以及结构化驱动支持,它的灵活性是其他专有实时操作系统所无法比拟的,而相关应用程序的可用性也是前所未有的。Linux 构成了至少 4 个新的 netbook 操作系统的基础,引领了智能手机的爆炸性增长,并且预计在未来 5 到 10 年内将继续扩展市场份额。
Linux 的灵活性、开发人员控制力、电源管理实用工具以及整体的稳定性使它非常适合老式的、可循环利用的系统。通过加载 Linux 来替代(或补充)主机操作系统,可以使老式机器焕发新的活力。
访问云的应用程序
应用程序是什么?它指的是云访问过程中除操作系统以外的组件,并且这里还必须考虑成本。云使瘦客户机成为可能,但是降低成本的关键是限制运行瘦客户机的软件的成本。
大多数开发人员都知道,目前一些功能最强大的面向网络的应用程序是完全免费的,包括 Web 浏览器(比如 Firefox、Opera 和 Chrome)、电子邮件软件(比如 Thunderbird 和 Evolution)、即时消息传递(比如 Pidgin 和 Trillian),以及多平台应用程序环境(比如 Java? 技术)。仅综合这四种应用程序类型将构成一个强大的瘦客户机,并且是完全免费的。
然而,需要注意,免费的、开源的操作系统和应用程序并不意味着可以构成一个完全免费的设备。正如著名的开源开发人员 Jamie Zawinski 曾经说过的一句名言一样:“免费软件只有在您的时间无法创造价值的情况下才是免费的”。您必须在免费软件的基础上付出一定的劳动来设计和实现系统,就好象您在开发专有软件时所必须做的工作一样。但是,由于基本产品是免费的,并且可以获得它的源代码,因此在这段时间内从免费软件获得的价值要远远高于付费软件,即使此过程本身花费的时间更长。
因此,嵌入式 Linux 开发人员的数量目前已超过了 100000 名,这并没有什么好奇怪的,并且这个数字还在增长。
目前存在哪些瘦客户机?
本小节将介绍目前市场上出现的几种类型的瘦客户机。其中许多客户机都属于新设备,仍然在客户和企业中寻找它们的缝隙市场。所有这些客户机都具有一些相同的特性:它们本身只具备较低的存储和处理能力,用来执行相关的功能,它们全部围绕云计算设计,并且全部运行在基于 Linux 和其他开源软件的操作系统之上。
Netbooks
netbook 是一种体型小巧、处理能力较低(按照现代标准衡量)但功能全面的笔记本电脑,通常支持无线上网。Netbooks 被设计为作为瘦客户机使用,并且大部分都不具备风扇或磁盘驱动。
netbook 的例子包括 OLPC XO、Asus EEE PC 和 MSI Wind。大部分 netbook 运行完整的 Linux 发行版,比如 Fedora 或 Ubuntu,但是也有一些使用了针对它们量身定做的发行版,比如 OLPC 的基于 Linux 的 Sugar 操作系统,这是由教育者们作为学习环境而开发的。Sugar 界面也可以运行在标准的 Windows 或 Apple 系统之上(参见 参考资料 中的链接,获得更多信息)。
MID
移动 Internet 设备(MID)是一种非常小巧的设备,它带有触摸屏,有时可以选择安装一个微型键盘。MID 有时也被称为超移动(ultra-mobile)PC(UMPC),MID 支持无线上网,并且专门针对移动应用设计(它们的大小和手机相仿)。netbooks 和 MID 之间的主要区别在于体积大小,因为两者通常使用相同的处理器,但是 MID 的功能总体来说要弱一些:它们使用更少的存储、更少的内存,并且屏幕也更小。
MID 的例子包括 Nokia N810、Sony Vaio P 和 Acer Aspire ONE 系列。几乎所有 MID 设备都运行在各种 Linux 版本上。特别是,Nokia 设备运行 Maemo,这是一种综合性内核和中间件平台,其用户环境比较有限并且进行了优化,可以保持应用程序资源的可用性,但是一些开发人员还创建了替代的桌面环境。还可以使用 Ubuntu MID Edition,它可以与 Moblin 一起构建在基于 Intel? 的中间件集之上,从而生成一个功能强大的操作环境。
智能手机
这些发展迅速的手机最初是作为用于读取电子邮件并浏览 Web 的企业设备,后来变得十分流行。许多智能手机都附带了小键盘以及快速、持久的 Internet 连接,这得益于 2.5G 和 3G 手机数据网络的巨大发展。
带键盘的智能手机的例子包括新的 Palm Pre、HTC G1 和 OpenMoko 项目。不带键盘的智能手机有 Motorola Krave ZN4、Samsung Anycall SCH-i859 和 Emblaze Mobile Edelweiss,以及来自法国公司 Purple Magic 的 Purple Magic 参考设计。所有这些手机都使用 Linux 操作系统。
最近发布了许多运行各种 Linux 版本的新型手机设计。专门针对智能手机设计的 Linux 发行版包括 Android(Google 产品)和基于 LiMo 的软件,LiMo 是一家智能手机标准组织。
专用设备
一些专用设备的主要功能还需要依赖网络。电子图书阅读器必须通过某种方式下载图书:Amazon Kindle 使用一种基于手机的网络连接来直接连接到 Amazon 的服务器。(注意 Kindle 运行的是 Linux)。其他专用的、带有网络功能的设备包括 TiVo 数码视频记录器(DVR)和 Roku Netflix Player 视频流 set-top 盒,这两者都运行 Linux。
混合设备
目前市场上出现了一种新的设备,可能最好将其称为混合式云计算机。它是一种标准的办公式笔记本电脑,提供了一个有趣的特性:基于 Linux 的瘦客户机被直接构建在硬件中,共享键盘、屏幕和网络连接。在一个机箱中包含两台计算机看上去有些奇怪,但是其优点是显而易见的,瘦客户机启动后可以像手机一样立即连接到网络,使用标准电池可一直使用 18 个小时,并且在休眠后,用户可在需要时启动并进入到更大的机器中。这是一种真正的具有本地备份的云计算机。
当前惟一一款混合式设备是 Dell Latitude E4200/E4400 系列(这种功能被称为 Latitude ON),但是在未来计划推出更多类似设备。
更加环保的云
云计算和使用基于 Linux 的瘦客户机都可以带来环保效益。
云计算集中使用资源,这意味着所有硬处理都出现在云中某个位置中的大型的、快速的机器上。一些公司 — 特别是 Google — 将这个概念作为核心理念,将服务器集群放到在物理位置上接近发电站的位置,比如 Oregon 和 Eemshaven。Netherlands(接近一个大型风车发电站)。由于在传输中会损失大量电能,因此这种方法不仅环保,并且还对公司十分有利。Google 还拥有浮标式波浪发电服务器集群的专利(非常著名),该服务器集群不仅可以和发电站位于相同位置,而且在资金上也完全可以承受得起。
瘦 Linux 客户机还有其他好处。首先,它们非常 “瘦”,这意味着它们包含低耗电的硬件,因此要比价格高昂的笔记本更加省电。其次,它们运行的是 Linux,它提供了许多电源管理优势,即使是用于老式硬件。
再次,也是最为重要的一点,Linux 可以在任何位置运行。不必将旧的计算机扔到到电子污染废品站,而是为它提供全新的、便宜的硬盘 — 或从 CD 或 USB flash 驱动(UFD)启动 — 并将计算机重新配置为瘦客户机。