《Open Stack设计与实现》是一本介绍OpenStack设计与实现原理的书。《Open Stack设计与实现》以Juno版本为基础,覆盖了OpenStack的学习方法到设计与实现等各个方面内容,致力于帮助读者形成OpenStack及其各个主要组件与项目的拓扑。
《Open Stack设计与实现》语言通俗易懂,能够带领读者更为快速地走入OpenStack的世界并做出自己的贡献。《Open Stack设计与实现》适合希望能够参与OpenStack开发的读者,也适合对OpenStack茫然的初学者,以及有一定使用部署经验但是希望了解OpenStack实现原理的广大用户。
第1章初识OpenStack 1
1.1 从虚拟化到OpenStack 1
1.1.1 虚拟化 1
1.1.2 云计算 2
1.1.3 OpenStack 4
1.2 OpenStack体系结构 6
1.3 OpenStack项目发展流程 13
1.3.1 新项目 14
1.3.2 孵化项目 14
1.3.3 核心项目及集成项目 15
1.4 OpenStack社区 15
1.4.1 邮件列表 16
1.4.2 IRC和项目例会 16
1.4.3 Summit和Meetup 17
1.4.4 其他社交平台 19
1.5 其他开源项目 19
第2章OpenStack开发基础 22
2.1 相关开发资源 22
2.1.1 OpenStack社区 22
2.1.2 OpenStack文档 22
2.1.3 OpenStack书籍 23
2.1.4 其他网络资源 24
2.2 OpenStack开发的技术基础 25
2.3 部署开发环境 26
2.3.1 Git 26
2.3.2 Devstack 27
2.4 浏览OpenStack源代码 31
2.4.1 源码目录结构 31
2.4.2 浏览代码的工具 33
2.4.3 分析源码如何入手 35
2.5 OpenStack代码质量保证体系 38
2.5.1 编码规范 40
2.5.2 代码评审Gerrit 43
2.5.3 单元测试Tox 48
2.5.4 持续集成Jenkins 51
2.6 如何贡献 54
2.6.1 文档 54
2.6.2 修补Bug 55
2.6.3 增加Feature 57
2.6.4 Review 60
2.6.5 调试 61
第3章虚拟化 62
3.1 概述 62
3.1.1 虚拟化实现方式 64
3.1.2 虚拟化现状和未来 66
3.2 高层管理工具 74
3.2.1 XenAPI 74
3.2.2 Libvirt 75
3.3 OpenStack相关实现 84
3.3.1 Libvirt驱动 84
3.3.2 XenAPI驱动 86
第4章OpenStack通用技术 88
4.1 消息总线 88
4.2 SQLAlchemy和数据库(Shane) 92
4.3 RESTful API和WSGI 96
4.4 Eventlet 103
4.5 OpenStack通用库Oslo 106
4.5.1 Cliff 107
4.5.2 oslo.config 111
4.5.3 oslo.db 113
4.5.4 oslo.i18n 116
4.5.5 oslo.messaging 116
4.5.6 stevedore 123
4.5.7 TaskFlow 127
4.5.8 cookiecutter 133
4.5.9 oslo.policy 134
4.5.10 oslo.rootwrap 135
4.5.11 oslo.test 138
第5章计算 141
5.1 Nova体系结构 141
5.2 Nova API 148
5.2.1 Nova API执行过程 149
5.2.2 Nova API的实现 155
5.3 Conductor服务 161
5.3.1 Object Model 163
5.4 Scheduler 166
5.4.1 调度器 166
5.4.2 Filtering 167
5.4.3 Weighting 169
5.5 Compute 169
5.6 典型工作流程 176
5.6.1 创建虚拟机 176
5.6.2 冷迁移与Resize 178
5.6.3 热迁移 179
5.6.4 挂起和恢复 181
5.6.5 Rebuild和Evacuate 182
第6章存储 183
6.1 Swift 183
6.1.1 Swift体系结构 183
6.1.2 Ring 191
6.1.3 Swift API 202
6.1.4 认证 210
6.1.5 对象管理与操作 211
6.1.6 数据一致性 215
6.2 Cinder 218
6.2.1 Cinder体系结构 218
6.2.2 Cinder API 222
6.2.3 cinder-scheduler 224
6.2.4 cinder-volume 226
6.2.5 cinder-backup 230
6.3 Glance 232
6.3.1 Glance体系结构 232
6.3.2 Glance API 234
第7章网络 240
7.1 Neutron体系结构 240
7.1.1 Linux虚拟网络 241
7.1.2 Neutron网络抽象 245
7.1.3 Neutron架构 246
7.1.4 Neutron源码结构 247
7.2 Neutron API 249
7.2.1 neutron-server 250
7.3 ML2 Plugin 251
7.4 Port Binding扩展 257
7.5 Open vSwitch Agent 260
7.6 Service Plugin 267
7.6.1 Firewall 267
7.6.2 LoadBalance 269
7.7 Neutron热点话题 270
7.7.1 DVR 271
7.7.2 SDN 271
7.7.3 NFV/SRIOV 272
第8章安全 274
8.1 OpenStack安全概述 274
8.2 Keystone 275
8.2.1 Keystone体系结构 275
8.2.2 Keystone启动过程 281
8.2.3 用户认证及令牌获取 283
8.2.4 签名证书生成 286
8.3 可信计算池 288
8.3.1 体系结构 289
8.3.2 Intel TXT与TBoot 290
8.3.3 可信认证与OpenAttestation项目 292
8.3.4 TrustedFilter 295
8.3.5 部署 297
8.4 OpenStack安全指南 298
8.4.1 安全域及威胁分类 298
8.4.2 通用的安全指引 302
8.4.3 OpenStack组件的安全 302
第9章计量与监控 305
9.1 Ceilometer体系架构 305
9.1.1 Pipeline 308
9.1.2 Polling Agent与Pollster插件 310
9.1.3 Notification Agent与Notification Listeners插件 311
9.1.4 Collector 与Dispatcher插件 311
9.1.5 Storage/DB 312
9.1.6 API Server 313
9.1.7 Alarm相关 314
9.2 部署与使用 315
9.2.1 选择数据库 315
9.2.2 安装 316
9.2.3 配置 320
9.2.4 使用 323
9.3 Ceilometer插件的开发 323
9.3.1 Pollster 324
9.3.2 Notification Listener 325
9.3.3 DB Backend Driver 326
9.3.4 Compute Agent Inspector 331
9.3.5 Publisher 332
9.3.6 Discover 332
第10章部署 334
10.1 TripleO体系结构 334
10.1.1 DiskImage-Builder 336
10.1.2 Ironic 337
10.1.3 Heat 339
10.1.4 OS-Configuration 341
10.2 TripleO部署范例 342
10.2.1 制作镜像 342
10.2.2 搭建UnderCloud 345
10.2.3 搭建OverCloud 349
10.3 TripleO新特性 351
10.3.1 iPXE 351
10.3.2 Tuskar 351
10.3.3 Ironic-python-agent 352
10.3.4 Hash-ring 352
10.3.5 Driver-factory 352
第11章控制面板 353
11.1 Horizon体系结构 353
11.1.1 Horizon与Django 353
11.1.2 Horizon网站布局 355
11.1.3 Horzion源码结构 356
11.2 Horizon部署 358
……
《Abaqus GUI程序开发指南:Python语言》内容简介:本书共6章,主要讲解采用Python语言对Abaqus进行图形界面程序的开发,包括GUI插
《摄影造型解析》内容简介:《摄影造型解析》作者董介人系南师大徐悲鸿教育奖获得者。本书作者以该校摄影专业研究生课的基础,加以
《矛与盾:黑客攻防命令大曝光》内容简介:《矛与盾:黑客攻防命令大曝光》紧紧围绕黑客命令与实际应用展开,在剖析黑客入侵中用户
【有关家居的一期】2014年KINFOLK春季刊旨在探究“家的意义”。比如,家的理想模样,因人而异的家居布置风格以及美好的家所共享的
揭示数字化主流大趋势的最新权威论著《主流》作者的最新力作!与法国秋季新版同步上市!面对数字化时代的到来,美国、欧盟、中国
《明朝那些事儿增补版:第八部(新版)》内容简介:《明朝那些事儿》第八部,主要讲述了从明熹宗到崇祯皇帝近十年间的历史。天启继
序列图像中的目标分析技术 本书特色 本书以序列图像中目标分析技术的基本过程为主线,系统地介绍了目标分析的基本理论,详细讲解了作者的研究成果。绪论重点对序列图像中...
《军人常见心理问题解析及辅导》内容简介:本书选取军人在兵之初、日常工作、人际交往、个人生活(包括恋爱、婚姻、家庭等方面)常
本书由两位在文案设计领域具有丰富经验的教师所著。它把修辞方法引入视觉设计中,为各类文案设计提供了有用的策略和工具。本书分
《正面管教》内容简介:不当的管教方式会影响孩子的一生,而有效的管教方式会有益孩子的一生。本书改变了传统的说教、批评、打骂、
《图解博弈心理学·微表情心理学》内容简介:本书主要针对各行各业的精英人士以及想学习微表情心理学知识的人员而编写。全书以分析
《数字信号处理学习指导与题解》是高两全等编著的《数字信号处理:原理、实现及应用》的配套用书。主要内容包括:(1)各章重点、难
视频中人的动作分析与识别 本书特色 1.阐述动作分析基本概念和基础知识2.三维人体姿态估计、动作识别与定位经典方法3.多视角动作识别、跨视角动作识别、视角无关动...
《微课程和多媒体课件设计与制作规范》内容简介:本书共分为三部分,首部分主要介绍文字、声音、图像、视频、动画等视听媒体的运用
本书分为四个部分,每个部分都围绕一个总的主题进行详细讨论。第一部分:网页设计入门,提供了人们在开始学习网页设计时经常碰到
《斜杠思维:如何打造独特而强大的自品牌》内容简介:移动互联网时代,自品牌的塑造已经成为一个人生存与发展的王道。这本书跨界职
《以市场为驱动——华为大客户营销实战演练》内容简介:大客户营销不同于普通营销,它要远远比普通营销复杂得多,需要企业有着对自
由杜波依斯编著的《MySQL技术内幕(第4版)》介绍了MySQL的基础知识及其有别于其他数据库系统的独特功能,包括SQL的工作原理和My
《围棋手筋二选一从入门到精通(级位篇)》内容简介:围棋手筋二选一从入门到精通是由少儿围棋教育专家、职业五段棋手赵守洵专为围
《Redis开发与运维》内容简介:本书全面讲解Redis基本功能及其应用,并结合线上开发与运维监控中的实际使用案例,深入分析并总结了