本书是被众多高校采用的教材《云计算》的第四版,是清华大学博士刘鹏教授团队的心血之作。在应对大数据挑战的过程中,云计算技术日趋成熟,拥有大量的成功商业应用。本书追踪前沿技术,相比第三版更新了40%以上的内容,包括大数据与云计算、Hadoop 3.0:主流开源云架构、虚拟化技术、容器技术、云原生技术、云计算数据中心、总结与展望等内容。刘鹏教授创办的云计算世界、大数据世界网站和“刘鹏看未来”微信公众号为本书学习提供技术支撑。
刘鹏,教授,清华大学博士,南京云创大数据科技股份有限公司总裁,中国大数据应用联盟人工智能专家委员会主任,中国信息协会教育分会人工智能教育专家委员会主任,教育部全国普通高校毕业生就业创业指导委员会委员,第45届世界技能大赛中国区云计算选拔赛裁判长/专家指导组组长,2019年全国大学生数据建模比赛命题人,工信部云计算研究中心专家。在云计算、大数据、人工智能领域具有多年的研究积累,是我国该领域的知名专家。主持科研项目40多项,发表论文80余篇,出版专业书籍30多种。曾于2002年获得全球数据处理比赛PennySort的世界冠军,于2003年夺得全国挑战杯比赛总冠军。提出的反垃圾邮件网格,被IEEE Cluster 2003评为杰出网格项目,为解决困扰全球的垃圾邮件问题做出根本贡献,该技术成为云安全技术的基础。曾担任全军网格技术研究中心主任,获“全军十大学习成才标兵”(排名第一)、南京市“十大杰出青年”、“中国大数据创新百人”、江苏省“333工程”中青年领军人才、清华大学“学术新秀”等称号。
第1章 大数据与云计算 1
1.1 大数据时代 1
1.2 云计算概述 3
1.3 云计算发展现状 5
1.4 云计算实现机制 7
1.5 云计算压倒性的成本优势 8
习题 12
第2章 Hadoop 3.0:主流开源云架构 13
2.1 挑战与对策 13
2.1.1 问题概述 13
2.1.2 常规解决方案 13
2.1.3 分布式下的解决方案 14
2.1.4 小结 18
2.2 Hadoop 3.0简述 18
2.2.1 Hadoop发展 18
2.2.2 Hadoop 3.0生态圈项目 19
2.2.3 Hadoop应用 21
2.3 Hadoop 3.0部署 21
2.3.1 部署综述 22
2.3.2 传统解压包方式部署 26
2.4 Hadoop 3.0体系架构 32
2.4.1 公共组件Common 32
2.4.2 分布式文件系统HDFS 34
2.4.3 分布式操作系统YARN 39
2.5 Hadoop 3.0访问接口 46
2.5.1 配置项接口 46
2.5.2 浏览器接口 47
2.5.3 命令行接口 47
2.5.4 HDFS编程 49
2.5.5 YARN编程 52
2.6 Hadoop 3.0生态组件 60
2.6.1 组件简介 60
2.6.2 Hive 64
2.6.3 Spark 68
2.6.4 ZooKeeper 79
2.6.5 HBase 83
2.6.6 Mahout 90
2.6.7 Redis 93
2.6.8 Kafka 98
2.6.9 Flink 103
2.6.10 Flume 106
2.6.11 Pig 111
习题 115
第3章 虚拟化技术 116
3.1 虚拟化技术简介 116
3.2 服务器虚拟化 117
3.2.1 服务器虚拟化的层次 117
3.2.2 服务器虚拟化的底层实现 118
3.2.3 虚拟机迁移 119
3.2.4 隔离技术 121
3.2.5 案例分析 123
3.3 存储虚拟化 124
3.3.1 存储虚拟化的一般模型 124
3.3.2 存储虚拟化的实现方式 124
3.3.3 案例分析 125
3.4 网络虚拟化 127
3.4.1 网络虚拟化简介 127
3.4.2 案例分析:VMware网络虚拟化 128
3.5 桌面虚拟化 130
3.5.1 桌面虚拟化简介 130
3.5.2 技术现状 131
3.5.3 案例分析 132
3.6 OpenStack开源虚拟化平台 132
3.6.1 OpenStack背景介绍 133
3.6.2 Nova 134
3.6.3 Swift 139
3.6.4 Glance 145
3.7 超融合技术 146
3.7.1 概念 146
3.7.2 产生背景 146
3.7.3 超融合技术简介 148
习题 150
第4章 容器技术 151
4.1 容器技术简介 151
4.1.1 容器技术的发展历程 151
4.1.2 容器技术的架构 153
4.1.3 容器的底层技术 154
4.1.4 容器的关键技术 155
4.1.5 容器技术的优势和局限性 156
4.1.6 容器技术的典型应用 157
4.1.7 容器和虚拟机对比 158
4.2 Docker技术 160
4.2.1 Docker是什么 160
4.2.2 Docker的架构和流程 162
4.2.3 Docker的优势和局限性 163
4.2.4 分布式Docker网络环境搭建 167
4.3 Rocket(Rkt)技术简介 168
4.3.1 Rkt的标准化尝试 169
4.3.2 Rkt是什么 171
4.3.3 Rkt的基本使用方法 173
4.4 其他容器技术 175
4.4.1 Garden容器技术 175
4.4.2 Kata容器技术 177
4.5 容器编排系统 178
4.5.1 Google Kubernetes 179
4.5.2 Docker Swarm 185
4.5.3 Apache Mesos 190
4.5.4 CoreOS Fleet 196
习题 197
第5章 云原生技术 199
5.1 云原生简介 199
5.2 微服务 201
5.2.1 Spring Cloud架构 201
5.2.2 服务网格架构 210
5.3 敏捷基础设施 214
5.3.1 分布式消息中间件服务 215
5.3.2 分布式缓存服务 223
5.3.3 分布式任务调度服务 226
5.3.4 监控告警服务 230
5.4 DevOps自动化运维 232
5.4.1 概念 233
5.4.2 Ansible 234
5.4.3 SaltStack 235
5.4.4 Jenkins 237
5.5 持续交付 239
5.5.1 持续交付与持续集成、持续部署 240
5.5.2 持续交付与DevOps 241
5.6 云原生应用场景 241
5.6.1 深度学习应用场景 242
5.6.2 区块链应用场景 243
5.6.3 边缘计算应用场景 244
5.6.4 传统行业互联网化应用场景 244
习题 245
第6章 云计算数据中心 246
6.1 云计算数据中心的特征 246
6.2 云计算数据中心网络部署 247
6.2.1 改进型树形结构 247
6.2.2 递归层次结构 249
6.2.3 光交换网络 252
6.2.4 无线数据中心网络 254
6.2.5 软件定义网络 254
6.3 绿色节能技术 258
6.3.1 配电系统节能技术 258
6.3.2 空调系统节能技术 260
6.3.3 集装箱数据中心节能技术 263
6.3.4 海底数据中心 264
6.3.5 数据中心节能策略和算法研究 267
6.3.6 新能源的应用 269
6.3.7 典型的绿色节能数据中心 272
6.4 自动化管理 274
6.4.1 自动化管理的特征 274
6.4.2 自动化管理实现阶段 275
6.4.3 Facebook自动化管理 276
6.5 容灾备份 278
6.5.1 容灾系统的等级标准 278
6.5.2 容灾备份的关键技术 279
6.5.3 云存储在容灾备份中的应用 281
习题 282
第7章 总结与展望 283
7.1 主流开源云计算系统比较 283
7.1.1 开发目的 283
7.1.2 体系结构 284
7.1.3 实现技术 285
7.1.4 核心服务 286
7.2 云计算发展趋势 286
7.2.1 标准化 286
7.2.2 混合云模式 291
7.2.3 多云部署 292
7.2.4 云计算与人工智能相融合 294
习题 295