超越ODL:直接使用ncclient通过NETCONF配置华为设备,实现真正的基础设施即代码

经过前面几次测试,我们已经成功部署了ODL(OpenDaylight)服务器(低成本玩转SDN:实测OpenDaylight资源消耗仅1.1GB,完美纳管华为设备,开源方案真香!),也成功测试了使用NETCONF推送一些基础配置(告别CLI:手把手教你用ODL的RESTCONF接口管理设备,增删改查只需一条curl命令),对于暂不支持的配置,我们也使用Linux标准工具expect通过SSH批量并发地将配置推送到所有设备(ODL高级配置受阻?巧用Expect脚本另辟蹊径,SSH批量下发OSPF/BGP/SRv6等复杂配置)。

但是,我们前面也介绍了,使用expect工具配置时,需要对命令配置非常熟悉才行,毕竟有时命令不是一次下发成功的,还涉及到交互才能完成配置。

其实,这就触及到了expect工具的本质,这是一种使用SSH + PTY伪终端的通信协议,使用非结构化字符串,全靠正则匹配CLI回显,对于复杂命令,需要人工进行解析,通过正则表达式从海量CLI回显中提取结果,而且CLI提示符的更改或输出格式微调都会导致脚本崩盘,对版本兼容性较差,极易出错。

熟悉k8s的同学应该熟悉,这就涉及到了事务的原子性,expect工具不支持原事务,一条条敲命令,中间断开可能导致配置停留在中间状态。此外,expect工具这种模拟人工登录的方式,也存在输入注入的风险。

这样的话,我们又不得不回到基于XML的NETCONF上,既然如此,那我们不如跳过ODL对YANG的死板校验,对于不兼容的YANG模型,我们不妨试试通过NETCONF协议发送设备原生支持的VRP XML报文,覆盖原有设备配置来达到配置的目的。

相关推荐
2601_949480065 小时前
开源鸿蒙平台 CMP 三方库「shadcn」适配全流程
华为·开源·harmonyos
redtank20008 小时前
纯血鸿蒙本地电子书阅读器实测:九格式支持、沉浸阅读与零联网隐私设计
华为·harmonyos
huainingning10 小时前
华为E1专线使用与配置案例
华为
aixingkong92110 小时前
华为灵衢超节点参考架构白皮书深度解读
大数据·人工智能·华为
独隅10 小时前
HarmonyOS 系统能力与体验深度评测 - 超详细版
华为·harmonyos
懿路向前12 小时前
唤醒工作台全实录(六):数据层——5ms 竞态窗口与“查询即引用“
华为·架构·harmonyos
无限码力13 小时前
华为校招笔试真题 10.28 - 稀疏整数求和(C++/Py/Java /Js/Go)
华为·华为笔试真题·华为校招笔试真题·华为校招笔试·华为非ai岗笔试真题
无限码力14 小时前
华为校招笔试真题 10.28 - 运输中转站计数(C++/Py/Java /Js/Go)
华为·华为笔试真题·华为校招笔试真题·华为秋招笔试真题·华为校招算法笔试题
熊猫钓鱼>_>1 天前
碰一碰无网近场文件快传与断点续传【鸿蒙心迹】
华为·交互·harmonyos·arkts·鸿蒙·openharmony·鸿蒙心迹
每天进步一点点km1 天前
自用-牛客网-华为机试编程模拟题1-python
华为od·华为·面试