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

雨越下越大,往远处看去,好象一块薄雾遮住了视线,灰蒙蒙一片,树啊,房子啊,什么也看不清了。


#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实现系统状态监测和故障转移实例方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: python