Borg论文翻译 以及部分理解

Borg论文翻译及理解

1. Abstract

Google的borg使用大量机器支持着数千个应用的10W个作业,其中部分单个集群规模超过万台机器。

其通过

  1. Adminition control
  2. Task-packing
  3. Over-commitment
  4. Machine sharing with process level isolation

提供

  • Declarative job specification lauguage
  • Naming service integration
  • Real time job monitoring
  • Tools to analyze and simulate system behavior

2. Introduction

Borg 主要得益于三点:

  1. 他隐藏了Resource Management以及Failure Handling的细节,所以保证他的用户可以focus在应用开发本身。
  2. 其本身就具有高可用性以及高可靠性,与此同时,也保证运行其上的应用具有同样的特性。
  3. 很好的保证我们可以在数万台机器上运行应用。

Borg当然不是第一个提出这些问题的软件,但是的确是第一个在如此规模运行的软件。

Borg整体结构图

3. 用户眼中的Borg

在Google开发工程师眼中,他们将作业提交到Borg,Borg将他们的作业运行在Borg Cell中。每个Borg Cell可能有多达上万台机器构成。本节主要介绍在开发者眼中的borg。

3.1 Work Load

Borg支持异质的workload,其主要包括两种:

  • 一种是never goes down Service 如 Gmail Google Doc,这些服务是latency-sensitive的(ms level)
  • 另外一种是Batch Job 如Mapreduce作业。这些任务可能运行几天后完成,这些相比之前的服务对延时并没有那么敏感。

在此文当中,我们将高priority任务称之为Prod(production),其他的则称为non-prod。大部分第一种任务是prod任务,而batch任务大部分则为none-prod任务。

在一个典型的Cell中,prod类型任务占有70%的CPU资源,并利用了其中的60%,同时占用了55%的内存,并使用了其中的85%。

3.2 Clusters and Cells

一个Cluster往往用于描述处在同一个机房中的一部分机器,一个Cluster往往具有个Cell,部分Cluster还具有Test Cell以及其他具有其他功能的Cell。

一般一个中等规模的Cell具有1w个左右的机器,而且其中的机器并非同构架机器,可能different in cpu mem dist network。但Borg屏蔽了这些特异性,对于developer而言,一切都是一样的,包括故障处理,监控以及依赖等等。

3.3 Jobs and Tasks
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值