Cloudify源码解读

以下内容由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

转载于:https://my.oschina.net/hjswust/blog/126862

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值