基于paramiko的多机器配置文件简单比较脚本

Paramiko多服务器配置文件一致性检查脚本
本文介绍了一种使用Paramiko库在堡垒机上实现多台服务器配置文件比较的方法,旨在确保生产环境中所有机器配置的一致性。通过读取CSV文件中的服务器信息,脚本将逐个检查并对比配置文件内容,对不一致的部分进行记录。后续工作包括将脚本从Python 2.7升级到Python 3.7,优化SSHUtil模块的正则表达式,并处理堡垒机的离线环境下的依赖安装。

实现代码product_compartion


前言

生产上一个模块会部署在很多台服务器上,虽然现在自动化部署可以把配置文件同步推送到多台服务器上,但还是不能保证所有机器上配置文件都一样,所以又整了一个脚本来检查。

实现思路

  1. 所有工作都是在堡垒机上进行的,首先要测试机器是否支持该操作,如果不支持后面就不用看了;先运行测试脚本,查看是否可以登录服务器,查看服务器上的文件内容;
  2. 开4个线程同步进行后面的比较工作,后续是每个线程的工作;
  3. 把同一个模块所有要比较的机器登录配置放在一个csv文件中,读取所有csv,然后一个个模块遍历;
  4. 从csv文件中读取同一个模块所有机器的配置文件;
  5. 在内存中建立一个Map,key是机器的ip,value是这台机器上所有配置文件的内容;
  6. 通过paramiko进入每台机器中,通过channel的方式,su到操作账号上,进行具体的指令;
    代码如下
#登陆machine
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值