AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

微服务架构中使用的分布式调度器

  • 2017-08-22
  • 本文字数:1189 字

    阅读完需:约 4 分钟

在 MicroXchg 2017 柏林大会上,DigitalOcean 的微服务可扩展性专家 Martin Campbell 针对如何使用分布式调度器运行基于微服务的架构做了一个演讲。在演讲中,Campbell 着重介绍了在他们在部署过程中遇上的一些问题,以及在他们是如何权衡选用 Kubernetes、Nomad 和 Mesos 等产品的。

演讲的关键要点包括:

  • 分布式调度器使得用户可将集群理解为单一的物理机。
  • 分布式调度器简化了 DevOps,大大降低了普遍存在于基于微服务架构中的操作复杂性。
  • 没有任何现有产品可以完美地运行有状态服务,因此最好不要使用现有产品去运行这类服务。
  • 在网络分区的情况下,即便有些过程所在的主机节点不能与主服务器通信,容错的分布式调度器也应该保持所有进程的运行。

Campbell 首先指出,操作系统内核就是一种集中式调度器,因为它在单一计算机上实现了对多个进程的管理。他进而阐述了分布式调度在概念上与集中式调度器是类似的,差别在于它是跨集群中各机器工作的,而非工作于单一机器上。“我们可以与整个数据中心通信,就像是面对单台物理机一样。”

分布式调度器尤其适用于微服务架构。Cambell 认为这是考虑到那些额外的操作开销,这些操作开销是由不断得以扩展和部署的多个服务所导致的。

对于如何选择多种分布式调度器的问题,Campbell 首先介绍了他在 Mesos 上的实战经验。当使用 Mesos 时,用户不需操心进程所在的实际物理机,因为 Mesos 是基于对 CPU 和 RAM 等资源的限额处理做部署的。Mesos 还提供了一个仪表盘,可像查看单一物理机那样方便地实现数据中心的可视化。

Campbell 指出,Mesos 的主要问题在于它对网络分区的处理方式。如果一个进程不能与 Mesos 的主服务器通信,那么该进程就会被杀掉。在 Campbell 看来,这并非是一种好的设计方式,事实上,因为网络分区普遍存在于分布式系统中,在这种情况下应该继续保持应用的运行。他以 Kafka 为例说明了这种行为会导致数据的丢失。虽然 Kafka 是一种分布式消息总线,在设计上考虑了弹性问题,但是分区还是可以导致丢失几乎全部的单一节点及数据。

Campbell 最终弃用了 Mesos,他先是转向 Nomad 作为替代。Nomad 的优点在于,它具有自身的 Gossip 协议,允许服务器在同一数据中心中及跨数据中心间的相互通信。在网络分区的情况下,同一分区中的服务会保持功能及通信,并在分区识别时成为最终一致的。但是由于 Campbell 并不了解有任何在生产环境中运行 Nomad 的应用,因而不想冒险迁移到 Nomad 上。

他最终选定了 Kubernetes。尽管 Kubernetes 类似于 Mesos,Campbell 还是从中发现一些独到之处。最主要是,Kubernetes 对网络分区处理机制不同,并不会在上述情况下杀死实例。它也提供了仪表盘,让用户易于了解集群的状态,减少了处理应用中的抽象层级。

该演讲的视频可以在线完整观看,其中详细地介绍了Campbell 正在处理的应用架构及各种调度器。

查看英文原文: Distributed Schedulers with Microservice Architectures

2017-08-22 19:002906
用户头像

发布了 227 篇内容, 共 78.6 次阅读, 收获喜欢 28 次。

关注

评论

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

Serverless 底座的持续创新

亚马逊云科技 (Amazon Web Services)

Serverless 架构

网络安全kali渗透学习 web渗透入门 使用msf渗透攻击Win7主机并远程执行命令

学神来啦

网络安全 Web 渗透 kali kali Linux

招聘宣讲会|Rust 如何为量化行业加速赋能?

非凸科技

一文带你认识 SOFARegistry 之基础架构篇

SOFAStack

开源 架构 注册中心 SOFA

揭秘视频千倍压缩背后的技术原理之环路滤波

拍乐云Pano

音视频 RTC 视频编码 音视频开发 视频压缩

对信用卡欺诈 Say No!百行代码实现简化版实时欺诈检测

沃趣科技

数据库表

我的奋斗:我在外企那些年(二)

IC男奋斗史

职业规划 芯片行业思考

ToB月报丨二月融资总金额超152亿元;「东数西算」国家工程全面启动

ToB行业头条

基于XuperChain的区块链项目从0到N

刘旭东

区块链 XuperChain

2023届校园招聘正式开启!OceanBase 想和你在这个春天约一场面试

OceanBase 数据库

招聘 校园招聘 oceanbase

芯片工程师太贵?贵你妹啊

IC男奋斗史

芯片行业思考

【技术分享】历经16年猪八戒网如何成功实现双活流量架构

八戒技术团队

架构

我是一名数学专业的应届博士,我该如何选择offer?

IC男奋斗史

职业规划

与容器服务 ACK 发行版的深度对话第二弹:如何借助 hybridnet 构建混合云统一网络平面

阿里巴巴云原生

阿里云 云原生 ACK Distro

系统学习 TypeScript(五)——联合类型

编程三昧

typescript 前端 3月月更 联合类型

cdr2022序列号CorelDRAW2022绿色密钥

茶色酒

CorelDRAW 2022

Linux之crontab命令

入门小站

Linux

直播带练 | 30 分钟用阿里云容器服务和容器网络文件系统搭建 WordPress 网站

阿里巴巴云原生

阿里云 云原生 课程 容器服务 直播回放

火山引擎、阿里云、腾讯云联合发布"超低延时"直播技术标准

字节跳动视频云技术团队

音视频

Redis 主从复制的原理及演化

百度开发者中心

芯荒荒,汽车芯片路在何方

IC男奋斗史

芯片行业思考 芯片技术

OceanBase 社区版 OCP 功能解读

OceanBase 数据库

分布式 OceanBase 社区版 工具家族

华为,在行星的十字路口

脑极体

VuePress 博客优化之中文锚点跳转问题

冴羽

typescript Vue 博客 vuepress 博客搭建

Rainbond 5.6 版本发布,增加多种安装方式,优化拓扑图操作体验

北京好雨科技有限公司

IC应届生40万白菜价!从业多年的资深专家手把手指导你如何选择offer!

IC男奋斗史

职业规划

润还是不润?这是个问题

IC男奋斗史

职业规划 芯片行业思考

Serverless常见的应用设计模式

亚马逊云科技 (Amazon Web Services)

Serverless 架构

在线Excel文件解析转换成JSON格式

入门小站

工具

澜起科技加入,龙蜥社区再迎领先的芯片设计厂商

OpenAnolis小助手

Linux 开源 操作系统 生态 龙蜥社区

我的奋斗:我在外企那些年(一)

IC男奋斗史

职业规划 芯片行业思考

微服务架构中使用的分布式调度器_DevOps & 平台工程_Andrew Morgan_InfoQ精选文章