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 相关文章推荐
使用Python3中的gettext模块翻译Python源码以支持多语言
Mar 31 Python
python脚本爬取字体文件的实现方法
Apr 29 Python
python+opencv轮廓检测代码解析
Jan 05 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
Oct 11 Python
使用python进行广告点击率的预测的实现
Jul 04 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
Aug 08 Python
python使用pymongo与MongoDB基本交互操作示例
Apr 09 Python
Python unittest discover批量执行代码实例
Sep 08 Python
如何完美的建立一个python项目
Oct 09 Python
Python应用自动化部署工具Fabric原理及使用解析
Nov 30 Python
Python中过滤字符串列表的方法
Dec 22 Python
Python超详细分步解析随机漫步
Mar 17 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
php5 pdo新改动加载注意事项
2008/09/11 PHP
PHP的可变变量名的使用方法分享
2012/02/05 PHP
PHP中定义数组常量(array常量)的方法
2014/11/17 PHP
JavaScript实现Sleep函数的代码
2007/03/04 Javascript
JS高级笔记
2011/07/13 Javascript
JavaScript判断用户是否对表单进行了修改的方法
2015/03/18 Javascript
JavaScript给按钮绑定点击事件(onclick)的方法
2015/04/07 Javascript
js实现简单折叠、展开菜单的方法
2015/08/28 Javascript
JS实现仿微博可关闭弹出层效果
2015/09/21 Javascript
JavaScript继承学习笔记【新手必看】
2016/05/10 Javascript
React入门教程之Hello World以及环境搭建详解
2017/07/11 Javascript
element ui里dialog关闭后清除验证条件方法
2018/02/26 Javascript
通过jquery toggleClass()属性制作文章段落更改背景颜色
2018/05/21 jQuery
javascript实现倒计时效果
2020/02/17 Javascript
小程序实现图片移动缩放效果
2020/05/26 Javascript
javascript实现前端成语点击验证优化
2020/06/24 Javascript
[02:12]Dota 2 推出全新英雄—— 电炎绝手
2019/08/23 DOTA
[55:26]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第一场 2月23日
2021/03/11 DOTA
Python学习笔记之open()函数打开文件路径报错问题
2018/04/28 Python
Tensorflow卷积神经网络实例
2018/05/24 Python
PyTorch中的C++扩展实现
2020/04/02 Python
Python实现计算图像RGB均值方式
2020/06/04 Python
HTML5 Canvas API中drawImage()方法的使用实例
2016/03/25 HTML / CSS
美国知名女性服饰品牌:New York & Company
2017/03/23 全球购物
美国照明、家居装饰和家具购物网站:Bellacor
2017/09/20 全球购物
Hotels.com加拿大:领先的在线住宿网站
2018/10/05 全球购物
离婚协议书怎么写
2014/09/12 职场文书
庆祝国庆节标语
2014/10/09 职场文书
离婚协议书应该怎么写
2014/10/12 职场文书
西安导游词
2015/02/12 职场文书
家长高考寄语
2015/02/27 职场文书
休学证明范本
2015/06/19 职场文书
会计主管竞聘书
2015/09/15 职场文书
Pytest之测试命名规则的使用
2021/04/16 Python
java调用Restful接口的三种方法
2021/08/23 Java/Android
详解TypeScript的基础类型
2022/02/18 Javascript