Apache Mesos

Twitter 宣布抛弃 Mesos,全面转向Kubernetes

北城以北 提交于 2019-12-05 15:06:25
美国西部时间 5 月 2 日下午 7 点,Twitter 公司在旧金山总部举行了一次技术发布会兼 Meetup。会上,Twitter 计算平台(Twitter Computing Platform)产品与技术负责人 David McLaughlin 正式宣布,Twitter 的基础而设施将从 Mesos 全面转向 Kubernetes。 Mesos项目发布于是2009年,而Twitter公司则是 Mesos 项目的早期支持者和使用者之一。作为世界上最成功的社交媒体巨头之一,Twitter 公司以 其庞大的生产集群规模(万级别节点) 而备受关注。在 2011 年,Twitter 公司开始在 Mesos 项目的基础上开发了 Aurora 项 以便同时管理其内部的在线和离线业务,逐步成为 Mesos 社区的代言人。 可是,在持续投入 Mesos 项目近 10 年之后,为什么现在的 Twitter 公司又会突然宣布全面转向 Kubernetes 体系呢?在这个令人瞩目的决定背后, 又是什么样的架构和设计能够支撑 Twitter 的基础设施来一次 360 度的“华丽转身”呢? 云时代,Twitter基础设施面临的新挑战 Twitter 公司创始于 2006 年。时至今日,全世界每天都有至少 5 亿条推文产生。在过去十余年飞速成长和海量数据的挑战下,Twitter 的基础设施架构的演进过程

CoarseGrainedSchedulerBackend和CoarseGrainedExecutorBackend

强颜欢笑 提交于 2019-11-30 14:25:32
CoarseGrainedSchedulerBackend是Driver端用到的,CoarseGrainedExecutorBackend是Executor端用到的。他们都是Backend,什么是Backend?Backend其实就是负责端到端通信的,这两个CoarseGrained的Backend是负责Driver和Executor之间的通信的。 什么是Driver呢?Driver就是我们编写的spark代码,里面的main函数就是Driver跑的代码。 什么是Executor呢?Executor就是执行spark的Task任务的地方,Backend接收到Driver的LaunchTask消息后,调用Executor类的launchTask方法来执行任务。 Driver会启动CoarseGrainedSchedulerBackend,通过CoarseGrainedSchedulerBackend来向集群申请机器以便启动Executor,会找到一台机器,发送命令让机器启动一个ExecutorRunner,ExecutorRunner里启动CoarseGrainedExecutorBackend向Driver注册,并创建Executor来处理CoarseGrainedExecutorBackend接收到的请求。刚刚说的是Standalone部署下的流程,Yarn下大部分类似

6 个 K8s 日志系统建设中的典型问题,你遇到过几个?

戏子无情 提交于 2019-11-30 04:06:52
导读: 随着 K8s 不断更新迭代,使用 K8s 日志系统建设的开发者,逐渐遇到了各种复杂的问题和挑战。本篇文章中,作者结合自己多年经验,分析 K8s 日志系统建设难点,期待为读者提供有益参考。 在 Logging 这块做了几年,最近 1 年来越来越多的同学来咨询如何为 Kubernetes 构建一个日志系统,或者是来求助在这过程中遇到一系列问题如何解决,授人以鱼不如授人以渔,于是想把我们这些年积累的经验以文章的形式发出来,让看到这篇文章的同学能少走弯路。这个系列文章定位为长篇连载,内容偏向落地实操以及经验分享,且内容会随着技术的迭代而不定期更新。 前言 第一次听到 Kubernetes 的名字是在 2016 年,那个时候 Kubernetes 还处于和 Docker Swarm、Mesos 方案的“三国鼎立时代”,Kubernetes 由于一系列优势(可扩展、声明式接口、云友好)在这一竞争中崭露头角,最终获得统治地位。 Kubernetes 作为 CNCF 最核心的项目(没有之一),是 Cloud Native(云原生)落地的底座,目前阿里已经全面基于 Kubernetes 在开展全站的云原生改造,在 1-2 年内,阿里巴巴 100% 的业务都将跑在公有云上。 CloudNative 在 CNCF 的定义 的核心是:在公有云、私有云、混合云等环境中,通过 Containers

6 个 K8s 日志系统建设中的典型问题,你遇到过几个?

余生长醉 提交于 2019-11-30 04:04:11
导读:随着 K8s 不断更新迭代,使用 K8s 日志系统建设的开发者,逐渐遇到了各种复杂的问题和挑战。本篇文章中,作者结合自己多年经验,分析 K8s 日志系统建设难点,期待为读者提供有益参考。 在 Logging 这块做了几年,最近 1 年来越来越多的同学来咨询如何为 Kubernetes 构建一个日志系统,或者是来求助在这过程中遇到一系列问题如何解决,授人以鱼不如授人以渔,于是想把我们这些年积累的经验以文章的形式发出来,让看到这篇文章的同学能少走弯路。这个系列文章定位为长篇连载,内容偏向落地实操以及经验分享,且内容会随着技术的迭代而不定期更新。 前言 第一次听到 Kubernetes 的名字是在 2016 年,那个时候 Kubernetes 还处于和 Docker Swarm、Mesos 方案的“三国鼎立时代”,Kubernetes 由于一系列优势(可扩展、声明式接口、云友好)在这一竞争中崭露头角,最终获得统治地位。 Kubernetes 作为 CNCF 最核心的项目(没有之一),是 Cloud Native(云原生)落地的底座,目前阿里已经全面基于 Kubernetes 在开展全站的云原生改造,在 1-2 年内,阿里巴巴 100% 的业务都将跑在公有云上。 CloudNative 在 CNCF 的定义 的核心是:在公有云、私有云、混合云等环境中,通过 Containers

6个K8s日志系统建设中的典型问题,你遇到过几个?

无人久伴 提交于 2019-11-30 03:04:42
作者 | 元乙 阿里云日志服务数据采集客户端负责人,目前采集客户端 logtail 在集团百万规模部署,每天采集上万应用数 PB 数据,经历多次双 11、双 12 考验。 导读: 随着 K8s 不断更新迭代,使用 K8s 日志系统建设的开发者,逐渐遇到了各种复杂的问题和挑战。本篇文章中,作者结合自己多年经验,分析 K8s 日志系统建设难点,期待为读者提供有益参考。 在 Logging 这块做了几年,最近 1 年来越来越多的同学来咨询如何为 Kubernetes 构建一个日志系统,或者是来求助在这过程中遇到一系列问题如何解决,授人以鱼不如授人以渔,于是想把我们这些年积累的经验以文章的形式发出来,让看到这篇文章的同学能少走弯路。这个系列文章定位为长篇连载,内容偏向落地实操以及经验分享,且内容会随着技术的迭代而不定期更新。 前言 第一次听到 Kubernetes 的名字是在 2016 年,那个时候 Kubernetes 还处于和 Docker Swarm、Mesos 方案的“三国鼎立时代”,Kubernetes 由于一系列优势(可扩展、声明式接口、云友好)在这一竞争中崭露头角,最终获得统治地位。 Kubernetes 作为 CNCF 最核心的项目(没有之一),是 Cloud Native(云原生)落地的底座,目前阿里已经全面基于 Kubernetes 在开展全站的云原生改造,在 1-2

6 个 K8s 日志系统建设中的典型问题,你遇到过几个?

陌路散爱 提交于 2019-11-30 01:43:23
<br />作者 | 元乙 阿里云日志服务数据采集客户端负责人,目前采集客户端 logtail 在集团百万规模部署,每天采集上万应用数 PB 数据,经历多次双 11、双 12 考验。 **导读:**随着 K8s 不断更新迭代,使用 K8s 日志系统建设的开发者,逐渐遇到了各种复杂的问题和挑战。本篇文章中,作者结合自己多年经验,分析 K8s 日志系统建设难点,期待为读者提供有益参考。 <br />在 Logging 这块做了几年,最近 1 年来越来越多的同学来咨询如何为 Kubernetes 构建一个日志系统,或者是来求助在这过程中遇到一系列问题如何解决,授人以鱼不如授人以渔,于是想把我们这些年积累的经验以文章的形式发出来,让看到这篇文章的同学能少走弯路。这个系列文章定位为长篇连载,内容偏向落地实操以及经验分享,且内容会随着技术的迭代而不定期更新。<br /> <a name="hJh8E"></a> 前言 <br />第一次听到 Kubernetes 的名字是在 2016 年,那个时候 Kubernetes 还处于和 Docker Swarm、Mesos 方案的“三国鼎立时代”,Kubernetes 由于一系列优势(可扩展、声明式接口、云友好)在这一竞争中崭露头角,最终获得统治地位。<br /> <br />Kubernetes 作为 CNCF 最核心的项目(没有之一),是

Spark 数据分析导论-笔记

时光怂恿深爱的人放手 提交于 2019-11-29 21:27:19
Spark Core Spark Core 实现了Spark 的基本功能,包含 任务调度 、 内存管理 、 错误恢复 、与 存储系统交互 等模块。 Spark Core 中还包含了 对弹性分布式数据集(resilient distributed dataset,简称RDD)的API 定义。 RDD 表示分布在多个计算节点上可以并行操作的 元素集合 , 是Spark 主要的编程抽象 。 Spark Core 提供了创建和操作这些集合的多个API。 Spark SQL Spark SQL 是Spark 用来 操作结构化数据的程序包 。 使用SQL或者Apache Hive 版本的SQL 方言(HQL)来查询数据。 Spark SQL 支持多种数据源,比如Hive 表、Parquet 以及JSON 等。 除了为Spark 提供了一个SQL 接口, Spark SQL 还支持开发者将SQL 和传统的RDD 编程的数据操作方式相结合, 不论是使用Python、Java 还是Scala, 开发者都可以在单个的应用中同时使用SQL 和复杂的数据分析。 通过与Spark所提供的丰富的计算环境进行如此紧密的结合, Spark SQL 得以从其他开源数据仓库工具中脱颖而出。 Spark SQL 是在Spark 1.0 中被引入的。 Spark Streaming Spark Streaming

Docker 服务编排 Mesos Swarm Kubernetes 三种模式实践

天涯浪子 提交于 2019-11-28 19:02:26
提起Docker容器化 不得不提服务编排,众所周知目前Docker常用的服务编排模式有三种, Mesos DockerSwarm Kubernetes,下面将详细介绍这三种服务编排模式的架构和环境搭建。 一. Mesos 1.Mesos架构图 下图是在Mesos官网上对mesos架构的介绍 即使不看下面的英文描述,从这张图上我们也看看出Mesos的整体架构,主体为主从结构master/slave或者master/agent模式,对master节点来说为了避免单点,引入了多个master,多个master向Zookeeper注册自己,用zk实现选举。master节点运行一些任务调度器(scheduler),agent节点运行任务执行器(executor),一个agent节点可以运行多个执行器,有执行器来执行具体任务(task)。 2.Mesos任务执行调度过程 任务调度如下图: 从图中可以看出,这个调度分为四个过程: 1.Mesos Agent将自己所在机器(物理机,虚拟机,容器)的资源信息(可用的处理器,内存,磁盘等资源)上报给Mesos Master的资源分配组件(Allocation Module)。 2.master节点向framework发送资源邀约(resource offer),通知framework在agent上可用的资源信息。 3.框架调度程序(FW