lvs應用:利用腳本判斷端口存活

check_stats.py

#!/usr/bin/env python
#check lvs port
#
import socket,sys
host = sys.argv[1]
port = sys.argv[2]
def conn  (host,port):
    try:
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.connect((str(host),int(port)))
        s.settimeout(2)
        print 'Server port %s OK!' % port
        sys.exit(0)
    except Exception:
        print 'Server %s port %s not connect!' % (host,port)
        sys.exit(1)
    s.close()
conn(host,port)

配置keepalived.conf

virtual_server 192.168.7.6 80 {
    delay_loop 60
    lb_algo wlc
    lb_kind DR
    protocol TCP
    real_server 192.168.7.15 80 {
    weight 1
    MISC_CHECK {
    misc_path "/shell/check_stats.py 192.168.7.15 80"
    misc_timeout 7
     }
    }
    real_server 192.168.7.16 80 {
    weight 1
    MISC_CHECK {
    misc_path "/shell/check_stats.py 192.168.7.16 80"
    misc_timeout 7
     }
    }
   }


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章