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多线程http下载实现示例
Dec 30 Python
采用python实现简单QQ单用户机器人的方法
Jul 03 Python
Python中使用HTMLParser解析html实例
Feb 08 Python
python实现unicode转中文及转换默认编码的方法
Apr 29 Python
Python使用回溯法子集树模板解决迷宫问题示例
Sep 01 Python
详解使用 pyenv 管理多个版本 python 环境
Oct 19 Python
Python Nose框架编写测试用例方法
Oct 26 Python
Python中str.join()简单用法示例
Mar 20 Python
python小项目之五子棋游戏
Dec 26 Python
借助Paramiko通过Python实现linux远程登陆及sftp的操作
Mar 16 Python
pycharm实现猜数游戏
Dec 07 Python
Python数据分析入门之教你怎么搭建环境
May 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
yii操作session实例简介
2014/07/31 PHP
php中html_entity_decode实现HTML实体转义
2018/06/13 PHP
php桥接模式应用案例分析
2019/10/23 PHP
静态页面的值传递(三部曲)
2006/09/25 Javascript
JavaScript RegExp方法获取地址栏参数(面向对象)
2009/03/10 Javascript
JavaScript对象、属性、事件手册集合方便查询
2010/07/04 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
Jquery设置attr的disabled属性控制某行显示或者隐藏
2014/09/25 Javascript
PHP实现的各种中文编码转换类分享
2015/01/23 Javascript
JavaScript通过事件代理高亮显示表格行的方法
2015/05/27 Javascript
原生JavaScript实现滚动条效果
2020/03/24 Javascript
详解Javascript继承的实现
2016/03/25 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
2016/06/07 Javascript
Javascript中return的使用与闭包详解
2017/01/11 Javascript
setTimeout学习小结
2017/02/08 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
2017/06/27 Javascript
jQuery使用zTree插件实现可拖拽的树示例
2017/09/23 jQuery
vue.js element-ui validate中代码不执行问题解决方法
2017/12/18 Javascript
微信小程序--获取用户地理位置名称(无须用户授权)的方法
2019/04/29 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
vue form表单post请求结合Servlet实现文件上传功能
2021/01/22 Vue.js
python下函数参数的传递(参数带星号的说明)
2010/09/19 Python
在Python的Django框架中simple-todo工具的简单使用
2015/05/30 Python
python实现自动发送报警监控邮件
2018/06/21 Python
Python中实例化class的执行顺序示例详解
2018/10/14 Python
Python学习笔记之视频人脸检测识别实例教程
2019/03/06 Python
python读取与处理netcdf数据方式
2020/02/14 Python
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
Python 求向量的余弦值操作
2021/03/04 Python
CSS3区域模块region相关编写示例
2015/08/28 HTML / CSS
Europcar比利时:租车
2019/08/26 全球购物
单位办理社保介绍信
2014/01/10 职场文书
演讲主持词
2014/03/18 职场文书
涉外离婚协议书怎么写
2014/11/20 职场文书
读鲁迅先生的经典名言
2019/08/20 职场文书
DIY胆机必读:各国电子管评价
2022/04/06 无线电