RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

python巡檢華為交換機(jī)

網(wǎng)絡(luò)技術(shù)干貨圈 ? 來(lái)源:網(wǎng)絡(luò)技術(shù)干貨圈 ? 2022-12-30 09:13 ? 次閱讀

一、目的和測(cè)試結(jié)果:

(1). SSH登錄到各個(gè)交換機(jī)收集軟件版本、CPU、內(nèi)存利用率和硬件狀態(tài)信息。

(2). 生成如下的excel表格文件展示。

5cb7fb16-87d1-11ed-bfe3-dac502259ad0.png

二、環(huán)境準(zhǔn)備:

(1). 使用華為的eNSP模擬器來(lái)模擬真實(shí)設(shè)備,本機(jī)IP169.254.94.30,兩臺(tái)交換機(jī)的IP分別是169.254.94.31和169.254.94.32。

5cda2cc2-87d1-11ed-bfe3-dac502259ad0.png

(2). 由于使用了第三方模塊netmiko和xlwt模塊,需要提前使用以下命令安裝。

pipinstallnetmiko
pipinstallxlwt

(3). 創(chuàng)建一個(gè)名稱為:ip_list.txt 的文件用來(lái)存放巡檢的設(shè)備IP。

169.254.94.31
169.254.94.32

三、python 巡檢華為交換機(jī)腳本:

#-*-coding:utf-8-*-
fromnetmiko.huawei.huaweiimportHuaweiSSH
fromnetmikoimportNetMikoTimeoutException
fromnetmikoimportNetMikoAuthenticationException
fromgetpassimportgetpass
importre
importio
importxlwt


defmain():
"""
主函數(shù)
"""
#讓用戶輸入ssh用戶名密碼
username=input('請(qǐng)輸入ssh用戶名:')
password=getpass('請(qǐng)輸入ssh密碼:')

#打開(kāi)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']

#創(chuàng)建一個(gè)workbook設(shè)置編碼
workbook=xlwt.Workbook(encoding='utf-8')
#創(chuàng)建一個(gè)worksheet
worksheet=workbook.add_sheet('MyWorksheet')
#初始化表格
worksheet.write(0,0,label="交換機(jī)IP")
worksheet.write(0,1,label="交換機(jī)名稱")
worksheet.write(0,2,label="軟件版本")
worksheet.write(0,3,label="CPU利用率")
worksheet.write(0,4,label="內(nèi)存利用率")
worksheet.write(0,5,label="硬件狀態(tài)")
hang=0
lie=0

#遍歷ip列表用來(lái)生成迭代器
foripiniter(ip_addr):
print('')
print('本次巡檢的設(shè)備IP:'+ip)
try:
S5720={
'device_type':'huawei',
'ip':ip,
'username':username,
'password':password,
}
#實(shí)例化HuaweiSSH
net_connect=HuaweiSSH(**S5720)
#print("恭喜,成功登錄")
#print("設(shè)備名:"+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('無(wú)法連接設(shè)備')
netmikotimeout=(u'無(wú)法連接設(shè)備'+ip)
hang=hang+1
lie=0
worksheet.write(hang,lie,label=netmikotimeout)
except(EOFError,NetMikoAuthenticationException):
print('用戶名密碼錯(cuò)誤!')
netmikotuehenticattion=(u'用戶名密碼錯(cuò)誤'+ip)
hang=hang+1
lie=0
worksheet.write(hang,lie,label=netmikotimeout)
workbook.save('xunjian.xls')


if__name__=='__main__':
main()

四、測(cè)試過(guò)程:

5cf1ac94-87d1-11ed-bfe3-dac502259ad0.gif

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10853

    瀏覽量

    211549
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4792

    瀏覽量

    84621
  • 華為交換機(jī)
    +關(guān)注

    關(guān)注

    0

    文章

    13

    瀏覽量

    6307

原文標(biāo)題:python 巡檢華為交換機(jī)

文章出處:【微信號(hào):網(wǎng)絡(luò)技術(shù)干貨圈,微信公眾號(hào):網(wǎng)絡(luò)技術(shù)干貨圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    華為路由器交換機(jī)VLAN配置實(shí)例

    華為路由器交換機(jī)VLAN配置實(shí)例[hide]華為路由器交換機(jī)VLAN配置實(shí)例使用4臺(tái)PC(pc多和少,原理是一樣的,所以這里我只用了4臺(tái)pc),華為
    發(fā)表于 05-25 00:21

    接入層交換機(jī)、匯聚層交換機(jī)和核心層交換機(jī)的區(qū)別

    `1.功能區(qū)別核心層交換機(jī)的主要功能是用于路由選擇及高速轉(zhuǎn)發(fā)的,提供優(yōu)化、可靠的骨干傳輸結(jié)構(gòu),因此核心層交換機(jī)應(yīng)用有更高的可靠性和吞吐量。匯聚層交換機(jī)是多臺(tái)接入層交換機(jī)的匯聚點(diǎn),作用是
    發(fā)表于 06-04 11:57

    華為交換機(jī)

    華為交換機(jī)
    發(fā)表于 03-24 14:17 ?5次下載

    華為第五代敏捷交換機(jī)S12700:重新定義交換機(jī)

    關(guān)鍵詞:華為 , 敏捷 , 交換機(jī) , S12700 8月8日,華為在北京發(fā)布全球首個(gè)以業(yè)務(wù)和用戶體驗(yàn)為中心的敏捷網(wǎng)絡(luò)架構(gòu)及全球首款敏捷交換機(jī)S12700。 用
    的頭像 發(fā)表于 02-16 22:57 ?1601次閱讀

    工業(yè)控制交換機(jī)和工業(yè)交換機(jī)的區(qū)別

    以太網(wǎng)交換機(jī)一般分為:商用(以太網(wǎng))交換機(jī)、工業(yè)(以太網(wǎng))交換機(jī)、家用(以太網(wǎng))交換機(jī),在這里著重介紹下工業(yè)交換機(jī)。
    發(fā)表于 01-21 09:54 ?2106次閱讀

    核心交換機(jī)、匯聚交換機(jī)與普通交換機(jī)的區(qū)別介紹

    核心交換機(jī)并不是交換機(jī)的一種類型,放在核心層(網(wǎng)絡(luò)主干部分)的交換機(jī)叫核心交換機(jī)。匯聚層交換機(jī),是多臺(tái)接入層
    發(fā)表于 03-19 14:50 ?1.2w次閱讀

    家庭交換機(jī)怎么安裝_交換機(jī)網(wǎng)速是平分的嗎

    已經(jīng)廣泛應(yīng)用于各個(gè)領(lǐng)域,作為網(wǎng)絡(luò)的主要連接設(shè)備,被眾多用戶廣泛應(yīng)用,在這里我同大家分享的詳細(xì)安裝圖解,在這里你會(huì)了解,。交換機(jī)華為交換機(jī)華為S5700
    發(fā)表于 03-25 10:29 ?1w次閱讀

    網(wǎng)絡(luò)交換機(jī)的作用_網(wǎng)絡(luò)交換機(jī)怎么用

    本文首先闡述了網(wǎng)絡(luò)交換機(jī)的概念,其次闡述了網(wǎng)絡(luò)交換機(jī)的作用,最后介紹了網(wǎng)絡(luò)交換機(jī)的使用。
    發(fā)表于 04-02 08:49 ?6470次閱讀

    什么是網(wǎng)絡(luò)交換機(jī)?網(wǎng)絡(luò)交換機(jī)的分類標(biāo)準(zhǔn)

    從廣義上來(lái)看,網(wǎng)絡(luò)交換機(jī)分為廣域網(wǎng)交換機(jī)和局域網(wǎng)交換機(jī)。廣域網(wǎng)交換機(jī)主要用于電信領(lǐng)域,提供基本的通信平臺(tái)。局域網(wǎng)網(wǎng)絡(luò)交換機(jī)應(yīng)用于局域網(wǎng),用于
    發(fā)表于 08-10 11:17 ?3239次閱讀

    核心交換機(jī)、匯聚交換機(jī)、接入交換機(jī)之間的對(duì)比分析

    Cisco定義的分層互聯(lián)模型包括核心層、匯聚層和接入層,因此,工作在這些層的網(wǎng)絡(luò)交換機(jī)有相應(yīng)的名稱,如核心交換機(jī)、匯聚交換機(jī)和接入交換機(jī)
    的頭像 發(fā)表于 11-02 16:25 ?2.3w次閱讀

    思科、華為、H3C交換機(jī)巡檢命令大全

    0 1 思科交換機(jī)巡檢命令 1、show interface stats:查看交換機(jī)所有接口當(dāng)前接口流量 2、show running-config:查看當(dāng)前設(shè)備配置 3、show version
    的頭像 發(fā)表于 11-30 14:53 ?6179次閱讀

    如何使用Python對(duì)交換機(jī)進(jìn)行自動(dòng)化巡檢

    腳本功能功能是全程模擬了人的手工巡檢,并收集數(shù)據(jù),處理后發(fā)送郵件。主要分為遠(yuǎn)程到交換機(jī),查看轉(zhuǎn)換機(jī)狀態(tài)如:show process cpu | in CPU utilization查看cpu占用率
    的頭像 發(fā)表于 01-15 15:33 ?1648次閱讀

    PoE交換機(jī)可以當(dāng)普通交換機(jī)使用嗎

    隨著PoE交換機(jī)的廣泛應(yīng)用,人們對(duì)PoE交換機(jī)有了一定的了解。然而,很多人認(rèn)為PoE交換機(jī)可以自行發(fā)電,這種說(shuō)法并不正確,通常所講的PoE交換機(jī)供電指的是PoE
    的頭像 發(fā)表于 06-27 10:20 ?6455次閱讀

    使用python批量備份華為交換機(jī)配置文件

    保證PC能分別和五臺(tái)交換機(jī)通信。五臺(tái)交換機(jī)的IP地址如圖上所示。
    的頭像 發(fā)表于 01-19 09:28 ?1405次閱讀
    使用<b class='flag-5'>python</b>批量備份<b class='flag-5'>華為</b><b class='flag-5'>交換機(jī)</b>配置文件

    使用Python腳本備份華為交換機(jī)的配置信息

    在現(xiàn)代網(wǎng)絡(luò)管理中,備份交換機(jī)的配置信息是一項(xiàng)至關(guān)重要的任務(wù)。備份可以確保在交換機(jī)發(fā)生故障或配置錯(cuò)誤時(shí),能夠迅速恢復(fù)到之前的工作狀態(tài)。本文將詳細(xì)介紹如何使用Python腳本備份華為
    的頭像 發(fā)表于 08-12 17:50 ?546次閱讀
    使用<b class='flag-5'>Python</b>腳本備份<b class='flag-5'>華為</b><b class='flag-5'>交換機(jī)</b>的配置信息
    RM新时代网站-首页