QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

采用 Cloud Foundry 的 BOSH 来管理有状态的 Docker 容器

  • 2014-07-25
  • 本文字数:1212 字

    阅读完需:约 4 分钟

Cloud Foundry 针对 Docker 发布了一个具有实验性质的开源项目 CF-BOSH ,这个项目提供的功能和原先的 BOSH 项目是相同的,也就是大规模分布式服务的部署管理和生命周期管理,但是它却是适用于 Docker 容器的。

Cloud Foundry BOSH 是一套通用工具链,它能够在提供监控、告警和自我修复的功能的同时,将许多处于 IaaS 上层的多节点应用程序协调地结合起来并管理 IaaS 的生命周期,这其中就包括有状态数据在内。它会管理 VM 模板(在 Cloud Foundry 术语中称之为干细胞(stemcells))、软件发布与部署。BOSH 利用了 YAML 清单并且会创建和管理一个 VM 池,BOSH 会为每个任务从池中取出一个 VM,并通过部署清单来更新它的配置。

Cloud Foundry 团队的平台工程师 Ferran Rodenas列举了 Docker 版本的 BOSH 的一些优势

  1. 可以将多个 Docker 容器精心地组织进多个虚拟机中。
  2. 可以选择将容器部署到 IaaS(AWS、OpenStack、VSphere、VCHS、CloudStack 或者 Google Compute Engine)中。
  3. 可以自动监控容器并在失败的情况下进行重新启动。
  4. 如果一个容器失败了,那么当它重启时,所有依赖于它的容器也都会重启。
  5. 可以自动监控虚拟机并在失败的情况下重新创建。
  6. 可以将主数据卷绑定到 Docker 容器上。
  7. 隶属于 Docker 容器的数据磁盘可以在不丢失数据的情况下调整大小。

面向 Docker 的 Cloud Foundry BOSH 版本在部署的时候采用了一种基于 YAML 文件的声明式方法,该文件定义了任务、或者虚拟机,以及要部署的 Docker 容器。它不仅仅监视 Docker 守护进程的工作和监听状态,同样还监视所部署的容器的运行状态。如果由于某些原因,Docker 守护进程或者某个容器停止了,BOSH 会自动检测到这一失败并在没有任何人类干预的情况下再次重新启动进程直到成功为止。

BOSH 包含一个健康度监控器(health monitor),这个监控器会定期 ping 一个运行在虚拟机内部的代理以此来检查它的状态,当它不能联络到这个代理或者部署状态不是所期望的状态时,它就会触发告警。这个告警可以通过不同方式进行发送,比如电子邮件或者传呼机。另外,它还可以触发一个特别的“复活(resurrector)”响应器来自动替换掉这个虚拟机,重新添加已有的持久化磁盘(persistent disk),并再次部署和启动进程。

现在人们还在做一些其他的工作来尝试将 Docker 镜像或者 Dockerfiles 与 Cloud Foundry 集成到一起。 Diego 项目通过替换 Cloud Foundry 的执行代理(DEA)模块以使得其在跨运行时环境(runtime environments)方面更具有扩展性,这些运行时环境就包括 Docker。CloudCredo 公司编写开发了 Decker ,Decker 采用 Docker 作为后端来对 Cloud Foundry 的 DEA 模块重新进行了实现。

查看英文原文: Managing Stateful Docker Containers with Cloud Foundry BOSH


感谢杨赛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-25 21:565121

评论

发布
暂无评论
发现更多内容

Microsoft Remote Desktop 微软远程访问工具 mac中文直装版

Rose

第五届国际科创节探寻新质生产力 候选品牌:行云管家

行云管家

国际科创节

鸿蒙应用示例:如何解决DevEco预览器上下白色间距问题及实现全屏沉浸式体验

zhongcx

ConceptDraw PROJECT for Mac 专业的项目管理工具v15.0.0.344 激活版

Rose

上云后如何有效控制云成本?有啥好方法?

行云管家

云计算 云服务 企业上云 云成本

降低数据平台成本 ,Apache Airflow迁移上云案例分享

华为云开发者联盟

开源 CCE apache 社区 华为云DTSE

PDF解析+RAG,手把手教你在Coze搭建个人知识库!

合合技术团队

PDF rag 个人知识库

MIAOYUN五周年 | 未来才是最好的礼物!

MIAOYUN

云原生 MIAOYUN 周年庆典 五周年庆

低代码平台如何简化员工培训并提升技术能力?

天津汇柏科技有限公司

低代码平台

好用的mac磁盘分析工具 Disk Xray v4.4激活版

Rose

万界星空科技MES系统的智能排产功能

万界星空科技

制造业 mes 万界星空科技mes MES、 生产排班排产

高科技行业为何倚重多物理场仿真技术

思茂信息

仿真 建模 结构 高科技 辐射

领先的思维导图软件工具ConceptDraw MINDMAP mac/win

Rose

办公必备软件:ConceptDraw Office(业务图表、思维导图和项目管理)

Rose

RapidComposerV5 for mac v5.3.3 高效歌曲创作辅助工具

Rose

百度公共IM系统的Andriod端IM SDK组件架构设计与技术实现

JackJiang

即时通讯;IM;网络编程

IDA Professional for mac(反汇编逆向神器)激活安装教程

理理

鸿蒙应用示例:购物车侧滑删除、侧滑收藏、计算价格

zhongcx

Mac音频控制软件 SoundSource 5 内置高级均衡器和多种预设效果

Rose

高效使用AI,一文掌握提示词的编写原则

禅道项目管理

人工智能 AI 项目管理软件 AIGC ChatGPT

如何用豆包MarsCode 打造简洁高效的星级评分组件?

豆包MarsCode

人工智能 AI 代码 组件 模版

【HarmonyOS】公司鸿蒙项目收工总结之《三方库》

zhongcx

鸿蒙应用示例:图像处理优化与交互改进

zhongcx

3D机械时钟动态桌面壁纸 Digital Clock 3D for Mac v2.1.2激活版

Rose

VMware Fusion Pro 13 for Mac v13.6.1中文激活秘钥 VM虚拟机最新版

Rose

FontBook for Mac(字体管理软件)v5.3.2激活版

理理

【HarmonyOS】公司鸿蒙项目收工总结之《屏幕适配》

zhongcx

超强AI图像编辑器 Luminar Neo v1.21.0中文直装版 mac/win

Rose

中文最新版3D建模软件:Rhinoceros 8 (犀牛8) v8.12

Rose

软件测试学习笔记丨文本处理常用Linux命令-vi、grep、awk、sed

测试人

软件测试

鸿蒙应用示例:系统退出应用的最佳实践

zhongcx

采用Cloud Foundry的BOSH来管理有状态的Docker容器_DevOps & 平台工程_Carlos Sanchez_InfoQ精选文章