分布式系统迁移Docker云案例分享

前言

“只要站在风口,猪也能飞起来”,这碗心灵鸡汤不知道激励了多少英雄豪杰踏上寻风口之路。而现如今,Docker这阵龙卷风呼啸来袭,更让众人生起迎风而上、直冲云霄的欲望。为了找到这风口,腾讯数据平台部开始全面拥抱Docker,基于多年的大数据集群管理经验,倾力打造DockerOnGaia云平台(简称Gaia云),并动员将数平自身的核心系统全面接入Gaia云。

Lhotse系统作为先锋部队,经过一段时间的改造-验证-灰度,目前现网已经完全接入、稳定运营。本文旨在分享Lhotse接入Gaia云的一些实践经验,抛砖引玉,期待更多的系统加入队伍,一起在Docker云中探索前行。

背景介绍

Lhotse是一个大数据任务调度系统,从架构上看是典型的Master-Agent分布式架构,如下图所示,作为调度核心的Base统筹分配任务,交由对应类型的Runner执行:

Lhotse架构图

到目前为止,Lhotse线上支持68种Runner,分别对应68种不同的任务类型,集群总机器数将近200台。面对这种复杂多样的系统环境,Lhotse接入Gaia云的核心诉求是自动化,通过自动化来降低系统管理复杂度、提高运维效率。自动化运维可以总结为两点:

  1. 机器操作取代人工操作——将复杂枯燥的工作(比如资源分配、程序部署)交给云平台处理。

  2. 通用实现取代重复实现——云平台将一些通用性的基础工作(比如进程监控、自动拉起)抽象成标准化服务,不必重复造轮子。

除了自动化之外,Gaia云带来的另一个核心点是透明化。它在应用的不同阶段有不同的含义:

  1. 在应用部署阶段,指的是机器集群的透明化。集群规模、机器分布、机器规格等因素对用户来说都是透明的,成群的服务器被Gaia封装成了一台超级计算机。

  2. 在应用运行阶段,指的是实例状态/资源使用/历史事件/系统日志的透明化。通过Gaia封装的API或者web portal,应用的一切运行动态尽在掌握,透明公开。

下面我们将分别从部署、调度、容错、灰度升级、扩缩容及服务发现六个纬度,来讨论Gaia云如何为Lhotse带来自动化与透明化。

部署

Lhotse部署遇到的最大难点在于,每个类型

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值