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实现的一个p2p文件传输实例
Jun 04 Python
从零开始学Python第八周:详解网络编程基础(socket)
Dec 14 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
Feb 16 Python
python批量创建指定名称的文件夹
Mar 21 Python
python3.7环境下安装Anaconda的教程图解
Sep 10 Python
python pycharm的安装及其使用
Oct 11 Python
Python函数式编程实例详解
Jan 17 Python
Django认证系统user对象实现过程解析
Mar 02 Python
Python 实现网课实时监控自动签到、打卡功能
Mar 12 Python
Pycharm github配置实现过程图解
Oct 13 Python
python如何控制进程或者线程的个数
Oct 16 Python
python中pyqtgraph知识点总结
Jan 26 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后台多用户权限组思路与实现程序代码分享
2012/02/13 PHP
解析PHP对现有搜索引擎的调用
2013/06/25 PHP
PHP实现图片不变型裁剪及图片按比例裁剪的方法
2016/01/14 PHP
smarty模板的使用方法实例分析
2019/09/18 PHP
JavaScript 新手24条实用建议[TUTS+]
2009/06/21 Javascript
jQuery 连续列表实现代码
2009/12/21 Javascript
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
ExtJS PropertyGrid中使用Combobox选择值问题
2010/06/13 Javascript
精心挑选的15个jQuery下拉菜单制作教程
2012/06/15 Javascript
Event altKey,ctrlKey,shiftKey属性解析
2013/12/18 Javascript
document.write的几点使用心得
2014/05/14 Javascript
通过JS来动态的修改url,实现对url的增删查改
2014/09/01 Javascript
JavaScript中的方法调用详细介绍
2014/12/30 Javascript
javascript入门教程基础篇
2015/11/16 Javascript
Webpack中css-loader和less-loader的使用教程
2017/04/27 Javascript
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
2019/09/02 Javascript
js实现双人五子棋小游戏
2020/05/28 Javascript
js实现淘宝浏览商品放大镜功能
2020/10/28 Javascript
Python2和Python3中print的用法示例总结
2017/10/25 Python
python获取当前目录路径和上级路径的实例
2018/04/26 Python
python切片(获取一个子列表(数组))详解
2019/08/09 Python
使用python写的opencv实时监测和解析二维码和条形码
2019/08/14 Python
Python笔记之工厂模式
2019/11/20 Python
在TensorFlow中实现矩阵维度扩展
2020/05/22 Python
opencv+pyQt5实现图片阈值编辑器/寻色块阈值利器
2020/11/13 Python
深入解读CSS3中transform变换模型的渲染
2016/05/27 HTML / CSS
HTML5 drag和drop具体使用详解
2021/01/18 HTML / CSS
台湾饭店和机票预订网站:Expedia台湾
2016/08/05 全球购物
挪威手表购物网站:Klokker
2016/09/19 全球购物
Mytheresa美国官网:德国知名的女性奢侈品电商
2017/05/27 全球购物
华三通信H3C面试题
2015/05/15 面试题
拾金不昧的表扬信
2014/01/16 职场文书
环保建议书300字
2014/05/14 职场文书
节水口号标语
2014/06/19 职场文书
CSS3实现的水平标题菜单
2021/04/14 HTML / CSS