- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
虚拟应用网络VAN中的自动化管理技术
移动互联、电子商务、电子政务的巨大需求推动着虚拟化、大数据、云计算、SDN等新技术不断涌现。与此同时,为承接越来越多变的应用,网络结构也越来越复杂,设备种类和数量也都极大增长,传统网络的运维和管理方式开始显得"捉襟见肘",难以应付。针对这样的局面,人们会想,网络能不能变得更简单、更贴近应用一些?答案就是——VAN(Virtual Application Network,虚拟应用网络)。H3C VAN就是通过虚拟化的方式将复杂的传统网络抽象出来成为一些基本的元素,通过自动化和可编程的管理平台让这些网络元素有机地按照上层应用的需求灵活地调度。
具体来说,在网络的开局阶段通过"零配置管理"等技术使大批量设备的开局更为简单和高效;在运维和业务调整时提供NetConf、自动化脚本等技术,维护者只需轻点鼠标即可完成网络的"随需而变";如果出现设备故障,H3C还有嵌入式自动化技术使设备更智能,能够自己处理简单的故障。
1 Zero-Configuration零配置管理
所谓零配置管理方案,即在网络管理员与现场设备零接触的情况下,设备上电后自动完成远程设备的业务下发及配置维护。
早在2004年,DSL论坛(现已改名Broadband论坛)推出了TR069技术规范,用以实现对网关、路由器、机顶盒等设备的集中管理。基于该协议,初始安装时,用户设备会自动寻找管理服务器,建立连接后即可与服务器通信,实现自动配置升级、软件版本管理、状态监控及故障诊断。如图1所示。
图1 TR069协议
在TR069协议的基础上,Zero-Configuration零配置管理方案进行了创新,通过DHCP报文来实现管理服务器的IP地址以及用户名、密码等信息的传递,从而实现 "零配置"。如图2所示,在零配置管理服务器(BIMS)上预先制定设备配置策略,远程的网络设备无需任何配置,上电后向DHCP服务器请求IP地址,DHCP服务器在向网络设备反馈IP地址的同时,提供管理服务器的访问地址。网络设备随即通过TR069协议向服务器发起配置请求,服务器根据网络设备的类型或序列号下发相应的配置内容,完成自动配置。
图2 Zero-Configuration零配置管理方案
在数据中心环境下,设备数量多,网络业务复杂,配置难度较大,尤其是接入层的设备规模非常庞大,而且通常处于同一层次的接入设备的业务配置基本相同,管理员将身陷单调的重复劳动中,且出错率高,同时在浩瀚的设备丛中发现某一处配置错误非常困难。
针对数据中心的零配置管理方案基于物理位置对设备进行预先的配置规划,从数据中心拓扑到机房拓扑甚至到机架拓扑,管理员在虚拟的管理界面上如同身临实际的机房,对机架上的每一个虚拟设备使用几个固定的配置模板进行直观地预配置,即可将网络规划批量地落实到位。接下来管理员只需要等待设备入场,随着继电器清脆的上电声,看着设备自动"走"上工作岗位并纳入到业务系统的管理中就可以了。如图3所示。
图3 数据中心零配置管理方案
针对分支企业的零配置管理方案充分考虑了跨越Internet的应用场景,采用TR069协议进行业务管理,天生具备对动态IP地址设备的管理能力,如图4。管理员可以足不出户,在总部机房进行全网设备的规划和预配置策略的制订,分散在全国乃至全球各地的远程分支设备上电后自行向总部获取配置,并实现企业分支网络的互联和业务的发放,无需企业分支网络人员的参与,降低了对企业分支网络管理人员的要求,免去了总部技术人员满天飞的窘境。
图4 广域分支网络零配置管理方案
针对普遍跨越Internet互联的企业分支网络,零配置管理方案提出了基于IPSec VPN方式的接入模式,有效保障网络的安全性,如图5所示。通过零配置管理系统与IPSec VPN管理系统的联动,由IPSec VPN管理系统制订IPSec VPN服务模板,对分支企业进行内网的规划,由零配置管理系统的策略分发中心实现对企业分支网络的自动化零配置部署,同时建立IPSec隧道,实现企业分支网络与总部的安全互联。另一方面,方案考虑分支企业IT技术的欠缺和整网的统一管理,在IPSec隧道建立后可直接将分支企业的网络由总部进行统一托管,由总部网络管理人员对各分支网络进行全面的监控,通过多纬度的报表展示企业分支网络设备的出口流量、故障趋势、服务质量、子网资产等信息,实现对企业分支网络的深入管理。
图5 广域分支零配置管理与IPSec VPN业务联动方案
除了针对各种场景下的配置管理,Zero-Configuration零配置管理方案还具有丰富的开放性,可以方便地与iMC智能管理中心家族中的其他业务模块(MPLS VPN管理、QoS管理、EAD终端准入管理等)融合,将传统业务管理系统的业务特性与零配置管理方案业务配置模式相结合,实现"1+1>2"的效果。
2 NETCONF
IETF在2003年5月成立了Netconf工作组,该工作组主要是为了提出一个全新的基于XML的网络配置(NETCONF)协议而成立的。该工作组已于2006年12月通过了NETCONF协议的基本标准RFC4741-4744。NETCONF允许查询设备的运行和配置数据,允许修改设备的配置数据。使用NETCONF,设备可以发布一套完整的编程接口(API),管理客户端使用这套API即可实现对网络设备的自动化管理。
NETCONF使用XML语言来完成配置过程数据和协议消息的交互,所有NETCONF的请求和应答都使用XML描述。基于XML数据交换,使它具有了强大的跨平台通讯能力。同ISO/OSI一样,NETCONF协议也采用了分层结构,NETCONF协议分成四层:内容层、操作层、RPC层和通信协议层,如图6所示:
图6 NETCONF分层
通信协议层为NETCONF提供面向连接的、可靠的、顺序的数据链路。NETCONF协议本身并不包含数据通讯协议,但定义了一系列推荐的数据通讯层协议,有console、SSH、BEEP、HTTPS、TELNET等。
RPC层提供了一个简单的、传输协议无关的机制,通过使用和元素分别对操作层和内容层的内容进行封装。
操作层(Operations)定义了一系列在RPC中应用的基本的原语操作,用来完成不同的网络管理和监控动作,这些操作将组成NETCONF的基本能力。H3C Comware V7在此基础上进行协议操作扩展,以提高协议操作的易用性。
内容层定义管理对象的集合,可以是配置数据、状态数据、统计信息等。
NETCONF协议定义了数据获取的子树过滤(Sub tree)机制,为用户提供灵活的数据获取过滤手段。Comware V7在此基础上,扩展了正则表达式过滤和简单匹配过滤,进一步增加了NETCONF数据过滤的操作易用性。
NETCONF协议支持向设备订阅管理节点关心的系统日志事件。即,只要设备有符合订阅条件的日志事件产生,设备就会将日志信息以NETCONF事件的方式通知给管理节点。通过事件订阅机制,管理节点能够实时响应设备的状态变化,做出快速的反应,大大提高了管理节点的监控能力。
NETCONF采用XML进行管理者和代理者之间的数据传输和模块表达,并且兼顾监控和故障管理,安全验证和访问控制,可扩展性强。它将配置数据和状态数据分开,避免了操作时对不相关的数据进行的多余处理,例如可以避免对状态数据进行的配置操作,进一步提高了操作的效率。它不仅定义了多种取值和配置操作,还定义了错误回滚等多种能力,并且支持能力的添加,具有较强的扩展性,可满足各种大型异构网络的配置需求。NETCONF规定必须采用安全的面向连接的通信传输方式,相比起SNMP采用UDP进行传输的方式来说,进一步加强了系统的安全性,同时也避免了UDP传输数据最大值的局限性。NETCONF解决了SNMP和CLI在配置等方面的先天性不足。同时,通过将XML技术引入到网络管理当中来,能够安全高效地处理大批量的数据传输。
3 自动化脚本
TCL和python都是业界广泛使用的脚本语言,网络设备支持这些脚本语言,可以大大降低网络管理员的学习成本,利用这些脚本语言,网络管理员可以实现高度自动化的管理。
网络设备支持脚本语言通常都遵循如图7的体系结构:
图7 自动化脚本架构
用户脚本由脚本解释器解释执行,脚本解释器内嵌在网络设备操作系统的内部。TCL和Python都有各自独立的脚本解释器。除了用户自行编写的脚本,还可以使用业界开源或者第三方开发的脚本库或者工具。脚本的解释和执行是在一个安全上下文内进行的,可以有效避免非授权的恶意攻击。
在大型机构里,大量的接入设备的配置一般都具有很大的相似性,但又不完全相同,不能通过简单的复制粘贴copy其他设备的配置文件。业务有变更需要对网络设备配置进行修改时,如果不使用自动化技术,需要逐一手工对每台设备进行配置,耗时非常长且容易出错;而通过自动化脚本可以对大批的设备进行批量配置,既缩短了变更时间、出错的概率也大大降低。
4 嵌入式自动化技术
嵌入式自动化技术主要是对设备内部事件进行监控,事件发生时执行用户定义策略。针对一些特定类型的故障,通过嵌入式自动化技术,维护人员可以预先定义故障处理的方法,一旦发生该类故障,设备自动执行预先定义好的故障处理策略,从而提高故障处理的效率。下文主要以H3C RTM(Real-Time event Manager)技术为例进行说明。
RTM是一种嵌入式设备上内嵌的、实时的策略驱动的模型。用户通过策略订阅感兴趣的实时事件。事件发生时,执行策略中制定的动作。RTM可用来实时监控设备,当故障发生时能及时的收集第一现场信息,并采取故障诊断、故障恢复、汇总上报等措施。例如RTM与SCM联动,监控进程的启动和停止,衡量系统的可靠性,并采取更灵活的策略。如图8所示。
图8 嵌入式自动化技术架构
RTM是一种开放的架构,可以很容易的将事件源添加到RTM框架中。RTM目前支持7种事件源。其它事件源也将会陆续添加到RTM框架中。
有匹配的事件发生时,RTM可以执行用户配置的一个动作或者多个动作。RTM目前支持的动作主要有:CLI、syslog、trap、switch-over、reboot等*。CLI是指执行任一命令行;syslog和trap是向网管发送特定消息;switch-over可以实现主备自动倒换;reboot可以实现对单独板卡或者整个设备的重新启动。
RTM是一种开发的框架,很容易将动作添加到RTM框架中。熟悉Comware CLI的用户可以选择使用Comsh script订阅事件。RTM也支持完整的TCL8.5语法,并在此基础上做了适当扩展,使用TCL可以编写出更为灵活且功能强大的策略脚本。RTM框架对策略脚本执行的安全性做了特别考虑。只有管理员或授权用户才可注册策略脚本,而且只有注册的策略脚本才会生效运行。策略脚本一旦被篡改,则不能再运行。
5 结论
在网络日益复杂的环境下,网络管理承受着大量挑战。通过"零配置"管理让大量设备的开局能在短时间内完成,使得新机房、新业务上线时间大大缩短。通过NETCONF网络管理技术,用户可以使用API深度定制网络管理系统,将不同厂商的设备统一管理起来。自动化脚本技术使得网络管理脚本(甚至工具)共享成为可能,使一些低效的、繁琐的、机械的网络管理操作变成自动化的高效操作。嵌入式自动化技术使管理员能实时监控设备,并在第一时间进行信息收集和故障恢复尝试,大大减少了网络故障时间。
随着自动化管理技术的不断进步,网络管理在"化繁为简"的同时,网络资源调度的灵活性也极大提高了,从而使"随需而动"成为可能。