paramiko实现远程配置软件脚本

  

这篇文章运用了实例代码展示paramiko实现远程配置软件脚本,代码非常详细,可供感兴趣的小伙伴们参考借鉴,希望对大家有所帮助。

#,- *安康;编码:utf-8  - * -      import  paramiko   import 系统,操作系统   import  datetime   import 子流程   import 时间   import 再保险   import  hashlib      重载(系统)   sys.setdefaultencoding (“utf-8")   os.environ [“PATH"],=,“/usr/地方/jdk18/bin:/usr/地方/sbin:/usr/地方/bin:/sbin:/bin:/usr/sbin:/usr/bin:/根/bin"   os.environ [“LANG"],=,“en_US.UTF-8"      ip_list =, (“10.110.189.217",“10.110.193.106"]         class  pub_filebeat ():      ,,,def  __init__(自我):   ,,,,,,,self.username =,“redis"   ,,,,,,,self.passwd =,“123456”;   ,,,,,,,self.client_ssh =,没有   ,,,,,,,self.sftpcliet =,没有   ,,,,,,,self.port =22   ,,,,,,,self.chan =,没有   ,,,,,,,self.result =,没有         ,,,#,创建一个ssh 链接   ,,,def  create_ssh(自我、ip):   ,,,,,,,self.client_ssh =, paramiko.SSHClient ()   ,,,,,,,self.client_ssh.set_missing_host_key_policy (paramiko.AutoAddPolicy ())   ,,,,,,,self.client_ssh.connect (self.port, ip,还以为,self.username, self.passwd,,超时=5)   ,,,,,,,self.chan =, self.client_ssh.invoke_shell ()   ,,,,,,,self.flag=没有   ,,,,,,,& # 39;& # 39;& # 39;,   ,,,,,,,在现有的ssh链接的基础上获取一个ftp链接   ,,,,,,,方式一,,,:   ,,,,,,,transport =, self.client_ssh.get_transport ()   ,,,,,,,self.sftpcliet =, paramiko.SFTPClient.from_transport(运输)   ,,,,,,,   ,,,,,,,方式二,:   ,,,,,,,self.sftpcliet =, self.client_ssh.open_sftp ()   ,,,,,,,& # 39;& # 39;& # 39;   ,,,,,,#   ,,,,,,,#,transport =, self.client_ssh.get_transport ()   ,,,,,,,#,self.sftpcliet =, paramiko.SFTPClient.from_transport(运输)   ,,,,,,,self.sftpcliet =, self.client_ssh.open_sftp ()      ,,,def 执行(自我、ip):   ,,,,,,,试一试:   ,,,,,,,,,,,self.sendcmd (“, sudo  su 作用;“)   ,,,,,,,,,,,if  self.flag ==, 1:   ,,,,,,,,,,,,,,,self.sendcmd (“redis@yto369")   ,,,,,,,,,,,self.sendcmd (“, cd /home/redis “)   ,,,,,,,,,,,self.sendcmd (“, tar , -zxvf  filebeat623.tar.gz “)   ,,,,,,,,,,,self.sendcmd (“, sed 小姐;& # 39;s/hostip:, 10.1.241.99/hostip:, % s/舌鳎# 39;,filebeat623/filebeat.yml ;,,, %, (ip))   ,,,,,,,,,,,self.sendcmd (“, nohup  filebeat623/filebeat  -e , -c  filebeat623/filebeat.yml 祝辞,info.log  2祝辞,1,,,,)   ,,,,,,,,,,,print “% s  filebeat 部署完成“,%,(ip)   ,,,,,,,except 例外,e:   ,,,,,,,,,,,print  e.message         ,,,def  tranfile(自我):   ,,,,,,,试一试:   ,,,,,,,,,,,self.sftpcliet.put (“F: \ dwchaoyue \麋鹿\/filebeat623.tar.gz",, & # 39;/home/复述filebeat623.tar.gz& # 39;)   ,,,,,,,except 例外,e:   ,,,,,,,,,,,print  e.message   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

paramiko实现远程配置软件脚本