打开网易新闻 查看精彩图片

OPS(Open Programmability System)即为开放可编程系统,即指设备通过提供统一的应用程序接口API(Application Programming Interface)来开放系统,使得系统具备可编程能力,可以运行第三方应用程序

与传统网络设备有限的功能与固有的服务相比,开放可编程的系统能提供多层次的设备网络业务开放性,可以满足用户多样化、差异化的需求,便于迅速地实现业务功能扩展、自动部署和设备的智能化管理,降低运维成本和操作的复杂度。

为什么需要OPS

为什么需要OPS

网络的快速发展衍生出了对网络设备的新需求,但传统的网络设备只能提供有限的功能和已知的服务,这极大限制了网络业务的部署与管理,网络业务正面临着诸多挑战:

1.业务周期长,部署成本高

传统方式下,用户部署新业务时,交付周期常以年、月为单位,需求开发时间长,业务部署成本高。

2.技术多而难,设备多而杂

当前网络设备技术复杂度高且技术繁多,同时设备商众多,接口标准不一,使得第三方应用开发成本高,客户运维成本提升。

3.故障定位慢,响应速度快

应用网络环境复杂多变,无法提前预料所有故障,在没有开放系统的支持下,对各种故障的定位及处理无法形成有效手段。

4.网络较封闭,互动程度低

当前网络是封闭的,网络与应用相割裂,二者之间不会产生互动,而是通过“管理员”(即各种协议和工具)来协调。而这样的多层操作,不但会降低业务部署效率和响应时间,也增加了业务部署成本。

在社会快速发展、技术日新月异的大趋势下,网络需要能够迎接创新并且拥抱创新。

为解决当下网络管理负担重,业务部署成本高的难题,同时根据不同用户对网络开放性的差异需求,华为公司推出了OPS。借助OPS,用户可以利用系统开放的RESTful API,开发和部署自己的网络管理策略,从而迅速实现业务功能的扩展、自动部署和设备的智能化管理,降低运维成本和操作的复杂度。

目前OPS提供的开放接口还在持续扩充,随着开放接口的逐渐增多,未来大部分的定制化需求都可以通过Python脚本利用已开放的接口进行实现。

传统业务模式 vs OPS下的新业务模式
打开网易新闻 查看精彩图片
传统业务模式 vs OPS下的新业务模式

如何实现OPS

如何实现OPS

1.系统架构

通过OPS功能,用户可以利用系统开放的API制作脚本文件(目前仅支持Python),即可实现自定义的功能。

OPS架构包含三层:应用呈现层、通信通道层、网络设备层应用呈现层主要面向程序员,由应用程序中使用的RestFul API接口组成,这些接口用于各种网络应用的处理。通信通道层提供了一种快速、安全可扩展的应用程序和网络设备之间的通道。网络设备层对底层设备进行抽象,克服不同平台之间的差异,提供统一访问网络设备内部资源的功能。

OPS架构图
打开网易新闻 查看精彩图片
OPS架构图

2.业务逻辑

OPS采用事件驱动模型,通过事件订阅器监测设备的关键事件,然后通过动作执行模块对监测到的事件做出相应的动作。用户可以定义需要监测的事件,如输入的命令行、网络中的路由变更、设备产生的日志和告警等。一旦检测到事件,OPS模块将执行相应的动作,实现用户自定义的功能。

OPS功能基于OPS API实现。监测的事件和执行的动作可以使用Python脚本根据设备支持的OPS API进行定义。

OPS实现逻辑
打开网易新闻 查看精彩图片
OPS实现逻辑

OPS的优势

OPS的优势

OPS把“简单”给予了网络应用开发者,提供了多层次的网络开放,重新定义了网络和业务行为,使得业务部署效率提升,市场响应事件缩短,而且让客户网络集成更加敏捷,操作维护更加简化。

OPS的优势
打开网易新闻 查看精彩图片
OPS的优势

1.多层次开放

针对应用呈现层、通信通道层、网络设备层的不同用户,OPS均为其提供了可编程能力,用户可以借助相应的API进行自定义的管理策略部署。

2.支持多种编程语言

OPS支持运行的应用程序脚本类型,在系统中继承了相应类型脚本的运行环境。目前OPS已支持Python脚本的加载,后续还会扩展Java\C及C++脚本。

3.完善的安全机制

OPS的API安全、运行安全、程序部署安全、重要信息安全机制为用户业务部署了最全面的保障。

  • API安全:支持用户认证,通过认证的用户才能对OPS进行操作;基于角色权限认证授权。
  • 运行安全:模块化设计,实现资源隔离,同时可以监控资源使用情况。
  • 程序部署安全:使用第三方资源管理包,对程序部署授权进行管理。
  • 重要信息安全:OPS API使用安全的通讯协议,确保传输过程中信息不泄露,但是用户需要自己保证本地操作和保存重要信息的安全。
OPS的典型应用场景

OPS的典型应用场景

场景一:设备巡检

通常情况下,对设备的健康状态进行检查时,用户需要登录设备并执行多条命令行,以查看设备的硬件、业务运行状态。通过OPS功能,用户可以进行自定义策略部署,设备可以自动执行这些状态检查命令,定时收集执行结果并将其发送至服务器供分析,减少维护工作量。

设备巡检
打开网易新闻 查看精彩图片
设备巡检

场景二:ZTP自动部署

ZTP(Zero Touch Provisioning)可以通过调用OPS脚本来实现设备空配置启动时的业务自动部署。设备空配置上电时,需要通过DHCP服务器获取脚本文件服务器的地址,从脚本文件服务器获取Python脚本文件并运行。通过OPS功能,运行Python脚本文件,从服务器上下载系统软件和配置文件,重启后完成自动部署。

通过OPS实现空配置设备自动部署
打开网易新闻 查看精彩图片
通过OPS实现空配置设备自动部署

场景三:故障处理

用户通过订阅系统开放的设备管理事件,感知单板状态的变化,并在单板故障时可以通过自定义执行动作来记录设备的运营状态,执行故障处理操作。

场景四:智能诊断与智能配置

通过Python脚本,OPS还可以用来实现智能诊断和智能配置功能。

打开网易新闻 查看精彩图片