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的加密模块md5、sha、crypt使用实例
Sep 28 Python
在Python中处理XML的教程
Apr 29 Python
举例讲解Python中metaclass元类的创建与使用
Jun 30 Python
Python实现生成随机日期字符串的方法示例
Dec 25 Python
Python实现求一个集合所有子集的示例
May 04 Python
Python 使用PIL numpy 实现拼接图片的示例
May 08 Python
Django分页功能的实现代码详解
Jul 29 Python
Django模板导入母版继承和自定义返回Html片段过程解析
Sep 18 Python
如何基于Python + requests实现发送HTTP请求
Jan 13 Python
解决echarts中饼图标签重叠的问题
May 16 Python
QML实现钟表效果
Jun 02 Python
了解一下python内建模块collections
Sep 07 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
自己前几天写的无限分类类
2007/02/14 PHP
php实现把数组按指定的个数分隔
2014/02/17 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
php绘图之加载外部图片的方法
2015/01/24 PHP
php中将一个对象保存到Session中的方法
2015/03/13 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
2020/01/26 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
Yii框架组件的事件机制原理与用法分析
2020/04/07 PHP
javascript 二分法(数组array)
2010/04/24 Javascript
jquery 单引号和双引号的区别及使用注意
2013/07/31 Javascript
js实现交换运动效果的方法
2015/04/10 Javascript
Nodejs学习笔记之测试驱动
2015/04/16 NodeJs
js限制input标签中只能输入中文
2015/06/26 Javascript
举例说明JavaScript中的实例对象与原型对象
2016/03/11 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
js模态对话框使用方法详解
2017/02/16 Javascript
BootStrap数据表格实例代码
2017/09/13 Javascript
angularjs中$http异步上传Excel文件方法
2018/02/23 Javascript
JS实现网站吸顶条
2020/01/08 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
微信小程序实现天气预报功能(附源码)
2020/12/10 Javascript
Python基于pillow判断图片完整性的方法
2016/09/18 Python
浅析PHP与Python进行数据交互
2018/05/15 Python
python中redis查看剩余过期时间及用正则通配符批量删除key的方法
2018/07/30 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
2020/04/01 Python
使用Keras实现Tensor的相乘和相加代码
2020/06/18 Python
基于python实现可视化生成二维码工具
2020/07/08 Python
医院后勤自我鉴定
2013/10/13 职场文书
测绘工程系学生的自我评价
2013/11/30 职场文书
七匹狼男装广告词
2014/03/21 职场文书
高中生操行评语大全
2014/04/25 职场文书
2014年政风行风自查自纠报告
2014/10/21 职场文书
pytorch Dropout过拟合的操作
2021/05/27 Python
Oracle创建只读账号的详细步骤
2021/06/07 Oracle
Golang实现可重入锁的示例代码
2022/05/25 Golang
使用Django框架创建项目
2022/06/10 Python