第1部分 初识云计算
第1章 云计算概述 ................................................................................................................. 2
1.1 云计算是什么 ............................................................................................................... 2
1.2 为什么会有云计算........................................................................................................ 2
1.3 云计算的基本概念........................................................................................................ 4
1.3.1 云计算的基本特征 ........................................................................................... 4
1.3.2 云计算的部署模式 ........................................................................................... 5
1.3.3 云计算的服务模式 ........................................................................................... 5
1.4 云计算的发展历史........................................................................................................ 7
1.5 云计算与大数据的关系 ................................................................................................ 7
1.6 本章小结 ....................................................................................................................... 8
1.7 习题 ............................................................................................................................... 8
第2部分 云计算案例分析
第2章 阿里云ECS .............................................................................................................. 10
2.1 ECS概述 ..................................................................................................................... 10
2.2 ECS应用场景 ............................................................................................................. 10
2.3 ECS基本概念 ............................................................................................................. 11
2.3.1 ECS在阿里云架构中的位置 ......................................................................... 11
2.3.2 地域和可用区 ................................................................................................. 12
2.3.3 ECS组件 ......................................................................................................... 12
2.3.4 ECS组件间的关系 ......................................................................................... 19
2.3.5 ECS故障迁移 ................................................................................................. 20
2.3.6 ECS的计费 ..................................................................................................... 20
2.3.7 ECS API ........................................................................................................... 21
2.4 开启ECS使用之旅 .................................................................................................... 24
2.4.1 创建阿里云账号 ............................................................................................. 24
2.4.2 开通ECS服务 ................................................................................................ 26
2.4.3 创建ECS实例 ................................................................................................ 26
2.4.4 ECS数据盘的使用 ......................................................................................... 35
2.5 ECS应用案例―搭建简易论坛系统 ..................................................................... 38
2.6 本章小结 ..................................................................................................................... 40
2.7 习题 ............................................................................................................................. 41
第3章 阿里云SLB ............................................................................................................... 42
3.1 SLB概述 ..................................................................................................................... 42
3.1.1 为什么需要负载均衡 ..................................................................................... 42
3.1.2 SLB的产品类型和特点 ................................................................................. 43
3.2 SLB应用场景 ............................................................................................................. 44
3.2.1 SLB用于同城容灾 ......................................................................................... 45
3.2.2 SLB用于跨地域容灾 ..................................................................................... 46
3.3 SLB的概念、组成和架构 ......................................................................................... 47
3.3.1 基本概念 ......................................................................................................... 47
3.3.2 SLB后端的基础架构 ..................................................................................... 48
3.4 开启SLB使用之旅 .................................................................................................... 50
3.4.1 开通SLB服务 ................................................................................................ 50
3.4.2 创建SLB实例 ................................................................................................ 51
3.4.3 监听配置 ......................................................................................................... 53
3.4.4 SLB监控和计费 ............................................................................................. 56
3.5 本章小结 ..................................................................................................................... 57
3.6 习题 ............................................................................................................................. 58
第4章 阿里云RDS .............................................................................................................. 59
4.1 RDS概述 ........................................................................................................................ 59
4.1.1 RDS的技术特点 ............................................................................................. 59
4.1.2 RDS使用特点 ................................................................................................. 59
4.2 RDS应用场景 ............................................................................................................. 60
4.2.1 开放搜索 ......................................................................................................... 60
4.2.2 数据多样化存储 ............................................................................................. 61
4.2.3 数据异地容灾 ................................................................................................. 61
4.2.4 读写分离 ......................................................................................................... 62
4.2.5 大数据分析 ..................................................................................................... 62
4.3 RDS基本概念 ............................................................................................................. 63
4.4 开启RDS使用之旅 .................................................................................................... 67
4.4.1 开通RDS服务 ................................................................................................ 67
4.4.2 创建RDS实例 ................................................................................................ 67
4.4.3 创建数据库和数据库账号 ............................................................................. 71
4.4.4 数据恢复 ......................................................................................................... 72
4.4.5 性能优化 ......................................................................................................... 73
4.5 RDS架构分析 ............................................................................................................. 74
4.6 本章小结 ..................................................................................................................... 76
4.7 习题 ............................................................................................................................... 77
第5章 阿里云OSS .............................................................................................................. 78
5.1 OSS概述 ..................................................................................................................... 78
5.2 OSS应用场景 ............................................................................................................. 78
5.3 OSS基本概念 ............................................................................................................. 81
5.4 开启OSS使用之旅 .................................................................................................... 86
5.4.1 基于控制台操作OSS ..................................................................................... 86
5.4.2 OSS数据写入方式 ......................................................................................... 90
5.4.3 OSS数据处理 ................................................................................................. 91
5.4.4 OSS安全性 ..................................................................................................... 92
5.4.6 OSS快速应用开发架构 ................................................................................. 95
5.5 综合应用案例―使用ECS、SLB、RDS和OSS搭建论坛网站 ........................ 96
5.6 本章小结 ................................................................................................................... 104
5.7 习题 ........................................................................................................................... 104
第3部分 云计算相关技术
第6章 虚拟化技术原理 ...................................................................................................... 106
6.1 什么是虚拟化 ........................................................................................................... 106
6.2 为什么要虚拟化 ....................................................................................................... 106
6.3 传统数据中心和云计算数据中心的区别 ................................................................ 107
6.4 计算虚拟化 ............................................................................................................... 108
6.4.1 计算虚拟化的目标 ....................................................................................... 108
6.4.2 计算虚拟化的基本概念 ............................................................................... 108
6.4.3 实现计算虚拟化面临的主要问题和解决方案 ............................................ 109
6.4.4 计算虚拟化实现方式 ................................................................................... 110
6.4.5 计算虚拟化的分类 ....................................................................................... 113
6.4.6 计算虚拟化架构实例―KVM .................................................................. 115
6.4.7 常见虚拟化产品类别汇总 ........................................................................... 115
6.5 存储虚拟化 ............................................................................................................... 116
6.5.1 传统存储技术回顾 ....................................................................................... 116
6.5.2 存储虚拟化的基本概念 ............................................................................... 117
6.5.3 存储虚拟化的实现方法 ................................................................................. 118
6.6 存储虚拟化和云存储的关系 .................................................................................... 121
6.7 网络虚拟化 ............................................................................................................... 122
6.7.1 网络虚拟化的基本概念 ............................................................................... 122
6.7.2 网络虚拟化的目标 ....................................................................................... 123
6.7.3 网络虚拟化的特点 ....................................................................................... 123
6.7.4 网卡虚拟化 ................................................................................................... 124
6.7.5 交换机虚拟化 ............................................................................................... 124
6.7.6 虚拟化网络架构 ........................................................................................... 125
6.7.7 链路虚拟化 ................................................................................................... 126
6.7.8 虚拟网络 ....................................................................................................... 127
6.8 本章小结 ................................................................................................................... 128
6.9 习题 ........................................................................................................................... 129
第7章 分布式存储与批量计算 ........................................................................................... 130
7.1 分布式的基本思想.................................................................................................... 130
7.2 经典分布式系统―Hadoop ................................................................................... 133
7.2.1 Hadoop的发展历史 ...................................................................................... 133
7.2.2 Hadoop的特性 .............................................................................................. 134
7.2.3 Hadoop的应用领域 ...................................................................................... 135
7.2.4 应用规模 ....................................................................................................... 136
7.2.5 Hadoop的应用架构 ...................................................................................... 136
7.2.6 Hadoop的版本 .............................................................................................. 137
7.2.7 Hadoop的生态系统 ...................................................................................... 139
7.3 Hadoop的安装部署实验 .......................................................................................... 140
7.3.1 Hadoop的部署模式 ...................................................................................... 140
7.3.2 Hadoop伪分布模式环境搭建 ...................................................................... 141
7.4 HDFS ......................................................................................................................... 148
7.4.1 HDFS概述 .................................................................................................... 148
7.4.2 HDFS的基本概念 ........................................................................................ 151
7.4.3 HDFS存储原理 ............................................................................................ 155
7.5 MapReduce ................................................................................................................ 159
7.5.1 MapReduce概述 ........................................................................................... 159
7.5.3 MapReduce的工作流程 ............................................................................... 162
7.5.4 MapReduce程序设计实例 ........................................................................... 165
7.5.5 Eclipse开发环境搭建和程序调试 ............................................................... 170
7.6 YARN ........................................................................................................................ 171
7.6.1 从Hadoop 1.0到2.0 ..................................................................................... 171
7.6.2 YARN架构 ................................................................................................... 173
7.7 本章小结 ................................................................................................................... 177
7.8 习题 ........................................................................................................................... 178
第8章 云原生 .................................................................................................................... 180
8.1 云原生概述 ............................................................................................................... 180
8.1.1 云原生起源及发展 ....................................................................................... 180
8.1.2 云平台与传统平台的区别 ........................................................................... 181
8.1.3 云原生架构 ................................................................................................... 182
8.1.4 云原生的12要素 ......................................................................................... 183
8.2 微服务 ....................................................................................................................... 185
8.2.1 微服务概述 ................................................................................................... 185
8.2.2 微服务框架 ................................................................................................... 188
8.2.3 微服务划分及架构 ....................................................................................... 190
8.2.4 Spring Boot .................................................................................................... 193
8.2.5 Spring Cloud .................................................................................................. 196
8.2.6 微服务实践 ................................................................................................... 197
8.3 服务网格 ................................................................................................................... 203
8.4 云原生系统的安全性................................................................................................ 207
8.5 习题 ........................................................................................................................... 208
第9章 DevOps .................................................................................................................. 209
9.1 DevOps概述 ............................................................................................................. 209
9.2 DevOps定义的发展 ................................................................................................. 211
9.3 DevOps流程 ............................................................................................................. 213
9.3.1 三步工作法 ................................................................................................... 213
9.3.2 流动原则 ....................................................................................................... 213
9.4 DevOps实践 ............................................................................................................. 218
9.5 持续交付CI/CD ........................................................................................................ 220
9.5.1 持续交付概述 ............................................................................................... 220
9.5.2 CI/CD与DevOps的关联 ............................................................................. 221
9.5.3 CI/CD的作用 ................................................................................................ 221
9.6 自动化测试 ............................................................................................................... 222
9.6.1 DevOps中持续测试的作用 ......................................................................... 222
9.6.2 DevOps中持续测试的实践 ......................................................................... 223
9.7 自动化部署 ............................................................................................................... 236
9.7.1 自动化部署流程 ........................................................................................... 236
9.7.2 自动化部署工具 ........................................................................................... 238
9.8 自动化运维 ............................................................................................................... 241
9.8.1 自动化运维概述 ........................................................................................... 241
9.8.2 自动化运维的典型场景 ............................................................................... 242
9.8.3 配置管理数据库 ........................................................................................... 242
9.9 持续交付的实践 ....................................................................................................... 248
9.9.1 阿里云的持续交付 ....................................................................................... 248
9.9.2 本地和云端开发 ........................................................................................... 250
9.9.3 代码检测、测试与提交 ............................................................................... 253
9.9.4 提升构建的效率 ........................................................................................... 258
9.10 习题 ......................................................................................................................... 260
第10章 容器技术Docker .................................................................................................. 261
10.1 容器技术概述 ......................................................................................................... 261
10.2 Docker的安装 ......................................................................................................... 268
10.2.1 在CentOS系统上安装Docker .................................................................. 268
10.2.2 在Windows 10系统上安装Docker ........................................................... 269
10.3 Docker命令 ............................................................................................................. 269
10.3.1 关于镜像的命令 ......................................................................................... 269
10.3.2 关于容器的命令 ......................................................................................... 271
10.4 Docker实践 ............................................................................................................. 272
10.5 容器编排系统 ......................................................................................................... 274
10.5.1 Docker Swarm容器编排框架 .................................................................... 274
10.5.2 Google Kubernetes容器编排框架 .............................................................. 275
10.5.3 Apache Mesos容器编排框架 ..................................................................... 280
10.6 习题 ......................................................................................................................... 280
展开