本书赞誉
前 言
第一篇 KVM技术详解与实践
第1章 企业虚拟化选型与KVM介绍 2
1.1 KVM的前世今生 2
1.2 KVM与常用企业级虚拟化产品的PK 7
1.3 判断企业是否适合使用KVM的标准 9
1.4 本章小结 10
第2章 开始自己的第一台虚拟机 11
2.1 服务器BIOS设置 11
2.2 宿主机CentOS 6.5、CentOS 7系统安装与配置技巧 13
2.3 第一台虚拟机安装 15
2.4 本章小结 21
第3章 CPU、内存虚拟化技术与应用场景 22
3.1 NUMA技术与应用 22
3.1.1 KVM虚拟机NUMA调优 24
3.1.2 CPU绑定操作方法 27
3.2 CPU热添加与应用 32
3.3 CPU host-passthrough 技术与应用 36
3.4 CPU Nested 技术与配置方法 38
3.5 KSM技术与应用 39
3.6 内存气球技术详解与应用 40
3.7 内存限制技术与应用 43
3.8 巨型页内存技术与应用 44
3.9 本章小结 47
第4章 网络虚拟化技术与应用场景 48
4.1 半虚拟化网卡技术详解 48
4.1.1 半虚拟化网卡的配置 49
4.1.2 全虚拟化网卡、半虚拟化网卡性能比较 50
4.1.3 全虚拟化网卡、半虚拟化网卡的应用场景 63
4.2 MacVTap和vhost-net技术原理与应用 63
4.2.1 MacVTap技术与应用 64
4.2.2 vhost_net技术 66
4.3 网卡的中断与多队列 66
4.4 网卡PCI Passthrough技术 71
4.5 SR-IVO虚拟化技术 72
4.6 虚拟化软件交换机Open vSwitch的安装与配置 75
4.6.1 Open vSwitch安装 75
4.6.2 Open vSwitch典型配置 77
4.7 多网卡绑定与建桥 79
4.8 本章小结 82
第5章 KVM磁盘虚拟化技术与应用场景 83
5.1 磁盘虚拟化方式性能比较与应用场景 83
5.1.1 QEMU磁盘虚拟化方式概述 83
5.1.2 IDE与Virtio性能比较测试 84
5.2 Virtio磁盘缓存方式详解、性能比较与应用场景 85
5.2.1 磁盘缓存详解 86
5.2.2 缓存方式的性能比较测试 87
5.2.3 缓存方式的应用场景 89
5.3 磁盘镜像格式 89
5.3.1 QEMU支持的磁盘镜像格式 89
5.3.2 裸设备使用 96
5.3.3 KVM虚拟机镜像管理利器guestfish 97
5.3.4 raw、qcow2、裸盘、lvm性能比较 106
5.3.5 磁盘镜像格式的应用场景 107
5.4 文件系统块对齐 108
5.4.1 什么是块对齐 108
5.4.2 块对齐与块不对齐性能比较 109
5.4.3 生产环境如何配置块对齐 110
5.5 SSD在KVM虚拟化中的使用实践 111
5.5.1 SSD原理与写放大 111
5.5.2 SSD在KVM中的使用 112
5.5.3 Flachcache配置与性能测试 117
5.5.4 DM-cache配置 120
5.5.5 LVM cache配置与性能测试 122
5.5.6 生产环境中SSD使用要点 123
5.6 本章小结 126
第6章 KVM虚拟机的资源限制 127
6.1 哪些场景要做虚拟机的资源限制 127
6.2 使用CGroups 130
6.3 KVM虚拟机CPU资源限制配置 142
6.4 KVM虚拟机网络资源限制 144
6.5 KVM虚拟机磁盘资源限制 150
6.6 本章小结 151
第7章 物理机转虚拟机实践 152
7.1 哪些应用场景适合做物理机转虚拟机 152
7.2 P2V的技术实施方案 152
7.3 Windows系统物理机转虚拟机的操作方法 153
7.3.1 WinPE的制作方法 153
7.3.2 Windows系统P2V操作方法 155
7.4 Linux物理服务器转换虚拟机操作 155
7.5 使用virt-p2v工具进行P2V转换 157
7.6 P2V经验总结 160
7.7 关于V2V 160
7.8 本章小结 160
第8章 KVM桌面虚拟化实践 161
8.1 桌面虚拟化简介及Spice协议 161
8.2 桌面虚拟化实践经验 162
8.3 本章小结 167
第二篇 分布式文件系统
第9章 几种常见开源文件系统在KVM中的应用 170
9.1 演示环境基础配置 170
9.2 DRBD在KVM中的应用 172
9.2.1 DRBD介绍 172
9.2.2 DRBD搭建方法及在KVM中的应用 173
9.2.3 DRBD在KVM虚拟化中的优化方案 183
9.3 GlusterFS在KVM虚拟化中的应用 184
9.3.1 GlusterFS介绍 184
9.3.2 GlusterFS集群搭建与使用 189
9.3.3 GlusterFS在KVM虚拟化中的应用 195
9.3.4 GlusterFS在KVM虚拟化中的优化方案 198
9.4 Sheepdog在KVM中的应用 199
9.4.1 Sheepdog介绍 199
9.4.2 Sheepdog搭建方法及在KVM中的应用 201
9.5 MooseFS在KVM中的应用 207
9.5.1 MooseFS介绍 208
9.5.2 MFS搭建方法及在KVM虚拟化中的应用 208
9.6 本章小结 213
第10章 Ceph在KVM虚拟化中的应用与故障处理 214
10.1 Ceph简介 214
10.2 Ceph部署方法及在KVM中的应用 217
10.2.1 使用ceph-deploy工具部署Ceph 217
10.2.2 挂载CephFS 221
10.2.3 通过Librbd方式使用Ceph RBD 223
10.2.4 使用内核方式挂载并使用Ceph RBD 226
10.3 CRUSH算法介绍及调优方法 228
10.3.1 CRUSH算法介绍 228
10.3.2 CRUSH算法调优方法 230
10.4 多角度评估Ceph在KVM虚拟化环境中的应用 234
10.5 Ceph生产环境搭建案例 240
10.5.1 使用CephFS集中备份虚拟机 240
10.5.2 使用Librbd将虚拟机运行在Ceph RBD 241
10.5.3 在CephFS上创建qcow2文件作为云硬盘 242
10.6 Ceph常见故障处理 242
10.6.1 Ceph集群监控状态检查 243
10.6.2 Ceph常见错误提示的含义与处理方法 244
10.7 本章小结 245
第三篇 KVM虚拟化管理平台
第11章 利用OpenStack管理KVM 248
11.1 OpenStack搭建 248
11.1.1 OpenStack简介 248
11.1.2 控制节点的安装 249
11.1.3 计算节点的安装 266
11.2 OpenStack实用技巧 269
11.2.1 RabbitMQ Cluster搭建 269
11.2.2 利用Haproxy和Keepalived实现控制节点高可用 271
11.2.3 冷迁移虚拟机的方法 277
11.3 本章小结 277
第12章 利用OpenNebula管理KVM 278
12.1 OpenNebula架构 278
12.1.1 OpenNebula架构介绍 278
12.1.2 OpenNebula组件介绍 279
12.2 在KVM中使用OpenNebula 280
12.2.1 在CentOS 6.5上快速搭建OpenNebula 280
12.2.2 使用OpenNebula创建第一台KVM虚拟机 285
12.2.3 使虚拟机硬盘创建在宿主机本地硬盘上 288
12.3 OpenNebula常见故障处理 291
12.4 本章小结 293
第13章 其他管理平台介绍 294
13.1 ConVirt管理平台介绍 294
13.1.1 ConVirt的理念 294
13.1.2 ConVirt的架构 295
13.2 CloudStack管理平台介绍 295
13.3 oVirt管理平台介绍 297
13.4 WebVirtMgr管理平台介绍 299
13.5 如何选择管理平台 303
13.6 本章小结 304
第四篇 KVM虚拟化项目实施
第14章 业务性能评估与压力模型建立 306
14.1 Linux 系统性能数据采集原则与方法 306
14.2 Linux 系统压力模型建立 311
14.3 Windows系统性能数据采集原则与方法 314
14.4 Windows 系统压力模型建立 317
14.5 本章小结 319
第15章 宿主机选型与基础性能测试 320
15.1 宿主机CPU选型原则 320
15.2 宿主机内存选型注意事项 322
15.3 宿主机硬盘选型 324
15.4 RAID卡选型 326
15.5 服务器网卡选型 327
15.6 宿主机性能基准测试实践 328
15.7 本章小结 345
第16章 虚拟机镜像制作、配置与测试 346
16.1 Windows虚拟机制作方法 346
16.1.1 Windows镜像制作 346
16.1.2 Windows虚拟机sysprep初始化封装 361
16.2 Linux镜像制作方法 362
16.2.1 RHEL/CentOS镜像制作方法 362
16.2.2 Ubuntu、Debian虚拟机配置注意点 364
16.3 虚拟机自动配置IP的实现办法 365
16.3.1 通过DHCP给虚拟机配置IP 365
16.3.2 通过Libvirt实现虚拟机自动配置IP 365
16.3.3 笔者生产环境虚拟机IP自动配置的方法 365
16.4 虚拟机镜像测试 375
16.5 本章小结 375
第17章 单机虚拟化技术与生产环境实践 376
17.1 单机虚拟化技术与应用场景 376
17.1.1 单机虚拟化的优势和劣势 377
17.1.2 单机虚拟化技术 378
17.1.3 单机虚拟化应用场景 380
17.2 单机虚拟化生产环境注意点 381
17.2.1 单机虚拟化灾备与应急方案 381
17.2.2 单机虚拟化生产环境部署实践 382
17.3 本章小结 385
第18章 KVM虚拟化集群技术与应用场景 386
18.1 虚拟化集群设计思路与架构 386
18.2 虚拟化集群的实施流程与技术方案 389
18.3 虚拟化集群搭建 392
18.3.1 计算节点配置与管理 392
18.3.2 网络设计与配置 403
18.3.3 虚拟机迁移管理 404
18.3.4 虚拟化集群的备份与恢复 407
18.4 Dell EqualLogic存储的管理实践经验 414
18.5 本章小结 419
第19章 业务迁移到虚拟化环境流程 420
19.1 性能评估与测试环境测试 420
19.2 上线前的检查工作 428
19.3 小规模部署及逐步切换到虚拟化环境 429
19.4 本章小结 430
第20章 宿主机自动化运维管理 431
20.1 Puppet简介与安装部署 431
20.2 利用Puppet管理宿主机的运维架构设计 436
20.3 利用Puppet配置宿主机初始化操作 441
20.4 利用Puppet管理宿主机配置与更新 442
20.5 利用Puppet推送宿主机的非一致性配置 445
20.6 本章小结 449
第21章 虚拟化监控、报警与应急响应方案 450
21.1 虚拟化监控内容 450
21.1.1 宿主机CPU监控要点 450
21.1.2 宿主机内存监控注意点 455
21.1.3 宿主机网络监控注意点 458
21.1.4 宿主机磁盘监控注意点 460
21.1.5 宿主机层面监控虚拟机的方法 461
21.2 监控软件Cacti、Zabbix 463
21.2.1 用Cacti监控宿主机 464
21.2.2 用Zabbix监控宿主机 471
21.3 应急方案 487
21.3.1 应急方案制定注意要点 487
21.3.2 单机虚拟化应急方案 491
21.3.3 集群虚拟化应急方案 495
21.4 本章小结 497
第五篇 KVM虚拟化典型案例
第22章 生产环境问题案例与分析 500
22.1 游戏在虚拟机上非常慢的案例 500
22.2 虚拟机流量过高引起网络风暴的案例一 502
22.3 虚拟机流量过高引起网络风暴的案例二 517
22.4 其他生产环境问题案例 520
22.4.1 共享存储集群虚拟机迁移故障案例 520
22.4.2 宿主机异常关机后虚拟机无法启动案例 522
22.4.3 宿主机使用CentOS 5.6系统问题案例 523
22.4.4 Windows虚拟机网络闪断、不通问题案例 523
22.4.5 Windows 7虚拟机只能使用2个CPU案例 524
22.4.6 生产环境非常奇怪的一个案例 524
22.4.7 U盘在虚拟机上挂载问题案例 526
22.4.8 HP ILO4固件Bug引起宿主机重启案例 528
22.4.9 一次机房断电引起的问题案例 529
22.4.10 CPU绑定问题案例 531
22.4.11 生产环境存储故障导致50个虚拟机丢失案例 532
22.4.12 生产环境Ubuntu虚拟机故障问题案例 533
22.5 本章小结 538
附录 笔者推荐的KVM学习资料 539
· · · · · · (
收起)