色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

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

網絡技術干貨圈 ? 來源:網絡技術干貨圈 ? 2024-08-12 17:50 ? 次閱讀

轉載請注明以下內容:

來源:公眾號【網絡技術干貨圈】

作者:圈圈

ID:wljsghq

在現代網絡管理中,備份交換機的配置信息是一項至關重要的任務。備份可以確保在交換機發生故障或配置錯誤時,能夠迅速恢復到之前的工作狀態。本文將詳細介紹如何使用Python腳本備份華為交換機的配置信息。

在開始編寫Python腳本之前,我們需要準備以下環境:

Python環境:確保系統已經安裝了Python 3.x。如果沒有,可以從Python官方網站https://www.python.org下載并安裝。

Paramiko庫:這是一個用于SSH連接的Python庫??梢允褂靡韵旅畎惭b:

pipinstallparamiko

wKgaoma52uiAJoXeAAIKYCVp85o057.jpg

華為交換機:本文假設你已經有一臺華為交換機,并且可以通過SSH進行訪問。

交換機配置文件的存儲位置:一個可以存儲備份文件的目錄。

備份華為交換機配置文件的基本步驟如下:

通過SSH連接到交換機。

執行相應的命令獲取配置文件。

將配置文件保存到本地。

編寫Python腳本

接下來,我們將詳細編寫一個Python腳本來實現上述步驟。

導入必要的庫

首先,我們需要導入必要的Python庫:

importparamiko
importos
fromdatetimeimportdatetime

wKgaoma52vKAW_KDAAAhBo2pDzc147.jpg

配置連接信息

我們需要配置SSH連接的信息,包括交換機的IP地址、用戶名和密碼等:

hostname='交換機的IP地址'
username='用戶名'
password='密碼'
port=22#默認SSH端口

wKgaoma52vuAbvh-AAA6Er-TR4o046.jpg

創建SSH連接

使用Paramiko庫創建SSH連接:

defcreate_ssh_client(hostname,port,username,password):
client=paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname,port,username,password)
returnclient

wKgaoma52wWAZhhjAACKGveutJw463.jpg

獲取交換機配置

連接成功后,我們需要執行交換機的命令來獲取配置文件。華為交換機常用的命令是display current-configuration。

defget_switch_configuration(client):
stdin,stdout,stderr=client.exec_command('displaycurrent-configuration')
returnstdout.read().decode('utf-8')

wKgZoma52w6ASIrUAADDLBRjmyE656.jpg

保存配置文件

我們需要將獲取到的配置文件保存到本地。為了便于管理,通常會按照日期命名備份文件。

defsave_configuration(config,backup_dir):
ifnotos.path.exists(backup_dir):
os.makedirs(backup_dir)
filename=os.path.join(backup_dir,f'config_backup_{datetime.now().strftime("%Y%m%d%H%M%S")}.txt')
withopen(filename,'w')asfile:
file.write(config)
print(f'Configurationsavedto{filename}')

wKgaoma52x6AKu_BAAE8kWlnaSc108.jpg

完整的Python腳本

將上述步驟整合成一個完整的Python腳本:

importparamiko
importos
fromdatetimeimportdatetime

#配置信息
hostname='交換機的IP地址'
username='用戶名'
password='密碼'
port=22#默認SSH端口
backup_dir='備份文件存儲目錄'

#創建SSH連接
defcreate_ssh_client(hostname,port,username,password):
client=paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname,port,username,password)
returnclient

#獲取交換機配置
defget_switch_configuration(client):
stdin,stdout,stderr=client.exec_command('displaycurrent-configuration')
returnstdout.read().decode('utf-8')

#保存配置文件
defsave_configuration(config,backup_dir):
ifnotos.path.exists(backup_dir):
os.makedirs(backup_dir)
filename=os.path.join(backup_dir,f'config_backup_{datetime.now().strftime("%Y%m%d%H%M%S")}.txt')
withopen(filename,'w')asfile:
file.write(config)
print(f'Configurationsavedto{filename}')

#主函數
defmain():
try:
client=create_ssh_client(hostname,port,username,password)
config=get_switch_configuration(client)
save_configuration(config,backup_dir)
exceptExceptionase:
print(f'Anerroroccurred:{e}')
finally:
client.close()

if__name__=="__main__":
main()

腳本的執行與驗證

修改腳本配置:在腳本中填入實際的交換機IP地址、用戶名、密碼和備份文件存儲目錄。

運行腳本:在終端或命令提示符中運行腳本:

pythonbackup_huawei_switch.py

驗證結果:檢查備份目錄,確認配置文件是否正確保存。

腳本的優化與擴展

增加日志記錄:可以添加日志功能,記錄每次備份的詳細信息。

importlogging

logging.basicConfig(filename='backup.log',level=logging.INFO,format='%(asctime)s-%(message)s')

defsave_configuration(config,backup_dir):
ifnotos.path.exists(backup_dir):
os.makedirs(backup_dir)
filename=os.path.join(backup_dir,f'config_backup_{datetime.now().strftime("%Y%m%d%H%M%S")}.txt')
withopen(filename,'w')asfile:
file.write(config)
logging.info(f'Configurationsavedto{filename}')
print(f'Configurationsavedto{filename}')

增加錯誤處理:增強錯誤處理,確保在連接失敗或命令執行失敗時能夠適當處理。

defmain():
try:
client=create_ssh_client(hostname,port,username,password)
config=get_switch_configuration(client)
save_configuration(config,backup_dir)
exceptparamiko.AuthenticationException:
print('Authenticationfailed,pleaseverifyyourcredentials')
exceptparamiko.SSHExceptionassshException:
print(f'UnabletoestablishSSHconnection:{sshException}')
exceptExceptionase:
print(f'Anerroroccurred:{e}')
finally:
client.close()

定時任務:可以將腳本設置為定時任務,定期自動備份配置文件。

Linux上,可以使用cron定時任務:

crontab-e

添加如下任務,每天凌晨2點執行備份:

02***/usr/bin/python3/path/to/backup_huawei_switch.py

在Windows上,可以使用任務計劃程序(Task Scheduler)。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 華為
    +關注

    關注

    216

    文章

    34411

    瀏覽量

    251499
  • 交換機
    +關注

    關注

    21

    文章

    2637

    瀏覽量

    99530
  • python
    +關注

    關注

    56

    文章

    4792

    瀏覽量

    84627
  • 腳本
    +關注

    關注

    1

    文章

    389

    瀏覽量

    14858

原文標題:如何使用Python腳本備份華為交換機的配置信息?

文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    華為路由器交換機VLAN配置實例

    華為路由器交換機VLAN配置實例[hide]華為路由器交換機VLAN配置實例使用4臺PC(pc多
    發表于 05-25 00:21

    交換機GVRP配置

    交換機GVRP配置
    發表于 12-27 16:15 ?0次下載

    交換機GMRP配置

    交換機GMRP配置
    發表于 12-27 16:15 ?0次下載

    交換機路由配置

    交換機路由配置
    發表于 12-27 16:31 ?0次下載

    交換機基礎配置

    交換機基礎配置
    發表于 12-27 16:50 ?0次下載

    交換機STP配置

    交換機STP配置
    發表于 12-27 16:46 ?0次下載

    華為交換機

    華為交換機
    發表于 03-24 14:17 ?5次下載

    光纖交換機的種類_光纖交換機配置

    本文主要介紹了光纖交換機的種類和光纖交換機配置。
    發表于 11-30 16:04 ?2196次閱讀

    交換機的6種配置模式

    我們在配置交換機的時候首先要了解的就是交換機命令模式,小編用Cisco思科交換機為例帶大家了解交換機的6種
    的頭像 發表于 09-26 15:01 ?9220次閱讀

    如何通過Python腳本批量采集華為交換機配置

    通過學習python網絡運維自動化減少重復無意義的工作量,本次實驗雖然只是一條命令,通過display current-configuration采集設備配置,但是在有大量設備需要采集配置文件時,又
    的頭像 發表于 01-09 10:32 ?4989次閱讀

    交換機最基本的配置與使用方法

    退到上一層模式用“exit”,要退到特權模式用“end”。 查看交換機配置文件信息show startup-config;當前所有配置信息show running-config
    的頭像 發表于 05-04 17:21 ?2287次閱讀
    <b class='flag-5'>交換機</b>最基本的<b class='flag-5'>配置</b>與使用方法

    華為三層交換機配置實例

    有朋友討論華為三層交換機配置問題,今天小編也整理了下華為交換機的文章,大家來一起學習交流下!
    的頭像 發表于 06-05 11:19 ?1337次閱讀
    <b class='flag-5'>華為</b>三層<b class='flag-5'>交換機</b><b class='flag-5'>配置</b>實例

    華為交換機如何批量清除接口配置信息

    華為交換機如何批量清除接口配置信息
    的頭像 發表于 08-14 10:43 ?3133次閱讀

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

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

    利用Python腳本登錄到交換機并創建VLAN

    本文將詳細介紹如何利用Python腳本登錄到交換機并創建VLAN。
    的頭像 發表于 08-12 17:59 ?575次閱讀
    主站蜘蛛池模板: 麻豆XXXX乱女少妇精品-百度| 三级貂蝉艳史 在线观看| 成人精品在线视频| 中国特级黄色大片| 午夜福利免费体检区| 欧美性爱 成人| 妈妈的职业3完整版在线播放| 含羞草国产亚洲精品岁国产精品| 99久久国产露脸精品国产麻豆| 亚洲一级电影| 亚在线观看免费视频入口| 日韩午夜中文字幕电影| 欧美另类极品videosbest| 美国69xxxx59| 毛茸茸womansex| 蜜桃传媒视频| 麻豆一二三区果冻| 恋夜影视列表免费安卓手机版| 国产中文字幕一区| 精品一区二区免费视频蜜桃网| 果冻传媒视频在线播放| 国模玲玲自拍337p| 精品久久久噜噜噜久久7| 精品人妻一区二区三区视频53 | 91热久久免费精品99| 2017年伦理片免费观看| 67194成在线观看免费| 99国产精品久久| 妓女嫖客叫床粗话对白| 国产欧美二区综合| 久久黄色录像| 嫩草影院久久精品| 日韩成人在线视频| 亚洲精品黄色| 8x8x我要打机飞在线观看| 成人影院午夜久久影院| 黄色三级三级免费看| 嫩草影院精品视频在线观看| 手机在线免费| 伊人色综合久久天天| 仓井空torrent|