发表于2024-11-23
本书是容器圈Kubernetes重磅开山作《从Docker到Kubernetes实践全接触》的升级版,书籍更新到2016.6 Kubernetes v1.3版本,包含从2015.7发布1.0版本之后v1.1、v1.2、v1.3版本的全部新特性,并根据第1版的读者反馈和全新的Kubernetes版本,对内容进行了大幅修订。
我相信这是一本到目前为止对从事云计算领域技术实践的人来说非常有价值的书籍。Kubernetes是容器生态圈中的重要一员,发展速度极快,现已拥有800多名代码贡献者。本书囊括了Kubernetes入门、核心原理、实践指南、开发指导、高级案例、运维指南及源码分析等方面的内容,由浅入深地介绍了Kubernetes容器云平台,并围绕着生产环境中可能出现的问题,给出了大量的典型案例,有很好的可借鉴性。
本书作者全部来自惠普公司云计算实战一线,敏锐地捕获和探索着各种IT前瞻技术,有着全面而扎实的技术架构体系、对创新技术天生的热情、国际技术领先者的视野,还有着对企业级IT架构的深入把握。
Kubernetes是由谷歌开源的Docker容器集群管理系统,为容器化的应用提供了资源调度、部署运行、服务发现、扩容及缩容等一整套功能。《Kubernetes指南:从Docker到Kubernetes实践全接触(第2版)》从一个开发者的角度去理解、分析和解决问题,囊括了Kubernetes入门、核心原理、实践指南、开发指导、高级案例、运维指南及源码分析等方面的内容,图文并茂、内容丰富、由浅入深、讲解全面;并围绕着生产环境中可能出现的问题,给出了大量的典型案例,比如安全问题、网络方案的选择、高可用性方案及Trouble Shooting技巧等,有很强的可借鉴性。
无论是对于软件工程师、测试工程师、运维工程师、软件架构师、技术经理,还是对于资深IT人士来说,本书都极具参考价值。
龚正 / 惠普公司高级顾问
拥有十多年的IT从业经验,具备丰富的云计算、大数据分析和大型企业级应用的架构设计和实施经验,是电信、金融、互联网等领域的资深专家。
吴治辉 / 惠普公司资深架构师
拥有超过15年的软件研发经验,专注于电信软件和云计算方面的软件研发,拥有丰富的大型项目架构设计经验,是业界少有的具备很强Coding能力的S级资深架构师,也是《ZeroC Ice指南》的作者。
王伟 / 惠普公司资深系统架构师、大数据和云计算技术专家
拥有多年IT行业从业经验,参与过多个大型应用的架构设计、系统开发和实施落地,精通大数据、云计算及大型系统架构和开发的相关技术,对互联网和电信行业的热点技术有着深刻的理解,是云计算和大数据方面的技术专家。
崔秀龙 / 惠普公司资深架构师
开源软件、自动化爱好者,拥有十多年从业经验,对软件生命周期的各个环节均有深刻的理解。
闫健勇 / 惠普公司高级项目经理、总构架师
拥有超过15年的电信行业系统建设经验,主导了多项电信大型系统的架构设计和管理,对于云计算和大数据在电信行业中的应用拥有丰富的经验。
崔晓宁 / 惠普公司高级顾问
拥有超过7年的测试咨询和质量管理经验,在云计算、大数据和分布式运算架构下的业务质量控制方面有非常丰富的项目实践和心得,并对推动组织架构优化有丰富的经验。帮助多个超过百人的大型项目建立软件产品管理规范和体系,并对其运营提供指导。
刘晓红 / 惠普公司高级咨询顾问
拥有超过10年的电信行业从业经验,亲历中国移动BSS/OSS领域核心系统的建设发展历程,具备丰富的咨询规划、需求分析、产品设计、项目管理、测试管理经验,专注于云计算、大数据等前沿技术的研究。
我相信这是一本到目前为止对从事云计算领域技术实践的人来说非常有价值的书籍。本书作者来自云计算实战一线,敏锐地捕获和探索着各种IT前瞻技术,他们在惠普如日中天的时期加入惠普,是纯粹的技术癖,为世界级的企业构建着相当庞大的信息系统。他们有着全面而扎实的技术架构体系,有着对创新技术天生的热情,有着国际技术领先者的视野,还有着对企业级IT架构的深入把握。
本书囊括了Kubernetes入门、运行机制、原理和高级案例等内容,由浅入深地介绍了当前发展速度极快且被认可度极高的Kubernetes容器云平台,并围绕着生产环境中可能出现的问题,给出了大量的典型案例,有很好的可借鉴性。
不论你是程序员、架构师,还是咨询顾问、IT管理者,你都会通过本书接触到非常热门的Docker和Kubernetes技术的非常清晰、细腻的实践脉络,感受到云计算技术领域的清新气息。
——惠普中国区CMS 负责人 张红忠
Kubernetes是容器生态圈中的重要一员,发展速度非常快,现在已经拥有800多名代码贡献者。谷歌在容器编排调度方面有着非常丰富的经验,所以Kubernetes的架构设计和理念都很不错。现在,国内已经有很多公司在应用Kubernetes,InfoQ也在这方面发表和策划了很多文章。这是国内专门讲解Kubernetes的重磅开山之作,从架构到源代码、从原理到案例,内容全面而详尽,非常不错。
——InfoQ主编 郭蕾
Kubernetes是由谷歌开源的Docker容器集群管理系统,为容器化的应用提供了资源调度、部署运行、服务发现、扩容、缩容等一整套功能。相对于已经很火的Docker,Kubernetes是一款很好的容器管理工具,而本书从Kubernetes的基础、案例到高级话题,都讲得很全面。
——随锐科技股份有限公司运维经理 刘成吉
第1章 Kubernetes 入门 1
1.1 Kubernetes 是什么 1
1.2 为什么要用Kubernetes 4
1.3 从一个简单的例子开始 5
1.3.1 环境准备 6
1.3.2 启动MySQL 服务 7
1.3.3 启动Tomcat 应用 9
1.3.4 通过浏览器访问网页 11
1.4 Kubernetes 基本概念和术语 12
1.4.1 Master 12
1.4.2 Node 13
1.4.3 Pod 15
1.4.4 Label(标签) 19
1.4.5 Replication Controller(RC) 22
1.4.6 Deployment 25
1.4.7 Horizontal Pod Autoscaler(HPA) 27
1.4.8 Service(服务) 29
1.4.9 Volume(存储卷) 35
1.4.10 Persistent Volume 39
1.4.11 Namespace(命名空间) 40
1.4.12 Annotation(注解) 42
1.4.13 小结 42
第2章 Kubernetes 实践指南 43
2.1 Kubernetes 安装与配置 43
2.1.1 安装Kubernetes 43
2.1.2 配置和启动Kubernetes 服务 45
2.1.3 Kubernetes 集群的安全设置 51
2.1.4 Kubernetes 的版本升级 57
2.1.5 内网中的Kubernetes 相关配置 57
2.1.6 Kubernetes 核心服务配置详解 58
2.1.7 Kubernetes 集群网络配置方案 72
2.2 kubectl 命令行工具用法详解 80
2.2.1 kubectl 用法概述 80
2.2.2 kubectl 子命令详解 82
2.2.3 kubectl 参数列表 84
2.2.4 kubectl 输出格式 84
2.2.5 kubectl 操作示例 86
2.3 Guestbook 示例:Hello World 87
2.3.1 创建redis-master RC 和Service 89
2.3.2 创建redis-slave RC 和Service 91
2.3.3 创建frontend RC 和Service 93
2.3.4 通过浏览器访问frontend 页面 96
2.4 深入掌握Pod 97
2.4.1 Pod 定义详解 97
2.4.2 Pod 的基本用法 102
2.4.3 静态Pod 107
2.4.4 Pod 容器共享Volume 108
2.4.5 Pod 的配置管理 110
2.4.6 Pod 生命周期和重启策略 123
2.4.7 Pod 健康检查 124
2.4.8 玩转Pod 调度 126
2.4.9 Pod 的扩容和缩容 135
2.4.10 Pod 的滚动升级 139
2.5 深入掌握Service 143
2.5.1 Service 定义详解 143
2.5.2 Service 基本用法 145
2.5.3 集群外部访问Pod 或Service 150
2.5.4 DNS 服务搭建指南 153
2.5.5 Ingress:HTTP 7 层路由机制 161
第3章 Kubernetes 核心原理 165
3.1 Kubernetes API Server 原理分析 165
3.1.1 Kubernetes API Server 概述 165
3.1.2 独特的Kubernetes Proxy API 接口 168
3.1.3 集群功能模块之间的通信 169
3.2 Controller Manager 原理分析 170
3.2.1 Replication Controller 171
3.2.2 Node Controller 173
3.2.3 ResourceQuota Controller 174
3.2.4 Namespace Controller 176
3.2.5 Service Controller 与Endpoint Controller 176
3.3 Scheduler 原理分析 177
3.4 kubelet 运行机制分析 181
3.4.1 节点管理 181
3.4.2 Pod 管理 182
3.4.3 容器健康检查 183
3.4.4 cAdvisor 资源监控 184
3.5 kube-proxy 运行机制分析 186
3.6 深入分析集群安全机制 190
3.6.1 API Server 认证 190
3.6.2 API Server 授权 192
3.6.3 Admission Control 准入控制 194
3.6.4 Service Account 195
3.6.5 Secret 私密凭据 200
3.7 网络原理 203
3.7.1 Kubernetes 网络模型 203
3.7.2 Docker 的网络基础 205
3.7.3 Docker 的网络实现 217
3.7.4 Kubernetes 的网络实现 225
3.7.5 开源的网络组件 229
3.7.6 网络实战 234
第4章 Kubernetes 开发指南 247
4.1 REST 简述 247
4.2 Kubernetes API 详解 249
4.2.1 Kubernetes API 概述 249
4.2.2 API 版本 254
4.2.3 API 详细说明 254
4.2.4 API 响应说明 256
4.3 使用Java 程序访问Kubernetes API 258
4.3.1 Jersey 258
4.3.2 Fabric8 270
4.3.3 使用说明 271
第5章 Kubernetes 运维指南 292
5.1 Kubernetes 集群管理指南 292
5.1.1 Node 的管理 292
5.1.2 更新资源对象的Label 294
5.1.3 Namespace:集群环境共享与隔离 295
5.1.4 Kubernetes 资源管理 299
5.1.5 Kubernetes 集群高可用部署方案 333
5.1.6 Kubernetes 集群监控 343
5.1.7 kubelet 的垃圾回收(GC)机制 361
5.2 Kubernetes 高级案例 362
5.2.1 ElasticSearch 日志搜集查询和展现案例 362
5.2.2 Cassandra 集群部署案例 371
5.3 Trouble Shooting 指导 376
5.3.1 查看系统Event 事件 377
5.3.2 查看容器日志 379
5.3.3 查看Kubernetes 服务日志 379
5.3.4 常见问题 381
5.3.5 寻求帮助 384
5.4 Kubernetes v1.3 开发中的新功能 385
5.4.1 Pet Set(有状态的容器) 385
5.4.2 Init Container(初始化容器) 388
5.4.3 Cluster Federation(集群联邦) 391
第6章 Kubernetes 源码导读 396
6.1 Kubernetes 源码结构和编译步骤 396
6.2 kube-apiserver 进程源码分析 400
6.2.1 进程启动过程 400
6.2.2 关键代码分析 402
6.2.3 设计总结 417
6.3 kube-controller-manager 进程源码分析 420
6.3.1 进程启动过程 420
6.3.2 关键代码分析 423
6.3.3 设计总结 431
6.4 kube-scheduler 进程源码分析 433
6.4.1 进程启动过程 434
6.4.2 关键代码分析 438
6.4.3 设计总结 445
6.5 kubelet 进程源码分析 447
6.5.1 进程启动过程 447
6.5.2 关键代码分析 452
6.5.3 设计总结 475
6.6 kube-proxy 进程源码分析 476
6.6.1 进程启动过程 476
6.6.2 关键代码分析 478
6.6.3 设计总结 493
6.7 kubectl 进程源码分析 494
6.7.1 kubectl create 命令 495
6.7.2 rolling-update 命令 499
后记 505
第1版推荐序
经过作者们多年的实践经验积累及近一年的精心准备,本书终于与我们大家见面了。我有幸作为首批读者,提前见证和学习了在云时代引领业界技术方向的Kubernetes和Docker的最新动态。
从内容上讲,本书从一个开发者的角度去理解、分析和解决问题:从基础入门到架构原理,从运行机制到开发源码,再从系统运维到应用实践,讲解全面。本书图文并茂,内容丰富,由浅入深,对基本原理阐述清晰,对程序源码分析透彻,对实践经验体会深刻。
我认为本书值得推荐的原因有以下几点。
首先,作者的所有观点和经验,均是在多年建设、维护大型应用系统的过程中积累形成的。例如,读者通过学习书中的Kubernetes运维指南和高级应用实践案例章节的内容,不仅可以直接提高开发技能,还可以解决在实践过程中经常遇到的各种关键问题。书中的这些内容具有很高的借鉴和推广意义。
其次,通过大量的实例操作和详尽的源码解析,本书可以帮助读者进一步深刻理解Kubernetes的各种概念。例如书中“Java访问Kubernetes API”的几种方法,读者参照其中的案例,只要稍做修改,再结合实际的应用需求,就可以用于正在开发的项目中,达到事半功倍的效果,有利于有一定Java基础的专业人士快速学习Kubernetes的各种细节和实践操作。
再次,为了让初学者快速入门,本书配备了即时在线交流工具和专业后台技术支持团队。如果你在开发和应用的过程中遇到各类相关问题,均可直接联系该团队的开发支持专家。
最后,我们可以看到,容器化技术已经成为计算模型演化的一个开端,Kubernetes作为谷歌开源的Docker容器集群管理技术,在这场新的技术革命中扮演着重要的角色。Kubernetes正在被众多知名企业所采用,例如RedHat、VMware、CoreOS及腾讯等,因此,Kubernetes站在了容器新技术变革的浪潮之巅,将具有不可预估的发展前景和商业价值。
如果你是初级程序员,那么你有必要好好学习本书;如果你正在IT领域进行高级进阶修炼,那你也有必要阅读本书。无论是架构师、开发者、运维人员,还是对容器技术比较好奇的读者,本书都是一本不可多得的带你从入门向高级进阶的精品书,值得大家选择!
初瑞
中国移动业务支撑中心高级经理
Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版) 下载 mobi pdf epub txt 电子书 格式 2024
Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版) 下载 mobi epub pdf 电子书支持正版,学无止境
评分没多大用呃。。。完全就是测试玩的,不贴合生产环境。
评分正是需要的,送货快。
评分京东商品包装精美,质量好,需要会再来
评分这本书有好多低级错误,编书者太马虎了。
评分物流给力,快速!
评分专业必备正版
评分货到付款
评分21世纪顶力大作
Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版) mobi epub pdf txt 电子书 格式下载 2024