本文作者:bang

交换机配置自动备份脚本(现网环境)

bang 2021-06-28 161
交换机配置自动备份脚本(现网环境)摘要: 思路1、使用python的netmiko模块对华为交换机进行配置 备份2、在centos7上使用crontab计划任务配置每周自动备份一次配置文件配置1、准备一台centos7设备...

思路

1、使用python的netmiko模块对华为交换机进行配置 备份

2、在centos7上使用crontab计划任务配置每周自动备份一次配置文件

配置

1、准备一台centos7设备,安装好python3.7以及安装好netmiko模块(自行百度)

2、输入一下配置,并且保存为文件

from netmiko import ConnectHandler

import sys

import time

from datetime import datetime

import os


##获取当前时间的年月日

file_time = time.strftime("%Y-%m-%d", time.localtime())

##创建文件夹

##创建实时时间文件夹

def mkdir(file_time):

folder = os.path.exists(file_time)

if not folder: # 判断是否存在文件夹如果不存在则创建为文件夹

os.makedirs(file_time) # makedirs 创建文件时如果路径不存在会创建这个路径


mkdir(file_time)



#通过这个函数可以切割各个部分然后通过循环赋值给每一个变量

f = open('/root/HW-Config/ip2.txt', 'r', encoding='UTF-8')

line = 'A'

print('正在采集设备配置,请稍等......')

while line != "":

line = f.readline()

time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

while line:

a = line.split()

ip = a[:1]

username = a[1:2]

password = a[2:3]

line = f.readline()

device = ConnectHandler(device_type='huawei', ip=ip[0], username=username[0], password=password[0])

output = device.send_command('dis cu')

file_name = open('%s/%s-%s.log' % (file_time, ip[0], time), "w+")

print(output, file=file_name, flush=True)

#print(output, file=sys.stdout)

print('已采集%s' % ip[0])

device.disconnect()

f.close()

print('已全部采集成功')

交换机配置自动备份脚本(现网环境)

python保存配置文件代码部分

注意:代码中提到了一个ip2.txt.用来存放ip地址以及账号密码,,格式如下

192.168.1.1 admin admin

192.168.1.2 admin admin

有多少都写进去即可

3、使用crontab计划任务

crontab -e #进入计划任务编辑页面

交换机配置自动备份脚本(现网环境)

00 10 * * 0 source ~/.bashrc && cd /root/HW-Config/ && /usr/bin/python3 /root/HW-Config/HW-Config-backup.py

从前到后解释一下这条命令

00 -----> 分钟(0-59)

10 -----> 小时(0-23)

* ------> 天(1-31)

* ------> 月(1-12)

0-------> 一星期内的天(0~6,0为星期天)

所以我这个是每个月的每一周日都进行配置备份

source ~/.bashrc && cd /root/HW-Config/ && /usr/bin/python3

上面的命令是使用哪一个解释器,因为centos7自带python2.7,防止centos7找错解释器,结果运行不了。所以我们要指定python3.7

cd /root/HW-Config/ #这个是因为如果直接运行会保存配置文件到用户目录下,用户目录下会有比较多文件,对于新手来说比较难查找,所以直接保存运行目录下

/root/HW-Config/HW-Config-backup.py

这个是需要执行的python文件,使用绝对路径比较稳定

4、执行后结果

交换机配置自动备份脚本(现网环境)

交换机配置自动备份脚本(现网环境)

配置文件就是后两个

这样就结束啦,每周就会自动备份文件啦

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享