欢迎光临
免费的PDF电子书下载网站

深入浅出Neutron :OpenStack网络技术 PDF下载

编辑推荐

深入浅出Neutron :OpenStack网络技术 PDF下载本书是国内首次全面介绍Neutron网络技术方面的专著,是三位OpenStack Contributor这些年来对OpenStack网络技术的长期积累与心得总结,目前这方面的图书非常少,三位作者对他们在百忙的开发工作中的无私奉献致以敬意。

三位作者经过多次商定确定下本书的题纲,中间经过多次改进,成为现在这个样子,有很多内容在初版中写出来,后来删掉了,比如,有关OpenStack操作系统方面的内容,我感觉很不错,但作者们认为不成熟,怕误人子弟,决定去掉了,以便于在成熟时再找机会出版。这种对读者认真负责的态度让人感动。

如果你想学习OpenStack网络技术,这是一本很有价值的著作,你不仅可以从书中获得有关Neutron的很多精华知识,还有作者们首次披露的研究成果,以及帮助你成长为高手的一些途径,书中内容都是干货,就一种正在发展中的技术而言,这一点很难得。

 ;

 ;

 ;

内容简介

本书是一本介绍OpenStack网络的专著,本书将会从传统的网络技术开始,让读者在大脑中建立传统网络与Neutron网络的一一对应关系,然后介绍了深入讲解Neutron一些重要特性背后的网络背景知识,以及它在Neutron中是如何实现的。本文还对大规模高性能网络调优的一些经验与看法,目的是让读者最终从本质上把握云计算时代的网络,知道如何去获取与此相关的知识。

本书强调系统性和理论指导实践的前瞻性,很多网络原理会用简单有效的小试验来证明,而Neutron背后的原理和它恰好是一模一样的,这便于读者的深入理解。

本书适合OpenStack爱好者和有一定基础的技术工程师以及想要深入理解OpenStack Neutron的架构师使用。

全书共分8章,内容包括技术分析要诀、趋势、转折、空间测量、时间测量、交易要诀、交易策略、风险控制和资金管理,帮助读者系统化地掌握技术分析和系统交易的精髓。本书结构清晰,系统精要,文字简练,操作技巧多,内容丰富,信息量极大,不仅适合一般的投资者用以提升技术分析水平和交易技能,也适合专业的交易人员作为研究参考。

作者简介

张华,2012年2月加入社区的早期OpenStack Contributor, 对传统的网络技术, 云计算时代的网络技术都有着深刻的理解。曾为IBM网络主题事务专家(SME), 目前在Canonical公司从事OpenStack网络研发工作。公开发表过大量的网络技术相关文章, 目前为CSDN博客专家(http://blog.csdn.net/quqi99)。

向辉,2012年12月加入OpenStack社区成为Contributor,喜欢研究新型网络技术, 目前在Canonical从事OpenStack网络研发相关的工作,CSDN博客链接http://blog.csdn.net/starean

刘艳凯,2012年开始研究Openstack网络模块并带领团队开发用于混合云的Plugin。对数据中心网络,SDN等网络技术有一定了解。目前在惠普公司从事云计算架构师的工作。

 ;

Brooks Warner
Engineering&;Support Operations Manager Scotsdale,Arizona,USA
浙江九州云信息有限公司首席架构师 龚永生
企事录联合创始人、中科院软件所综合信息系统*重点实验室云计算课题组前负责人 李明宇

作序推荐
 ;

深入浅出Neutron :OpenStack网络技术 PDF下载

目录


第1篇  ;初识Neutron
第1章  ;Neutron是什么 ;
1.1  ;什么是云 ;
1.2  ;什么是OpenStack
1.3  ;Neutron的发展与介绍 ;
1.4  ;分层思想与Neutron组件架构 ;
1.5  ;Neutron中的服务 ;
1.5.1  ;Neutron二层网络服务
1.5.2  ;Neutron三层网络服务
1.5.3  ;Neutron高级网络服务
1.5.4  ;其他服务 ;
1.6  ;Neutron支持的部署拓扑 ;
1.6.1  ;单一平面网络 ;
1.6.2  ;多平面网络 ;
1.6.3  ;混合平面私有网络 ;
1.6.4  ;通过私有网络实现运营商路由功能
1.6.5  ;通过私有网络实现每个租户创建自己专属的网络区段
1.7  ;爱上Neutron的理由 ;
1.7.1  ;北向API,框架结构与微内核 ;
1.7.2  ;大规模高性能,L2的控制平面L2 population (L2pop) ;
1.7.3  ;大规模高性能,改善东西南北向流量之分布式虚拟路由(DVR)
1.7.4  ;大规模高性能,L3高可用VRRP(Virtual Router Redundancy Protocol)
1.8  ;小结 ;
第2章  ;Neutron二层网络服务实现原理 ;
2.1  ;二层网络基本原理 ;
2.2  ;大二层变革综述 ;
2.2.1  ;大二层多路径技术 ;
2.2.2  ;大二层互联技术 ;
2.3  ;二层网络的实现——ML2插件
2.4  ;二层网络在Linux中的实现
2.4.1  ;veth path演示用例 ;
2.4.2  ;Linux网桥演示用例 ;
2.5  ;Openvswitch中二层网络的实现 ;
2.6  ;虚拟机部署与二层网络的绑定(Port Binding) ;
2.7  ;小结 ;
第3章  ;Neutron三层网络服务实现原理 ;
3.1  ;路由原理 ;
3.2  ;三层路由在Linux中的实现
3.3  ;Neutron的三层网络实现 ;
3.4  ;通过实验夯实路由基础 ;
3.4.1  ;环境准备 ;
3.4.2  ;同一节点上的两台虚拟机如何互访 ;
3.4.3  ;不同节点上的两台虚拟机如何互访 ;
3.4.4  ;虚拟机如何访问外网(SNAT) ;
3.4.5  ;外网如何访问虚拟机(DNAT) ;
3.4.6  ;VLAN ;
3.4.7  ;VxLAN ;
3.4.8  ;GRE ;
3.5  ;FLAT、VLAN、GRE、VxLAN网络拓扑 ;
3.6  ;小结 ;
第4章  ;OpenStack的部署与Neutron之Hello World 
4.1  OpenStack部署方式简介 
4.2  使用Devstack部署OpenStack开发环境 
4.2.1  系统环境 
4.2.2  部署Devstack环境 
4.2.3  自动化脚本一键自动部署OpenStack
4.3  创建第一个网络 
4.4  小结 

第2篇  Neutron进阶
第5章  Neutron中的网络安全
5.1  iptables基础 
5.2  Neutron中的安全组 
5.2.1  Neutron中的自定义链
5.2.2  每个虚拟机的链和规则
5.2.3  配置使用Neutron中的Security Group
5.2.4  Allowed Address Pairs扩展 
5.3  Neutron中的防火墙 
5.4  有状态的防火墙和基于OVS流规则的防火墙
5.4.1  什么是有状态的防火墙 
5.4.2  有状态防火墙在iptables中的实现 
5.4.3  从数据流向看iptables对TCP、UDP及ICMP报文的支持
5.4.4  Openvswitch中对有状态防火墙的支持 
5.5  多层防火墙应用实例 
5.6  Group Based Policy 
5.7  小结 
第6章  高级网络服务 
6.1  网络服务模型与用例 
6.1.1  Routed/Embedded网络服务 
6.1.2  Floating/In-Path网络服务 
6.1.3  Out-of-Path网络服务 
6.1.4  网络服务插入点 
6.1.5  L3层的网络服务用例 
6.1.6  L2层的网络服务用例 
6.1.7  Bump-in-the-Wire网络服务用例
6.1.8  TAPaaS网络服务用例 
6.2  Service Type框架 
6.2.1  Service Type种类 
6.2.2  如何配置Service Type使用高级网络服务 
6.2.3  重构后的高级服务代码实现 
6.3  其他高级网络服务特性 
6.3.1  Neutron Flavor框架 
6.3.2  Service Insertion 
6.3.3  Service Chain(服务链) 
6.3.4  Traffic Steering特性 
6.3.5  Huawei Service Chain特性 
6.4  LBaaS服务原理与实现 
6.4.1  LBaaS代码结构 
6.4.2  LBaaS应用场景及实现要点 
6.4.3  LBaaS示例 
6.5  IPSec VPNaaS服务原理与实现 
6.5.1  隧道协议的本质与分类 
6.5.2  VPN的本质与分类 
6.5.3  IPSec理论 
6.5.4  Neutron openSwan/strongSwan VPNaaS驱动架构 
6.5.5  运行Neutron strongSwan VPNaaS 
6.5.6  Neutron strongSwan VPNaaS配置与排错 
6.6  基于MPLS的VPNaaS服务原理与实现 
6.6.1  MPLS原理与路由信息传递 
6.6.2  Neutron VPNaaS数据模型演进
6.6.3  Neutron MPLS VPN实现原理 
6.7  小结 
第7章  网络性能调优
7.1  通用操作系统与传统Hypervisor的网络性能瓶颈 
7.1.1  网络性能瓶颈在哪儿 
7.1.2  virtio 
7.1.3  vhost 
7.1.4  vhost-user与snabbswitch 
7.1.5  openonload 
7.2  Neutron性能的评价指数 
7.3  API Server的调优 
7.4  MySQL、Rabbitmq调优 
7.5  计算节点及l3-agent的调优 
7.6  网络中的MTU问题对性能的影响 
7.7  启用L2pop特性提高性能 
7.8  通过分布式虚拟路由器改善网络节点性能 
7.8.1  实例分析 
7.8.2  命名空间 
7.8.3  配置使用Neutron DVR 
7.8.4  环境演示 
7.8.5  内幕分析 
7.8.6  DVR定制OVS Flow 
7.9  网络节点的高可用性 
7.9.1  通过pacemaker/corosync实现的Neutron L3高可用性 
7.9.2  支持Neutron L3 高可用性和扩展性 
7.9.3  VRRP高可用性 
7.10  小结 
第3篇  Neutron实战
第8章  Neutron实战开发 
8.1  Neutron的数据模型介绍
8.1.1  核心实体(L2) 
8.1.2  L3层的实体 
8.1.3  高层服务实体 
8.2  Neutron的API及其实现机制介绍 
8.3  使用eclipse pydev插件建立开发环境 
8.4  如何开发新的Plugin 
8.5  为新二层设备开发MechanismDriver实战 
8.6  小结 
第9章  贡献Neutron社区 
9.1  加入OpenStack社区 
9.2  注册BP与neutron-spec
9.3  如何提交代码 
9.4  Neutron CI测试 
9.5  代码及代码风格 
9.6  小结 
第10章  Neutron中的测试 
10.1  单元测试 
10.1.1  assert_has_calls实例 
10.1.2  assert_called_once_with实例 
10.2  功能测试 
10.3  Tempest集成测试 
10.4  小结 
第4篇  Neutron杂谈与展望
第11章  软件定义网络(SDN) 
11.1  软件定义网络(SDN)简介 
11.2  OpenFlow中的L3层路由与跨数据中心的SDN 
11.3  RouteFlow 
11.4  SDN与Neutron的集成 
11.5  NFV 
11.6  小结 
第12章  IPv6与Neutron 
12.1  基础知识 
12.1.1  IPv6地址的3种配置方式 
12.1.2  IPv6 Privacy Extensions 
12.1.3  Radvd软件路由器 
12.1.4  IPv6地址类型 
12.2  IPv6在Neutron中的实现 
12.2.1  Neutron中的IPv6地址支持 
12.2.2  Neutron中的IPv6前缀代理(Prefix Delegation,PD)机制 
12.2.3  Neutron网络中的IPv6路由 
12.3  IPv6在管理网络中的实现 
12.3.1  配置Radvd 
12.3.2  配置Keystone 
12.3.3  配置glance 
12.3.4  配置Nova 
12.3.5  配置neutron-server 
12.3.6 配置swift 
12.3.7  配置swift-storage 
12.3.8  配置corosync 
12.3.9  配置cinder 
12.3.10  配置RabbitMQ 
12.3.11  IPv6 novarc 
12.3.12  实验结果验证 
12.4  小结 
附  录
附录A  Openstack网络的故障排除 
A.1  虚拟机获取不到IP的问题 
A.2  虚拟机无法访问外网的问题 
A.3  无法重建GRE隧道的问题 
附录B  调试代码时可能遇到的问题 
B.1  服务状态不一致的问题 
B.2  在eclipse中调试OpenStack代码时,模块动态替换的问题 
B.3  Devstack环境中切换代码分支的问题 
附录C  Devstack环境代码升级的问题 
参考链接 
 

媒体评论

推荐序一

 

Neutron is a project within OpenStack that provides Network as a Service (NaaS) to other core OpenStack components and compute nodes. Neutron is a scalable way to manage networks, addresses for software defined networking and provide virtual network recourses for Cloud infrastructure, specifically OpenStack.

Xiang Hui, Yankai Liu, and Zhang Hua are three of the top upstream committers to the Neutron project and have worked on some of the largest OpenStack deployments in existence. I can think of no better set of authors to bring Neutron to broader attention in China. They will take you through a deep dive into the network domain knowledge behind Neutron, the code structure of Neutron, scale and performance and more NaaS ideals. They will also show you how to get involved and contribute to the OpenStack community and help further the best open source Cloud product running on Linux.

Hui, Yankai and Hua found the need for a deeply technical book on the subject of Neutron, out of a need to collect and disseminate information that is currently scattered around the internet and known collectively by so few. They have been engineering and contributing to OpenStack since it’s infancy and have a vast amount of expertise accumulated. As with any open source project, more interest in the general public leads to more participation in the community and ultimately a better product and better community support. They envision further adoption by big business in China, as well as other countries around the world, and hope to garner participation from eager readers such as yourself.

Brooks Warner
Engineering & Support Operations Manager

Scottsdale, Arizona, USA

 

推荐序二

 

计算和大数据是现在行业的热点,充分体现了目前信息技术发展的趋势和水平。这些技术给社会生产和人们生活带来了极大便利并大大地提高了生产效率。同时,它们也对底层构造技术带来了极大的挑战,它们要求IT基础设施随需而变,灵活健壮。
OpenStack是一个有效的云计算软件套件,既提供了身份认证、授权及镜像管理等基础服务,也提供了计算、存储和网络三大核心服务。随着社区容器技术的兴起和成熟,OpenStack也从多方面开始支持基于容器的应用部署。OpenStack峰会也是一届比一届热闹和拥挤,每次大会都会有当前的热点技术的展现,让每个参与者都能嗅到技术走向和用户需求的走向。在本届温哥华峰会上,大概有350多个演讲,其中涉及网络的有近乎40多个,涉及容器的近于30余个,属于几个最热门的主题。而且这两个类型的主题每场都是听众爆满。
“灵活和按需”离不开业务模型和基于这些模型的API。OpenStack中各个服务的API是很关键的,整个社区在开发、测试和文档工作方面,都尽量地使API定义得清晰,描述得清晰和保证API的语义的兼容性。本书作者以他们自己的社区贡献经历为基础描述了OpenStack网络项目Neutron API的定义、扩展和实现过程,读者阅读之后能够仿效,从而开发自己的API或者扩展既有的API。
部署一个OpenStack系统,先要定义的就是系统网络拓扑,这个过程是规划物理网络。物理网络的规划和OpenStack云系统上虚拟网络的流量运行密切相关,也和系统的健壮性和日后的运维密切相关。本书讲述的DVR与L3 HA等技术都非常有实际使用价值。
本人在从事OpenStack工作的过程中,遇到很多朋友都说网络是一大障碍。这是由于Neutron的了解和使用既需要传统网络知识,也要有较强的软件和系统管理知识。同时掌握这些是要有相当长的知识积累和磨练的。本书作者就是在经历了这样一段磨练后成长起来的。本书以Neutron使用的网络技术为出发点来介绍Neutron各种技术的实现,使得阅读者不仅掌握了表面,对事情的本质也能够透析,这样对Neutron的理解无疑会更加深刻和长久。
本书还有一个突出的特点是“向前看”。有些内容目前还没有合并到社区代码库中,甚至还只是提出了概念设计。读者在阅读这些内容的时候要和其他部分有所区别。
最后,相信通过阅读此书,并结合社区的管理文档和使用文档,能帮助您更好地掌握OpenStack网络知识,为高效地规划和运维Openstack系统打好基础。

浙江九州云信息有限公司 首席架构师 龚永生

 

 

推荐序三

 

2015 年 3 月初的两会政府工作报告中提出了“互联网 ”行动计划,简单地说,“互联网 ”就是需要将互联网与传统行业相结合,促进各行各业的产业发展。
互联网已经在深刻地改变着我们的生活,以及与我们的日常生活密切相关的很多行业。在这种大趋势下,一些原本很传统的企业,也越来越呈现出以往互联网企业才有的特征,这方面的典型例证是中国铁路客户服务中心的 12306 网站。2015年春运客票,从 2014 年 12 月 7 日开售,两周之内 12306 网站登录总人数达 69790 万人次,12 月 19日网站访问量(PV)达破纪录的 297 亿次,共发售火车票 956.4万张,相当于十二个三亚市的常住人口。
然而,无处不在的互联网将世界上的人类连为一体的同时,也对 IT 基础设施提出了全新的挑战。12306作为传统行业的先锋,也充分暴露了实现互联网化需要解决的诸多问题,让人们意识到互联网的真正竞争,并不仅仅在我们的手机上和电脑前,而更多的是在云端。
随着互联网时代的到来,应用的规模、用户的数量和并发访问量都在急剧扩大,负载变化和峰值的到来越来越难以预估,传统IT架构的系统带宽与处理能力不匹配、扩展困难、维护费用高昂的弱点逐渐暴露和凸显。Google、微软、亚马逊在云端的服务器数量均已超过一百万台,而如果用传统的IT技术去构建相同的系统,购置和维护成本都是难以想象的,应用的扩展和迁移更是一场噩梦。目前,越来越多的公司在践行IT架构转型,从以IOE为代表的传统架构转向以横行扩展和分布式为特点的云计算架构。
云计算领域*的阵营——OpenStack社区——诞生以来一直在以几何级数增长,从2010年诞生的两个项目到2015年5月Kilo版本的12个集成发布项目、数百个周边项目,2000多万行代码构成了一个强大的云计算平台。从每一辆宝马的下线到每一台ThinkPad的出品,从eBay上的每一次点击到沃尔玛卖场里的每一听啤酒;从美剧《镜花水月》(UnREAL)的拍摄到LeTV和爱奇艺送往全球的视频流量;从去哪儿网上的一次机票查询到携程上一间酒店的预定……甚至欧洲*的粒子对撞项目和全球*的超级计算机——我们的世界,处处都有OpenStack的力量在背后支撑,而前不久举办的温哥华峰会的主题正是“OpenStack Powered Planet”。
云计算不仅仅是计算,组网和互联在分布式系统中自始至终扮演着最重要的角色,而Neutron,正是OpenStack中的网络服务。
Neutron“中子”不带电荷,却是原子中不可缺少的部分;它稳定而沉默,却蕴含着极强的穿透力和巨大的能量。作为OpenStack最核心的项目之一,Neutron诞生之初就受到了广泛关注。最初创造Neutron的公司Nicira,在它只有21个人的时候,就被VMware以12.6亿美元的天价收购。Neutron提供软件定义网络(SDN)和网络功能虚拟化(NFV)的功能,让搭建系统的人,不再需要和物理上级联、逻辑上堆叠的、冗杂的网络架构和各种连接线打交道,而是让我们像使用购物软件和打车软件一样,点点鼠标,就能够创建一个拓扑丰富的网络。Neutron让人们能够像用水、用电一样去使用数据中心的网络资源。
在这个世界上,自然、简洁而优美的事物,往往并不是简单,而是将复杂的机制隐藏在了它的外表之下,OpenStack Neutron也是如此,一直以来,关于Neutron的原理、机制、代码和管理维护的讨论就一直是OpenStack社区的焦点,用户在向我们提出一个个问题的同时,也非常渴望有一本书全面阐述Neutron的技术内幕。
今天,我非常兴奋,因为我终于看到了这本《深入浅出Neutron:OpenStack网络技术》完成了,这本书的诞生对于开源云计算技术的应用、对于OpenStack社区可以说是助益良多。本书的作者张华、向辉、刘艳凯,都是资深的OpenStack网络专家,这本书正是基于三位作者多年的工作积淀,并花了大量的时间仔细归纳、凝结而成。几年来他们在从事OpenStack相关的网络技术研究、产品开发和项目工作的同时,也花了大量的时间分享和布道开源技术。张华老师是我的朋友,我认识的张华数年来笔耕不辍,撰写了大量的博客文档,作为公开、免费的学习资料,帮助了无数的人认识OpenStack和网络技术。
在这本书还在襁褓之中的时候,我就拜读了部分章节,从而非常幸运能够目睹创作的过程,也深为作者们对质量的不懈追求而感动。记得我以前在中科院工作的时候,计算所的总工程师徐志伟研究员曾经说过一句话“写一本书就像十月怀胎一样。”,足见写书之难。由于各位作者都是优秀的工程师,平时工作任务也比较繁重,常常需要利用夜间和周末进行创作,在我和张华老师平时的聊天中,也经常听他提到写书的辛苦。但是他们从未放松作为一个一流工程师的严谨作风,每一个章节、每一句话,都经过了反复修改、仔细斟酌。
现在,就让我们翻开这本张华、向辉、刘艳凯三位老师辛勤的结晶,走进OpenStack网络的世界吧!

企事录联合创始人
中科院软件所综合信息系统*重点实验室云计算课题组前负责人
李明宇

前沿

云计算和大数据是当今计算机领域最火的两项新技术,OpenStack也正在逐步成为IaaS云计算事实上的标准。我们知道,OpenStack实际上是通过Python语言写的一个壳去管理底层的计算,存储和网络等主要资源。如何进行Python编程不难,难的是如何理解OpenStack所管理的这些资源背后的领域知识,网络无疑又是这三大块里面最复杂的一块。目前市场上和OpenStack相关的书籍主要集中在安装和运维方面,不涉及背后的领域知识,更不涉及最复杂的网络这块,让人看完之后仍然不了解背后的原理,很难真正帮助读者理解OpenStack。

本书是3位OpenStack Contributor这些年来对OpenStack网络技术的长期积累与心得总结。本书作者是工作在一线的工程师,而云计算主要是由工程师文化驱动的,既懂原理又懂代码的工程师是最懂OpenStack的,也是最知道读者在进军OpenStack网络的过程中需要储备什么样的知识。本书顺应了这种潮流,主要说清楚为什么,以Neutron每一个特性背后的网络背景知识为出发点,进行深入浅出的阐述,以简单明了,丰富图表,解释核心代码,让读者能够通过本书真正理解传统网络,理解云计算时代的网络,把握网络技术发展的核心思想和精髓。

本书涉及的内容包括:传统七层网络知识,Neutron中与之对应的各个模块,Neutron在提升网络性能方面所做的努力,作者在实践OpenStack中的体会,如何贡献OpenStack社区,一些新兴的网络虚拟化技术,等等。全书内容丰富,无论对于新入门的读者还是资深的读者都将具有很强的实用性和可参考性。

由于OpenStack还有不断发展中,虽然作者尽心尽力,但限于水平,书中不足之处在所难免,敬请广大读者的同行朋友批评指证。

编者

2015.6

深入浅出Neutron :OpenStack网络技术 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:深入浅出Neutron :OpenStack网络技术