软件定义网络在携程的运维实践
副标题[/!--empirenews.page--]
《软件定义网络在携程的运维实践》要点: 作者简介
大家好!今天由我来给大家分享一下软件定义网络在携程的运维实践.我讲的内容主要分为两块:
先来看一下携程数据中心网络的特点. 第一个特点它是一个传统网络.携程整个数据中心的架构都是已经使用了八、九年的网络,是一个非常传统的老的架构.用户在网络上的使用习惯,应用在网络上的部署模式以及网络上的这种安全的分区,还有网络对于携程整个流程系统的适应性都有点根深蒂固,你要轻易改变它是不容易的.而且携程不像一些大公司,经常会有一些新的项目出来、新的业务,那边20个机柜上到那边试一下,然后那20个机柜给你什么样的尝试,这种机会很少.所以我们这个网络是延续了传统的架构. 第二个特点是要求灵活敏捷.携程数据中心它对网络的灵活性要求很高,虽然数据中心数量不多,但是每个数据中心数量都非常大.
从上图来看,这就是三层的核心、汇聚、接入.针对以上三个特点,携程对于软件定义网络的需求特别迫切,携程对于软件定义网络的理解,我们把定义网络做成一个网络运维辅助工具,希望这一工具帮助我们完成两件事情:
首先我们对设计的要求是高效、准确、灵活.高效是要快很多,然后它必须是准确的,我们在这个工具里面设计了很多防呆、防错的机制,即使输入有错,也不会因为输入错误给网络下发了错误的参数而导致一级事故这种事情,我们是不能容忍的.然后它是灵活的工具,也许底层网络有变化,但是不能因为底层变化而重新买一些代码,它需要有一些灵活性. 对于工具具设计的要求是希望他们变成网络工程师的好榜首.这些工具都是网络工程师根据日常工作中的经验总结设计出的工具,我们的网络工程师非常行,他们在网络技术方面都很精.有些甚至具备自己码代码的能力,所以说由他们设计,按照自己设计出来的工具是适合的,功能非常强大,都是根据自己工作中总结出来的.然后它的界面是简单易用,最后一个是要准确可靠,网络工程师只需要关注自己输入的参数,需要关注底层的结构和数据校验的问题,这样网络工程师利用这些工具策略就会高很多. 这是我们的控制器,名字叫Netranger,结构是这样的,中间是控制器,向被是提供了用户界面,用户主要指网络工程师,在这个结构上进行网络变更和信息收集等操作.另外针对流程系统有一个API ?接口,自动与流程系统(Remedy)交互,进行订单自动化.南下是协议,最主要使用的是Netconf和SNMP,90%的功能是由NETCONF完成,然后还与监控平台(Netcons、SNMP、Syslog)对接,帮助他们驱动我们的控制器来完成一些功能. Netranger系统功能,最主要的是信息采集.你要做网络要知道这个网络上发生了什么事情,我们测试了很多家的产品,大多数的控制器并不关心网络现在什么样子,只是定义网络.那种东西在网络工程师的角度是不可接受的,第二个是指令下发,如果它不能下发指令你也没办法控制网络.包括设备配置管理、业务流程对接、操作审计、统计报表.Netranger基于Python来开发的. 第二个Netranger主要功能介绍,它为我们做了什么事情.先介绍的第一个功能是服务器网络端口操作自动化,也就是工作当中最繁重的任务自动化.这是服务器上架上线的流程,具体的流程下一场服务器专家为大家介绍.我们这块与网络相关的两块工作,网络端口开启和生产网络的切换两项工作. 大家可以看到这个工作量是 ?巨大,一批服务器任务过来,网络工程师通常要在1—2个工作日完成这么大服务器上架工作,因为服务器有很多的网口,网络工程师要在一个工作日内完成成百上千的服务器交换机端口的开启,远程切换,甚至有时还有服务器下线,还要关闭端口,一个工作日完成这么多的事情,你要让做是不可能的. 第三个服务器网络端口操作自动化.设计非常简单,首先要和流程系统对接,因为所有的参数从系统过来,然后拿到参数做校验,检查端口当中每一个是否满足深线的要求.有些传过来是错误的,本来这个端口在线上还要上线,就会造成故障.校验完在合适的时间把这些配置下发到网络设备上,通过Netconf协议,这是我们工作中总结出来的,这样的话万一造成故障影响比较小,但是事实从来没有造成过.然后Netranger上线以后完成了这么大的操作,6万多的端口,然后这样大家就可以看到前面说的变更繁重什么概念,没有这个东西完全搞不定. (编辑:上海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |