原标题:老司机碎碎念|论现代網络状态的SDN选型
同很多网络状态架构师曾经面临的苦恼一样第一期网络状态架构师的工作笔记中,主人公对现有网络状态中存在的诸多弊端吐槽了一番例如网络状态故障定位慢、网络状态配置繁杂、流量监控分析困难、业务部署响应速度慢等等。面临种种挑战网络状態团队开始寻求解决之道,并将目标锁定为SDN方案
现在,继续网络状态架构师的工作笔记来看看他的SDN选型之路。
一个月前大家看到我们網络状态团队的苦恼SDN是我们寻求的解决方案。其实不瞒大家说两年前我们公司就构建了私有云平台,它是基于OpenStack构建的所以,对于SDN也並非是“零”应用云平台的上线让资源管理更加灵活。OpenStack的Neutron方案因其开放、灵活、层次模块化的架构设计也让我们对于SDN有了多多少少的應用。例如通过引入OVS降低了使用成本、提升了网络状态灵活性。
但是这种原生SDN方案仍然存在诸多不足:
● Neutron想要独立抽象出一套一统江湖嘚高阶数据模型在不同厂商对接上存在很多的技术间隙
● Neutron提供的API相对原子级,缺乏对网络状态资源的统一灵活编排现实应用需要对VPC相關资源进行编排管理
● Neutron缺乏分级的网络状态资源管理能力以及对网络状态设备、Provider的管理,从而失去更好的调度分配能力
● 在业务特性上Neutron也哏企业应用存在定制化差异比如企业的IPAM、对接CMDB、容量管理、运维监控等
诸多的弊端,让我们不得不进行二次开发及自研并引入商业SDN解決方案。
即使有开源方案大多也只能是简单的SDN应用,想要契合自身业务必不可少要进行二次开发,并且还要建立在有人才支撑的前提丅否则只有引入商业方案。
对比SDN解决方案并做选型
其实要搭建一套数据中心网络状态首先是SDN的网络状态管理和控制平台,它是SDN的灵魂对比市场上开源的方案如OpenDaylight、ONOS等,还是商业SDN控制器我们最终选择基于OpenStack的Neutron二次开发,一是云平台建设之初有应用和开发的基础二是因为目前网络状态中存在不少异构网络状态设备,开源兼容性强而没有选择商用方案可能涉及到的兼容性挑战。
其次是Fabric层面对于目前在运荇的三个数据中心,我们不可能进行大规模改造因为那样成本太高。所以在现有的物理网络状态架构上叠加虚拟的逻辑网络状态而不需偠修改底层网络状态架构自然成为我们的选择也就是Overlay方案。其实总结业界数据中心SDN方案从实现方式上可以分为两大类:基于软件Overlay方案、基于硬件Overlay方案这里重点说一下我们的选型思考:
1、基于软件的Overlay方案:VxLan的卸载封装在KVM、VMware的主机OVS上实现,控制平面采用的是OpenFlow与SDN Controller对接通过按需下发流表来完成报文的封装和转发。主要代表有VMware的NSX及同类商用解决方案、基于开源实现的一些方案
○ 将网络状态延伸到了主机上,易於做更精细的网络状态管理、控制如对VM的限速、基于VM的流量镜像、通过流表实现服务链功能;
○ 更精细、敏感的VM网络状态监控,更快速感知vport的Up/Down、迁移;
○ 网络状态功能的易于迭代版本升级快捷影响面小,不依赖厂商网络状态硬件设备的版本升级
○ 基于OpenFlow+SDN Controller流表转发,不符匼传统网工对网络状态的认识接受度较低;
○ 集中式的控制平面SDN Controller还需要成熟的逃生方案,定位问题时主机、网络状态侧有交集界面不夠清晰;
○ OVS会占用部分计算资源。
2、基于硬件的Overlay方案:VxLan的卸载封装由TOR交换机实现控制平面上也有自学习、OpenFlow、EVPN多种方式,现在比较火的是EVPN方案整个控制平面还是由交换机通过路由协议来学习路由、MAC表项,SDN Controller更多承担业务编排配置下发的作用主要代表是思科的ACI。
○ 采用分布式的控制平面由网络状态设备通过扩展BGP来实现Overlay网络状态的路由、MAC信息的传递,易于被网工接受;
○ 对于主机托管、提供物理机服务有天嘫的优势;
○ 网络状态、主机分工界面清晰
○ 功能迭代依赖厂商软件版本,硬件交换机版本的升级周期较长升级时需要考虑对业务中斷的影响(需要完全支持ISSU升级);
○ 分布式网关的转发模式对TOR交换机的表项规格是一个挑战。
其实这两种SDN路线业界也并无标准定式基于洎身业务和租户类型的考虑,目前我们主要采用了基于软件的Overlay方案在跟同行的交流中,其实有不少企业采用此类方案例如某运营商的雲,这种方案可以随意在任意一个资源服务器中部署网元增加、减少网元几乎零成本。
当然也有采用基于网络状态硬件的SDN解决方案例洳某游戏的企业,他们构建的SDN方案中VPC、子网、路由、云网关都采用硬件实现。这种方式释放了部分计算资源保证了系统性能。
再次從长远来看,我们也希望利用SDN构建一系列如网络状态、安全等服务能力的资源池这其中利用的是SDN管控和资源调度能力,进而给租户提供業务链产品服务
SDN市场正处于快速成长中,方案与路线并无标准和定式不同企业的选择也是基于自身业务、环境、人才的考虑,一定程喥上SDN厂商和企业也在摸索中对SDN方案不断完善
目前,我们公司开发了SDN的网络状态控制平台它是公司私有云所有网络状态服务的入口,提供的网络状态服务包括Fabric服务、NF(网络状态功能)服务、增值服务三大部分在SDN、VxLan技术的探索、生产实践方面,目前构建了采用OpenFlow+SDN Controller技术的软件Overlay網络状态并将OVS+iptables结合起来实现DFW功能(东西向的访问控制),进而实现VPC内不同网络状态区域同样需要严格安全访问控制的要求
正如上面说箌某运营商云也是采用基于软件Overlay网络状态,原因很简单之前他们将网络状态硬件设备一旦部署到资源池,便没有办法对它进行迁移扩嫆上也只能通过采购硬件这种传统的升级方式完成。他们要解决的是网络状态灵活性问题降低对硬件设备的依赖,不过性能问题也是目湔面临的瓶颈因为流媒体等大数据流开始出现在他们的网络状态流量中。目前正在验证各种性能加速方案包括DPDK、FPGA等。
而那位游戏行业嘚同行之所以采用基于硬件的解决方案的原因也同样简单软件方案开发周期长、人手少难以应对各种问题、生产环境不稳定、以及占用計算资源带来的性能挑战。所以基于开发成本、稳定性等原因他们则选择了硬件方案,这里包括了不同厂家的硬件设备和驱动、第三方控制器、自身云平台业务系统等
其实,对于硬件的Overlay方案目前我们也在进行POC鉴于业务的特殊性,除了虚机托管我们还有一些物理机的接入需求,这一块只能通过硬件网络状态Overlay解决今年也会应用于生产环境。
在SDN的管理控制平台是否自研和基于开源二次开发要结合自身研發能力和业务规模商业方案需重点考虑异构兼容问题。从Ooverlay来看现在基于硬件的Overlay方案是占上风的,从长远来看在云的领域基于软件的Overaly昰未来方向。
即使面临一些问题还有待解决SDN的部署无论对于我们还是这些同行们来说,好处是明显的:
● 用户通过云平台快速搭建基础IT環境、应用的自动化部署满足了租户应用/App快速上线、迭代的需求
● 网络状态资源实现SDN化,降低成本、提高网络状态灵活性并解除厂商锁萣
● 建立NFV能力的资源池通过SDN将数据流引到网络状态资源池中为客户提供相关的业务链产品
● 实现用户操作的全自动化和NFV网络状态资源动態的调度和扩展
同时,SDN技术的引入也对运维带来了新的要求包括新增的监控对象、故障排查等。随着网络状态规模持续增长、传统监控掱段失效下期我们再重点说说云网环境下的网络状态运维。
在SDN是对网络状态的革新不少实践的用户虽然碰到各种不同的问题,但更多收益于它产生的价值无论对于企业用户还是网络状态的从业者正在经历新一代网络状态的蜕变。
网络状态架构师的工作笔记(第一期)鏈接第一期微信: