【脚本】利用OPS让交换机自动定时备份配置到服务器

admin 2022年5月17日09:27:45安全开发评论8 views1711字阅读5分42秒阅读模式

转载于公众号:实践技术

作者:diff张

前言:
很多做网络运维的朋友,是不是有这样的需求,就是定时备份交换机的配置,如果没有网管平台,我们通常是通过远程登录交换机,一台一台的手动备份配置,效率很低,要是在交换机上安装一个程序,让程序自动定时备份配置,是不是一个很不错的想法,其实,我们可以通过交换机的开放可编程系统OPS(Open Programmability System)功能,在交换机上安装设备支持的python脚本,实现这一需求。

关于OPS,这里我不讲太多,有兴趣的朋友可以自己搜索相关的资料,这里我们给大家讲解一下怎么通过OPS,实现自动定时备份设备配置。

脚本代码

首先编写好脚本,如下:

# -*- coding: utf-8 -*-
import ops
import sys
import os 
import re
import time

def ops_condition (ops):
  value, time1
 = ops.timer.relative("timer1"5)
  return 0
def ops_execute (ops):
  value, descri_str
 = ops.syslog("backup_cfg begin.""warning""syslog")
  handle, err_desp = ops.cli.open() 
  curtime = time.strftime("%Y%m%d%H%M%S", time.localtime()) 
  result, n11, n21 = ops.cli.execute(handle,"dis cur")
  a = re.search(r'(?<=sysname ).*(?=rn)',result)
  if a:
    sysname = a.group()
  result, n11, n21 = ops.cli.execute(handle,"dis startup")
  a = re.search(r'(?<=Startup saved-configuration file:).*',result)
  if a:
    cfgfile = a.group()
    cfgfile = cfgfile.strip()
  devcfg = cfgfile.split('/')
  devcfg1 = devcfg[1]
  devcfgparts = devcfg1.split('.')
  cmd = "tftp 192.168.1.3 put " + devcfg1 + " " + sysname + curtime + "." + devcfgparts[1]
  value, descri_str = ops.syslog(sysname, "warning""syslog")
  result, n11, n21 = ops.cli.execute(handle,cmd)
  time.sleep(1)
  result = ops.cli.close(handle)
  return 0

脚本准备好以后,上传到交换机的flash:目录,至于怎么上传到交换机,相信大多数网络工程师都会,不会的可以到网上搜一下相关的文章,脚本上传好以后dir一下,看看刚才上传的文件是否存在,这里可以看到文件已上传好

【脚本】利用OPS让交换机自动定时备份配置到服务器
运行脚本:

接下来在交换机上运行以下命令安装python脚本,配置python脚本助手:

ops install file backup_cfg.py
sys
  ops
    script-assistant python backup_cfg.py
tftp服务器收集:
然后搭建tftp服务器,通过tftp服务器接收python脚本自动定时备份的配置【脚本】利用OPS让交换机自动定时备份配置到服务器

下面是交换机自动备份的配置,以时间命名每个配置文件,我这里为了演示效果,每5秒钟备份一次配置,实际可以更改为每天或者每月某个时间。

【脚本】利用OPS让交换机自动定时备份配置到服务器
通过OPS还可以实现很多自动化运维功能。
视频演示:

【脚本】利用OPS让交换机自动定时备份配置到服务器


【脚本】利用OPS让交换机自动定时备份配置到服务器

【脚本】利用OPS让交换机自动定时备份配置到服务器

原文始发于微信公众号(释然IT杂谈):【脚本】利用OPS让交换机自动定时备份配置到服务器

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月17日09:27:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  【脚本】利用OPS让交换机自动定时备份配置到服务器 http://cn-sec.com/archives/1013665.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: