python写的一个服务器自动巡检工具

本文介绍了一个使用Python编写的服务器自动巡检工具,该工具能够帮助管理员定期检查服务器状态,确保系统的稳定运行。
摘要由CSDN通过智能技术生成
因为公司服务器需要每半个月巡检一次,还要将巡检结果生成图片贴到巡检报告中,每次手动操作相当麻烦。恰好刚学python,于是使用python和java写了一个半自动化的程序,javaq的作用是为了生成巡检图片。python可以自动依次登录服务器,执行巡检并在本地生成文本格式的巡检结果,java读取这些文本巡检结果生成图片。

下面是代码,欢迎讨论。
#!/usr/bin/evn python
#*-* encoding:utf-8 -*-
#Filename:ssh.py
#自动登录服务器,实现服务器巡检工作
import os
import sys
import paramiko

#设置一下字符编码
reload(sys)
sys.setdefaultencoding('utf-8')

#使用public key的登录服务器,将巡检结果输出到特定的目录中
def login_by_pubkey(serverHost,serverPort,userName,keyFile):
		known_host = "~/.ssh/known_hosts"
	ssh = paramiko.SSHClient();
	ssh.load_system_host_keys(known_host)
	#设置默认接收主机信任的策略,但是可能报告“不信任主机的”异常
	ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

	print 'Connectting host %s......' % serverHost
	ssh.connect(serverHost,serverPort,username = userName,key_filename = keyFile)
	print 'Connect host %s sucess' % 
  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个Python的批量交换机巡检工具的示例代码: ```python import paramiko # 定义交换机列表,每个元素是一个字典,包含交换机的IP地址、用户名和密码 switches = [ {'ip': '192.168.1.1', 'username': 'admin', 'password': 'password'}, {'ip': '192.168.1.2', 'username': 'admin', 'password': 'password'}, {'ip': '192.168.1.3', 'username': 'admin', 'password': 'password'} ] # 定义需要执行的命令列表 commands = [ 'show version', 'show interface status', 'show interfaces gigabitEthernet 1/0/1', 'show ip interface brief' ] # 遍历交换机列表,并连接每个交换机 for switch in switches: ip = switch['ip'] username = switch['username'] password = switch['password'] # 创建SSH客户端对象,并连接交换机 client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(ip, username=username, password=password) # 执行每个命令,并打印输出 for command in commands: stdin, stdout, stderr = client.exec_command(command) output = stdout.read().decode() print('Output for command {} on switch {}:'.format(command, ip)) print(output) # 断开SSH连接 client.close() ``` 以上代码使用了Paramiko库来与交换机进行SSH连接,并执行命令。你需要替换代码中的交换机IP地址、用户名和密码,以及需要执行的命令列表。执行代码后,将会在控制台上输出每个命令在每个交换机上的输出。你可以将其修改为将输出保存到文件中,或者将输出发送到指定的邮箱等其他操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值