★云计算时代OpenStack必选必读经典:轻松实现从初识到达人进程!
★深入云计算与虚拟化OpenStack底层设计与实现原理:轻松形成OpenStack拓扑图!
★以newtonrelease为基础,同时增加了很多新的项目!
★英特尔开源技术中心合力打造精品!
《OpenStack设计与实现(第2版)》是一本介绍 OpenStack 设计与实现原理的书。《OpenStack设计与实现(第2版)》内容以 Newton 版本为基础,覆盖了OpenStack 的学习方法到设计与实现等各个方面内容,致力于帮助读者形成 OpenStack 及其各个主要组件与项目的拓扑。
《OpenStack设计与实现(第2版)》语言通俗易懂,能够带领读者更为快速走入 OpenStack 的世界并作出自己的贡献。
《OpenStack设计与实现(第2版)》适合希望能够参与 OpenStack 开发的读者,也适合对 OpenStack 茫然的初学者,以及有一定使用部署经验但是希望了解 OpenStack 实现原理的广大用户。
英特尔开源技术中心(Intel Open Source Technology Center -- OTC)是英特尔公司内专职进行开源软件开发的团队,负责在系统软件领域进行与英特尔?平台相关的技术开发和创新,并在 Linux 操作系统内核,Android/Chrome 操作系统,云计算和虚拟化技术,HTML5 WebRuntime,图形驱动及多媒体软件以及系统软件的优化等方面积累了业界领先的技术能力。同时依托强大的技术团队,OTC 积极参与开源社区对开源软件的推广普及活动,并对国内及国际上主流开源操作系统厂商提供有力地支持。
第 1 章 初识 OpenStack1
1.1 从虚拟化到 OpenStack 1
1.1.1 虚拟化 1
1.1.2 云计算 2
1.1.3 OpenStack 4
1.2 OpenStack 基金会以及管理模式 7
1.2.1 董事会 8
1.2.2 技术委员会 9
1.2.3 用户委员会 10
1.3 OpenStack 体系结构 11
1.4 OpenStack 项目发展流程 18
1.4.1 新项目 18
1.4.2 孵化项目、集成项目和核心项目 19
1.4.3 大帐篷(Big Tent) 20
1.5 OpenStack 社区 21
1.5.1 邮件列表 21
1.5.2 IRC 和项目例会 22
1.5.3 Summit 和 Meetup 23
1.5.4 其他社交平台. 25
1.6 其他开源项目 25
1.7 OpenStack 的技术发展趋势 30
第 2 章 OpenStack 开发基础.33
2.1 相关开发资源 33
2.1.1 OpenStack 社区 33
2.1.2 OpenStack 文档 33
2.1.3 OpenStack 书籍 34
2.1.4 其他网络资源. 35
2.2 OpenStack 开发的技术基础 35
2.3 部署开发环境 36
2.3.1 Git 37
2.3.2 Devstack. 38
2.4 浏览 OpenStack 源代码 42
2.4.1 浏览代码的工具 43
2.4.2 分析源码如何入手 44
2.5 OpenStack 代码质量保证体系 48
2.5.1 编码规范 50
2.5.2 代码评审 Gerrit 53
2.5.3 单元测试 Tox 58
2.5.4 持续集成 Jenkins 61
2.6 如何贡献 66
2.6.1 文档 67
2.6.2 修补 bug 67
2.6.3 增加 feature 69
2.6.4 review 72
2.6.5 调试 73
第 3 章 虚拟化 75
3.1 概述 75
3.1.1 虚拟化实现方式 77
3.1.2 虚拟化现状和未来 79
3.2 高层管理工具 87
3.2.1 XenAPI 88
3.2.2 Libvirt 89
3.3 OpenStack 相关实现 98
3.3.1 Libvirt 驱动 98
3.3.2 XenAPI 驱动 100
第 4 章 OpenStack 通用技术102
4.1 消息总线 102
4.2 SQLAlchemy 和数据库 107
4.3 RESTful API 和 WSGI 111
4.4 Eventlet 120
4.5.1 Cliff 122
4.5.2 oslo.config 125
4.5.3 oslo.db 128
4.5.4 oslo.i18n 131
4.5.5 oslo.messaging 132
4.5.6 stevedore 139
4.5.7 TaskFlow. 142
4.5.8 cookiecutter 149
4.5.9 oslo.policy 150
4.5.10 oslo.rootwrap 151
4.5.11 oslo.test 154
4.5.12 oslo.versionedobjects 156
第 5 章 计算.160
5.1 Nova 体系结构 161
5.2 Nova API 166
5.2.1 Nova v2.1 API 167
5.2.2 Nova API 实现. 168
5.3 Rolling Upgrade. 178
5.3.1 Rolling Upgrade 实现 179
5.4 Scheduler 186
5.4.1 调度器 187
5.4.2 Resource Tracker 191
5.4.3 调度流程 193
5.5 典型工作流程 195
5.5.1 创建虚拟机 195
5.5.2 冷迁移与 Resize 196
5.5.3 热迁移 197
5.5.4 挂起和恢复 200
5.5.5 Rebuild 和 Evacuate 200
第 6 章 存储.201
6.1 Swift. 201
6.1.1 Swift 体系结构 201
6.1.2 Ring 209
6.1.3 Swift API. 218
6.1.4 认证 226
6.1.5 对象管理与操作. 228
6.1.6 数据一致性 231
6.2 Cinder 234
6.2.1 Cinder 体系结构. 234
6.2.2 Cinder API 239
6.2.3 cinder-scheduler 241
6.2.4 cinder-volume 243
6.2.5 cinder-backup 248
6.3 Glance 249
6.3.1 Glance 体系结构 249
6.3.2 Glance API 252
6.4 Ceph 257
6.4.1 Ceph 体系结构 259
6.4.2 RADOS 261
6.4.3 Ceph 块设备 281
6.4.4 Ceph FS 285
6.4.5 Ceph 与 OpenStack 286
第 7 章 网络.289
7.1 Neutron 体系结构 289
7.1.1 Linux 虚拟网络 290
7.1.2 Neutron 网络抽象 294
7.1.3 Neutron 架构 295
7.1.4 Neutron 源码结构 297
7.2 Neutron API 299
7.2.1 neutron-server 300
7.3 ML2 Plugin 301
7.4 Port Binding 扩展 308
7.5 Open vSwitch Agent 317
7.6 Service Plugin 324
7.6.1 Firewall 325
7.6.2 LoadBalance 326
7.7 Neutron 热点话题 329
7.7.1 DVR 329
7.7.2 SDN 329
7.7.3 NFV/SRIOV 330
7.7.4 OVS 和 DPDK. 333
第 8 章 安全.335
8.1 OpenStack 安全概述 335
8.2 Keystone 336
8.2.1 Keystone 体系结构 336
8.2.2 Keystone 启动过程 343
8.2.3 用户认证及令牌获取 346
8.2.4 签名证书生成 349
8.2.5 Keystone 高阶应用 352
8.3 可信计算池 355
8.3.1 体系结构 355
8.3.2 Intel TXT 与 TBoot 356
8.3.3 可信认证与 OpenAttestation 项目 358
8.3.4 TrustedFilter 362
8.3.5 部署 364
第 9 章 计量与监控 366
9.1 Ceilometer. 367
9.1.1 体系结构 367
9.1.2 Pipeline 370
9.1.3 Polling Agent 与 Pollster 插件 372
9.1.4 Notification Agent 与 Notification Listeners 插件 373
9.1.5 Collector 与 Dispatcher 插件 373
9.1.6 Storage/DB. 374
9.1.7 API Server 374
9.1.8 部署与使用 375
9.1.9 插件的开发 386
9.2 Aodh 396
9.2.1 体系结构 396
9.2.2 部署与使用 398
9.2.3 插件的开发 402
9.3 Gnocchi 408
9.3.1 体系结构 409
9.3.2 部署与使用 412
9.4 Panko 414
第 10 章 物理机管理 415
10.1 Ironic 体系结构 415
10.1.1 Ironic Driver 419
10.1.2 Ironic API. 423
10.1.3 Ironic Conductor 424
10.1.4 Ironic-python-agent. 425
10.1.5 ironic-inspector 426
10.2 Ironic 中的网络管理 426
10.2.1 物理交换机管理 426
10.2.2 多租户网络的支持. 427
10.3 Ironic 节点的注册和启动 428
第 11 章 控制面板.432
11.1 Horizon 体系结构 432
11.1.1 Horizon 与 Django 432
11.1.2 Horizon 网站布局 435
11.1.3 Horzion 源码结构 437
11.2 Horizon 部署 439
11.3 页面渲染流程 441
第 12 章 容器455
12.1 容器技术 455
12.1.1 容器的原理 455
12.1.2 常见的容器集群管理工具. 456
12.2 容器与 OpenStack 460
12.2.1 nova-docker/heat-docker 461
12.2.2 Magnum 461
12.2.3 Murano 469
12.2.4 Kolla 472
12.2.5 Solum 472
12.2.6 Kuryr 474
12.2.7 容器技术与 OpenStack 的展望 476
第 13 章 部署477
13.1 配置管理工具 478
13.2 OpenStack 部署项目 480
13.2.1 Bifrost 481
13.2.2 Kolla 483
13.2.3 TripleO 490
13.2.4 Fuel 493
第 14 章 新兴项目 495
14.1 Searchlight 495
14.1.1 Searchlight 体系结构 495
14.1.2 plugin 的开发 497
14.2 Watcher 502
14.2.1 Watcher 使用 503
14.2.2 Watcher 体系结构 505
14.2.3 strategy 的开发 507
至此落笔之际,OpenStack 问世几近 7 年,7 年的时间,对很多项目来说已经足够走过一个创建发展到没落的轮回,而对于 OpenStack,7 年的时间仍然远远不够让我们看到它最终所能够达到的高度。
从哲学的辩证角度:今天的必然正是由之前一系列的偶然所决定的。2010 年的一个偶然,OpenStack 由 RackSpace 和美国国家航空航天局合作发布,于是随后的时间里无数公司与个人偶然初识 OpenStack 并深陷其中,而正是这些偶然相联合,从而决定了会有今天这样一本书,会有现在写下的这些话。那么,当您偶然地拿起这本书,偶然地看到这段话,您是否会问自己:这样的偶然又会导致什么样的必然?
如果您依然决定继续这次的偶然之旅,还请您问自己一个问题:我在强迫自己学习OpenStack 么?很希望您能回答不是,但希望与现实往往都有段不小的距离,因为很多时候,我们都是因为各种原因而强迫自己去喜欢的。或许,针对这个问题,最让人愉悦的回答是“说实话,我学习的热情从来都没有低落过。Just for Fun.”
其次,在您继续之前,面对 OpenStack 这样一个新生事物,让人最为惴惴不安的问题或许便是:我该如何更快更好的适应这个全新的世界?人工智能与机器学习领域里研究的一个很重要的问题是“为什么我们小时候有人牵一匹马告诉我们那是马,于是之后我们看到其他的马就知道那是马了?”。针对这个问题的一个结论是:我们头脑里形成了一个生物关系的拓扑,我们所认知的各种生物都会放进这个拓扑的结构里,而我们随着年纪不断成长的过程就是形成并完善各种各样或树形或环形等拓扑的过程,并以此来认知我们所面对的各种新事物。
由此可见,或许我们认知 OpenStack 最快也最为自然的方式就是努力在脑海里形成它的拓扑,并不断的进行细化。比如作为一个云计算的平台它包括了哪些功能分别对应哪些项目,各个项目又实现了哪些服务以及功能,这些功能又是以什么样的方式实现的,等等,对于我们感兴趣的项目或服务又可以更为细致的去勾勒它其中的脉络。就好似我们头脑里形成的有关一个城市的地图,它有哪些区,区里又有哪些标志建筑以及街道,对于我们熟悉的地方可以将它的周围进行放大细化,甚至于一个微不足道的角落。
而对于这个拓扑细化的过程能够起到有益辅助的是概念空间的勾勒。站在架构设计的角度,软件从需求进到架构出的全过程中,勾勒描绘概念空间是很重要的一个中间过程。这个阶段会形成所需要引入的各种新概念,比如操作系统中的进程、虚拟内存、系统调用等等,它们就类似一个拓扑中的标志建筑,而我们去认知研究这个软件的时候,描绘这个概念空间也就不可避免成为重中之重。
本书的组织形式
本书的内容组织正是为了尽一切能力帮助读者能够形成有关 OpenStack 以及各个重要项目与功能比较细致的拓扑。首先是前四章,这几章的内容希望能够帮助您对 OpenStack 有个全面的认识和了解,从而形成对 OpenStack 整体的拓扑。
第 1 章主要介绍了 OpenStack 的成长史以及它的体系结构和社区现状。
第 2 章详尽的介绍了 OpenStack 开发的基础流程以及如何去分析 OpenStack 的源码。
第 3 章介绍了 OpenStack 的底层基石——虚拟化技术。大多数 OpenStack 的使用者和开发者并不了解虚拟化的一些细节,有了这一章的介绍,我们能够对 OpenStack 有一个更好的认识。
第 4 章将 OpenStack 众多项目中所使用到的通用技术加以介绍,有了这一章,我们理解各个具体项目的设计与实现时,可以少去很多的阻碍。
然后第 5~14 章的内容对 OpenStack 主要组件及项目的实现进行介绍。按照认识的发展规律,通过前面几章的介绍我们已经对 OpenStack 有了全局的认识和了解,接下来就可以以兴趣或工作需要为导向,寻找一个组件或项目,对其实现进行深入的钻研和分析。这些章节的内容也是希望能够尽量帮助您形成对相应项目的比较细致的拓扑,并不求对所有实现细节的详尽分析。
第 5 章讨论计算组件也就是 Nova 项目。Nova 为我们实现了 OpenStack 这个虚拟机世界的抽象,控制着一个个虚拟机的状态变迁与生老病死,管理着他们的资源分配。
第 6 章讨论存储相关的四个项目:Swift,Cinder,Glance 以及 Ceph。他们共同为这个虚拟机世界的主体——虚拟机提供了安身之本,负责为每个虚拟机本身的镜像以及它所产生的各种数据提供一个家,尽量的去做到“居者有其屋”。
第 7 章讨论网络组件也就是 Neutron 项目。没有网络,任何虚拟机都将只是这个虚拟机世界中的孤岛,不知道自己生存的价值。
安全是每个软件无法回避的问题,第 8 章便针对安全问题进行讨论,包括 Keystone 项目以及可信计算池的相关内容。
第 9 章的内容有关计量与监控的项目 Ceilometer,计量与监控是公有云运营的一个重要环节。
第 10 章的内容与物理机管理有关,Ironic 项目被应用于 OpenStack 中的裸机管理和部署。
第 11 章介绍了 OpenStack 的控制面板。提供一个简洁方便、用户友好的控制界面给最终的用户和开发者对 OpenStack 尤为重要。
随着容器技术的发展,容器与云基础架构的结合受到越来越多的关注,第 12 章便讨论了OpenStack 对容器的支持。
第 13 章的内容与部署有关,但是这里讨论的并不是如何部署的详细步骤与过程,而只是与部署有关的几个主要项目。
第 14 章介绍了几个新兴的项目,包括 Searchlight 与 Watcher 等。
感谢
作为英特尔的开源技术中心,参与 OpenStack 的开发与推广是再为自然不过的事情。除了为 OpenStack 的完善与稳定贡献更多的思考和代码,我们也希望能通过这本书让更多的人更快捷的融入 OpenStack 的大家庭。
如果没有 Imad Sousou(英特尔软件与服务事业部副总裁兼开源技术中心总经理)、MauriWhalen(英特尔软件与服务事业部副总裁兼开源技术中心核心系统研发总监)、HillariePrestopine(英特尔软件与服务事业部副总裁兼开源技术中心云和网络系统研发总监)、David LBrown(英特尔开源技术中心云计算核心研发总监)、练丽萍(英特尔开源技术中心网络和存储研发总监)、Malini K Bhandaru(英特尔开源技术中心云计算主任工程师)、冯晓焰(英特尔开源技术中心中国安卓研发总监)、李少凡(英特尔开源技术中心虚拟化研发总监)、陈绪(英特尔开源技术中心中国云计算战略总监)的支持,这本书不可能完成,谨在此感谢他们对本书编写过程中的关怀与帮助。
也要感谢本书的编辑孙学瑛老师,从选题到最后的定稿,整个过程中,都给予我们无私的帮助和指导。
然后要感谢参与第一版与第二版各章内容编写的各位同事,他们是王庆、丁建峰、任桥伟、陆连浩、翟纲、徐贺杰、程盈心、李晓燕、臧锐、贺永立、郭瑞景、乔立勇、陈巍、杜永丰、杨林、张磊、冯少合、金运通、魏刚、田双太、汪亚雷、谭霖、辛晓慧,为了本书的顺利完成,他们付出了很多努力。他们不仅为英特尔开源技术中心做出了很多的贡献,而且长期活跃在中国的云计算技术生态系统中。
最后感谢所有对 OpenStack 抱有兴趣或从事 OpenStack 工作的人,没有你们的源码与大量技术资料,本书便会成为无源之水。
最近在学习云原生技术栈,对基础设施层的管理和编排产生了浓厚的兴趣。市面上关于Kubernetes和Docker的书籍很多,但对于更底层的IaaS平台,尤其是OpenStack,我总觉得信息不够系统和深入。《OpenStack设计与实现(第2版)》这本书的名字就吸引了我。从书的封面上就能感受到一种厚重感,似乎蕴含着丰富的技术干货。我非常期待书中能够详述OpenStack各个核心组件(如Nova、Neutron、Cinder、Keystone等)的设计理念、关键技术点以及它们之间是如何协同工作的。我尤其想了解其API的设计哲学,以及如何进行二次开发和集成。对于初学者来说,能够清晰地理解这些复杂组件的职责和交互方式至关重要,也希望书中能够提供一些实战性的部署和运维建议,例如如何在生产环境中稳定地运行OpenStack,以及如何进行性能调优和故障排查。这些都是在实际工作中会遇到的痛点,如果书中能给出有价值的指导,那将是极大的福音。
评分一直以来,我对云计算的基础架构都有着浓厚的兴趣,特别想了解那些支撑起海量计算、存储和网络资源的庞大系统是如何设计的。《OpenStack设计与实现(第2版)》这本书从书名来看,就透露出一种技术深度和实现导向。我非常期待书中能够详细地讲解OpenStack各个核心服务的架构演进,以及它们在实际生产环境中的典型部署模式。例如,关于Keystone的身份认证和授权机制,我希望能够看到其内部是如何处理用户、租户、角色等概念的,以及如何与LDAP、AD等外部认证系统集成。另外,对于Swift对象存储,我希望能深入了解其分布式存储的原理,包括数据分片、纠错、一致性保证等方面的内容,以及如何应对高并发的读写请求。书中如果能对OpenStack的API进行详细的解析,并提供一些实际开发中的代码示例,那将对我的学习和实践提供极大的帮助,让我能够更好地理解并运用OpenStack来构建自己的云平台。
评分作为一个深度学习爱好者,我一直对构建和管理大规模分布式系统充满好奇。最近,我接触到一本名为《OpenStack设计与实现(第2版)》的书,虽然我还没来得及深入研读,但从其前言和目录来看,这本书似乎深入剖析了OpenStack的核心架构和实现细节,这对于我理解其内部运作机制非常有帮助。我尤其关注书中关于虚拟化技术、网络编排以及存储解决方案的部分,这些都是我学习和实践中经常遇到的挑战。我期待这本书能够提供清晰的原理阐述和具体的代码示例,帮助我从理论到实践,掌握OpenStack的精髓。希望作者在描述Neutron的插件机制时,能给出一些实际场景的案例,例如如何根据不同的云环境选择合适的网络插件,以及如何优化网络性能。另外,关于Cinder的卷管理和快照功能,我也希望能看到更详尽的介绍,特别是如何应对大规模数据存储的读写压力和数据恢复策略。总而言之,这本书的出现,无疑为像我这样的技术探索者提供了宝贵的资源,我迫不及待地想一探究竟。
评分作为一名在企业中负责私有云建设的工程师,我深知OpenStack在构建灵活、可扩展的企业级私有云方案中的重要性。我们团队一直在探索如何更有效地利用OpenStack的强大功能,以满足日益增长的业务需求。《OpenStack设计与实现(第2版)》这本书的出版,对我来说无疑是一个重要的里程碑。我非常看重书中关于OpenStack集群的部署、配置和管理方面的内容,尤其是对于高可用性和灾备方案的论述。希望作者能够提供一些关于大规模集群维护的最佳实践,以及如何应对硬件故障、软件升级等突发情况。此外,我对书中关于安全性的章节也充满了期待,了解如何为OpenStack集群配置精细化的访问控制策略,以及如何抵御各类网络攻击,对于保障企业的数据安全至关重要。我相信,这本书将为我们提供宝贵的理论指导和实践经验,帮助我们更好地构建和运维我们的OpenStack云平台。
评分我一直对分布式系统的架构设计和实现细节有着强烈的求知欲,尤其是那些能够支撑起大规模业务的底层技术。《OpenStack设计与实现(第2版)》这本书的标题就直指我的兴趣点。我希望这本书能够不仅停留在概念层面,而是能够深入到OpenStack各个核心组件的源码级别,解析其关键算法和设计模式。例如,对于Nova的调度器,我想知道其背后的负载均衡策略是如何实现的,又如何在不同场景下进行优化;对于Neutron,我希望能够理解其Overlay网络和Underlay网络是如何结合的,以及VXLAN、GRE等技术的具体应用。书中如果能对OpenStack的API进行详细的解读,并给出一些API调用的最佳实践,那将极大地帮助我进行二次开发和自动化运维。我更期待书中能够探讨OpenStack在容器化场景下的集成与应用,以及与其他开源项目的联动,这些都是当前云计算发展的重要趋势。
评分帮朋友买的,我看不懂,哈哈
评分打折时买的,送货很快,购物很方便!
评分应该还不错,包装太精美,没有看内容
评分还没有看呢,感觉应该是正版!
评分把这本书撸完,我是不是要成大神了。以后包装能不能好点,书角有点不太好了。习惯好评。
评分好书,推荐购买。帮别人带的,不错
评分书本破损,运输太不负责了吧
评分不错!!!!!!!!!!!!!!!!!!!!!!
评分非常好好好好好好好好好好好好
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有