CloudFoundry基础知识学习

CloudFoundry是Pivotal的开源PaaS产品,支持多种运行时环境和语言。本文主要介绍了CloudFoundry V2的架构,包括CloudController、DEA、Warden等关键组件的功能和作用,以及Buildpack、Router、UAA等概念。V2引入了Go语言的Gorouter以支持WebSocket和提高性能,并改进了权限和资源管理。CloudFoundry基于消息的架构和抽象层设计使其易于扩展和维护。
摘要由CSDN通过智能技术生成

1     CloudFoundry简介

CloudFoundry是VMware旗下子公司Pivotal的一款开源PaaS产品,是一个由多个独立子系统组成的分布式系统,能偶支持多种运行时环境、开发语言、框架及服务,可以构建于IaaS平台之上,也可以直接部署于物理机器上,总共有两个版本分别是V1和V2,V2版本采用的更为成熟的架构思想,引入了如Buildpack、Warden等强大灵活的组件。

Cloud Foundry v1已于2013年1月底停止开发与维护,v2版本主要有以下变化:

1.v1中Router使用的是nginx+lua+ruby server的方式,v2使用了go语言gorouter,据称支持了websocket且极大提升了性能;

  2.v2中Cloud Controller新增了quota、org、space等新的概念,更方便的进行权限和资源管理;

3.v1中为应用打包使用的是Stager组件,v2中移除了该组件,将打包功能加入到DEA中,另外完全重写了Health Manager;

   4.v1里DEA可以独立运行,一个DEA负责的所有app都以子进程的形式挂在DEA主进程下,但v2之后DEA强依赖于Warden提供的安全容器来运行app了。

Cloudfoundry 的部分特色:

1、 基于消息的多组件架构是实现集群的简单、且有效方法。消息可以使集群节点间解耦,使自注册,自发现这些在大规模数据中心中很重要的功能得到实现;

2、 适当的抽象层,模板模式的使用,方便第三方可以方便在CloudFoundry开发扩展功能。CloudFoundry在DEA及Service层都做了抽象层处理,相对应地使开发者可以容易地为CloudFoundry开发Runtime和Service。例如,在CloudFoundry刚推出的时候,只支持Node.js, Java, Ruby,但第三方提供商、开源社区快速跟进,为CloudFoundry添加了PHP, Python的支持。这得益于CloudFoundry精巧的DEA架构设计。

 

 

2     Cloud Foundry v2的架构及流程示意图:

注:配合名词解释看架构图

3     CloudFoundry V2 主要名词解释

3.1      CloudController

CC即Could Controller,CloudFoundry V2版本中叫CC_ng,是CloudFoundry的管理模块,主要负责为cf、vmc、sts等客户端提供REST API接口,管理App的整个生命周期的状态及运行环境、日志等,是基于Fog组件规范的接口。

用户通过命

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值