Eucalyptus是主要实现云计算环境的弹性需求的软件,通过其在集群或者服务器组上的部署,并且使用常见的Linux工具和基本的基于web的服务。使用FreeBSD License,意味着可以直接使用在商业软件应用中,当是前支持的商业服务只亚马逊的EC2,今后会增加多种客户端接口。该系统使用和维护十分方便,使用SOAP安全的内部通信,且把可伸缩型作为主要的设计目标,具有简单易用,扩展方便的特点。这个软件层的工具可以用来通过配置服务器集群来实现私有云,并且其接口也是与公有云相兼容,可以满足私有云与公有云混合构建扩展的云计算环境。
Eucalyptus 是用于实现云计算件基础设施的软件,让用户充分利用自己的服务器群。 Eucalyptus 仅实现基本的简单的虚拟机管理功能,其主要目标不是管理功能的强大,而是将基本的虚拟化管理 API 化。 它具有以下特性: 与 EC2 接口兼容(主要接口)用 Rocks 集群管理工具,安装和部署都很简单 安全的内部通信, 使用 SOAP 和 WS-Security 叠加式的工作方式,无需修改目标 Linux 环境基本的“云管理”工具,实现系统和用户帐户管理 可将多个集群配置成单个云。
在 Eucalyptus的主页上有一个Eucalyptus Public Cloud用来体验Eucalyptus所构成的云计算。当前这个环境可以被任何用户使用,用来启动VM实例,登陆进去,测试实例里的应用,观察状态等任务。但是VM实例只能使用六小时,并且同时一个用户最多开4个VM实例。由于RightScale宣布支持基于eucalyptus的云安装,所以也可以通过RightScale上的EPC版本访问EPC。另外一个可以运行在eucalyptus上的项目是AppScale,是一个研究型的用来执行Google App Engine 应用的框架。目前该框架可以在eucalyptus上实现透明操作。
应用实例:部署于Eucalyptus上的AppScale
Google App Engine是一个基于云的平台,能让你在Google自己的基础设施上运行你的应用程序。运行在App Engine上的应用程序可以是用Python或Java编程语言编写的。这种运行基于Java Virtual Machine(JVM)的应用程序的能力开启了无限的可能性。可以用除Java之外的任何能在JVM内运行的其他语言来创建应用程序。
Google App Engine服务实现:
App Engine环境还对应用程序施加了额外的限制,如下所示:
l 只允许使用通过Python或Java技术提供的标准库的一个子集。
l 对CPU请求、内存、文件大小等必须定额。
l 对应用程序所做的任何请求都必须在30秒内返回。
l 不具备对文件系统的任何访问且只能读取作为应用程序一部分上传的静态文件。
l 不能在App Engine环境大量生成线程和进程。
l 在App Engine内使用的存储后端是BigTable,一种模式较少的关键值数据存储。
l App Engine只能执行从一个HTTP请求触发的那些代码。
这些限制可能会也可能不会约束到你的应用程序。App Engine是构建可伸缩Web应用程序的一种很好的方式,并且AppScale还提供了一种框架来模拟Google App Engine环境。AppScale让你可以在本地以及在基于云的基础设施上(Eucalyptus)透明地执行和调试App Engine应用程序。
AppScale是Google App Engine API的一种开源实现,它是一种云计算平台,可简化Google App Engine应用程序在IaaS云(比如Eucalyptus)上执行。AppScale带来了AppEngine的强大功能,并能让你用自己的集群运行App Engine应用程序。它也可以再IaaS平台上透明运行。AppScale确定的目标是提供一个PaaS云基础设施以使用户不仅可以再其GAE应用程序部署到Google专有资源上之前先部署、测试、调试、考量和监视这些应用程序,还可以便利PaaS实现的调查和扩展:服务、运行时、与底层云构造的互操作等。
AppScale服务实现:
AppScale的架构
AppScale环境包含四个主要组件:AppServer,AppLoadBalancer,DatabaseMaster,Database slaves。AppScale通过构建和扩展来自Google App Engine的SDK并实现由此SDK公开的开放API补充了Google App Engine所提供的功能。AppScale内的多个组件可自动化系统的部署、管理、伸缩以及系统容错以便执行App Engine应用程序。无需对应用程序进行更改,即可在AppScale内部部署和运行Google App Engine应用程序。AppScale并不意味着要代替或参与Google的App Engine竞争。它只是用来进行云基础设施试验的一个框架,并不会向上伸展为Google自以为豪的基础设施。
Eucalyptus是云基础设施管理平台,属于IaaS这一类;而AppScale是开源PaaS平台。