YL13813 9787302496670 9787302479703
《每天5分钟玩转Kubernetes》共15章,系统介绍了 Kubernetes 的架构、重要概念、安装部署方法、运行管理应用的技术、网络存储管理、集群监控和日志管理等重要内容。书中通过大量实操案例深入浅出地讲解 Kubernetes 核心技术,是一本从入门到进阶的实用Kubernetes 操作指导手册。读者在学习的过程中,可以跟着教程进行操作,在实践中掌握 Kubernetes 的核心技能。在之后的工作中,则可以将本教程作为参考书,按需查找相关知识点。
《每天5分钟玩转 Kubernetes》主要面向微服务软件开发人员,以及 IT 实施和运维工程师等相关人员,也适合作为高等院校和培训学校相关专业的教学参考书。
第1章 先把 Kubernetes 跑起来 1
1.1 先跑起来 1
1.2 创建 Kubernetes 集群 2
1.3 部署应用 4
1.4 访问应用 5
1.5 Scale 应用 6
1.6 滚动更新 7
1.7 小结 8
第2章 重要概念 9
第3章 部署 Kubernetes Cluster 13
3.1 安装 Docker 14
3.2 安装 kubelet、kubeadm 和 kubectl 14
3.3 用 kubeadm 创建 Cluster 14
3.3.1 初始化Master 14
3.3.2 配置 kubectl 16
3.3.3 安装Pod网络 16
3.3.4 添加 k8s-node1 和 k8s-node2 16
3.4 小结 18
第4章 Kubernetes 架构 19
4.1 Master 节点 19
4.2 Node 节点 20
4.3 完整的架构图 21
4.4 用例子把它们串起来 22
4.5 小结 24
第5章 运行应用 25
5.1 Deployment 25
5.1.1 运行Deployment 25
5.1.2 命令 vs 配置文件 29
5.1.3 Deployment 配置文件简介 30
5.1.4 伸缩 31
5.1.5 Failover 33
5.1.6 用label 控制 Pod 的位置 33
5.2 DaemonSet 36
5.2.1 kube-flannel-ds 36
5.2.2 kube-proxy 37
5.2.3 运行自己的 DaemonSet 38
5.3 Job 40
5.3.1 Pod 失败的情况 41
5.3.2 Job 的并行性 43
5.3.3 定时 Job 45
5.4 小结 48
第6章 通过 Service 访问 Pod 49
6.1 创建 Service 49
6.2 Cluster IP 底层实现 51
6.3 DNS 访问 Service 53
6.4 外网如何访问 Service 55
6.5 小结 58
第7章 Rolling Update 59
7.1 实践 59
7.2 回滚 61
7.3 小结 63
第8章 Health Check 64
8.1 默认的健康检查 64
8.2 Liveness 探测 65
8.3 Readiness 探测 67
8.4 Health Check 在 Scale Up 中的应用 69
8.5 Health Check 在滚动更新中的应用 71
8.6 小结 75
第9章 数据管理 76
9.1 Volume 76
9.1.1 emptyDir 76
9.1.2 hostPath 78
9.1.3 外部 Storage Provider 79
9.2 PersistentVolume & PersistentVolumeClaim 81
9.2.1 NFS PersistentVolume 81
9.2.2 回收 PV 84
9.2.3 PV 动态供给 86
9.3 一个数据库例子 87
9.4 小结 91
第10章 Secret & Configmap 92
10.1 创建 Secret 92
10.2 查看 Secret 93
10.3 在Pod中使用Secret 94
10.3.1 Volume 方式 94
10.3.2 环境变量方式 96
10.4 ConfigMap 97
10.5 小结 100
第11章 Helm—Kubernetes的包管理器 101
11.1 Why Helm 101
11.2 Helm 架构 103
11.3 安装 Helm 104
11.3.1 Helm 客户端 104
11.3.2 Tiller服务器 105
11.4 使用Helm 106
11.5 chart 详解 109
11.5.1 chart 目录结构 109
11.5.2 chart 模板 113
11.5.3 再次实践 MySQL chart 115
11.5.4 升级和回滚 release 118
11.5.5 开发自己的 chart 119
11.6 小结 126
第12章 网 络 127
12.1 Kubernetes 网络模型 127
12.2 各种网络方案 128
12.3 Network Policy 129
12.3.1 部署 Canal 129
12.3.2 实践 Network Policy 130
12.4 小结 135
第13章 Kubernetes Dashboard 136
13.1 安装 136
13.2 配置登录权限 137
13.3 Dashboard 界面结构 139
13.4 典型使用场景 140
13.4.1 部署 Deployment 140
13.4.2 在线操作 141
13.4.3 查看资源详细信息 142
13.4.4 查看 Pod 日志 142
13.5 小结 143
第14章 Kubernetes 集群监控 144
14.1 Weave Scope 144
14.1.1 安装 Scope 144
14.1.2 使用 Scope 145
14.2 Heapster 151
14.2.1 部署 151
14.2.2 使用 152
14.3 Prometheus Operator 155
14.3.1 Prometheus 架构 159
14.3.2 Prometheus Operator 架构 161
14.3.3 部署 Prometheus Operator 162
14.4 小结 167
第15章 Kubernetes 集群日志管理 168
15.1 部署 168
15.2 小结 173
写在后 174
一篇 启 程
第1章 鸟瞰容器生态系统 3
1.1 容器生态系统 3
1.2 本教程覆盖的知识范围 10
1.3 准备实验环境 10
1.3.1 环境选择 10
1.3.2 安装 Docker 10
1.4 运行一个容器 11
1.5 小结 12
第二篇 容器技术
第2章 容器核心知识概述 15
2.1 What —— 什么是容器 15
2.2 Why —— 为什么需要容器 16
2.2.1 容器解决的问题 16
2.2.2 Docker 的特性 20
2.2.3 容器的优势 20
2.3 How —— 容器是如何工作的 21
2.4 小结 24
第3章 Docker 镜像 26
3.1 镜像的内部结构 26
3.1.1 hello-world —— 小的镜像 26
3.1.2 base 镜像 27
3.1.3 镜像的分层结构 30
3.2 构建镜像 32
3.2.1 docker commit 32
3.2.2 Dockerfile 34
3.3 RUN vs CMD vs ENTRYPOINT 42
3.3.1 Shell 和 Exec 格式 42
3.3.2 RUN 44
3.3.3 CMD 44
3.3.4 ENTRYPOINT 45
3.3.5 佳实践 46
3.4 分发镜像 46
3.4.1 为镜像命名 46
3.4.2 使用公共 Registry 49
3.4.3 搭建本地 Registry 51
3.5 小结 52
第4章 Docker 容器 55
4.1 运行容器 55
4.1.1 让容器长期运行 56
4.1.2 两种进入容器的方法 57
4.1.3 运行容器的佳实践 59
4.1.4 容器运行小结 59
4.2 stop/start/restart 容器 60
4.3 pause / unpause 容器 61
4.4 删除容器 61
4.5 State Machine 62
4.6 资源限制 65
4.6.1 内存限额 65
4.6.2 CPU 限额 66
4.6.3 Block IO 带宽限额 68
4.7 实现容器的底层技术 69
4.7.1 cgroup 70
4.7.2 namespace 70
4.8 小结 72
第5章 Docker 网络 74
5.1 none 网络 74
5.2 host 网络 75
5.3 bridge 网络 76
5.4 user-defined 网络 78
5.5 容器间通信 84
5.5.1 IP通信 84
5.5.2 Docker DNS Server 85
5.5.3 joined 容器 85
5.6 将容器与外部世界连接 87
5.6.1 容器访问外部世界 87
5.6.2 外部世界访问容器 90
5.7 小结 91
第6章 Docker 存储 92
6.1 storage driver 92
6.2 Data Volume 94
6.2.1 bind mount 94
6.2.2 docker managed volume 96
6.3 数据共享 99
6.3.1 容器与 host 共享数据 99
6.3.2 容器之间共享数据 99
6.4 volume container 100
6.5 data-packed volume container 102
6.6 Data Volume 生命周期管理 103
6.6.1 备份 104
6.6.2 恢复 104
6.6.3 迁移 104
6.6.4 销毁 104
6.7 小结 105
第三篇 容器进阶知识
第7章 多主机管理 109
7.1 实验环境描述 110
7.2 安装 Docker Machine 111
7.3 创建 Machine 112
7.4 管理Machine 114
第8章 容器网络 117
8.1 libnetwork & CNM 117
8.2 overlay 119
8.2.1 实验环境描述 120
8.2.2 创建overlay网络 121
8.2.3 在overlay中运行容器 122
8.2.4 overlay 网络连通性 124
8.2.5 overlay 网络隔离 126
8.2.6 overlay IPAM 127
8.3 macvlan 127
8.3.1 准备实验环境 127
8.3.2 创建 macvlan 网络 128
8.3.3 macvlan 网络结构分析 130
8.3.4 用 sub-interface 实现多 macvlan 网络 131
8.3.5 macvlan 网络间的隔离和连通 132
8.4 flannel 136
8.4.1 实验环境描述 137
8.4.2 安装配置 etcd 137
8.4.3 build flannel 138
8.4.4 将 flannel 网络的配置信息保存到 etcd 139
8.4.5 启动 flannel 139
8.4.6 配置 Docker 连接 flannel 141
8.4.7 将容器连接到 flannel 网络 143
8.4.8 flannel 网络连通性 144
8.4.9 flannel 网络隔离 146
8.4.10 flannel 与外网连通性 146
8.4.11 host-gw backend 146
8.5 weave 148
8.5.1 实验环境描述 148
8.5.2 安装部署 weave 149
8.5.3 在host1中启动weave 149
8.5.4 在 host1 中启动容器 150
8.5.5 在host2中启动weave并运行容器 153
8.5.6 weave 网络连通性 154
8.5.7 weave 网络隔离 155
8.5.8 weave 与外网的连通性 156
8.5.9 IPAM 158
8.6 calico 158
8.6.1 实验环境描述 159
8.6.2 启动 etcd 159
8.6.3 部署 calico 160
8.6.4 创建calico网络 161
8.6.5 在 calico 中运行容器 161
8.6.6 calico 默认连通性 164
8.6.7 calico policy 167
8.6.8 calico IPAM 169
8.7 比较各种网络方案 170
8.7.1 网络模型 171
8.7.2 Distributed Store 171
8.7.3 IPAM 171
8.7.4 连通与隔离 172
8.7.5 性能 172
第9章 容器监控 173
9.1 Docker自带的监控子命令 173
9.1.1 ps 173
9.1.2 top 174
9.1.3 stats 175
9.2 sysdig 175
9.3 Weave Scope 179
9.3.1 安装 179
9.3.2 容器监控 181
9.3.3 监控 host 184
9.3.4 多主机监控 186
9.4 cAdvisor 189
9.4.1 监控 Docker Host 189
9.4.2 监控容器 191
9.5 Prometheus 194
9.5.1 架构 194
9.5.2 多维数据模型 195
9.5.3 实践 196
9.6 比较不同的监控工具 204
9.7 几点建议 205
第10章 日志管理 207
10.1 Docker logs 207
10.2 Docker logging driver 209
10.3 ELK 211
10.3.1 日志处理流程 211
10.3.2 安装 ELK 套件 212
10.3.3 Filebeat 214
10.3.4 管理日志 216
10.4 Fluentd 220
10.4.1 安装 Fluentd 221
10.4.2 重新配置 Filebeat 221
10.4.3 监控容器日志 221
10.5 Graylog 222
10.5.1 Graylog 架构 222
10.5.2 部署 Graylog 223
10.5.3 配置 Graylog 225
10.5.4 监控容器日志 227
10.6 小结 229
第11章 数据管理 230
11.1 从一个例子开始 230
11.2 实践 Rex-Ray driver 232
11.2.1 安装 Rex-Ray 232
11.2.2 配置 VirtualBox 234
11.2.3 创建Rex-Ray volume 236
11.2.4 使用 Rex-Ray volume 237
写在后 243
这本书的“每天5分钟”这个概念,可以说是非常贴心和实用。我平时工作比较忙,很难抽出大块的时间来系统学习新技术。但这本书的结构设计,让我能够利用碎片化的时间,每天进步一点点。每个小节都非常精炼,讲解清晰,让我能够在短时间内消化吸收一个知识点,不会感到压力过大。而且,这种“短平快”的学习方式,反而更能激发我的学习兴趣,让我觉得学习是一个持续不断、充满乐趣的过程。比如,在学习Docker的时候,可能今天就掌握了如何创建镜像,明天就学会了如何运行容器,后天就理解了网络配置,这种循序渐进的积累,让我感觉自己每天都在进步,非常有成就感。同样,在Kubernetes的部分,每天学习一个核心概念,或者掌握一个运维技巧,积少成多,不知不觉中就建立起了完整的知识体系。这种“润物细无声”的学习方法,对于像我这样时间精力有限的读者来说,简直是量身定制。
评分这本书的另一个亮点在于它的“集群部署运维管理”的深度。我之前接触过一些关于Kubernetes的书籍,但很多都停留在概念介绍或者基础部署的层面,真正深入到生产环境的运维管理,讲解得不够细致。而这本书在这方面做得非常出色。它详细介绍了如何进行高可用集群的搭建,如何进行资源的调度和扩缩容,如何进行应用的灰度发布和回滚,以及如何进行日志收集和性能监控。这些内容对于我这样需要在实际工作中应用Kubernetes的读者来说,非常有价值。书中提供的各种YAML配置文件的示例,以及相关的命令操作,都写得非常清晰,并且解释了每个参数的含义,让我能够融会贯通,举一反三。我尤其喜欢它在故障排查部分的一些技巧和思路,这些都是在实际运维中非常宝贵的经验,能够帮助我快速定位和解决问题,避免造成更大的损失。
评分从读者的角度来说,这本书在知识的广度和深度上都做得非常平衡。它既能让完全没有接触过Docker和Kubernetes的新手快速入门,又能让有一定基础的读者在集群部署和运维管理方面获得更深入的提升。而且,这本书的语言风格非常亲切,没有使用过多的专业术语,即使是初学者也能轻松理解。一些复杂的概念,作者都会用生动的比喻来解释,让我能够快速建立起直观的理解。同时,对于一些进阶的知识点,比如Kubernetes的网络模型、存储卷的管理、安全策略的配置等,也都有详细的讲解,并且提供了实际的操作案例。这使得这本书既有入门的友好度,又有深入实践的价值,能够满足不同层次读者的需求。总而言之,这是一本非常值得推荐的书籍,无论是对于想要学习容器技术的新手,还是对于需要提升Kubernetes运维技能的专业人士,都能从中获益良多。
评分这本书的内容给我留下了深刻的印象,尤其是它在Docker容器技术这一块的讲解,简直是新手入门的福音。我之前对Docker一直是一知半解,知道它能打包应用,但具体怎么操作,又是在什么环境下运行,始终觉得模糊。这本书用非常直观易懂的方式,从Docker的安装、镜像的构建,到容器的运行、网络的配置,一步步地引导我深入了解。它没有上来就抛出一堆复杂的概念,而是从最基础的“是什么”、“为什么”开始,然后慢慢过渡到“怎么做”,这种循序渐进的学习方式让我感到非常轻松。尤其是一些实操的例子,比如如何构建一个简单的Web服务器镜像,如何将本地文件映射到容器中,都写得非常详细,代码示例也清晰明了,我跟着做了一遍,很快就掌握了基本的操作。更重要的是,它还讲解了Docker Compose的使用,这让我能更方便地管理多个容器组成的应用程序,极大地提高了我的开发效率。总的来说,这本书在Docker部分,真正做到了“玩转”这个词,让我对容器技术有了更全面、更深入的认识。
评分Kubernetes的部分,这本书真的给我打开了一扇新世界的大门。在此之前,我听过Kubernetes的名号,知道它是做容器编排的,但具体是怎么个“编排法”,又有什么作用,总觉得高深莫测。这本书的作者用一种非常接地气的方式,将Kubernetes的核心概念,比如Pod、Deployment、Service、Ingress等,一一拆解开来,用通俗易懂的语言进行解释。它不像一些官方文档那么枯燥,而是通过一些生动的比喻和场景,让我能够快速理解这些抽象的概念。最让我惊喜的是,它并没有停留在理论层面,而是提供了大量实用的集群部署和运维管理的案例。从最简单的单节点部署,到后面多节点集群的搭建,再到日常的监控、日志管理、故障排查,几乎涵盖了Kubernetes运维的方方面面。我跟着书中的步骤,自己搭建了一个小型的Kubernetes集群,并且成功地部署和管理了我的应用,这让我非常有成就感。这本书的价值在于,它不仅教你“是什么”,更教你“怎么做”,而且做到了“做得好”,非常适合想要快速掌握Kubernetes运维的读者。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有