写点什么

采用 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:565156

评论

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

如何评估文档管理工具?10款软件对比指南

爱吃小舅的鱼

文档管理工具

MT7915 in Action: Driving Seamless Wireless Solutions

wallyslilly

MT7915

进程,线程,协程 - 你了解多少?

蛋先生DX

线程 操作系统 进程 协程 上下文

解析淘宝商品评论API返回值中的评价热度与关注度

技术冰糖葫芦

API 接口 API 文档 API 测试 API 性能测试

Typora for Mac(Markdown文本编辑器)中文版

Mac相关知识分享

Mac软件

从Naive RAG到Agentic RAG:基于Milvus构建Agentic RAG

Zilliz

AI Milvus Zilliz 向量数据库 rag

Lightroom Classic 2021 for mac(LRC 2021中文直装版)

Mac相关知识分享

After Effects 2020 for Mac(ae 2020 中文直装版)

Mac相关知识分享

AE2020 中文版

1024大赛来袭,工业智能体开发等你来挑战!

Openlab_cosmoplat

人工智能

VMware Fusion Pro 13 for Mac(VM虚拟机软件)

Mac相关知识分享

人工智能的发展趋势

天津汇柏科技有限公司

人工智能

数字卫星:「超实时仿真」实现处理器性能5倍提升

DevOps和数字孪生

数字孪生

IDC《中国网络安全软件技术发展路线图,2024》报告身份管理&移动安全推荐厂商

芯盾时代

身份安全 移动安全

文档管理系统怎么选?2024推荐的8款工具

爱吃小舅的鱼

文档管理系统

止步阿里一面。。。

王中阳Go

Go 面试 后端

学习CST入门教程的好去处:CST基础与中文教程资源

思茂信息

初学者 cst操作

数据结构 - 栈

EquatorCoco

数据结构

想给MAC电脑换个壁纸?苹果电脑各类高清壁纸资源分享

Rose

初识VPC网络的能力

天翼云开发者社区

云计算 网络安全 VPC

10分钟使用豆包MarsCode 帮我搭建一套后台管理系统

豆包MarsCode

人工智能 程序员 AI

Mac苹果电脑微信多开助手,拥有防撤回和微信多开的功能

你的猪会飞吗

微信多开和防撤回工具 微信多开助手 mac微信多开

如何选择合适的文档管理系统?8个方案对比

爱吃小舅的鱼

文档管理工具

互联网大厂Java高频面试题整理(2024最新含答案)

架构师之道

Java 面试

HyperMesh基础教程:概述与有限元分析简介

智造软件

建模 仿真软件 Hypermesh 有限元技术 网格划分

企业如何确保文档安全?9款非云端文档管理工具助力

爱吃小舅的鱼

文档管理工具

律师必备的文档管理工具有哪些?10个推荐

爱吃小舅的鱼

文档管理工具

免费办公室文档管理软件有哪些?精选9大软件

爱吃小舅的鱼

文档管理软件

“DataOps+大模型”——数造科技在大模型时代的数据开发创新探索

数造万象

人工智能 AI DataOps 大模型 #SQL

4K Video Downloader Plus Pro v1.9.2激活版 专业版在线视频下载器

iMac小白

6个最佳核心应用仪表盘构建工具

NocoBase

数据挖掘 数据分析 数据可视化 仪表盘

IPQ4019 vs. IPQ5018-Comprehensive Comparison of WiFi Solutions

wifi6-yiyi

wifi wifi5

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