文档章节

Cloudify源码解读

hjswust
 hjswust
发布于 2013/05/02 10:24
字数 649
阅读 524
收藏 4

以下内容由Barak Merimovich 提供,本人仅译与学习。

Cloudify由以下几个工程组成:

CLI —— Cloudify Shell,基于Karaf CLI 框架开发。

USM —— 统一服务管理。在XAP应用服务器内部运行Cloudify recipe的Glue。它是一个Spring应用,读服务recipe并且执行recipe中定义的生命周期步骤。同时,它还运行监控、日志和自定义命令。

cloudify —— 作为Maven parent module。其它所有工程都是该工程的sub-modules。也包括一些常规配置文件,如,ant build、checkstyle configuation等。

dsl —— cloudify domain项目作为此工程的一部分。所有其它工程都依赖此项目。该项目也包含了Groovy DSL,集成以用于读那些groovy service/application/cloud 文件,并通过它来创建所需要的domain object。

esc-commands —— 是对CLI命令的一个补充。特别是引导云/拆卸云命令。

esc —— cloud driver 框架是该工程的一部分,包含内置cloud drivers:jclouds, BYON 和Azure。这个项目还包括无代理安装框架,负责使用ssh / winrm远程安装cloudify新计算节点。

management-space —— 基于“space”的XAP。配置信息可能通过此存到一个高可用的集群,也负责将可能需要存储的信息持久化的磁盘。属性(全局的、应用的、服务的、或是实例的)也存在此。

REST client —— Cloudify REST API。主要是CLI通过使用,虽然其他项目有用。

restful——Cloudify REST API实现,构建为一个)使用Spring web mvc的standward java web应用程序(.war文件)。

感谢 Barak.以下为原文。

CLI - The Cloudify shell, based on the Karaf CLI framework.
USM - The glue that runs a Cloudify recipe inside the XAP application server. It is a spring application that reads the service recipe and executes the lifecycle steps defined there. It also runs the monitoring, logging and custom commands.
cloudify - Maven parent module. All other projects are sub-modules of this one. Also includes some general configuration files, like ant build, checkstyle configuration, etc.
dsl - The cloudify domain objects are all part of this project. All other projects have a dependency on this one. The project also includes the Groovy DSL integration which is responsible for reading a groovy service/application/cloud file and creating the required domain object from it.
esc-commands - Additional commands for the CLI, specifically the bootstrap-cloud/teardown-cloud commands.
esc - The cloud driver framework is part of this project, including the built-in cloud drivers: jclouds, BYON and Azure. This project also includes the agentless installation framework which is responsible for remote installing cloudify on new compute nodes using ssh/winrm.
management-space - A XAP based 'space' where configuration information can be stored in a Highly-Available cluster, also responsible for persisting information to disk if required. Attributes (whether global, application, service or instance) are stored here.
rest-client - Client for the Cloudify REST API. Used mainly by the CLI, though useful for other projects too.
restful - The Cloudify REST API implementation, built as a standward java web application (.war file) using Spring web-mvc.

I hope that helps clear things up.
Barak

© 著作权归作者所有

hjswust
粉丝 13
博文 50
码字总数 35806
作品 0
绵阳
私信 提问
Cloudify源码分析——ant build解读

0.打包成可部署的zip:Cloudify ant cloudify.zip <target name="cloudify.zip" depends="prepare.env, cloudify.install, prepare.cloudify.package.without.unzip" /> 1.准备环境 Target:p......

hjswust
2013/05/13
0
0
Cloudify 2.1 发布,带来开源 PaaS 堆栈

传统的 PaaS 限制了你的云移植性以及对应用堆栈的选择。 GigaSpaces Cloudify 可让你在线对应用进行伸缩性扩展,无需任何代码更改。 同时提供完全的可视化和控制维护。 Cloudify: 无需代码和...

oschina
2012/07/15
1K
1
《手把手安装Cloudify 3.1》

Gary兄弟学习入门小结 - 手把手安装Cloudify 3.1 1, 准备环境ubuntu 12.04 LTS: 为了方便,我在linode里找一个小机器,最小配置,1G内存的那种,一个月只要10美刀。就现在的情况下,选东京...

猫过敏
2015/04/25
2.5K
6
Tutorial——使用Maven开发Cloud Driver

Before You Start 开发之前,应有以下准备 Apache Maven Cloudify 调用云API的安全凭证,使用SSH访问你的机器,如果需要访问您的云的存储。 例如,通过以下步骤获得OpenStack的安全凭证: Re...

hjswust
2013/04/11
0
0
Cloudify:一步一步部署应用到本地云环境

前提条件: Cloudify Shell 支持 Windows/*nix 系统,安装前确保你的环境满足以下最低要求: JDK 1.6 或者更高版本 JAVA_HOME 环境变量指向 JDK 而不是 JRE %JAVA_HOME%\bin 必须添加到系统 ...

彭博
2012/11/27
804
0

没有更多内容

加载失败,请刷新页面

加载更多

PO BO VO DTO POJO DAO概念及其作用(附转换图)

J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了(听过老罗对这种现象的批判的朋友...

Airship
4分钟前
0
0
curses 管理插件

http://bbs.nga.cn/read.php?tid=9603776&rand=851

MtrS
今天
3
0
网站运营类指标

1 网站流量类指标 1.1 到达率 1.2 UV   UV即Unique Visitor,又称独立访客。UV是衡量用户“人数”的重要指标,反映了来到网站的用户“数量”。UV定义只跟时间有关。 1.3 Vist   Vist又称...

qwfys
今天
4
0
Commons-lang3提供的StopWatch执行时间监视器

Commons-lang3提供的StopWatch执行时间监视器, spring也提供了同样功能的工具 前言 我们如果要统计一段代码的执行时间:我们的办法是 public static void main(String[] args) {      ...

独钓渔
今天
2
0
Kernel 块设备驱动框架

1,总体架构: 块设备驱动框架是Linux设备最重要的框架之一,涉及内核的vfs,设备驱动模型等模块,是内核中异常复杂的一个框架。我们先看一下块设备设计的主要框架结构,先从总体上对块设备有...

yepanl
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部