BOSH相关术语解释
来源:互联网 发布:百度网站怎么优化排名 编辑:程序博客网 时间:2024/06/05 19:22
BOSH是一个针对大规模分布式系统的部署和生命周期管理的开源工具。BOSH的诞生是出自CloudFoundry的部署难题,但是不仅仅局限于部署CloufFoundry,也可以应用于别的分布式系统,只需要其提供符合要求的Release即可,BOSH现在能够支持的IaaS平台包括VMware vSphere,vCloud Director,Amazon EC2, OpenStack。
Micro BOSH则是一个微型版的BOSH,因为BOSH本身也是分布式的,由若干个虚拟机组成,所以为了部署分布式的BOSH环境,Micro BOSH才诞生了,它只有一个虚拟机,其中包括了BOSH的所有组件,事实上若是小型CF环境的部署,完全可以使用Micro BOSH取代BOSH完成部署操作。
1、BOSH Agent
BOSH组件的每个虚拟机中都会运行一个叫做BOSH Agent的进程,这个进程被用于监听虚拟机上BOSH组件的运行状态并负责与BOSH Director进行通信交互,当BOSH Agent接收到BOSH Director发布的任务指令后,会根据此任务指令的要求在虚拟机上进行一系列的动作,例如从BlobStore上获取任务相关的包并执行安装和进行配置,然后使用monit进行启动或者停止任务。
2、BOSH Director
BOSH Director相当与BOSH工具的控制分发器,其他所有的组件都通过BOSH Director进行交互,在Director的协调下,BOSH进行虚拟机创建、安装包编译、部署CF实例以及存储和读取BlobStore中的数据。
3、BOSH BlobStore
BOSH BlobStore是一个基于对象存储的云数据存储工具,用于存储release包中Job和Package的源码以及编译好的安装包,BOSH Direcot会经常从这里读取或者写入数据。
4、BOSH CLI
BOSH CLI是BOSH的命令行工具,用于与BOSH Director进行交互,管理员与BOSH的所有交互都是通过BOSH CLI进行,例如创建和管理release、stemcell、执行deploy等。
5、BOSH Health Monitor
从BOSH Agent获取虚拟机的运行状态及生命周期中各种类型事件的信息,然后将这些信息通过消息组件反馈给用户。
6、BOSH Manifest
BOSH Manifest是一个YAML文件,文件以.yml结尾,用于描述部署及配置的任务清单,例如:
部署的JOB所需的虚拟机
挂载到虚拟机上的硬盘大小
绑定到虚拟机上的网络及IP、安全组
每个虚拟机使用的模板
针对每个模板的具体配置信息
7、Stemcell
Stemcell就是一个Linux(现在的版本中主要用的是Ubuntu)的虚拟机模板,其中还包括一个BOSH Agent,BOSH用它来创建若干虚拟机,用于CF环境或者分布式BOSH环境的部署。
8、Release
Release包是由若干组件及其配置文件组成的一个集合包,包括下边所述的Job和Package,是一个完整的BOSH或者CloudFoundry的组件的集合体,在实际使用过程中,我们可能只是从其中选择一部分组件进行使用,将release上传到BlodStore后,它会复原成若干个组件形成一个组件池,部署的时候,根据manifest文件的描述,从其中选择一个或者多个组件,安装在从BOSH用stemcell构建的虚拟机池中选择一个或者多个虚拟机之中。
9、Job
Job是定义在部署配置文件manifest中的一段配置,是用来启动和运行Package的一系列的规则配置,通常会在这段配置中描述例如网络配置、Job模板、部署实例个数、资源限制或者引用的虚拟机资源池等内容。
10、Package
BOSH中有两中Package,分别是编译前Package和编译后Package,编译前Package中包括了编译、安装一个功能组件所需要的源码和脚本,编译后Package是以二进制形式存储在BlobStore中的针对具体版本的Stemcell可用的功能组件包。Package的编译工作发生在Release部署的时候,Director会在BlobStore中检测是否存在正在部署的Package的二进制文件(注意:对同一个源码Package每个版本的Stemcell都会生成一个对应的二进制Package),若没有,Director会使用对应Stemcell创建一个专门用于编译的虚拟机,然后从BlobStore中读取源码Package,使用其中的编译脚本进行编译,然后再将编译完成的二进制的Package存储到BlobStore中。
11、Manifest
Manifest是一个YAML类型的文件,默认名字一般就叫manifest.yml,可以理解为这就是BOSH工具用来执行部署任务的一个任务清单,其中包括了整个部署工作的一些属性定义(如工程名、网络、编译器等)、需要部署的组件及实例数、使用的资源、服务以及各组件的一些具体配置信息。
12、CPI
CPI全称Cloud Provider Interface,是BOSH用来与IaaS通信完成虚拟机实例和模板的创建和管理的一个API接口,CPI目前能够支持VSphere、OpenStack、AWS。
- BOSH相关术语解释
- BOSH相关术语解释
- 解释EJB相关术语
- 输入法相关术语解释
- CloudFoundry相关术语解释
- LTE相关术语解释
- GSM 相关术语解释
- Web相关术语解释
- Android 屏幕相关术语解释
- ISO组织简介和相关术语解释
- 视音频编解码相关术语解释
- java相关术语解释 terms of java
- 【转】Android音频系统相关术语解释说明
- 三维重建:SLAM相关的一些术语解释
- 术语解释
- 术语解释
- 3G系列--无线技术相关术语解释
- 3G入门之第一课 无线技术相关术语解释
- AJAX 跨域请求 - JSONP获取JSON数据
- 学习《自己动手写网络爬虫》之记录2
- Apache下PHP的几种工作方式
- 如何删除日志组成员( DROP LOGFILE MEMBER )
- 【Node.js基础篇】(六)实现如同jsp标签的HTML模板
- BOSH相关术语解释
- Maven的pom.xml中的dependency部分写法
- 4、数组与方法(三)
- Android ScrollView反弹效果的实现
- from nova to ironic (2)
- Thinking In Java学习笔记之enum状态机
- 基于邻接矩阵和邻接表的两种方法实现无向图的BFS和DFS
- STM32实验一:GPIO之流水灯
- GLIBCXX_3.4.15 not found 问题