文档章节

Cloud Foundry BOSH 简介

 老邱021
发布于 2014/06/14 17:39
字数 988
阅读 117
收藏 0

Cloud Foundry BOSH 简介

编译自http://www.think-foundry.com/tag/cloud-foundry-bosh-stemcell/。编译时,去掉了一些扩展知识。需进一步了解的可访问另一篇转载博文。

Cloud Foundry 是业界第一个开源PaaS,它支持多种开发框架、多种服务和多种IaaS。BOSH起先是在Cloud Foundry项目中开发的,不过,它是一个通用的工具,协助大规模分布式服务的部署和生命周期管理。

我们使用BOSH将Cloud Foundry的各组件部署到分布的节点上(在虚拟化环境中,节点即虚拟机)。以下简要介绍一下BOSH在部署系统时是如何工作的。

BOSH是Bosh Outter SHell的缩写。与“Outter Shell”相对,被BOSH部署和管理的系统称为“Inner Shell”。下图简要说明了BOSH的模块:



BOSH是将分布式系统的部署步骤进行定义和编排的服务器,通过BOSH CLI(指令界面,一个ruby工具)可以与BOSH服务器交互。BOSH开始部署系统之前,需要准备好三项内容:stemcell,release(要安装的软件),和一个部署清单(manifest)。让我们仔细看一下这三项内容:

Stemcells:  在云平台上,VM经常会用从模板clone的方法创建。stemcell是包含了标准操作系统(例如ubuntu)和BOSH agent的VM模板。“stemcell”这个词来源于生物学的“干细胞”,指的是可以生长成为不同类型细胞的原始细胞。同样的由BOSH stemcell创建的VM在开始时是相同的,启动后,VM被配置成不同的CPU/memory/storage/network,并且安装不同的软件包。这样由同样stemcell模板创建的VM变得不一样了。

Releases: release包含一系列软件和配置,用于安装到目标系统中。配置通常包含例如IP地址、商品号、用户名、口令、域名等。这些参数根据部署清单文件(Deployment mManifest)中的属性来确定。

 contains collections of software bits and configurations which will be installed onto the target system. Each VM is deployed with a collection of software, which is called a job. Configurations are usually templates which contain parameters such as IP address, port number, user name, password, domain name. These parameters will be replaced at deploy time by the properties defined in a deployment manifest file.

Deployment Manifest: Deployment Manifest(部署清单)定义了部署时所需的实际参数值,在部署过程中,BOSH用这些值替换release中的参数,使得软件按计划好的配置来运行。


当以上三个内容准备好之后,它们将被用BOSH CLI工具上传到BOSH。然后,用BOSH安装分布式系统一般包括以下主机步骤:

1) 如果在release中的一些package需要编译,BOSH首先创建几个临时VM来编译它们。编译完成后,BOSH将编译好的二进制代码放在内部的blobstore,将临时VM销毁。

2) BOSH创建一个VM池,包含多个VM,release将被部署到这些VM上。这些VM从stemcell克隆过来,它们已经包含了BOSH agent.

3) 部署一个release的任务时,BOSH从VM池里取出一个VM,根据Deployment Manifest更改配置。配置可能包括IP address、永久磁盘大小,等等。

4) 当重新配置VM完成后,BOSH向每个VM中的agent发送指令。这些指令告诉agent来安装软件包。安装过程中,agent可能从BOSH下载软件包并安装。当安装完成后,agent运行启动脚本来启动VM中的任务。

5) BOSH重复步骤3-4,直到所有任务都已部署和启动。这些任务可以并行或顺序部署,由manifest(清单)文件中的“max_in_flight”值控制。当设为1时,任务一个一个部署。对于性能差的系统,这个值很有用,可避免资源拥挤造成超时。当这个值大于1时,意味着任务可以并行部署。

本文转载自:http://blog.csdn.net/u013631384/article/details/27968593

粉丝 0
博文 2
码字总数 2178
作品 0
广州
私信 提问
Cloud Foundry与阿里云结合技术的原理与实现

以下内容根据演讲PPT及现场分享整理: PaaS给开发者带来什么?开发者不再需要关注机器、存储、网络等的开通、管理和监控等细节事物;可以迅速实现应用原型;可以快捷地将服务组装成为应用;可...

1993wang
2018/01/04
0
0
Cloud Foundry和Kubernetes结合的过去与未来

过去的几年中,在云计算领域的开源社区中最有争议的话题莫过于Cloud Foundry和Kubernetes的关系。大家的疑问紧紧围绕着三个问题:“它们会互相取代对方吗?”,“它们是互斥的吗?” ,“还是...

Docker
2018/10/24
0
0
谷歌与Pivotal联手,真的能改变企业级云计算格局吗?

src="https://mmbiz.qlogo.cn/mmbizjpg/tibrg3AoIJTse0lzatZz8KlUZcAFTqdLjmBsE5xweXWKaYqhyInII4yQCONHcQoPMeIytq3WwgveBXHRkIsOn6w/0?wx_fmt=jpeg" data-ratio="0.664" data-s="300,640" d......

咖啡CC
2017/03/26
0
0
谷歌作为金牌会员加入 Cloud Foundry 基金会

12月15日,Google 在博客宣布,已作为金牌会员加入 Cloud Foundry 基金会。 Google 表示,从一开始,Google Cloud Platform 的目标就是为所有开发人员和企业建立最开放的云开发平台,让他们轻...

王练
2016/12/17
1K
0
PKS:企业管理和运维Kubernetes的利器

题图摄于VMworld主会场 VMware 联合Pivotal,Google Cloud 共同发布了企业级 Kubernetes 产品 PKS,本文和大家一起细看 PKS 的技术细节。 (本文照片全部由笔者在 VMworld 现场拍摄) Kubern...

q48s71bczbeylou9t0n
2017/09/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

iStatistica Pro for Mac(系统监控工具) v1.1.2

iStatistica Mac破解版推荐给大家!iStatistica Pro Mac是一款功能强大的系统监控工具,实时监控CPU,内存,网络,磁盘卡,帮你轻松删除不需要的文件和文件夹,释放电脑内存,提升运行速度。...

云不若
19分钟前
4
0
Vim和Ctags提示和技巧[关闭]

我刚刚使用我的Vim(或者更确切地说是gVim)安装了Ctags (以帮助进行C ++开发),并希望找到您最喜欢的命令,宏,快捷方式,以及随之而来的提示...... 分享你最好的武器库。 在Vim开发中你会...

技术盛宴
22分钟前
6
0
tensorlfow安装

系统环境 nv-jetson-nano-sd-card-image-r32.3.1.zip 1 基本工具安装 默认安装了python 3.6.8,需要安装如下基本软件 sudo apt updatesudo apt install curlcurl https://bootstrap.pyp...

JosiahMg
23分钟前
3
0
彻底修改maven项目工程的名称

1

观海562
41分钟前
5
0
整数反转(力扣)

整数反转 一、题目描述 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 ...

迪迪迪王
51分钟前
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部