超越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报文,覆盖原有设备配置来达到配置的目的。

相关推荐
nashane5 小时前
HarmonyOS 6学习:CapsLock键失效诊断与长截图完整实现指南
学习·华为·harmonyos
richard_yuu7 小时前
鸿蒙心理测评模块实战|PHQ-9/GAD7双量表答题、实时计分与结果本地化存储
华为·harmonyos
不爱吃糖的程序媛10 小时前
2026年Electron 鸿蒙PC环境搭建指南
人工智能·华为·harmonyos
nashane10 小时前
HarmonyOS 6学习:长截图功能开发中的滚动拼接与权限处理实战
人工智能·华为·harmonyos
笑中取栗17 小时前
华为HCSA-传输接入H19-473题库
网络·华为·题库·hcsa
Python私教17 小时前
鸿蒙 NEXT 也能接 MCP?用 ArkTS 跑通 AI Agent 工具链
人工智能·华为·harmonyos
极客范儿19 小时前
华为HCIP网络工程师认证—OSPF
网络·华为·智能路由器
Swift社区19 小时前
分布式能力在鸿蒙 PC 上到底怎么用?
分布式·华为·harmonyos
曾响铃19 小时前
制造跃升:传统产业正迈入数智化转型的价值兑现期
华为
nashane1 天前
HarmonyOS 6学习:外接键盘CapsLock与长截图功能的实战调试与完整解决方案
学习·华为·计算机外设·harmonyos