发表于2024-11-25
√ 全局视角透视集群与容器编排
√ 实战级企业级容器化技术落地
√ 容器架构主线与集群生态蓝图
√ 大规模部署与基础设施即交付
《容器即服务:从零构建企业级容器集群》介绍了容器即服务的发展过程和主要技术,重点阐述当下主流的SwarmKit、Kubernetes、Mesos和Rancher 开源容器集群方案,并探讨了容器技术在网络、存储、监控、日志等方面的运用场景和基础知识,以及该领域在近年来的一些新的发展方向。
《容器即服务:从零构建企业级容器集群》适合一线架构师、开发者、运维人员以及技术管理者进行阅读。
林帆,花名金戟,阿里巴巴研发效能事业部技术专家。前ThoughtWorks资深DevOps技术咨询师,2015年极客邦CNut全球容器技术大会讲师,2016年CSDN架构技术实战峰会讲师,2017年StuQ容器集群技术直播课程讲师。具有丰富的一线开发和运维经验,是国内早期的容器技术实践者和布道师。
微服务架构时代对我们的基础设施管理提出了非常大的挑战,DevOps和持续交付成为了基本能力要求。没有近两年容器技术的快速发展,这些能力可能仍然只属于少数技术实力强大的互联网公司。容器技术的应用从真正意义上催化了我们在基础设施管理上的革命,成为时下每个IT组织必须获取的能力。
本书就像一个容器,承载了容器技术领域的方方面面,极大地解决了大家面对层出不穷的容器技术时的不知所措。林帆作为这个领域的专家,通过这样一个“容器”减轻了我们入门学习的烦琐,同时也给出了很多中肯的建议,避免读者在探索过程中走不必要的弯路。
——肖然 ThoughtWorks中国区咨询团队总监
《容器即服务》这样的标题,喻示着容器已然成为云服务的一种形式,而事实上也是如此,在Docker问世之初,Google GKE和AWS ECS就将容器带到了云上,而随着时间推移到2017年的下半年,微软的ACI和AWS的Fargate更是扶正了容器在云计算领域中一等公民的地位。看着林帆同学的目录,回想起过去三年间自己也真实地参与了这场容器与云的进化过程,感慨万千。我和林帆认识大概有两年了,印象里,他一直是一个认真而敏锐的人,容器技术领域发生的一切都逃不出他的视野。任何一项技术走向繁荣,都离不开技术作者们的辛苦工作,非常感谢林帆的这份付出,也期望本书能帮助更多人了解并使用容器,乃至参与到容器相关的开发工作中来。如果你想全面了解集群与容器编排领域,相信这本书可以给你足够的信息量。对于想更进一步深入到容器领域中的读者,我建议你更仔细地关注Kubernetes的章节,而如果你对Hyper这样的底层技术有兴趣的话,同样欢迎在读完本书相关章节后来和我们交流。
——王旭 Hyper创始人兼CTO
本书深入浅出,对企业级容器化技术落地实践涉及的主要方面都做了翔实的分析及介绍,作者有多年的企业级微服务及容器化改造实践经验,本书是不可多得的容器技术进阶读物。
——秦小康 RancherLabs大中华区总经理
林帆老师是斯达克学院(StuQ)的明星讲师,其主讲的《Docker容器集群技术》课程影响和帮助了近500余位学员,其中由浅入深地讲解了容器集群技术从理论到生产环境的实战技能,其专业素养和敬业精神获得了五星好评。林老师通过学员的课堂问题和反馈也收到许多宝贵意见和补充素材,使得本书更加贴合工程技术人员的需求。非常高兴看到本书的出版,它将帮助各位学习容器技术解决方案的同学找到方向。
——雷蒙德 斯达克学院(StuQ)业务总监兼主编
第1 部分 基础概念
第1 章 容器集群综述
1.1 虚拟化与容器
1.1.1 计算资源虚拟化
1.1.2 容器技术的本质
1.1.3 基于容器的软件交付
1.2 容器集群与分布式服务
1.2.1 微服务架构
1.2.2 容器集群生态圈
1.3 容器即服务
1.3.1 从基础设施到平台
1.3.2 数据中心操作系统
1.4 本章小结
第2 部分 解决方案
第2 章 SwarmKit 集群解决方案
2.1 开源容器集群方案
2.1.1 容器社区的“四朵金花”
2.1.2 经典Swarm、SwarmKit 和Swarm Mode
2.2 使用SwarmKit
2.2.1 SwarmKit 综述
2.2.2 创建SwarmKit 集群
2.2.3 在SwarmKit 集群上运行服务
2.2.4 SwarmKit 集群的其他功能
2.3 Docker Swarm Mode
2.3.1 Swarm Mode 综述
2.3.2 集群的创建与销毁
2.3.3 节点管理
2.3.4 服务管理
2.3.5 服务编排
2.3.6 应用栈的管理
2.3.7 外置配置和密文管理
2.4 Swarm Mode 的图形界面
2.4.1 Swarm Mode UI 现状
2.4.2 Portainer
2.5 本章小结
第3 章 Kubernetes 集群解决方案
3.1 Kubernetes 集群概述
3.1.1 Kubernetes 项目的起源
3.1.2 Kubernetes 的结构
3.1.3 基本概念
3.2 部署Kubernetes 集群
3.2.1 使用Minikube
3.2.2 使用kubeadm
3.2.3 理解Kubernetes 集群的部署过程
3.2.4 验证集群可用性
3.3 使用Kubernetes
3.3.1 通过Kubernetes 部署服务
3.3.2 服务的在线更新和回滚
3.3.3 单次任务、定时任务和全局服务
3.3.4 持久化存储.
3.3.5 配置存储
3.3.6 管理有状态的服务
3.3.7 健康检查
3.3.8 提供对外服务
3.3.9 多租户隔离和配额
3.3.10 集群的节点管理
3.4 Kubernetes 包管理工具Helm
3.4.1 Helm 简介
3.4.2 使用Helm 管理服务
3.4.3 自定义Chart
3.4.4 Chart 仓库
3.5 本章小结
第4 章 Mesos 集群解决方案
4.1 Mesos 和DC/OS 概述
4.1.1 Mesos 项目的起源
4.1.2 Mesos 的结构
4.1.3 Mesos 的内部构成
4.1.4 DC/OS 数据中心操作系统
4.2 部署Mesos 集群
4.2.1 部署ZooKeeper
4.2.2 部署Mesos
4.2.3 启动Master 节点
4.2.4 添加Agent 节点
4.2.5 Mesos 服务的启动参数
4.3 使用Marathon 管理服务
4.3.1 部署Marathon
4.3.2 添加一个应用
4.3.3 使用DC/OS 命令行工具
4.3.4 使用Docker 容器
4.3.5 使用Unified Container
4.3.6 持久化卷存储
4.3.7 Marathon-LB 负载均衡
4.3.8 Mesos-DNS 域名服务
4.3.9 服务依赖和编组
4.3.10 应用升级
4.3.11 调度约束
4.3.12 健康检查
4.4 使用Chronos
4.4.1 部署Chronos
4.4.2 定时表达式
4.4.3 创建定时任务
4.4.4 定时任务的依赖
4.5 更多的Mesos 服务框架
4.5.1 Mesos 服务框架的本质
4.5.2 编写自己的Mesos 服务框架
4.5.3 其他常见服务框架
4.6 DC/OS
4.6.1 DC/OS 简介
4.6.2 部署DC/OS
4.6.3 DC/OS 的操作
4.6.4 DC/OS 命令行工具
4.6.5 DC/OS 的应用仓库
4.7 本章小结
第5 章 Rancher 集群解决方案
5.1 Rancher 集群概述
5.1.1 Rancher 项目的起源
5.1.2 Rancher 的结构
5.1.3 相关概念
5.2 构建Rancher 集群
5.2.1 部署Server 节点
5.2.2 Server 节点的高可用部署方式
5.2.3 添加Agent 节点
5.3 Rancher 的服务管理
5.3.1 使用Rancher Web UI 创建服务
5.3.2 从容器
5.3.3 特殊类型的服务
5.3.4 使用应用商店
5.3.5 服务编排
5.3.6 服务的升级和回滚
5.4 Rancher 使用进阶
5.4.1 Rancher 的标签
5.4.2 调度选项
5.4.3 服务健康检查
5.4.4 Rancher 的元数据服务
5.4.5 Rancher 的DNS 服务
5.4.6 使用私有镜像仓库
5.4.7 Rancher 的Secret 服务
5.4.8 在应用商店添加自定义应用
5.5 Rancher 的命令行工具
5.5.1 配置Rancher 命令行工具
5.5.2 命令工具的基本使用
5.5.3 通过命令行进行服务编排
5.5.4 通过命令行进行服务升级
5.6 使用Rancher 安装Kubernetes
5.6.1 Rancher 的环境管理
5.6.2 在Rancher 中添加Kubernetes 环境
5.6.3 在Rancher 中使用Kubernetes
5.7 本章小结
第3 部分 技术周边
第6 章 容器集群的网络和存储
6.1 容器网络
6.1.1 容器网络标准
6.1.2 本地网络
6.1.3 跨节点网络
6.1.4 使用Docker 内置的Overlay 类型网络
6.1.5 构建基于Flannel 的覆盖网络
6.1.6 构建基于Calico 的BGP 路由网络
6.2 容器存储
6.2.1 容器实例和镜像的存储
6.2.2 容器卷的存储
6.2.3 容器卷存储标准
6.2.4 基于NFS 的卷存储
6.2.5 基于Ceph 的卷存储
6.2.6 使用公有云存储
6.3 本章小结
第7 章 容器服务的基础设施
7.1 集群性能监控
7.1.1 常见的开源性能监控方案
7.1.2 基于TICK Stack 的性能监控
7.1.3 TICK Stack 的部署和使用
7.1.4 基于Prometheus 的性能监控
7.1.5 Prometheus 的部署
7.1.6 Prometheus 的使用
7.2 集群日志管理
7.2.1 常见的开源日志管理方案
7.2.2 基于Elastic Stack 的日志管理
7.2.3 基于Fluentd 的日志管理
7.3 服务发现
7.3.1 常见的服务发现方案
7.3.2 Etcd
7.3.3 Consul
7.4 镜像仓库
7.4.1 容器镜像仓库概述
7.4.2 Registry
7.4.3 Harbor
7.5 本章小结
第8 章 容器技术新风向
8.1 安全的集群操作系统:Container Linux
8.1.1 Container Linux 概述
8.1.2 Container Linux 的部署
8.1.3 Container Linux 的使用
8.2 基于容器的操作系统:RancherOS
8.2.1 RancherOS 概述.
8.2.2 部署RancherOS
8.2.3 RancherOS 的使用
8.2.4 使用ros 工具管理系统
8.3 容器式的虚拟机:Hyper
8.3.1 Hyper 概述
8.3.2 部署Hyper
8.3.3 Hyper 的使用
8.4 虚拟机式的容器:LXD
8.4.1 LXD 概述
8.4.2 LXD 的安装和使用
8.4.3 服务热迁移.
8.5 容器与虚拟机的统一:Rkt
8.5.1 Rkt 概述
8.5.2 Rkt 的安装和使用
8.6 企业级定制容器:Pouch
8.6.1 Pouch 概述
8.6.2 Pouch 的开源生态
8.6.3 体验Pouch
8.7 微内核操作系统:Unikernel
8.7.1 Unikernel 概述
8.7.2 Unikernel 的发展
8.7.3 体验Unikernel
8.8 本章小结
序
在这个日新月异的时代,每一位站在浪尖上的技术匠人,都不得不加紧步伐,追赶不断变化的趋势。与此相应的一个现象是,当一本技术类的书籍刚刚面市,它所讲述的内容就已经开始迅速过时。
这本书从2016 年初开始筹备,由于种种原因拖沓了近两年终于完稿。在这段时间里:
SwarmKit 诞生了,原先的Swarm 技术栈光荣退役。
Kubernetes 的版本从1.0 一路更迭到1.10,增加了无数新特性。
Mesos 推出Unified Container,曾经一度被看好的Docker 集成器风光不再。
Rancher 发布2.0 版本,完全颠覆先前的用户体验设计。
Docker 自家的LinuxKit、阿里的Pouch 这些底层开源技术在不断演进。
书还没写完,最初准备的材料有一大半都已经作废。
先前笔者写作《CoreOS 实践之路》一书时,同样是一边增加新章节,一边关注书里涉及软件的变化,对已有章节进行三番五次的补充修正,到完成时,许多地方都被大段大段地重写了。此次的《容器即服务:从零构建企业级容器集群》因为涉及方面较多,加上写作时间跨度较大,以至于维护其中的内容变化更加困难,经过数次截稿日的跳票,才费劲地将书中示例涉及的大部分软件更新到2017 年中下旬的版本。
不过,本书写作的初衷并非在于介绍最新的工具。对于学习一门成熟的工具,最直接的方式莫过于阅读它的文档。但面对一个领域中众多的知识,入门者最容易迷失的地方在于缺少一条主线。本书一方面希望为容器集群及其周边的领域勾勒一幅入门的蓝图,另一方面则是点出一些在文档中没有讲清但实际很容易迷惑用户的大坑小洼,对于细节和扩展的内容则以参考链接的形式提供。
如今的容器技术正在处于百花齐放的时期,当我们讨论到容器,很多时候已不是单纯地在说某种内核虚拟化技术,而是在谈服务集群、任务调度,以及Cloud Native 和微服务。与此同时,容器平台相关的应用场景也越来越丰富,大规模容器化部署的运用逐渐从少数大型企业发展到许多中型和创业企业里。作为现代产品发布模式的重塑者,容器技术以及它所提倡的基础设施即代码交付思想,对每位一线架构师、开发者、运维人员乃至技术管理者的工作带来的影响,都不容小觑。本书截取了一些具有当下时代特征的技术剪影,提供给读者品味。
在编写内容时,本书尽量以通用的容器技术作为背景,而非限定于特定的容器产品(比如Docker)。但在一些具体的例子方面,均采用了当前最主流的Docker 容器作为讲解示例。
由于写作周期较长,加之作者个人的经验所限,书中难免存在一些阐述不当和错误的地方。本书的勘误表发布在博文视点官方网站http://www.broadview.com.cn/33276,恳请各位读者通过此页面提交勘误或发邮件到linfan.china@gmail.com 予以指正。
最后,感谢在过去两年中不断督促和鼓励我完成写作的张春雨以及负责了整本书编辑的吴倩雪,没有你们的努力,这本书肯定无法按时出版。感谢将我养育成材的父母以及我的爱人杨斌清,你们默默的支持使我得以静下心来认真地完成这部作品。同样感谢每一位开源代码的贡献者,正是开源推动了技术的革命,才使“旧时王谢堂前燕”,如今“飞入寻常百姓家”。我亦是一名普通的技术匠人,且当少 容器即服务:从零构建企业级容器集群 下载 mobi epub pdf txt 电子书 格式
容器即服务:从零构建企业级容器集群 下载 mobi pdf epub txt 电子书 格式 2024
容器即服务:从零构建企业级容器集群 下载 mobi epub pdf 电子书书很薄,一下子看完,入门够了
评分还行吧 挺简单的 有一定借鉴意义
评分在京东买了很多书,都非常不错,信赖京东自营!
评分纸质很好,是正品,物流也比较给力,各个方面做的都比较完美。
评分京东速度赞赞赞的
评分京东物流快,很值得信赖。
评分超级棒超级棒超级棒超级棒超级棒超级棒超级棒超级棒超级棒超级棒超级棒超级棒
评分书的质量还是可以的,看评论推荐买的,很精炼
评分关注这本书很长时间了,这次活动终于下手了!
容器即服务:从零构建企业级容器集群 mobi epub pdf txt 电子书 格式下载 2024