×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787115635938
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:260
  • 出版时间:2024-04-01
  • 条形码:9787115635938 ; 978-7-115-63593-8

本书特色

本书从初学者的角度出发,不要求Go语言基础,不涉及内部源码或者实现细节,以实战为导向,帮助读者快速掌握Kubernetes的核心知识,解决工作中遇到的实际问题。

1. 实战导向:配套4大项目实战,从搭建实验环境到高级运维管理,全程指导,助你快速掌握Kubernetes精髓。

2. 通俗易懂:每节聚焦一个知识点,配以代码和图示,帮助读者更好地理解Kubernetes。

3. 系统全面:涵盖Kubernetes的各方面知识,Kubernetes的核心对象与运行原理,同时介绍高级运维管理知识,系统全面,让你深入了解并驾驭Kubernetes。

内容简介

本书从初学者的角度出发,以实战为导向,帮助读者快速掌握Kubernetes的核心知识,并在实践中用好Kubernetes。本书共7章。第1章介绍如何搭建一个易上手的Kubernetes实验环境;第2章以Docker为例介绍容器、镜像、镜像仓库等概念和运行原理;第3章介绍容器编排概念,并搭建Minikube的单机环境和kubeadm的集群环境;第4章先讲解Kubernetes的运行机制和YAML语言,再介绍Pod、Job、CronJob、ConfigMap和Secret对象;第5章讲解Kubernetes中的重要对象,包括Deployment、DaemonSet、Service、Ingress、PersistentVolume、StatefulSet等;第6章介绍Kubernetes的高级运维管理知识,包括滚动更新、状态探针、资源配额管理、集群资源监控、网络插件等;第7章介绍Kubernetes的学习经验和建议。

目录

第1章 Kubernetes基本环境搭建 1

1.1 本地主机 1

1.2 虚拟机软件 2

1.3 Linux发行版 2

1.4 创建虚拟机 3

1.5 安装操作系统 4

1.6 常用的Linux操作 5

1.7 小结 6

第2章 Kubernetes底层基础:容器技术 7

2.1 认识Docker 7

2.1.1 Docker的诞生 7

2.1.2 Docker的形态 8

2.1.3 Docker的安装 9

2.1.4 Docker Engine的架构 10

2.1.5 Docker的基本用法 12

2.1.6 小结 13

2.2 理解容器的本质 13

2.2.1 容器究竟是什么 14

2.2.2 为什么要隔离 15

2.2.3 容器与虚拟机的区别 16

2.2.4 隔离是怎么实现的 17

2.2.5 小结 18

2.3 容器化的应用 18

2.3.1 容器与镜像 19

2.3.2 常用的镜像操作命令 20

2.3.3 常用的容器操作命令 21

2.3.4 小结 23

2.4 创建应用镜像 24

2.4.1 镜像内部机制 24

2.4.2 什么是Dockerfile 26

2.4.3 编写Dockerfile 27

2.4.4 镜像构建工流程 29

2.4.5 小结 30

2.5 镜像仓库 31

2.5.1 什么是Docker Hub 31

2.5.2 在Docker Hub上挑选镜像 32

2.5.3 Docker Hub镜像的命名规则 34

2.5.4 向Docker Hub上传镜像 37

2.5.5 离线环境使用Docker Hub 38

2.5.6 小结 38

2.6 容器与外界的通信 39

2.6.1 容器内外的文件拷贝 39

2.6.2 共享宿主机的文件 40

2.6.3 网络互联互通 41

2.6.4 小结 44

2.7 实战演练 44

2.7.1 要点回顾 45

2.7.2 私有镜像仓库 46

2.7.3 WordPress网站 47

2.7.4 小结 51

第3章 Kubernetes实验环境搭建 52

3.1 认识Kubernetes 52

3.1.1 什么是容器编排 52

3.1.2 什么是Kubernetes 53

3.1.3 小结 54

3.2 使用Minikube 54

3.2.1 什么是Minikube 54

3.2.2 安装Minikube 55

3.2.3 运行Minikube 56

3.2.4 小结 58

3.3 使用kubeadm 59

3.3.1 什么是kubeadm 59

3.3.2 集群架构 60

3.3.3 准备工作 61

3.3.4 安装kubeadm 62

3.3.5 安装控制面节点 63

3.3.6 安装网络插件 65

3.3.7 安装数据面节点 65

3.3.8 安装操作台节点 66

3.3.9 小结 66

第4章 Kubernetes运行机制和基本API对象 67

4.1 Kubernetes工作机制 67

4.1.1 云时代的操作系统 67

4.1.2 总体架构 68

4.1.3 控制面 70

4.1.4 数据面 70

4.1.5 工作流程 71

4.1.6 扩展 71

4.1.7 小结 73

4.2 工作语言YAML 73

4.2.1 声明式与命令式 73

4.2.2 什么是YAML 74

4.2.3 什么是API对象 76

4.2.4 用YAML描述API对象 78

4.2.5 编写YAML的技巧 79

4.2.6 小结 81

4.3 核心概念Pod 81

4.3.1 为什么要有Pod 82

4.3.2 为什么Pod是核心概念 82

4.3.3 用YAML描述Pod 83

4.3.4 用kubectl操作Pod 85

4.3.5 小结 87

4.4 离线业务Job和CronJob 88

4.4.1 为什么不直接使用Pod 88

4.4.2 为什么要有Job和CronJob 89

4.4.3 用YAML描述Job和CronJob 90

4.4.4 用kubectl操作Job 91

4.4.5 用kubectl操作CronJob 94

4.4.6 小结 96

4.5 配置信息ConfigMap和Secret 96

4.5.1 什么是ConfigMap 97

4.5.2 什么是Secret 98

4.5.3 加载为环境变量 100

4.5.4 加载为文件 103

4.5.5 小结 106

4.6 实战演练 106

4.6.1 要点回顾 106

4.6.2 搭建WordPress网站 108

4.6.3 小结 113

第5章 Kubernetes业务应用API对象 114

5.1 永不宕机的Deployment 114

5.1.1 为什么要有Deployment 114

5.1.2 用YAML描述Deployment 115

5.1.3 Deployment的关键字段 116

5.1.4 用kubectl操作Deployment 118

5.1.5 小结 120

5.2 忠实可靠的看门狗DaemonSet 121

5.2.1 为什么要有DaemonSet 121

5.2.2 用YAML描述DaemonSet 122

5.2.3 用kubectl操作DaemonSet 124

5.2.4 污点和容忍度 124

5.2.5 静态Pod 126

5.2.6 小结 127

5.3 微服务必需的Service 127

5.3.1 为什么要有Service 127

5.3.2 用YAML描述Service 128

5.3.3 用kubectl操作Service 130

5.3.4 以域名的方式访问Service 133

5.3.5 在集群外暴露Service 135

5.3.6 小结 136

5.4 管理集群出入流量的Ingress 137

5.4.1 为什么要有Ingress 137

5.4.2 为什么要有Ingress Controller 138

5.4.3 为什么要有Ingress Class 139

5.4.4 用YAML描述Ingress和Ingress Class 140

5.4.5 用kubectl操作Ingress和Ingress Class 142

5.4.6 使用Nginx Ingress Controller 143

5.4.7 使用Kong Ingress Controller 146

5.4.8 扩展Kong Ingress Controller 150

5.4.9 小结 153

5.5 数据持久化PersistentVolume 154

5.5.1 什么是PersistentVolume 155

5.5.2 什么是PersistentVolumeClaim和StorageClass 155

5.5.3 用YAML描述PersistentVolume 156

5.5.4 用YAML描述PersistentVolumeClaim 158

5.5.5 在Pod里使用PersistentVolume 158

5.5.6 在Pod里使用静态网络存储 161

5.5.7 在Pod里使用动态网络存储 164

5.5.8 小结 167

5.6 有状态的应用StatefulSet 168

5.6.1 什么是有状态的应用 168

5.6.2 用YAML描述StatefulSet 169

5.6.3 用kubectl操作StatefulSet 170

5.6.4 StatefulSet的数据持久化 173

5.6.5 小结 175

5.7 实战演练 176

5.7.1 要点回顾 176

5.7.2 使用Deployment搭建WordPress网站 178

5.7.3 使用StatefulSet优化WordPress网站的设计 185

5.7.4 小结 187

第6章 Kubernetes运维、监控和管理 188

6.1 应用滚动更新 188

6.1.1 应用的版本更新 188

6.1.2 应用版本更新的过程 190

6.1.3 管理更新 193

6.1.4 更新描述 195

6.1.5 小结 196

6.2 容器状态探针 197

6.2.1 探针的种类 197

6.2.2 使用探针 199

6.2.3 小结 201

6.3 容器资源配额管理 202

6.3.1 申请资源配额 202

6.3.2 处理策略 203

6.3.3 小结 204

6.4 集群资源配额管理 204

6.4.1 什么是名字空间 204

6.4.2 如何使用名字空间 205

6.4.3 设置资源配额 206

6.4.4 使用资源配额 208

6.4.5 默认资源配额 210

6.4.6 小结 212

6.5 集群资源监控 212

6.5.1 使用Metrics Server 212

6.5.2 水平自动伸缩 214

6.5.3 使用Prometheus 217

6.5.4 小结 221

6.6 集群网络插件 222

6.6.1 网络模型 222

6.6.2 什么是CNI 223

6.6.3 CNI的工作原理 224

6.6.4 使用Calico插件 227

6.6.5 小结 229

6.7 实战演练 230

6.7.1 要点回顾 230

6.7.2 部署Dashboard 231

6.7.3 小结 237

第7章 结束语 238

7.1 学习经验分享 238

7.2 学习方式建议 239

7.3 临别感言 240

附录A Kubernetes弃用Docker 241

A.1 CRI 241

A.2 Containerd 242

A.3 正式弃用Docker 243

A.4 Docker的未来 245

附录B docker-compose 246

B.1 什么是docker-compose 246

B.2 搭建私有镜像仓库 247

B.3 搭建WordPress网站 250

B.4 小结 253

附录C Harbor 254

C.1 什么是Harbor 254

C.2 安装Harbor 254

C.3 使用Harbor 256

附录D NFS网络存储服务 258

D.1 安装NFS服务端 258

D.2 安装NFS客户端 259

D.3 验证NFS存储 259

D.4 安装NFS Provisioner 260
展开全部

作者简介

罗剑锋,网名“Chrono”,Nginx/OpenResty开源项目贡献者,极客时间“Kubernetes入门实战课”“透视HTTP协议”等专栏的作者。目前在Kong公司担任高级工程师,从事Kong Gateway、Kong IngressController等项目的开发工作。著有《C 实战笔记》《Nginx完全开发指南》《OpenResty完全开发指南》等。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航