出版社: 机械工业出版社
副标题: 核心技术、管理运维、性能优化与项目实施
出版年: 2015-9-1
页数: 540
定价: 95.00元
装帧: 平装
丛书: Linux/Unix 技术丛书
ISBN: 9787111511939
内容简介 · · · · · ·
虚拟化技术是大数据和云计算应用中的核心技术,经过几年的友展,KVM已经非常成熟和稳定,逐渐取代Xen等商业虚拟化技术和产品,成为该领域事实上的标准。因为采用KVM技术的业务规模都比较大,生产环境大多比较复杂,加上KVM整个技术生态中涉及的技术较多,使用起来有一定的门槛,企业的学习成本较高。
当KVM技术在国内鲜有人使用时,本书作者团队就开始钻研并在生产环境中使用,短短几年内,就为公司节省了上亿的运莒成本,帮助公司多个处于生命周期末的游戏项目实现扭亏为盈。本书中所有的知识和经验都来自国内一线的互联网公司的生产环境,比如金山西山居、盛大游戏等,最大的特点就是业务规模大、环境复杂,非常具有代表性,极为珍贵。
本书从多个维度详细讲解了KVM虚拟化原理、技术及性能调优、软硬件选型,生产环境虚拟化项目实施方法,开源管理平台介绍及部署,虚拟化后端存储方案,开源分布...
虚拟化技术是大数据和云计算应用中的核心技术,经过几年的友展,KVM已经非常成熟和稳定,逐渐取代Xen等商业虚拟化技术和产品,成为该领域事实上的标准。因为采用KVM技术的业务规模都比较大,生产环境大多比较复杂,加上KVM整个技术生态中涉及的技术较多,使用起来有一定的门槛,企业的学习成本较高。
当KVM技术在国内鲜有人使用时,本书作者团队就开始钻研并在生产环境中使用,短短几年内,就为公司节省了上亿的运莒成本,帮助公司多个处于生命周期末的游戏项目实现扭亏为盈。本书中所有的知识和经验都来自国内一线的互联网公司的生产环境,比如金山西山居、盛大游戏等,最大的特点就是业务规模大、环境复杂,非常具有代表性,极为珍贵。
本书从多个维度详细讲解了KVM虚拟化原理、技术及性能调优、软硬件选型,生产环境虚拟化项目实施方法,开源管理平台介绍及部署,虚拟化后端存储方案,开源分布式文件系统GIusterFS、Ceph在虚拟化中的使用方法,虚拟化监控、报警、应急方案的制定,并附有大量生产环境案例。
深度实践KVM的创作者
· · · · · ·
-
肖力 作者
作者简介 · · · · · ·
肖力,资深运维专家,拥有15年运维经验,就职于金山西山居,担任系统运维经理,曾就职于盛大游戏,在运维圈有极大的影响力。国内KVM专家,从2009年开始研究KVM技术,是国内较早在生产环境大规模实践KVM的人之一,积累了非常丰富的经验。
热衷于技术传播,一直在无私地为运维领域的发展做贡献,维护有微信订阅号“KVM虚拟化实践”,分享了大量KVM和运维领域的干货内容,同时还运营着多个运维相关的微信群。此外,他还是华章“运维前线”系列图书的总策划,无偿地在组织大量愿意无私分享经验的运维工程师们来参与写作。
汪爱伟,资深运维专家,安居客资深系统工程师,曾就职于阿里云、UCloud、盛大游戏等知名互联网公司。对KVM技术有深入的研究,在虚拟化集群方面有丰富的生产环境经验,擅长KVM虚拟化项目的实施和运维。
杨俊俊,资深虚拟化技术专家和运维工程师,就职于盛大,担任...
肖力,资深运维专家,拥有15年运维经验,就职于金山西山居,担任系统运维经理,曾就职于盛大游戏,在运维圈有极大的影响力。国内KVM专家,从2009年开始研究KVM技术,是国内较早在生产环境大规模实践KVM的人之一,积累了非常丰富的经验。
热衷于技术传播,一直在无私地为运维领域的发展做贡献,维护有微信订阅号“KVM虚拟化实践”,分享了大量KVM和运维领域的干货内容,同时还运营着多个运维相关的微信群。此外,他还是华章“运维前线”系列图书的总策划,无偿地在组织大量愿意无私分享经验的运维工程师们来参与写作。
汪爱伟,资深运维专家,安居客资深系统工程师,曾就职于阿里云、UCloud、盛大游戏等知名互联网公司。对KVM技术有深入的研究,在虚拟化集群方面有丰富的生产环境经验,擅长KVM虚拟化项目的实施和运维。
杨俊俊,资深虚拟化技术专家和运维工程师,就职于盛大,担任盛大游戏公有云“G云”运维负责人和Intel联合实验室技术负责人,曾任职51。com,精通虚拟化项目的评估与实施,精通开源分布式文件系统在生产环境的运维与实践。
赵德禄,资深运维工程师和虚拟化工程师,就职于携程,担任高级云平台运维工程师,曾就职于盛大游戏,担任资深虚拟化工程师。精通KVM、OpenStack、OpenvSwitch、桌面虚拟化等技术,在生产环境下的实践经验非常丰富。
目录 · · · · · ·
前 言
第一篇 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
· · · · · · (收起)
丛书信息
· · · · · ·
喜欢读"深度实践KVM"的人也喜欢 · · · · · ·
- Open Stack设计与实现 8.0
- 第一本Docker书(修订版) 8.1
- 图解服务器端网络架构 8.4
- Linux性能优化 7.5
- Vim实用技巧(第2版) 9.3
- Web性能权威指南 8.8
- 现代体系结构上的UNIX系统 8.6
- 自制编译器 8.2
2 有用 jolestar 2016-04-18 18:59:54
讲的比较基础,放太多安装教程,粘贴太多配置和图片了。不过如果对kvm整体没啥概念,翻一翻也不错。另外虚拟化这方面的书确实不多,三星算鼓励吧。
0 有用 geekgao 2019-10-11 11:37:48
没读完。
0 有用 SeanRebn 2018-07-06 21:55:34
唉,被分配到了这个部门,只好先看看这个了
0 有用 不一样的天空 2017-11-20 22:34:57
mark一下,读得有点久了
0 有用 kkkc 2016-06-09 22:45:07
有些案例还是确实有效,但是错别字较多,而且一些案例太旧(2014年)了,已经不适合了。
0 有用 东东枪 2021-09-02 15:31:21
后面的内容有点水
1 有用 飞翔的鱼 2020-11-08 18:04:02
拖了好久的这本书终于看完了,两次劝退没看完的原因就是因为中间2个篇章的配置和搭建太过枯燥。 第一篇:全书的重中之重,基本上所有的核心技术介绍都在这一篇体现; 第二篇:各种文件系统介绍、搭建、配置; 第三篇:各种管理平台介绍、搭建、配置; 第四篇:个人偏向对21章的各种性能检测的学习; 第五篇:翘首以待的问题案例,更多的看到的是升级系统升级内核升级软件包,既然都写出来问题的排查方式为什么就不能“深... 拖了好久的这本书终于看完了,两次劝退没看完的原因就是因为中间2个篇章的配置和搭建太过枯燥。 第一篇:全书的重中之重,基本上所有的核心技术介绍都在这一篇体现; 第二篇:各种文件系统介绍、搭建、配置; 第三篇:各种管理平台介绍、搭建、配置; 第四篇:个人偏向对21章的各种性能检测的学习; 第五篇:翘首以待的问题案例,更多的看到的是升级系统升级内核升级软件包,既然都写出来问题的排查方式为什么就不能“深度”的分析一下问题的内在原因,就只是浅尝辄止,唯一能学到的就是将问题全面尝试的排查方法,有些问题官网给出的核心解答贴出的链接不知因为时间久远还是墙内限制无法访问… 总的来说就是一本KVM实践手册,题目中的“深度”以及核心技术的讲解简直少之又少,作为入门或者一个配置查询手册还是可以。 (展开)
0 有用 david 2019-11-09 15:33:10
第一次接触虚拟化,这本是不适合零基础的人阅读,适合有一定基础,但是缺乏实践经验的人上手。适合运维人员的工具书。不合适系统架构的人读
0 有用 geekgao 2019-10-11 11:37:48
没读完。
0 有用 SeanRebn 2018-07-06 21:55:34
唉,被分配到了这个部门,只好先看看这个了