云平台比较分析 云计算按照应用层次,主要划分为IaaS、PaaS和 SaaS三种层次的应用,这里主要分析常见的 IaaS平台。目前市面上常见的 IaaS应用主要有 Amazon的 AWS,基本上已经成为整个行业的标准。IaaS在开源领域也是百花齐放,最著名的开源平台为:Eucalyptus、Openstack和 Cloudstack、Opennebula、Nimbus,在国内社区比较火热的主要是前三种,所以在这里主要分析一下前三种平台。 1 . 云平台分析 1.1. Eucalyptus 1 .1 .1 . 概述 Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems(Eucalyptus) 是一种开源的软件基础结构,用来通过计算集群或工作站群实现弹性的、实用的云计算。它最初是美国加利福尼亚大学 Santa Barbara计算机科学学院的一个研究项目,现在已经商业化,发展成为了 Eucalyptus Systems Inc。不过,Eucalyptus 仍然按开源项目那样维护和开发。Eucalyptus Systems 还在基于开源的 Eucalyptus 构建额外的产品;它还提供支持服务。 Eucalyptus是在 2008年 5月发布 1.0版本,在 2009年与 Ubuntu进行合作,成为Ubuntu server9.04的一个重要特性,目前最新版本是 2.0.3,可以选择 Xen、KVM作为虚拟化管理程序,对 vSphere ESX/ESXi提供了支持。 Eucalyptus主要是用C和 Java开发的,其中 CLC是由 java完成的,Tools是由 perl完成的,其他的都是 C完成的。 1.1.2. 架构 图表 1 Eucalyptus 架构图 Eucalyptus主要有五个组件组成,分别是:CLC(Cloud Controller:云控制器)、CC(Cluster Controller:集群控制器)、NC(Node Controller:节点控制器)、SC(Storage Controller:存储控制器)和Walrus。 CLC 云控制器:负责管理整个系统。它是所有用户和管理员进入 Eucalyptus 云的主要入口。所有客户机通过基于 SOAP 或 REST 的 API 只与 CLC 通信。由 CLC 负责将请求传递给正确的组件、收集它们并将来自这些组件的响应发送回至该客户机。这是 Eucalyptus 云的对外 “窗口”。 Walrus:负责管理对Eucalyptus内的存储服务的访问。请求通过基于 SOAP 或REST的接口传递至Walrus。 CC 集群控制器:负责管理整个虚拟实例网络。请求通过基于 SOAP 或 REST 的接口被送至 CC。CC 维护有关运行在系统内的 Node Controller 的全部信息,并负责控制这些实例的生命周期。它将开启虚拟实例的请求路由到具...