AOC 萌新探索:搭建和体验在线 AOC 环境
摘要:AOC 是一个做网络设备自动化运维以及三方设备纳管的一个能力平台。
本文分享自华为云社区《AOC萌新探索之旅第一期——在线AOC环境初体验》,作者:oysterzz。
接触 AOC 没多久,这里本萌新打算开一系列贴记录一下学习过程中的日常,中间一些深水区帮大家趟一下,希望能够帮得上大家。
先大概介绍一下自己吧,应该会有不少能力模型相仿的同学,可以一起交流学习,我之前接触过设备,敲过 CLI 给设备下配置,做过运营商网络交付,代码方面算是熟悉 C,搞过几年 C 的开发,python java 会个皮毛,进入正题吧。
其实在接触 AOC 之前,大概初步了解到 AOC 是一个做网络设备自动化运维以及三方设备纳管的一个能力平台,要学习体验 AOC,那我一方面是得有个 AOC,还需要一个网络设备,最后还得有个 python 的环境来搞代码开发,python 的开发环境倒是好搞,但是 AOC 和网络设备我该怎么办呢?这个时候我发现了社区首页的在线开发。
进入在线开发页面后,这三个不就是我需要的 AOC、python 环境以及网络设备嘛;(雪中送炭)AOCmini 提供了一个在线版 AOC,CloudIDE 提供了一个在线的 python 环境,AOCMONI 提供了一个网元设备模拟器。
进入环境的时候需要华为云的实名认证,这里遇见了一个问题,在社区中也看到了其他小伙伴有遇到过,实名认证后再次进入环境的时候还是提示未实名认证,这里咨询了社区的支持人员,这个问题是由于华为云的实名认证与社区这边的数据库同步需要一点时间触发,一般等几分钟就可以进入环境了。
这个问题也是劝退萌新的一条拦路虎了,其实这个就是华为云在后台为每位开发者起了一台虚拟机,其实也是够大方了,毕竟免费试用,到这里心里还有最后一个疑惑,就是这三个工具是怎么在云上串联起来的呢,算了先不管那么多了,先点进去看看。
我这里多少有点编码情节,第一个进入的是 CLOUD IDE。整个 IDE 界面跟 PYCHARM 等主流 IDE 相似,左侧右侧可以看到有插件相关的图标,应该是可以从 CLOUD IDE 应用商店下载插件安装。
右侧可以看到有个蓝色的 AOC 图标
点开之后可以看到这个 IDE 默认安装了 AOCmini 与 AOCmoni 的插件服务,这里也解释了我心里最后一个疑问,就是 IDE、AOC 环境、设备环境是如何串联起来的。
这里可以看到有调试开关以及打开插件的开关,点击打开,果然不出所料打开了 AOCmoni 与 AOCmini,这里基本可以确定,IDE 中开发的代码运行起来的数据可以通过 IDE 的插件功能与 AOCmini 以及 AOCmoni 互通进行代码 debug,这也就基本满足了一个开发者学习开发流程基本的环境要求了
下面我们具体来试一下 debug 功能,看看用起来如何。在 CLOUD IDE 与 AOCmini 中我们可以看到系统预置了一个名叫 aaamini 的 SSP 包
这里看默认已经将 IDE 里的 SSP 包加载至 AOCmini 上,(下一回我们具体看看怎么在 IDE 里编辑包然后再上传至 AOCmini),现在我们试试看怎么让 IDE 和 AOCmini 一起 debug 起来,首先要在 AOC 插件列表中奖调试开关打开,打开后如下图所示。
然后我们找到 aaamini 这个 SSP 包的业务 python 文件,凭借“丰富的代码经验”锁定如下文件,其实还是挺容易找的,因为实际就俩正经 py 文件,悄悄吹一下 python。红框是主业务实现的文件,黄框是一个 UT 测试文件(UT 后续开贴我们详细来讲)。
大概看了下 ncs_map 这个方法应该就是下发配置时做模型映射的主入口了,二话不说我们打上断点先试一把看看。
打上断点后,我们来到 AOCmini 中的业务管理界面,点击增加来添加一条配置
需要我们填写一下 username,然后点击创建;
这个时候我们看到需要填写一个 nename,这里其实就是看将此次配置下发给具体哪台设备;
由于要看下发给哪台设备,我们得知道现在 AOC 现在对接的设备有哪些,点击资源->设备管理,我们可以看到 AOCmini 默认对接了一台名为 NE1 的 NE40E,所以我们将 nename 填写为 NE1 就可以了。
点击试运行后,切回 IDE 界面点击 run->StartDebugging,可以看到 IDE 中的程序已经执行起来,暂停到我们刚才打的断点处。
点击 continue 将程序运行完成,可以看到 AOCmini 的页面中就弹出了试运行结果的对话框。
这里结合代码大概看了一下,ncs_map 这个方法其实就是将我们刚才在网页上输入的参数通过下图中的 jinja 模板进行了映射组合成一个 netconf 报文。
第一次就先记录这么多吧,其实就是体验了一下 AOC 在线环境的 debug 功能,中间也遇到了一些预料之外的问题,不过总体流程还是比较容易理解的,下一次继续探索一下在线环境,包括包的编辑加载,希望大家多多关照多多交流。
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/0a3594545ba6dd3f25ed5643a】。文章转载请联系作者。
评论