《云落谁家?OpenStack基于场景的架构设计实践》在OpenStack 的实践基础上,面向应用需求的不同场景,给出了相应的计算资源配置管理方案和实际应用。对每个场景的介绍符合软件工程需求分析、系统设计、系统实现和部署应用的生命周期过程。
《云落谁家?OpenStack基于场景的架构设计实践》以案例的形式介绍OpenStack 的应用是一种有益的尝试,对云计算服务提供者、使用者和云计算技术爱好者具有参考价值。
如果你正在考虑如何部署OpenStack,正在考虑如何选择OpenStack 组件、如何选择硬件基础设施、如何解决监控和计费的问题、如何进行架构设计才较具安全性等问题,那么你可以通过《云落谁家?OpenStack基于场景的架构设计实践》在各个类型的云架构场景中找到想要的答案。
本书总共有8章的内容,将OpenStack的应用场景分为了几类,每章介绍了不同的场景。
第1章介绍了通用型应用场景;
第2~4章分别介绍了计算密集型、高负载存储型、高吞吐网络型应用场景;
第5章介绍了混合云应用场景;
第6章介绍了跨地域多点型应用场景;
第7章介绍了大规模可扩展型应用场景;
第8章介绍了一些其他的应用场景。
推荐序一
“云”隐含了计算机资源。“计算”实现了服务。“云计算”是一种基于互联网,面向应用需求,实现软件定义的按需配置、随需构建演化,提供多层服务的计算范型,是一种新的IT服务模式。
云计算服务的出现早于云计算概念的提出,云计算思想和系统雏形更是在半世纪以前就已出现。如今云计算服务市场飞速发展,传统的软件开发商和互联网服务提供商面向用户需求,结合自身优势,推出不同层面的的云计算服务,云计算的生态环境逐渐形成,实现了云计算服务的使用者按需获取所需的计算资源。
云计算的服务模式自下而上分为IaaS、PaaS和SaaS。OpenStack是IaaS的一种开源实现,目标是提供实施简单、可扩展、丰富、标准统一的计算资源配置管理平台,提供基础设施服务的解决方案。
本书作者在OpenStack的实践基础上,面向应用需求的不同场景,给出了相应的计算资源配置管理方案和实际应用。其对每个场景的介绍符合软件工程需求分析、系统设计、系统实现和部署应用的生命周期过程。本书以案例的形式介绍OpenStack的应用是一种有益的尝试,对云计算服务提供者、使用者和云计算技术爱好者具有参考价值。
杨芙清
中国科学院院士
推荐序二
云计算概念自2006年被首次提出以来,一直是IT业界乃至全社会的热点之一。云计算是IT历史上继大型主机、个人电脑、互联网之后的又一次重大变革机遇。云计算技术代表了当前IT技术发展的方向,也是IT技术发展的必经阶段,这已经是业界的共识。经过过去几年的发展和普及,现今大家面临的不再是“云计算是什么”之类的概念普及型问题,而是“云计算如何落地”这样的深入型问题,即针对具体的应用场景,我们该如何制定合理的解决方案,让云计算技术真正满足客户的需要。
OpenStack是在云计算发展和实践过程中涌现出来的一个著名开源项目。在云计算基础架构即服务(IaaS)这个层面,OpenStack已经逐步成为事实上的标准。而OpenStack由于组件众多,在实际使用时非常灵活和复杂,如何确定合适的架构设计,这成为云计算如何落地这个过程中亟待解决的一个关键问题。本书探讨的主题是OpenStack的架构设计,这抓住了此问题的核心。本书从应用场景这个维度来切入,详细剖析不同应用场景下OpenStack的架构设计,具有非常明确的指导意义。这对推动云计算技术在中国的落地和发展,无疑会起到非常好的促进作用。
本书的编写者来自“易云”这家创新型公司。他们是站在云计算技术最前沿的年轻人,具有强烈的在中国推广和应用云计算技术的使命感,这也是他们编写并出版这本书的初衷,值得充分肯定。他们既有在海外求学、从事科学研究的经历,又有在国内艰苦创业、从事云计算技术研发和推广的丰富实践经验。正因为如此,本书在云计算技术理论和实践的结合方面,具有独到的见解。这些经验非常值得在业内分享,开阔大家的思路。
我一直认为,对于中国这样一个发展中的大国,任何技术和应用的革新都应当看做是一个机遇——中国发挥后发优势,实现跨越式发展的机遇,云计算也不例外。目前,和国外相比,我们在云计算领域还有一定差距,但如果我们能充分运用丰富的人才资源和市场资源,坚持自主创新,将来完全有可能赶上并超越发达国家。期望中国的企业在云计算这个领域中,能抓住历史机遇,在与国外跨国公司的竞争中脱颖而出,为中国的经济发展做出应有的贡献。
倪光南
中国工程院院士
第1章通用型应用场景 1
1.1 场景描述 1
1.2 需求分析 2
1.3 技术架构设计 4
1.3.1 规划计算资源 5
1.3.2 规划网络资源 7
1.3.3 规划存储资源 9
1.3.4 软件选择 11
1.3.5 性能 14
1.3.6 可用性 17
1.3.7 安全性 18
1.4 运营服务设计 20
1.4.1 技术支持和维护 21
1.4.2 监控 21
1.4.3 宕机时间 21
1.4.4 容量规划 22
1.5 架构实体选型建议 23
1.5.1 选择存储硬件 26
1.5.2 选择网络硬件 29
1.5.3 软件选择 30
1.5.4 针对性能敏感的负载 34
1.6 典型案例实践 35
第2章计算密集型应用场景 39
2.1 场景描述 39
2.2 需求分析 40
2.3 技术架构设计 41
2.3.1 扩展计划 43
2.3.2 CPU和内存 43
2.3.3 额外的硬件 45
2.3.4 量力而行 45
2.4 运营服务设计 48
2.4.1 支持和维护 49
2.4.2 监控 50
2.4.3 计划内和计划外服务器宕机时间 50
2.4.4 容量计划 50
2.5 架构实体选型建议 51
2.5.1 存储硬件选择 53
2.5.2 选择网络硬件 55
2.5.3 软件选择 56
2.6 典型案例实践 60
第3章高负载存储型应用场景 65
3.1 场景描述 65
3.2 需求分析 66
3.3 技术架构设计 68
3.4 运营服务设计 69
3.4.1 管理效率 70
3.4.2 应用的可知性 71
3.4.3 容错和可用性 71
3.4.4 扩展存储服务 73
3.5 架构实体选型建议 75
3.5.1 计算(服务器)硬件选择 77
3.5.2 网络硬件选择 79
3.5.3 软件选择 79
3.6 典型案例实践 83
3.6.1 带数据处理服务的计算分析 85
3.6.2 带数据库服务的高性能数据库 86
第4章高吞吐网络型应用场景 89
4.1 场景描述 89
4.2 需求分析 91
4.2.1 高可用问题 92
4.2.2 风险 93
4.2.3 安全性 94
4.3 技术架构设计 94
4.3.1 二层架构的局限性 96
4.3.2 三层架构的优势 97
4.3.3 三层架构的局限性 98
4.3.4 网络建议的总结 98
4.3.5 额外的考虑因素 99
4.4 运营服务设计 102
4.5 架构实体选型建议 104
4.5.1 对设计的影响 105
4.5.2 可调联网组件 108
4.6 典型案例实践 109
4.6.1 负载均衡 111
4.6.2 覆盖网络 111
4.6.3 性能调优 111
4.6.4 网络功能 112
4.6.5 云存储 113
第5章混合云应用场景 115
5.1 场景描述 115
5.2 需求分析 116
5.2.1 法律需求 117
5.2.2 负载考虑 118
5.2.3 工具考量 119
5.2.4 网络考虑 120
5.2.5 风险规避和管理考虑 120
5.3 技术架构设计 121
5.3.1 容量计划 122
5.3.2 安全性 123
5.3.3 量力而行 123
5.3.4 性能 124
5.3.5 组件 125
5.3.6 特殊因素 125
5.4 运营服务设计 126
5.4.1 敏捷性 126
5.4.2 应用准备 127
5.4.3 升级 127
5.4.4 网络操作中心 127
5.4.5 可维护性 128
5.5 架构实体选型建议 128
5.5.1 镜像移植 129
5.5.2 上层服务 130
5.5.3 网络服务 131
5.5.4 数据 131
5.6 典型案例实践 132
5.6.1 突破到一个不是OpenStack的公有云 133
5.6.2 高可用/灾难恢复 134
第6章跨地域多点型应用场景 137
6.1 场景描述 137
6.2 需求分析 138
6.2.1 负载特性 138
6.2.2 镜像和模板在跨不同站点时要保持一致性 139
6.2.3 高可用 139
6.2.4 应用准备 140
6.2.5 成本 140
6.2.6 站点失效和恢复 141
6.2.7 合规性和地理位置 141
6.2.8 审计 141
6.2.9 职责分工 142
6.2.10 站点之间的认证 142
6.3 技术架构设计 142
6.3.1 量力而行 144
6.3.2 性能 144
6.3.3 安全性 145
6.3.4 OpenStack组件 146
6.4 运营服务设计 146
6.4.1 许可 147
6.4.2 记录日志和监测 147
6.4.3 升级 148
6.4.4 配额管理 149
6.4.5 规则管理 149
6.4.6 文档 150
6.5 架构实体选型建议 150
6.5.1 OpenStack服务架构 151
6.5.2 存储 152
6.5.3 网络 152
6.5.4 依赖 153
6.6 典型案例实践 153
6.6.1 地理冗余负载均衡 155
6.6.2 本地服务 157
第7章大规模可扩展型应用场景 159
7.1 场景描述 159
7.2 需求分析 160
7.2.1 用户需求 161
7.2.2 运营者的需求 162
7.3 技术架构设计 163
7.3.1 基础设施隔离 163
7.3.2 主机聚合 165
7.3.3 可用域 165
7.3.4 隔离的例子 166
7.4 运营服务设计 167
7.4.1 最前沿 167
7.4.2 增长和容量计划 168
7.4.3 技能和培训 169
7.5 架构实体选型建议 169
7.5.1 选择存储硬件 171
7.5.2 选择网络硬件 173
7.5.3 软件选择 175
第8章其他应用场景 179
8.1 多虚拟机管理器 180
8.2 虚拟桌面基础设施(VDI) 185
8.3 特殊网络应用示例 187
8.4 软件定义网络 188
8.5 OpenStack上的OpenStack 190
参考资料 193
名词解释 196
OpenStack社区介绍 200
后记 204
本书在OpenStack的实践基础上,面向应用需求的不同场景,给出了相应的计算资源配置管理方案和实际应用。其对每个场景的介绍符合软件工程需求分析、系统设计、系统实现和部署应用的生命周期过程。本书以案例的形式介绍OpenStack的应用是一种有益的尝试,对云计算服务提供者、使用者和云计算技术爱好者具有参考价值。
——杨芙清中国科学院院士
本书的编写者来自“易云”这家创新型公司。他们是站在云计算技术前沿的年轻人,具有强烈的在中国推广和应用云计算技术的使命感,这也是他们编写并出版这本书的初衷,值得充分肯定。他们既有在海外求学、从事科学研究的经历,又有在国内艰苦创业、从事云计算技术研发和推广的丰富实践经验。正因为如此,本书在云计算技术理论和实践的结合方面,具有独到的见解。这些经验非常值得在业内分享,开阔大家的思路。
——倪光南中国工程院院士