SDN与OpenStack集成需要解决的三大问题

最近这大半年,博主花了不少精力在SDN与OpenStack neutron的集成上。快到年底了,有必要稍微总结一下这大半年来究竟都解决了些什么问题。抛砖引玉,希望同行们一起探讨。

首先聊一个话题:各个SDN厂家都是做控制器和交换机操作系统的,干嘛去淌OpenStack的浑水?这个问题的确小困扰过博主一段时间。因为就在半年多前,博主面临过一个选择:是花时间在SDN控制器和交换机上做一个大feature,还是把neutron和我们的SDN产品集成起来?博主最终选择了后者。想借这篇文章分享一下博主的想法。

OpenStack的强劲发展势头第一次教育了整个市场多租户数据中心长什么样子,也第一次比较彻底的颠覆了传统数据中心的网络设计和运维方式。SDN在这里找到了迄今为止最好的切入点:市场真实并且巨大。从这个意义上说,只有OpenStack继续这样强劲的发展势头,SDN厂家才会有更多的机会去占领市场。绝大多数客户不会因为SDN是一种更优秀的技术而去采购SDN解决方案,反而是因为他们认可OpenStack的技术和商业模式而不得不去采购SDN解决方案。面对使用OpenStack的客户,初创的SDN厂家和各个传统交换机大厂第一次有了平等竞争的机会。从这个意义上来说,如果哪个SDN厂家还没有涉足neutron,那么就已经犯了一个重大的战略错误。

从战术层面上来说,虽然neutron已经有了飞速的发展,但还有几个大问题是reference implementation在现有的框架下很难解决漂亮的:比如如何管理过多的agent以及它们的HA,如何scale全相连的隧道,如何支持bare metal服务器以及bond,如何支持动态路由协议等等。这些问题不是说neutron upstream没有解决方案,而是如果没有对物理交换机的控制,针对这些问题的解决方案就会有各种各样的局限。而SDN厂家却有机会利用ml2 plugin和service plugin把这些问题从根本上解决掉。博主会专门写文章讨论为什么SDN厂商能够更好的解决以上这些问题,这篇先聊一聊SDN和neutron集成的三个大问题。

  1. Testing Matrix & CI

OpenStack和SDN的集成是一件很复杂的工程。需要砸大量的资源。首先是巨大的testing matrix,它有三个维度。第一个维度:OpenStack每半年一个release,而且还会cherry pick不少bug fix到上一个版本。第二个维度:操作系统至少要支持三到四家:ubuntu, redhat, centos, fedora。第三个维度:SDN解决方案的各个release。这三个维度相乘便是SDN和OpenStack集成的Testing Matrix。虽然各个厂家都会在这个三维坐标系里进行一些剪枝,但工作量仍然巨大。

解决以上问题的唯一办法就是搭建CI进行测试的自动化。这个CI和一般应用的CI有两点不同。第一,它有两个moving targets: neutron upstream以及SDN solution upstream。来自任何一方的代码变化都要引起CI进行一次测试。第二,在控制平面和数据平面都要进行测试。在控制平面,来自neutron的任何一个配置变化,SDN控制器都要作出正确的响应。在数据平面需要跑smoke test,比如在不同的compute nodes上起多台虚拟机,配置floating ip,做full mesh ping。

这些都需要专人负责,偷不得懒。否则我们如何应对客户这样的问题:我们能在ubuntu 14.04上装OpenStack kilo跑在你们x.y.z版本的SDN解决方案上吗?

  1. Multiple OpenStack Environments & One SDN controller

现有的SDN与OpenStack的集成方案大概都长这个样子:租户在OpenStack上建立了一个network/router/vm,neutron plugin会向SDN控制器发送相应的REST call,SDN控制器便会对物理交换机或者虚拟交换机进行流表下发或者配置更改。这个应用场景里面有一个隐藏的需求:一个SDN解决方案需要同时支持多个OpenStack环境。比如客户用一个SDN控制器管理了几个机架,在上面跑了多个OpenStack环境,那么这个SDN控制器是需要对这多个OpenStack环境进行区分的:环境1上的租户老王和环境二上的租户老王不能影响彼此在SDN控制器上做出的配置,即便他们在共享同样的物理网络资源并且都叫老王。

  1. Consistency

OpenStack的每一个配置都会存在OpenStack的数据库里,通过REST发给SDN控制器每一个配置也会被保存在SDN控制器的数据库里。当由于某种的原因,两个数据库不一致怎么办?这个时候,一定要以OpenStack数据库的信息为准,更新SDN控制器的配置,因为OpenStack数据库中的信息才是租户真正希望的配置。这个道理很简单,但实现起来却有不少挑战。比如,如何检测到两个schema完全不同的数据库所存储的信息不一致?用hash是最直接的办法。但问题也随之而来:hash计算昂贵,由谁来做?多频繁?如果监测到不一致,如何能够快速的定位并且仅仅更新不一致的地方?

一个成熟的SDN与OpenStack的集成方案,一定需要把以上这三个问题解决好,否则希望借助OpenStack的东风让SDN落地会很困难。

本文转自d1net(转载)

时间: 2024-11-24 14:13:13

SDN与OpenStack集成需要解决的三大问题的相关文章

求助:怎么在openstack下管理docker?以及openstack集成的详细配置?

问题描述 求助:怎么在openstack下管理docker?以及openstack集成的详细配置? 解决方案 解决方案二:可参考以下链接学习和尝试一下:http://m.csdn.net/article/2014-04-23/2819449-Cloud-OpenStack-Dockerhttp://www.openstack.cn/p1423.html

如何实现物联网真正落地 首先解决这三大问题

继计算机.互联网和移动通信之后,物联网被认为是世界信息产业第三次浪潮.那么,物联网何时才会真正到来?芬兰IoT新创Cyberlightning创办人兼执行官Ville Mickelsson表示,如果没解决三大问题,真正的物联网很难实现. 如何实现物联网真正落地 首先解决这三大问题 物联网是继计算机.互联网和移动通信之后的又一次信息产业的革命性发展,在互联网和移动互联网高速发展的时代,联网设备已经不再局限于智能手机和计算机,而会覆盖交通物流.智能家居.工业检测和个人健康等各种领域. 根据BCG研究

openstack集成ldap报如下错误

问题描述 ALL好,openstack集成ldap报错,请问什么情况?2016-05-0821:50:48.347276DEBUGkeystone.common.manager[req-8664f226-4f58-4a13-a346-2c0b019acd41-----]Failedtoload'keystone.identity.backends.ldap.Identity'usingstevedore:No'keystone.identity'driverfound,lookingfor'ke

云非万能!云计算不能解决的三大问题

本文讲的是云非万能!云计算不能解决的三大问题,云计算可以做很多事情,但是它并不是万能的.对于许多企业和政府来说云计算是一个很重要的方向,很强的成功模式展示了它的价值.但是由于最近一段时间对它的大肆宣传,你可能会认为云计算可以做任何事情.但是很明显的,云计算并不能解决所有的事情,而且在开始云计算之旅之前我们有必要理出"云计算所适合的". 1.云计算无法修复不好的应用设计. 许多人认为移植应用后,云计算会自动修改那些不完整的设计.他们只对了一半云计算平台的能力只是伪装低效率的应用,这就意味

SDN和OpenFlow世界大会:聚焦三大重点

上周,第四届SDN和OpenFlow世界大会在德国的杜塞尔多夫举行,这也是当前SDN(软件定义网络)和NFV(网络功能虚拟化)产业最为关注的大会之一.此次大会由开放网络基金会ONF.Layer123和德国电信共同主办,被誉为是接触和了解SDN.NFV.OpenFlow和物联网产业发展趋势的绝佳机会.   SDN和OpenFlow世界大会 在此次SDN和OpenFlow世界大会上,ONF的Dan Pitt首先带来主题演讲;随后来自运营商.服务提供商和其它相关组织如OpenDaylight.网络功能

中国企业私有云“试水期”已过,OpenStack领域将有哪三大创业红利?

摘要:中秋节前,国内一家OpenStack公司在一天之内赢得五个私有云大单,中国的私有云市场正在迎来拐点,而这背后还有新三大创业红利. EasyStack 创始人兼 CEO 陈喜伦 "昨天晚上九点半离开办公室的时候,当天还只中了三个单子,一走到停车场就收到又中了两单的消息,赶紧回公司发红包." 国内 OpenStack 公司 EasyStack 创始人兼 CEO 陈喜伦在中秋节前一天见到记者时很兴奋.据这位创业者的经验,"同比去年,今年下半年用户对 OpenStack 的需求

物联网技术助力解决传统农业三大难题

如今,传统农业的模式已远不能适应可持续发展的需要,产品质量不稳定,资源严重不足且普遍浪费等问题不断出现.物联网技术的出现恰恰能解决这些问题. 1.物联网智慧农业推动农业走向信息化 通过多种无线传感器.无线基站和传输设备的使用,农业种植现场的各种信息能够轻易的通过自动监测传输功能呈现在管理人员的眼前,实现了管理者和种植现场的快速连接.同时通过软硬件系统和手机客户端还能够实现自然灾害监测及预警,方便作物生长现场管理,实现高度的信息共享和农业自动化. 2.物联网智慧农业提高农业生产管理水平 物联网技术

OpenStack目标:解决实施中的瓶颈问题

随着新的一年的来临,OpenStack开发的重点将转变为解决阻碍企业实施开源云计算平台的瓶颈问题. OpenStack的开发人员已经开发的项目可以减轻系统在可用性和可扩展性方面的问题,同时也提供了OpenStack的企业生产实例,虽然这些项目仍然是在潜伏期或是在近期刚刚发布的. 其中,最突出的项目就是一个被称为TripleO的多项目计划,这个项目还有一个别名--OpenStack的OpenStack.通过使用OpenStack运行在裸机上自有设施作为该平台的基础,这个项目可以实现OpenStac

基于 SDN 的虚拟私有云研究

本文中主要介绍了虚拟私有云系统的功能特点;针对目前云计算资源池网络隔离较差和配置比较复杂的问题,分析云计算资源池对于虚拟私有云的需求.同时,还对基于SDN技术实现虚拟私有云的两种主要方式进行分析,对每种方式的技术原理及架构进行描述.对两种方式的优缺点进行比较. 引言 云计算的大规模运营给传统网络架构和应用部署带来挑战[1-2],新一代网络支撑这种巨型的计算服务,不论是技术革新还是架构变化,都需要服务于云计算的核心要求,即动态.弹性.灵活,并实现网络部署的简捷化.具体来说传统网络面临的挑战主要4点