当前位置:文档之家› Google云计算的现状与发展

Google云计算的现状与发展

谷歌云计算的现状与发展摘要:Google作为世界云计算的“领头人”,它在云计算的研究与开发方面做得非常出色,从Google的整体的技术构架来看,Google计算系统依然是边做科学研究,边进行商业部署,依靠系统冗余和良好的软件构架来低成本的支撑庞大的系统运作的,大型的并行计算,超大规模的IDC快速部署,通过系统构架来使廉价PC服务器具有超过大型机的稳定性都已经不在是科学实验室的故事,已经成为了互联网时代,IT企业获得核心竞争力发展的基石。

尽管云计算是个刚刚出现没多久的新词汇,尽管我们还处在在云计算的起跑阶段,但是,我们从Google的与计算技术构架里,就可以获得很多信息,那些信息可能就是我们通向未来互联网全新格局的钥匙。

关键词:云计算Google技术构架云计算是一种商业计算模型。

它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。

我们可以认为:云计算是通过网络按需提供可动态伸缩的廉价计算服务。

提供资源的网络被称为“云”。

“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。

这种特性经常被称为像水电一样使用IT基础设施。

有人打了个比方:这就好比是从古老的单台发电机模式转向了电厂集中供电的模式。

它意味着计算能力也可以作为一种商品进行流通,就像煤气、水电一样,取用方便,费用低廉。

最大的不同在于,它是通过互联网进行传输的。

云计算是并行计算、分布式计算和网格计算的发展,或者说是这些计算机科学概念的商业实现。

云计算是虚拟化、公用计算、IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)等概念混合演进并跃升的结果。

总的来说,云计算可以算作是网格计算的一个商业演化版。

“Google”是美国一家上市公司,于1998年9月7日以私有股份公司的形式创立,以设计并管理一个互联网搜索引擎。

Google公司的总部称作“Googleplex”,它位于加利福尼亚山景城。

Google公司致力于互联网的应用与高新产业的开发。

它在云计算的研发与发展方面,同样走在世界的前列。

2006年8月9日,Google首席执行官埃里克·施密特在搜索引擎大会首次提出“云计算”的概念。

Google“云端计算”源于Google工程师克里斯托弗·比希利亚所做“Google101”项目。

2007年10月,Google与IBM开始在美国大学校园,包括卡内基梅隆大学、麻省理工学院、斯坦福大学、加州大学柏克莱分校及马里兰大学等,推广云计算的计划,这项计划希望能降低分布式计算技术在学术研究方面的成本,并为这些大学提供相关的软硬件设备及技术支持人。

而学生则可以通过网络开发各项以大规模计算为基础的研究计划。

2008年1月30日,Google宣布在台湾启动“云计算学术计划”,将与台湾台大、交大等学校合作,将这种先进的大规模、快速将云计算技术推广到校园。

从以上信息,我们可以看到Google在云计算方面的成果,所以,我们今天就以Google公司为例,来介绍一下它的云计算的发展。

云计算无疑是今年IT技术界最热点的关键词之一。

从谷歌趋势分析来看,国际上Cloud computing是从2007年中期开始成为整个业界关注的重点,在中国云计算是从2008年开始成为中国IT界和通信界关注的核心。

特别是,当中国移动2008年开始关注计算,并推动中国移动相关的业务支撑系统、业务软件平台开始向计算的平台迁移。

使得整个中国IT界、通信界的相关产业力量更加关注计算,同时大家也开始意识到了计算确实可以大大的节省海量计算的总体拥有成本。

当业界谈到云计算的时候,都会第一个想到谷歌Google。

我们日常在使用的Google Search,Google Earth,Goolge Map,Google Gmail,Google Doc等等业务都是Google基于自己计算平台来提供的。

Google也是通过云计算的方式,大量的降低计算成本,使之业务更具有竞争力。

Google原先企业初期阶段,获得的投资有限,只能自己攒机,但是很差的机器不可能发挥服务器的性能和稳定性,于是只有去想该如何提高可靠性,如何利用很多"破烂"机器获得更高的性能。

这就有了云计算的雏形。

今天我们都知道Google的规模,而如果我们不去认清云计算的强大,我们就不知道互联网的未来和规则。

Google在98年的时候被迫发现了这一规则,然后我们看到了聚合的力量,今天微软、IBM、雅虎、百度、亚马逊这些企业看到了规则,于是开始进入云计算领域。

所以我们研云计算,可以系统剖析一下Google的技术构架,这对于我们搭建自己自身的云计算平台有比较好的借鉴意义和标杆意义!由于Google没有官方发布一个自身的技术构架说明。

本文主要的信息都来自互联网中Google最大的IT优势在于它能建造出既富于性价比(并非廉价)又能承受极高负载的高性能系统。

因此Google认为自己与竞争对手,如亚马逊网站(Amazon)、电子港湾(eBay)、微软(Microsoft)和雅虎(Yahoo)等公司相比,具有更大的成本优势。

其IT系统运营约为其他互联网公司的60%左右。

同时Google程序员的效率比其他Web公司同行们高出50%~100%,原因是Google已经开发出了一整套专用于支持大规模并行系统编程的定制软件库。

从整体来看,Google的计算平台包括了如下的技术层次。

1)网络系统:包括外部网络(Exterior Network),这个外部网络并不是指运营商自己的骨干网,也是指在Google云计算服务器中心以外,由Google自己搭建的由于不同地区/国家,不同应用之间的负载平衡的数据交换网络。

内部网络(Interior Network),连接各个Google自建的数据中心之间的网络系统。

2)硬件系统:从层次上来看,包括单个服务器、整合了多服务器机架和存放、连接各个服务器机架的数据中心(IDC)。

3)软件系统:包括每个服务器上面的安装的单机的操作系统经过修改过的Redhat Linux。

Google云计算底层软件系统(文件系统GFS、并行计算处理算法Mapreduce、并行数据库Bigtable,并行锁服务Chubby Lock,计算消息队列GWQ)4)Google内部使用的软件开发工具Python、Java、C++等。

5)Google自己开发的应用软件Google Search、Google Email、Google Earth三、Google各个层次技术介绍1、Google外部网络系统介绍当一个互联网用户输入的时候,这个URL请求就会发到Google DNS解析服务器当中去,那么Google的DNS服务器就会根据用户自身的IP地址来判断,这个用户请求是来自那个国家、那个地区。

根据不同用户的IP地址信息,解析到不同的Google的数据中心。

进入第一道防火墙,这次防火墙主要是根据不同端口来判断应用,过滤相应的流量。

如果仅仅接受浏览器应用的访问,一般只会开放80端口http,和443端口https(通过SSL 加密)。

将其他的来自互联网上的非Ipv4/V6非80/443端口的请求都放弃,避免遭受互联网上大量的DOS攻击。

据说Google使用了思杰科技(Citrix Systems)的Netscaler应用交换机来做web应用的优化。

NetScaler可将Web应用性能加速高达5倍。

使用高级优化技术如动态缓存时,或者当网络延迟或数据包丢失增大时,性能增益会更高。

这里提到的http multiplexting技术是可以是进行http的每个session分解开。

从不同的后端服务器(缓存)来获取内容,这样可以大大提升web http性能,同时有效降低后端web应用服务器的处理和联接压力。

在大量的web应用服务器(Web Server Farm)前,Google使用反向代理(Reverse Proxy)的技术。

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

Google使用的是Squid Cache的软件方式来实现反向代理应用的,Squid Cache一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。

Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度。

在Google web应用服务器需要调用Google内部存储的信息和资源的时候,在通过一个防火墙进入内部的网络,来访问其他的基于自身GFS II系统的应用服务和数据库。

2、Google内部网络架构介绍Google自己已经建设了跨国的光纤网络,连接跨地区、跨国家的高速光纤网络。

内部网络已经都是Ipv6的协议在运行。

网络中的路由交换设备主要还是Juniper,Cisco,Foundry,HP这四家公司。

内部网关协议(IRP)是基于OSPF(开放式最短路径优先)进行修改的。

在每个服务器机架内部连接每台服务器之间网络是100M以太网,在服务器机架之间连接的网络是1000M 以太网。

在每个服务器机架内,通过IP虚拟服务器(IPVirtual Server)的方式实现传输层负载Linux内核内的平衡,这个就是所谓四层LAN交换。

IPVS使一个服务器机架中的众多服务成为基与Linux内核虚拟服务器。

这就像在一堆服务器前安装一个负载均衡的服务器一样。

当TCP/UDP的请求过来后,使一服务器可以使用一个单一的IP地址来对外提供相关的服务支撑。

3、Google的大规模IDC部署战略Google应该是目前世界上存储信息最多的企业了。

而且还在一直不断的致力于将传统信息仅可能的数字化。

将这样海量的信息进行存储、进行处理。

就需要大量的计算机服务器。

为了满足不断增长的计算需求,Google很早就进行了全球的数据中心的布局。

由于数据中心运行后,面临的几个关键问题的就是充足电力供应、大量服务器运行后的降温排热和足够的网络带宽支持。

所以Google在进行数据中心布局的时候,就是根据互联网骨干带宽和电力网的核心节点进行部署的,尽快考虑在河边和海边,想办法通过引入自然水流的方式来降低降温排热的成本。

达拉斯(Dalles)是美国俄勒冈州北部哥伦比亚河(Columbia river)岸上的一个城市,Google在Dalles的边上拥有的30英亩土地,他们在这里建立了几乎是世界上最大,性能最好的数据中心。

四个装备有大空调设施的仓库内,放置着数万台Internet服务器,这些服务器每天处理着数十亿条Google 网站传递给世界各个角落的用户的数据。

相关主题