一、目的和测试结果:
(1). SSH登录到各个交换机收集软件版本、CPU、内存利用率和硬件状态信息。
(2). 生成如下的excel表格文件展示。
二、环境准备:
(1). 使用华为的eNSP模拟器来模拟真实设备,本机IP169.254.94.30,两台交换机的IP分别是169.254.94.31和169.254.94.32。
(2). 由于使用了第三方模块netmiko和xlwt模块,需要提前使用以下命令安装。
pipinstallnetmiko pipinstallxlwt
(3). 创建一个名称为:ip_list.txt 的文件用来存放巡检的设备IP。
169.254.94.31 169.254.94.32
三、python 巡检华为交换机脚本:
#-*-coding:utf-8-*- fromnetmiko.huawei.huaweiimportHuaweiSSH fromnetmikoimportNetMikoTimeoutException fromnetmikoimportNetMikoAuthenticationException fromgetpassimportgetpass importre importio importxlwt defmain(): """ 主函数 """ #让用户输入ssh用户名密码 username=input('请输入ssh用户名:') password=getpass('请输入ssh密码:') #打开ip_list.txt文件获取IP列表 ip_list=open('ip_list.txt','r') ip_addr=ip_list.readlines() ip_list.close() cmd_line=['displayversion','displaycpu-usage','displaymemory-usage','displaydevice'] #创建一个workbook设置编码 workbook=xlwt.Workbook(encoding='utf-8') #创建一个worksheet worksheet=workbook.add_sheet('MyWorksheet') #初始化表格 worksheet.write(0,0,label="交换机IP") worksheet.write(0,1,label="交换机名称") worksheet.write(0,2,label="软件版本") worksheet.write(0,3,label="CPU利用率") worksheet.write(0,4,label="内存利用率") worksheet.write(0,5,label="硬件状态") hang=0 lie=0 #遍历ip列表用来生成迭代器 foripiniter(ip_addr): print('') print('本次巡检的设备IP:'+ip) try: S5720={ 'device_type':'huawei', 'ip':ip, 'username':username, 'password':password, } #实例化HuaweiSSH net_connect=HuaweiSSH(**S5720) #print("恭喜,成功登录") #print("设备名:"+str(net_connect.find_prompt().strip('<>'))) ip_str=(ip) hang=hang+1 #初始化表格列 lie=0 worksheet.write(hang,lie,label=ip_str) lie=lie+1 worksheet.write(hang, lie, label=net_connect.find_prompt().strip('<>')) forcmdiniter(cmd_line): cmd_result=net_connect.send_command(cmd) regex_str=[] if'VRP(R)software'incmd_result: regex_str='(w*dd.*)' version=(re.search(regex_str,cmd_result)) lie=lie+1 worksheet.write(hang, lie, label=version.group().strip('()')) cmd_result='' if'CPU'incmd_result: regex_str='d*.d*.\%' cpu_usage=(re.search(regex_str,cmd_result)) lie=lie+1 worksheet.write(hang, lie, label=cpu_usage.group().strip('')) cmd_result='' if'Memory'incmd_result: regex_str='d*.\%' memory=(re.search(regex_str,cmd_result)) lie=lie+1 worksheet.write(hang,lie,label=memory.group()) cmd_result='' if'Device'incmd_result: if'Abnormal'incmd_result: lie=lie+1 worksheet.write(hang,lie,label=u"Abnormal") elif'WrongType'incmd_result: lie=lie+1 worksheet.write(hang,lie,label=u"WrongType") elif'Unregistered'incmd_result: lie=lie+1 worksheet.write(hang,lie,label=u"Unregistered") elif'Off'incmd_result: lie=lie+1 worksheet.write(hang,lie,label=u"Off") elif'Offline'incmd_result: lie=lie+1 worksheet.write(hang,lie,label=u"Offline") else: lie=lie+1 worksheet.write(hang,lie,label=u"Normal") cmd_result='' net_connect.disconnect() except(EOFError,NetMikoTimeoutException): print('无法连接设备') netmikotimeout=(u'无法连接设备'+ip) hang=hang+1 lie=0 worksheet.write(hang,lie,label=netmikotimeout) except(EOFError,NetMikoAuthenticationException): print('用户名密码错误!') netmikotuehenticattion=(u'用户名密码错误'+ip) hang=hang+1 lie=0 worksheet.write(hang,lie,label=netmikotimeout) workbook.save('xunjian.xls') if__name__=='__main__': main()
四、测试过程:
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
cpu
+关注
关注
68文章
10901浏览量
212814 -
python
+关注
关注
56文章
4807浏览量
84987 -
华为交换机
+关注
关注
0文章
13浏览量
6321
原文标题:python 巡检华为交换机
文章出处:【微信号:网络技术干货圈,微信公众号:网络技术干货圈】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
华为路由器交换机VLAN配置实例
华为路由器交换机VLAN配置实例[hide]华为路由器交换机VLAN配置实例使用4台PC(pc多和少,原理是一样的,所以这里我只用了4台pc),华为
发表于 05-25 00:21
接入层交换机、汇聚层交换机和核心层交换机的区别
`1.功能区别核心层交换机的主要功能是用于路由选择及高速转发的,提供优化、可靠的骨干传输结构,因此核心层交换机应用有更高的可靠性和吞吐量。汇聚层交换机是多台接入层交换机的汇聚点,作用是
发表于 06-04 11:57
华为第五代敏捷交换机S12700:重新定义交换机
关键词:华为 , 敏捷 , 交换机 , S12700 8月8日,华为在北京发布全球首个以业务和用户体验为中心的敏捷网络架构及全球首款敏捷交换机S12700。 用
工业控制交换机和工业交换机的区别
以太网交换机一般分为:商用(以太网)交换机、工业(以太网)交换机、家用(以太网)交换机,在这里着重介绍下工业交换机。
发表于 01-21 09:54
•2156次阅读
核心交换机、汇聚交换机与普通交换机的区别介绍
核心交换机并不是交换机的一种类型,放在核心层(网络主干部分)的交换机叫核心交换机。汇聚层交换机,是多台接入层
发表于 03-19 14:50
•1.3w次阅读
家庭交换机怎么安装_交换机网速是平分的吗
已经广泛应用于各个领域,作为网络的主要连接设备,被众多用户广泛应用,在这里我同大家分享的详细安装图解,在这里你会了解,。交换机华为交换机华为S5700
发表于 03-25 10:29
•1.1w次阅读
什么是网络交换机?网络交换机的分类标准
从广义上来看,网络交换机分为广域网交换机和局域网交换机。广域网交换机主要用于电信领域,提供基本的通信平台。局域网网络交换机应用于局域网,用于
发表于 08-10 11:17
•3345次阅读
核心交换机、汇聚交换机、接入交换机之间的对比分析
Cisco定义的分层互联模型包括核心层、汇聚层和接入层,因此,工作在这些层的网络交换机有相应的名称,如核心交换机、汇聚交换机和接入交换机。
思科、华为、H3C交换机巡检命令大全
0 1 思科交换机巡检命令 1、show interface stats:查看交换机所有接口当前接口流量 2、show running-config:查看当前设备配置 3、show version
如何使用Python对交换机进行自动化巡检?
脚本功能功能是全程模拟了人的手工巡检,并收集数据,处理后发送邮件。主要分为远程到交换机,查看转换机状态如:show process cpu | in CPU utilization查看cpu占用率
PoE交换机可以当普通交换机使用吗
随着PoE交换机的广泛应用,人们对PoE交换机有了一定的了解。然而,很多人认为PoE交换机可以自行发电,这种说法并不正确,通常所讲的PoE交换机供电指的是PoE
使用Python脚本备份华为交换机的配置信息
在现代网络管理中,备份交换机的配置信息是一项至关重要的任务。备份可以确保在交换机发生故障或配置错误时,能够迅速恢复到之前的工作状态。本文将详细介绍如何使用Python脚本备份华为
评论