新書推薦:
《
英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。)
》
售價:NT$
367.0
《
万千心理·儿童心理治疗中的心智化:临床实践指导
》
售價:NT$
398.0
《
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
》
售價:NT$
301.0
《
周易
》
售價:NT$
203.0
《
东南亚的传统与发展
》
售價:NT$
306.0
《
乾隆制造
》
售價:NT$
398.0
《
资治通鉴臣光曰辑存 资治通鉴目录(司马光全集)(全二册)
》
售價:NT$
1316.0
《
明代社会变迁时期生活质量研究
》
售價:NT$
1367.0
編輯推薦:
Mesos是一个开源的集群任务调度管理系统,帮读者实现更小的系统开销,更方便的管理。随着虚拟化技术的发展,数据中心的架构组成越来越复杂。除了传统的物理机,云计算技术的虚拟机外,当前以docker为代表的容器技术也在数据中心里承担重要的服务角色。因此如何以*简单统一的方式来管理、调度混杂式数据中心的资源,实现大规模的应用部署,已经成为每个数据中心管理从业者眼前*的需求。
相信这本书会为对大规模分布式系统、集群任务调度管理、云计算和大数据感兴趣的读者带来收益。
內容簡介:
本书汇集了以Mesos为核心的新一代数据中心操作系统的*实践,全面展示了Mesos集群对数据中心资源管理的集成高效性,和对应用部署和计划任务创建扩容操作的便捷性的优点。 基于Apache Mesos开源项目和Mesosphere公司的开创性工作,作者由浅到深地介绍了Mesos数据中心操作系统下各个相关组件和主流的计算框架,主要内容包括:1.构建你的*个Mesos集群:Mesos Docker Zookeeper2.管理Mesos集群:任务调度,资源管理以及日志3.使用主流计算框架部署容器化应用:Mesosphere公司的Marathon Chronos以及Apache Aurora4.以python为例,自开发计算框架在每个部分,Roger Ignazio都给出了:关键原理及组件组成、安装部署过程、注意事项、日志和诊断方法等*实践,并结合相关实例、研究成果和附加资源进行阐述。每个部分的内容组织都着力于条理清晰的、系统的展现Mesos集群的优点。作者对书中建议和使用指南进行了补充说明,以便读者深入了解其合理性,还有实用指南明确每个动作是否成功执行。《Mesos实战》可以作为新一代数据中心架构设计以及管理的权威性参考和教程,也可作为自建PaaS、CaaS平台的辅助参考,又或是分布式计算框架开发的参考书籍。
關於作者:
Roger Ingnazio是一名经验丰富的系统工程师,专注研究分布式、具备容错性和伸缩性的基础架构。他对于通过更好的自动化、工具化和报告来提高生产效率极富热情。目前他是Mesosphere工程团队的一个技术指导,与他的妻子Sarah及他们的两只猫居住在俄勒冈州波特兰市。
余何:众神的大师兄,湖南长沙人也;高效运维公众号专栏作者;著有《PaaS实现与运维管理》,具有十余年数据中心运维管理经验。国家软件设计师、PMP项目管理认证、Juniper互联网专员(JNCIS)、NetApp解决方案架构师(NCSA),热衷于开源技术,广结天下英豪,以运维心灵捕手著称。陈秋浩:基础架构资深工程师,拥有6年大型IT数据中心运维和开发经验,早期活跃于基础架构服务交付和异常事件处理一线。爱好开发,拥抱开源技术,2014年末借Docker和Mesos技术兴起之势,辅以业界日益成熟的自动化运维理念,负责开发搭建企业内部基于Mesos Marathon的高容错性、弹性伸缩的Docker平台。杨永帮:2011年毕业于中山大学软件工程专业,多年的大型金融集团的IT基础架构运维的丰富经验,解决过IT基础架构的各种疑难问题杂症。深深感受到了云计算的发展带来的运维方式的变革,目前致力于Mesos与Docker的研究工作。
目錄 :
第 1 部分你好,Mesos ................................................... 1
1 初识 Mesos .............................................................................. 3
1.1遇见 Mesos ......................................................................................................... 4
1.1.1理解它如何工作 .................................................................................... 5
1.1.2虚拟机和容器的比较 ............................................................................ 7
1.1.3知道何时及为何使用 Mesos................................................................. 9
1.2为什么我们要重新思考数据中心 .................................................................. 10
1.2.1资源划分 .............................................................................................. 11
1.2.2应用部署 .............................................................................................. 12
1.3Mesos 分布式架构 ........................................................................................... 13
1.3.1masters .................................................................................................. 13
1.3.2slaves .................................................................................................... 14
1.3.3frameworks ........................................................................................... 15
1.4小结 .................................................................................................................. 15
2 使用 Mesos 管理数据中心资源 .................................................17
2.1Spark 简要介绍 ................................................................................................ 18
2.1.1独立集群上的 Spark............................................................................ 18
2.1.2Mesos 上的 Spark ................................................................................ 19
2.2在 Mesos 上运行 Spark job ............................................................................. 21
2.2.1在集合中寻找素数 .............................................................................. 22
2.2.2获取与打包代码 .................................................................................. 23
2.2.3提交作业 .............................................................................................. 24
2.2.4观察输出 .............................................................................................. 24
2.3进一步探索 ...................................................................................................... 26
2.3.1Mesos UI .............................................................................................. 26
2.3.2Spark UI................................................................................................ 26
2.4小结 .................................................................................................................. 28
第 2 部分Mesos 核心.................................................... 31
3 安装 Mesos ............................................................................33
3.1部署 Mesos ....................................................................................................... 34
3.1.1Mesos 集群组件................................................................................... 34
3.1.2开发环境的注意事项 .......................................................................... 35
3.1.3生产环境的注意事项 .......................................................................... 36
3.2安装 Mesos 和 ZooKeeper ............................................................................... 38
3.2.1使用安装包部署 .................................................................................. 38
3.2.2从源文件编译并安装 .......................................................................... 40
3.3配置 Mesos 和 ZooKeeper ............................................................................... 43
3.3.1ZooKeeper 配置 ................................................................................... 43
3.3.2Mesos 配置........................................................................................... 45
3.4安装并配置 Docker.......................................................................................... 50
3.4.1安装 Docker ......................................................................................... 51
3.4.2配置 Docker ......................................................................................... 53
3.4.3配置 Docker 专用的 Mesos slaves ...................................................... 54
3.5升级 Mesos ....................................................................................................... 54
3.5.1升级 Mesos masters ............................................................................. 55
3.5.2升级 Mesos slaves ................................................................................ 55
3.6小结 .................................................................................................................. 56
4 Mesos 原理 ............................................................................57
4.1调度和分配数据中心资源 .............................................................................. 57
4.1.1理解资源调度 ...................................................................................... 58
4.1.2理解资源分配 ...................................................................................... 59
4.1.3定制 Mesos slave 资源和属性 ............................................................ 61
4.2使用容器隔离资源 .......................................................................................... 62
4.2.1隔离并监控 CPU、内存和磁盘 ......................................................... 63
4.2.2网络监控和限速 .................................................................................. 65
4.3了解容错和高可用 .......................................................................................... 68
4.3.1容错 ...................................................................................................... 70
4.3.2高可用 .................................................................................................. 70
4.3.3处理出错和升级 .................................................................................. 70
4.4小结 .................................................................................................................. 76
5 日志记录和调试 .....................................................................77
5.1理解和配置 Mesos 日志记录 .......................................................................... 78
5.1.1日志文件的路径和解释 ...................................................................... 78
5.1.2配置日志记录 ...................................................................................... 80
5.2调试 Mesos 集群及其任务 .............................................................................. 81
5.2.1使用 Mesos Web 接口 ......................................................................... 82
5.2.2使用内置命令行工具 .......................................................................... 89
5.2.3使用 Mesosphere 的 mesos-cli 工具 ................................................... 90
5.3小结 .................................................................................................................. 92
6 生产环境中的 Mesos ...............................................................93
6.1监控 Mesos 和 Zookeeper 集群....................................................................... 94
6.1.1监控 Mesos master ................................
內容試閱 :
推荐序一
世界著名的曼宁出版社(Manning)出版了不少广受欢迎的计算机丛书,如搜 索领域的 Lucene in Action、Elasticsearch in Action,现在,他们又出版了这本云计算 领域的 Mesos in Action。
Mesos 是一个开源的集群任务调度管理系统。现在随着分布式系统的广泛应用, 越来越多的任务运行在集群上,而不是在单台服务器上。在 x86 PC 服务器集群上运 行任务的好处是 :单台服务器成本低,集群可以随着负载的增加添加服务器,水平 扩展 scale out,而不是过去使用昂贵服务器的 scale up。随着集群规模的扩大,节点 数越多,某个节点出现问题的概率就越大,当某个节点出现问题时,如何保证在这 个节点上运行的任务能够顺利执行完成,成为一个技术难题。另外,如何管理集群, 如何分发任务、监控任务执行过程等都是挑战。如果对于运行在集群上的任务,工 程师还是需要在各台服务器上部署和管理,工作量将非常大,现在有些大规模集群 的服务器数量已经超过万台。理想的情况是,工程师不需要关心集群里具体的每台 服务器,而是把整个集群看成是一个计算、存储资源,把任务提交给集群的管理系统, 由集群的管理系统去分发任务、监控任务执行,当某台服务器出现故障时,集群管 理系统自动把任务派发到其他服务器上运行。这样的集群管理系统可以看作集群操 作系统,甚至是数据中心操作系统。Google 在这方面做了大量的实践,在 2009 年 发表的 The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines 文章中,把整个数据中心看成一台计算机,所有的资源都由数据中心操作系统进行调度管理。
在 20 世纪 80 年代,学术界就开始了集群任务调度管理系统的研究,美国威 斯康辛大学的研究人员开发了 Condor 系统,后来演进成开源的 HTCondor 系 统。 Google 在 1998 年成立之初,就使用 PC 服务器抓取、索引、检索全世界的网页,服 务器数量巨大,他们先是开发了 WorkQueue 系统,也就是一个任务队列,工程师把 需要集群运行的任务提交给这个任务队列,由任务队列把任务下发到集群的服务器, 并监控任务的运行,如果服务器出现故障,就把任务重新下发到新的服务器上。后来, 他们在 WorkQueue 的基础上开发了 Borg 系统,Borg 就是 Google 的集群任务调度管 理系统。10 年前我在 Google 工作的时候,每天需要在集群上运行的任务,都是通 过 Borg 来提交、管理的,非常方便。那时候,Google 的一个集群就已经有 2 万台 服务器的规模,一个数据中心有 10 个这样的集群,20 万台服务器。我加入腾讯后, 也开发了这样的系统。这种系统的资源隔离采用了容器技术(操作系统之上的资源 隔离),而不是虚拟机(物理服务器之上的资源隔离),以实现更小的系统开销,更 方便的管理。现在容器技术也正在被广泛使用,成为虚拟机之外的可选技术路线。
Mesos 也是一个这样的系 统。Mesos 由著名的美国加州大学伯克利分校的 AMPLab 发明,AMPLab 是 Algorithms,Machines and People(算法、机器和人)实 验室的缩写。AMPLab 的研究成果非常多,现在应用广泛的大数据处理框架 Spark 就是 AMPLab 的发明,AMPLab 的研究人员还包括了著名的美国科学院及工程院院 士、发明了 RAID(磁盘阵列)和 RISC(简约指令架构)的 David Patterson 教授。 Mesos 系统也在 Twitter、Airbnb 和苹果公司得到应用。
本书译者之一余何是 IT 专家,他曾在平安科技工作多年,有着丰富的大规模集 群系统的开发、运维、管理经验,经历了多个云计算、大数据系统在金融行业的应用, 在 2015 年出版了《PaaS 实现与运维管理》一书,由他作为经验丰富的实战者来翻 译这本书是最合适不过的了。
相信这本书会为对大规模分布式系统、集群任务调度管理、云计算和大数据感 兴趣的读者带来受益。
陈军 日志易 CEO
推荐序二
余何兄是我的老朋友了,在运维领域耕耘多年,不仅运维能力强,而且善于总结乐于分享,也是 GOPS 全球运维大会金牌讲师。我和余何兄最开始是在圈子中互 相关注,之后在一次论坛上偶遇,一番交流下来,一拍即合,一同走上了追求快乐 运维的道路。我们的共识是一起愉快地玩耍,让运维变得更加轻松,让运维人 员更加健康地生活。
但凡一个好的产品,都是从 0 到 1,而不是从 0 到无穷、从 0 到包罗万象,这 其中的道理就是专注。专注于做好一件事,提供稳定兼容的接口,这就是一个好产 品的伊始。在运维平台领域,由于其需求范围广、组织差异大,很难有那么一个产 品能够满足一切,而短时间满足一切又很可能意味着 bug 多多,因此,我们应该问 自己,你到底需要什么?
刚好,Mesos 就是这样一个产品 :专注于做好一件事,专注于资源管理。关于 其上的应用任务调度,无论是服务、批处理还是大数据,它都提供了稳定而兼容的 接口,从而让用户在其上按照自己的需求,不断迭代实现,最后形成自己的产品。 其在提高集群资源利用率,服务自动化部署等方面的表现,尤其令人称赞。
希望余何兄组织翻译的本书,能得到您的喜爱,为 Mesos 在中国的继续壮大添 砖加瓦。为了我们共同的运维事业,一起加油!
萧田国 高效运维社区发起人开放运维联盟主席 国内第一个 DevOps Master
推荐序三
我一直在关注国内 IT 运维的发展,在不同的业务领域、企业规模下,运维的标
准与规则参差不齐,真正掌握运维真知的人绝不仅意味着玩转创新技术、流行框架, 更重要的是如何真正解决企业问题,如何保证落地与实现。国内第一本 PaaS 原创 畅销书作者众生的大师兄余何有着十多年运维实战经验,经历了中国运维发展 的各个阶段,在电信、金融以及物流领域都有所耕耘,今天由他领衔翻译的《Mesos 实战》同样保持了高水准,相信一定会广受欢迎。
Mesos 并没有什么吸引眼球的华丽外表,在起步阶段由于具备一定门槛,同时 效能只能在具备一定规模后才能体现,因此一直没有快速地在运维领域流行起来。 倒是 OpenStack 借助云计算概念、K8s 背靠谷歌这个亲爹在社区内刮起了一股大的 旋风,回头再来看看近几年商业化的过度炒作,连一向低调的运维领域也产生了泡 沫。回到问题的本身,为什么要使用 Mesos,我会站在和译者一样的角度考虑,我 们必须考虑绕不过的环节,上层的应用,我们需要对遗留应用架构系统进行兼容吗? 需要。Mesos 是一个通用性资源管理框架,能够适配各种计算类型的服务,正因为 如此,向上的任务调度才稍显复杂,为了做好兼容,我们必须做更多工作。
资源管理策略 Dominant Resource FairnessDRF 是 Mesos 的核心,是将 Mesos 比作分布式系统 Kernel 的根本所在。Mesos 能够保证集群内所有用户都能够平等 地使用集群内资源,这里的资源包括 CPU、内存、磁盘等。在通用性方面,Mesos只负责提供资源给上层任务调度 framework,而不负责具体任务管理,于是可让各种类型计算任务使用集群资源。关于准入门槛,如果仅部署一套 Mesos,我们几乎 什么也干不了,为了使用好它,我们需要不同的 Mesos framework,像 Marathon, chronos 等 , 在特殊场景下,甚至需要开发自己的 framework,除此之外磁盘、网络 等问题也需要着重考虑。如果没有强大的意志力,初学者大多会望而却步。还好有众 生的大师兄这样一位谆谆不倦的运维发展践行者,带着对运维未来美好发展的憧 憬,坚持不懈的推行运维理念与实践,我也希望本书能够帮助 Mesos 在运维社区中 快速流行与成熟,大家都能有所贡献与分享,真正解决我们企业内部遇到的运维问 题。
肖力 云技术社区创始人
译者序
云计算时代,对开源产品的选择,很容易陷入一个误区,用商业化方式进行判断,选择最热门畅销的产品,而忽视了自身需求及组织能力,从而导致目标的 偏离。2014 年,我与小伙伴们开始考察一系列平台产品并进行研究,当时我们的需 求很明确,提升资源利用率与运维效率,没有其他(专注,专注,再专注)。我们 的组织能力也很明确,深入理解操作系统,能够像使用黑魔法一样改变操作系统的 行为,具有工程设计能力,能很快地驯服与改造各种开源产品。基于以上两点,经 历了一段考察期后,我们最终选择了 Mesos。
Mesos 很难让人一下子就亲近,她绝不是让你一见钟情的那种,她没有华丽外 表让你如痴如醉,也没有什么直接功能让你耍酷摆炫,你需要花很长一段时间去理 解她,你需要有应用场景,有资源节约型需求,有大规模机器集群管理,有多种计 算类型,之后在不断的运用中,才慢慢发现 Mesos 的奥妙之处,一步步坠入到她的 爱河中。Mesos 专注于数据中心资源管理,专注于做好一件事,干净、简洁,如同 操作系统内核一样,它是数据中心资源管理的 Kernel。
很多人问我 Mesos 是否可以解决运维领域的可靠性问题、资源管理问题,从此 天下太平、安枕无忧,作者在书中也有一点这种态度。但很遗憾,实际运维环境是 相当复杂的,这种神一样的工具几乎不可能存在。不同的管理结构有着不同的权限 层级,不同的应用类型有着不同的服务级别,不同的组织环境有着不同的流程规范,一言以蔽之,没有什么固定的工具可以解决不断变化的运维问题。要保持运维水平的不断提升,最后发现这是一个组织行为学问题,是理念、人、 流程、工具的结合体。组织的理念是