import paramiko

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) def direct_server():
ssh.connect('192.168.200.12', 22, 'root', 'root',timeout=3)
stdin, stdout, stderr = ssh.exec_command('ipvsadm -C;'
'ipvsadm -A -t 192.168.200.250:80 -s wrr;'
'ipvsadm -a -t 192.168.200.250:80 -r 192.168.254.20:80 -w 1 -g;'
'ipvsadm -a -t 192.168.200.250:80 -r 192.168.254.25:80 -w 2 -g;'
'ifconfig ens33:0 192.168.200.250 broadcast 192.168.200.250 netmask 255.255.255.255 up;'
'route add -host 192.168.200.250 dev ens33:0')
print(stderr.read().decode('utf-8'))
print(stdout.read().decode('utf-8'))
print('dicret_server配置完成!!!') def real_server1():
ssh.connect('192.168.200.20', 22, 'root', 'root', timeout=3)
stdin, stdout, stderr = ssh.exec_command('ifconfig lo:0 192.168.200.250 broadcast 192.168.200.250 netmask 255.255.255.255 up;'
'route add -host 192.168.200.250 dev lo:0;'
'echo "1">/proc/sys/net/ipv4/conf/lo/arp_ignore;'
'echo "2">/proc/sys/net/ipv4/conf/lo/arp_announce;'
'echo "1">/proc/sys/net/ipv4/conf/all/arp_ignore;'
'echo "2">/proc/sys/net/ipv4/conf/all/arp_announce;'
'service httpd restart')
print(stderr.read().decode('utf-8'))
print(stdout.read().decode('utf-8'))
print('real_server1配置完成!!!') def real_server2():
ssh.connect('192.168.200.25', 22, 'root', 'root', timeout=3)
stdin, stdout, stderr = ssh.exec_command(
'ifconfig lo:0 192.168.200.250 broadcast 192.168.200.250 netmask 255.255.255.255 up;'
'route add -host 192.168.200.250 dev lo:0;'
'echo "1">/proc/sys/net/ipv4/conf/lo/arp_ignore;'
'echo "2">/proc/sys/net/ipv4/conf/lo/arp_announce;'
'echo "1">/proc/sys/net/ipv4/conf/all/arp_ignore;'
'echo "2">/proc/sys/net/ipv4/conf/all/arp_announce;'
'service httpd restart')
print(stderr.read().decode('utf-8'))
print(stdout.read().decode('utf-8'))
print('real_server2配置完成!!!') def main():
direct_server()
real_server1()
real_server2()
ssh.close() if __name__ == '__main__':
main()

最新文章

  1. 【记录】ASP.NET MVC RegisterBundles
  2. ios pod库更新到1.0或1.0.1之正确修改podfile文件
  3. 0016 Java学习笔记-异常-如果try-catch-finally中都存在return语句会怎样?
  4. [Copy]Bird's booklist
  5. SQL 2000/2005/2008 收缩日志方法
  6. ava如何实现系统监控、系统信息收集、sigar开源API的学习(转)
  7. unity3d GameObject.Find 严格区分大小写的
  8. mvc4 基于Area实现插件模块化开发
  9. 【转】如何在ubuntu12.04设置adb驱动
  10. Servlet -- 跳转到页面后的绝对路径与相对路径的问题
  11. C控制语句--分支和跳转
  12. MyBatis Mapper.xml文件中#{selector}和${selector}的区别
  13. Cosmos OpenSSD架构分析--FSC
  14. 访问远程MySQL数据库的方法
  15. Excel—文本函数
  16. odoo按钮触发下载文件
  17. Elasticsearch分片优化
  18. Linux开机自动挂载存储的两种方式
  19. 1127 ZigZagging on a Tree (30 分)
  20. [python] 修改Tkinter 的默认图标

热门文章

  1. 入职小白随笔之Android四大组件——活动详解(activity)
  2. 利用百度AI快速开发出一款“问答机器人”并接入小程序
  3. 报错解决 unable to unroll loop, loop does not appear to terminate in a timely manner (994 iterations) or unrolled loop is too large, use the [unroll(n)] attribute to force an exact higher number
  4. Js实现回车登录,监听回车事件
  5. 精通awk系列(12):awk getline用法详解
  6. C#调试程序——断点+几种观察数据的方法
  7. 系统架构师考试知识点mp3资料免费下载
  8. 由“RangeError: Invalid status code: 0”错误所引发的思考
  9. 【Gradle】Android Gradle 多渠道构建
  10. centos重启出现type Control-D to continue【fsck使用】