python实现系统状态监测和故障转移实例方法


Posted in Python onNovember 18, 2013
#coding: utf-8
import socket
import select
import time
import os
import threading
def ser():
    s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
    s.bind(("",43244))
    while 1:
        infds,outfds,errfds = select.select([s],[],[],5)
        if infds:
            sms = s.recv(1024)
            if sms=="alived":
                print "peer is alived"
        else:
            print "Can't hear peer!"
            os.system("./failover.sh")
def clt():    
    while 1:
       sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  
       sock.connect(('192.168.10.1', 43244))
       sock.send("alived")
       time.sleep(2)
if __name__=="__main__":
    ser=threading.Thread(target=ser)
    clt=threading.Thread(target=clt)
    ser.start()
    clt.start()
    ser.join()
    clt.join()

failover.sh

#!/bin/bash
vip=8.8.8.8
vip_local=`ifconfig |grep -A 1 "eth0:0" |awk '/inet addr/{print $2}'|cut -d ":" -f2`
if [ ! $vip_local ];then ifconfig eth0:0 $vip netmask 255.255.255.0 up;fi
Python 相关文章推荐
Python通过解析网页实现看报程序的方法
Aug 04 Python
Django卸载之后重新安装的方法
Mar 15 Python
Django框架教程之正则表达式URL误区详解
Jan 28 Python
tensorflow获取变量维度信息
Mar 10 Python
python实现简易内存监控
Jun 21 Python
关于python列表增加元素的三种操作方法
Aug 22 Python
Python生成指定数量的优惠码实操内容
Jun 18 Python
python程序变成软件的实操方法
Jun 24 Python
python 实现将多条曲线画在一幅图上的方法
Jul 07 Python
python实现图像拼接
Mar 05 Python
mac 上配置Pycharm连接远程服务器并实现使用远程服务器Python解释器的方法
Mar 19 Python
python 进制转换 int、bin、oct、hex的原理
Jan 13 Python
python线程池的实现实例
Nov 18 #Python
python批量导出导入MySQL用户的方法
Nov 15 #Python
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
Nov 15 #Python
python实现代理服务功能实例
Nov 15 #Python
Python(Tornado)模拟登录小米抢手机
Nov 12 #Python
Python3实现的腾讯微博自动发帖小工具
Nov 11 #Python
python正则分组的应用
Nov 10 #Python
You might like
如何对PHP程序中的常见漏洞进行攻击(下)
2006/10/09 PHP
php使用for语句输出三角形的方法
2015/06/09 PHP
自动更新作用
2006/10/08 Javascript
借助javascript代码判断网页是静态还是伪静态
2014/05/05 Javascript
jquery的ajax异步请求接收返回json数据实例
2014/06/16 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
2014/10/31 Javascript
js控制网页背景音乐播放与停止的方法
2015/02/06 Javascript
JS重载实现方法分析
2016/12/16 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
JavaScript实用代码小技巧
2018/08/23 Javascript
深入理解NodeJS 多进程和集群
2018/10/17 NodeJs
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
vue中解决微信html5原生ios虚拟键返回不刷新问题
2020/10/20 Javascript
Python编程中的文件读写及相关的文件对象方法讲解
2016/01/19 Python
Python多进程分块读取超大文件的方法
2016/04/13 Python
python if not in 多条件判断代码
2016/09/21 Python
详解Python文件修改的两种方式
2019/08/22 Python
python序列化与数据持久化实例详解
2019/12/20 Python
Python实现剪刀石头布小游戏(与电脑对战)
2019/12/31 Python
Python While循环语句实例演示及原理解析
2020/01/03 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
2020/06/01 Python
浅析HTML5页面元素及属性
2021/01/20 HTML / CSS
Java中会存在内存泄漏吗,请简单描述
2016/12/22 面试题
党员组织关系介绍信
2014/02/13 职场文书
驾驶员安全责任书
2014/07/22 职场文书
党建目标管理责任书
2014/07/25 职场文书
个人遵守党的政治纪律情况对照检查材料思想汇报
2014/09/25 职场文书
2014年环境卫生工作总结
2014/11/24 职场文书
房屋租房协议书范本
2014/12/04 职场文书
酒店服务员岗位职责
2015/02/09 职场文书
庆祝教师节主题班会
2015/08/17 职场文书
体育教师研修感悟
2015/11/18 职场文书
2016春季幼儿园大班开学寄语
2015/12/03 职场文书
2016年社区“6.26”禁毒日宣传活动总结
2016/04/05 职场文书
mysql字符串截取函数小结
2021/04/05 MySQL