一种基于双通道统一接入的交换机配置监控与管理方法及系统
本技术涉及网络设备管理技术,具体涉及一种基于双通道统一接入的交换机配置监控与管理方法及系统。
背景技术:
1、在企业网络运维场景中,h3c comware 系列交换机通常通过命令行界面(cli)进行管理,运维人员需借助串口控制台或ssh远程登录手工输入各类命令完成日常运维。
2、在对现有技术的研究和实践中,发明人发现,现有管理方式存在如下缺陷:串口与ssh通道割裂,新设备需现场配置ip并开通ssh后方可远程管理,无法在统一界面中完成串口初始化、ssh开通、连接方式切换的闭环流程;cli输出为非结构化纯文本,难以与图形界面联动;串口交互稳定性差,设备启动阶段、分页提示、命令回显与提示符混杂导致自动化脚本易阻塞或误判,且串口半双工特性下缺乏会话复用与命令串行控制机制;部分老旧设备使用旧版ssh算法,通用客户端常因算法协商失败而无法连接;监控与配置操作分离、图形化与命令行割裂,配置变更后监控视图无法自动同步,两套工具通道不统一;长命令输出采用传统请求-响应模式,用户无法实时感知执行进度等。
3、基于此,有必要提供一种基于双通道统一接入的交换机配置监控与管理方法及系统,以解决上述技术问题。
技术实现思路
1、本技术的目的在于提供一种基于双通道统一接入的交换机配置监控与管理方法及系统,解决了串口与ssh连接隔离问题,实现了连接方式的动态切换;将非结构化配置输出解析为结构化数据,提高配置管理效率;支持实时流式推送设备输出,提升运维交互体验。
2、第一方面,本技术提供了一种基于双通道统一接入的交换机配置监控与管理方法,包括:
3、根据连接类型实例化对应通道的命令执行对象,所述连接类型为安全外壳协议ssh连接或串口连接,所述命令执行对象实现统一命令执行接口;
4、通过所述统一命令执行接口向交换机发送命令行接口cli命令,接收所述交换机返回的文本输出;
5、对所述文本输出执行回显过滤、配置段切分和段类型分类,解析生成结构化配置快照;
6、根据请求的监控模块集合,选择单次全量采集模式或分模块采集模式执行监控数据获取,对采集结果为空的模块执行降级回退命令;
7、接收图形化配置请求,通过设备适配器将所述图形化配置请求转换为cli命令序列,通过所述统一命令执行接口下发至所述交换机;
8、当所述连接类型为串口连接时,通过所述统一命令执行接口下发ssh服务配置命令序列,持久化ssh连接参数,支持在串口连接与ssh连接之间动态切换活跃连接方式;
9、提供交互式命令行界面,接收手工输入的cli命令,通过服务器发送事件sse协议将设备输出以流式分块方式实时推送至前端渲染,配置类命令执行完成后触发结构化监控视图自动刷新。
10、进一步地,所述结构化配置快照包含系统名称、虚拟局域网、接口、静态路由、开放最短路径优先协议和用户信息字段。
11、进一步地,对所述文本输出执行回显过滤、配置段切分和段类型分类,解析生成结构化配置快照,包括:
12、过滤命令回显行、分页提示行和提示符行,获得纯净配置文本;
13、以独立井号行为分隔符将所述纯净配置文本切分为多个配置段;
14、根据每个配置段的首行关键字将所述配置段分类为系统名称段、虚拟局域网段、接口段、静态路由段、开放最短路径优先网段或用户段;
15、对接口段逐行执行正则匹配,提取描述、链路模式、链路类型、接入虚拟局域网和管理状态字段,生成结构化接口对象。
16、进一步地,所述根据请求的监控模块集合,选择单次全量采集模式或分模块采集模式执行监控数据获取,对采集结果为空的模块执行降级回退命令,包括:
17、判断所述监控模块集合是否包含原始文本模块;
18、若不包含原始文本模块,执行单次display current-configuration命令获取全量配置文本,解析后按模块拆分输出;
19、若包含原始文本模块,针对每个监控模块分别执行映射的cli命令,获取对应模块的输出文本;
20、对每个监控模块的解析结果执行空值校验;
21、当解析结果为空时,执行包含include过滤参数的备选cli命令;
22、将备选命令输出作为所述监控模块的采集结果返回。
23、进一步地,所述统一命令执行接口包含一次性读取方法、流式分块回调方法和连接关闭方法;其中,
24、所述流式分块回调方法在ssh通道中的执行过程,包括:
25、在独立协程中循环读取标准输出数据,每读取一个数据块即通过通道传递至主协程,并触发输出回调函数;
26、主协程通过多路复用机制等待数据通道消息或硬超时信号;
27、每接收一个数据块重置空闲计时器,当空闲计时器达到预设空闲窗口时长时判定输出段结束;
28、所述流式分块回调方法在串口通道中的执行过程,包括:
29、在循环读取过程中逐块触发输出回调函数,通过空闲窗口检测判定输出段结束;
30、串口连接采用会话池复用机制,缓存会话未过期时续期生存时间并复用,过期时新建串口连接并缓存;
31、每个设备标识绑定互斥锁,保证同一交换机串口命令串行执行;
32、串口操作失败时销毁缓存会话并标记设备离线状态。
33、进一步地,所述通过服务器发送事件sse协议将设备输出以流式分块方式实时推送至前端渲染,包括:
34、后端将每块输出数据封装为output类型sse事件,事件数据为json格式文本块;
35、命令执行完成时发送done类型sse事件,执行失败时发送error类型sse事件;
36、通过http刷新机制将事件立即推送至客户端;
37、前端通过读取流解析sse事件,在终端输出区增量追加文本并自动滚动。
38、进一步地,所述通过所述统一命令执行接口下发ssh服务配置命令序列,持久化ssh连接参数,支持在串口连接与ssh连接之间动态切换活跃连接方式,包括:
39、通过串口通道进入系统视图,依次执行虚拟局域网配置、接口互联网协议地址配置、ssh服务启用配置和本地用户配置;
40、配置下发成功后,在数据库中存储ssh主机地址、ssh端口号和ssh配置完成标记;
41、接收连接切换请求时,将活跃连接类型切换为ssh连接,后续命令通过ssh客户端执行。
42、进一步地,所述交互式命令行界面支持tab键命令补全,补全逻辑包括:
43、根据光标位置提取当前正在输入的单词前缀;
44、从基础命令词库、设备端口名称集合和历史命令集合构建候选词汇表;
45、筛选以所述单词前缀为起始的候选词,不校验前序单词完整性;
46、唯一匹配时替换当前单词为完整词并追加空格;多匹配且最长公共前缀长于当前输入时扩展至公共前缀;否则在同一光标位置循环切换候选词。
47、进一步地,所述接收图形化配置请求,通过设备适配器将所述图形化配置请求转换为cli命令序列,包括:
48、接收包含层模式、链路类型、虚拟局域网、中继虚拟局域网集合、管理状态和互联网协议地址的端口配置参数;
49、通过设备适配器生成进入系统视图、进入接口视图、配置链路模式、配置虚拟局域网和配置管理状态的cli命令序列;
50、命令下发成功后更新本地端口记录,前端触发配置变更事件,自动刷新监控视图配置数据。
51、进一步地,当所述连接类型为串口连接时,所述方法还包括串口控制台智能登录步骤:
52、检测串口连接后的设备登录状态;
53、在设备启动阶段发送中断指令终止启动流程;
54、根据用户名提示和密码提示自动填充登录凭证;
55、登录成功后执行分页关闭命令。
56、进一步地,所述ssh连接的建立过程包括:
57、合并非安全算法集合与支持算法集合中的密钥交换算法、加密算法和消息认证码算法列表;
58、优先采用rsa主机密钥;
59、同时支持密码认证方式与键盘交互认证方式。
60、进一步地,所述方法采用桌面端嵌入式架构:
61、通过侧车机制内嵌后端服务进程;
62、自动设置服务端口、数据库路径和桌面模式环境变量;
63、应用退出时终止后端服务进程。
64、第二方面,基于同一个发明构思,本技术还提供了一种基于双通道统一接入的交换机配置监控与管理系统,包括:
65、统一命令执行模块,用于根据连接类型实例化ssh通道命令执行对象或串口通道命令执行对象,所述命令执行对象实现统一命令执行接口,所述统一命令执行接口包含一次性读取方法、流式分块回调方法和连接关闭方法;
66、设备适配模块,用于封装设备识别命令、版本解析逻辑和配置类cli命令序列生成逻辑;
67、配置解析模块,用于对cli输出文本执行回显过滤、配置段切分、段类型分类和字段提取,生成结构化配置快照;
68、监控采集模块,用于根据监控模块集合选择采集策略,执行降级回退机制;
69、配置下发模块,用于将图形化配置请求转换为cli命令序列并下发至交换机;
70、连接切换模块,用于通过串口通道下发ssh服务配置,持久化ssh连接参数,支持串口与ssh连接方式动态切换;
71、流式命令交互模块,用于提供交互式命令行界面,通过sse协议流式推送设备输出;
72、前端展示模块,包含监控视图、图形化操作视图和交互式命令行视图,用于展示结构化配置数据、接收图形化操作和呈现终端风格命令交互。
73、进一步地,所述统一命令执行模块包括ssh通道执行单元和串口通道执行单元;
74、所述ssh通道执行单元用于建立传输控制协议连接,请求虚拟终端,启动外壳进程,执行分页关闭命令,并在独立协程中循环读取输出数据,结合空闲窗口检测与硬超时判定输出段结束;
75、所述串口通道执行单元用于打开串行端口,检测登录状态,必要时发送中断指令终止启动流程,自动填充登录凭证,执行分页关闭命令,并在循环读取中逐块触发输出回调。
76、进一步地,所述设备适配模块支持扩展至多厂商设备,通过统一适配器接口隔离厂商差异;
77、所述配置解析模块包含输出清洗单元、段切分单元、分类单元和字段提取单元;
78、所述输出清洗单元用于过滤命令回显行、分页提示行和提示符行;
79、所述段切分单元用于以独立井号行为分隔符切分配置段;
80、所述分类单元用于根据配置段首行关键字分配段类型;
81、所述字段提取单元用于通过正则表达式提取各段结构化字段,生成统一格式的配置快照对象。
82、进一步地,所述流式命令交互模块包含后端流式执行单元、sse推送单元和前端终端渲染单元;
83、所述后端流式执行单元用于复用双通道连接,调用流式分块回调方法边读边推送数据;
84、所述sse推送单元用于将输出数据、完成信号和错误信号封装为对应类型的sse事件,通过http刷新机制实时下发;
85、所述前端终端渲染单元用于通过读取流解析sse事件,增量渲染终端输出区,支持命令历史导航和配置变更后自动刷新监控视图。
86、进一步地,所述系统采用桌面端嵌入式架构,通过侧车机制内嵌后端服务进程,自动设置服务端口、数据库路径和桌面模式环境变量,应用退出时终止后端进程;
87、所述串口通道执行单元关联会话池与设备级互斥锁,所述会话池的生存时间为预设时长,所述设备级互斥锁保证同一设备串口命令串行执行;
88、所述ssh通道执行单元合并非安全算法集合与支持算法集合中的密钥交换、加密和消息认证码算法列表,优先采用rsa主机密钥,同时支持密码认证与键盘交互认证双认证方式。
89、相对比现有技术,本技术具有如下有益效果:
90、本技术提供的一种基于双通道统一接入的交换机配置监控与管理方法及系统,通过统一命令执行接口实现双通道动态切换、结构化配置解析及流式交互机制,有效解决了网络设备管理中连接方式割裂和配置信息非结构化的问题,解决了串口与ssh连接隔离问题,实现了连接方式的动态切换;将非结构化配置输出解析为结构化数据,提高配置管理效率;支持实时流式推送设备输出,提升运维交互体验。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com