交换机自动化获取诊断(H3C_无人值守)

介绍

在网络遇到个人无法处理的问题时,需要下载诊断信息发送给400处理,而通过传统的方式获取诊断信息需要通过多个步骤来获取,步骤繁琐,在设备数量过多的情况下,严重影响工作效率,而通过python自动化的方式可以完美解决这个问题。

1、传统收集诊断步骤

通过console或其他远程方式连接至交换机或其它网络设备

通过命令行将诊断信息保存至交换机

搭建TFTP下载交换机中的诊断文件

2、通过python收集诊断步骤

填写设备信息并运行自动化代码

获取到的诊断信息已同步当前时间点并存储到了指定的文件夹,全程只需要运行一次代码就能直接获取到诊断信息,相对传统获取的方式真的能提高不少的工作效率,而且文件命名是获取当前时间来写入命名的。

3、代码介绍

文件介绍

当前文件夹中除去介绍文件共有3个文件一个文件夹
"capture.txt"文件用于存放从交换机获取到的数据
"diagnostic.txt"文件用于直接参考代码
"diagnostic.py"文件作为自动化获取巡检信息的代码
"diagnosis"文件夹则用于存取从交换机下载的诊断信息文件

代码修改

复制代码
    USERNAME = "h3c"  # 交换机登录用户
    PASSWORD = "huawei@123"  # 交换机登录密码

    # 添加你的交换机IP地址
    hosts = ["172.16.1.1"]  # 替换为你实际的交换机IP

通过修改代码的122、123、127行将交换机信息修改为想要获取诊断信息的账号密码和IP

复制代码
print("诊断收集中,需等待40秒...")
# 输入确认并等待40秒
ssh_shell.send('y\n')  # 输入 'y' 并回车确认保存诊断信息
time.sleep(1)
# 使用动态生成的文件名保存到交换机
ssh_shell.send(f"flash:/{self.diagnostic_file}\n")  # 输入文件名并回车
for remaining in range(40, 0, -1):

其中45行和51行是交换机获取诊断信息时间的等待时长,本此实验是使用一台新的交换机来演示的,所以使用的时间是40秒,如果在巡检高端设备、且数据量较为庞大的情况下,可以先通过console收集一次先,计算一下收集诊断的时间是多久,如果设置时间过长,会耽误自己的时间,如果设置时间过短会导致诊断信息收集失败,下载的文件会是一个空文件。

代码链接:【免费】交换机自动获取诊断信息(H3C)免费下载资源-CSDN文库

自动化工具: 【免费】python、pycharm工具资源-CSDN文库

相关推荐
川石课堂软件测试14 分钟前
自动化测试的基本概念及常用框架
数据库·python·功能测试·测试工具·单元测试·自动化·流程图
灰勒塔德17 分钟前
jetson orin nano super开发指南
linux·服务器·python
82782093725 分钟前
python scp 备份
开发语言·python
未来之窗软件服务34 分钟前
服务器运维(十七)web服务对比和选择——东方仙盟炼气期
运维·服务器·服务器运维·仙盟创梦ide·东方仙盟
poggioxay36 分钟前
JAVA零基础入门知识3(持续更新中)
java·开发语言·python
serve the people1 小时前
TensorFlow 基础训练循环(简化版 + 补全代码)
人工智能·python·tensorflow
木里先森1 小时前
解决报错:/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
linux·python
爱打代码的小林1 小时前
numpy库数组笔记
笔记·python·numpy
shizhan_cloud1 小时前
IF 条件语句的知识与实践
linux·运维
池央1 小时前
中小企业私有云存储的跨网访问解决方案:Nextcloud 与 CPolar 的协同部署
运维·服务器