亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > CentOS > 正文

haproxy+keepalived負載均衡之主備切換(centos)

2020-06-21 13:12:11
字體:
來源:轉載
供稿:網友
VIP: 192.168.1.100
Master: 192.168.1.238
Slave: 192.168.1.239
真實IP:
RIP1: 192.168.1.235
RIP2: 192.168.1.236

以下為安裝步驟
第一步:安裝haproxy
下載http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.18.tar.gz
#tar zxvf haproxy-1.4.18.tar.gz
#make TARGET=linux26
#make install
第二步:安裝ipvs
根據ipvs官網介紹,不同版本內核適用的ipvs版本不一樣。http://www.linuxvirtualserver.org/software/ipvs.html
2.6.18 適用于1.24的各個版本
ipvsadm-1.24-6.src.rpm (for kernel between 2.6.10 and 2.6.27.4) - December 10, 2005
ipvsadm-1.24-5.src.rpm (for 1.2.0 or later) - October 27, 2004
ipvsadm-1.24-4.src.rpm (for 1.1.8 or later) - January 10, 2004
ipvsadm-1.24-3.src.rpm (for 1.1.8 or later) - December 20, 2003
ipvsadm-1.24.tar.gz - December 10, 2005
安裝之前,軟連接系統內核目錄
ln -s /usr/src/kernels/2.6.18-194.11.3.el5-i686/ /usr/src/linux
查看系統當前的內核版本:
uname -r
2.6.18-164.el5

有時你找不到這個內核的路徑,系統安裝后并沒有kernerls的目錄
解決方法:yum install kernel-devel
接下來在進行連接 編譯 就ok了!

我們使用最新的 ipvsadm-1.24.tar.gz,下載安裝。
tar zxvf ipvsadm-1.24.tar.gz
cd ipvsadm-1.24
make
make install

第三步,安裝keepalived
從http://www.keepalived.org上下載最新的keepalived-1.2.2.tar.gz。
tar zxvf keepalived-1.2.2.tar.gz
cd keepalived-1.2.2
./configure
make
make install
安裝完畢。配置
(1):
cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
ln -s /usr/local/sbin/keepalived /usr/sbin/
service keepalived start
如果安裝時的編譯參數為: ./configure --prefix=/usr/local/keepalived
則操作步驟如下:
cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/
service keepalived start

以下為詳細的配置文件 

二、haproxy
(1)、haproxy配置文件 haproxy.cfg
global
daemon
chroot /usr/local/haproxy
maxconn 256
user haproxy
group haproxy
log-send-hostname xiaokk.com
log-tag my_xiaokk
nbproc 1
pidfile /var/run/haproxy.pid
log 127.0.0.1 local0 info
defaults
maxconn 256
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
timeout check 2000
retries 3
option httpclose
option httplog
option dontlognull
option forwardfor
option redispatch
option abortonclose
frontend http-www
bind 192.168.1.100:80
acl ha_policy hdr_reg(host) -i ^(www.test-haproxy.com|test-haproxy.com|demo.test-haproxy.com|www.hellobaby.com)
acl ha_baby hdr_dom(host) -i hellobaby.com
use_backend ha_www if ha_policy
use_backend ha_www if ha_baby
log 127.0.0.1 local0 info
listen admin_status
bind 192.168.1.100:1080
mode http
log 127.0.0.1 local0 info
stats uri /admin?status
stats refresh 30s
stats realm Haproxy/ Admin/ Center
stats auth admin:admin
stats hide-version
backend ha_www
mode http
balance source
cookie SERVERID
option httpchk HEAD /index.html
server w1 192.168.1.235:80 cookie 1 check inter 1500 rise 3 fall 3 weight 1
server w2 192.168.1.236:85 cookie 1 check inter 1500 rise 3 fall 3 weight 2
(2)、haproxy啟卻腳本 haproxy.sh

#!/bin/sh
#
# chkconfig: - 85 15
# description: HA-Proxy is a TCP/HTTP reverse proxy which is particularly /
# suited for high availability environments.
#
# processname: haproxy
# config: /usr/local/haproxy/conf/haproxy.cfg
# pidfile: /var/run/haproyx.pid
#

# Source function library.
if [ -f /etc/init.d/functions ]; then
. /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ]; then
. /etc/rc.d/init.d/functions
else
exit 0
fi

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up
[ ${NETWORKING} = "no" ] && exit 0

[ -f /usr/local/haproxy/conf/haproxy.cfg ] || exit 1

RETVAL=0

# start Haproxy
start() {
/usr/local/haproxy/sbin/haproxy -c -q -f /usr/local/haproxy/conf/haproxy.cfg
if [ $? -ne 0 ]; then
echo "Errors found in configuration file."
return 1
fi

echo -n "Starting Haproxy: "
daemon /usr/local/haproxy/sbin/haproxy -D -f /usr/local/haproxy/conf/haproxy.cfg -p /var/run/haproxy.pid
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/haproxy
return $RETVAL
}

# stop Haproxy
stop() {
echo -n "Shutting down Haproxy: "
killproc haproxy -USR1
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/haproxy
[ $RETVAL -eq 0 ] && rm -f /var/run/haproxy.pid
return $RETVAL
}

# restart Haproxy
restart() {
/usr/local/haproxy/sbin/haproxy -c -q -f /usr/local/haproxy/conf/haproxy.cfg
if [ $? -ne 0 ]; then
echo "ERR found in configuration file, check it with 'haproxy check'."
return 1
fi
stop
start
}

# check haproxy
check() {
/usr/local/haproxy/sbin/haproxy -c -q -V -f /usr/local/haproxy/conf/haproxy.cfg
}

# rsstatus
rhstatus() {
status haproxy
}

# condrestart
condrestart() {
[ -e /var/lock/subsys/haproxy ] && restart || :
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
reload)
restart
;;
condrestart)
condrestart
;;
status)
rhstatus
;;
check)
check
;;
*)
echo $"Usage: haproxy {start|stop|restart|reload|condrestart|status|check}"
RETVAL
esac

exit $RETVAL

三、keepalived配置文件
Master的配置文件:
! Configuration File for keepalived
global_defs {
router_id LVS_1
}
vrrp_script chk_haproxy {
script "/etc/keepalived/check_haproxy.sh"
interval 2
weight 2
}
vrrp_instance VI_1 {
state MASTER
priority 99
advert_int 1
virtual_router_id 50
garp_master_delay 1
interface eth0
authentication {
auth_type PASS
auth_pass Kxiaokk345Pix
}
track_interface {
eth0
}
virtual_ipaddress {
192.168.1.100
}
track_script {
chk_haproxy
}
notify_master "/etc/keepalived/mailnotify.py master"
notify_backup "/etc/keepalived/mailnotify.py backup"
notify_fault "/etc/keepalived/mailnotify.py fault"
}

Slave的配置文件
! Configuration File for keepalived
global_defs {
router_id LVS_2
}
vrrp_script chk_haproxy {
script "/etc/keepalived/check_haproxy.sh"
interval 5
weight 2
}
vrrp_instance VI_1 {
state BACKUP
priority 96
advert_int 1
virtual_router_id 50
garp_master_delay 1
interface eth0
authentication {
auth_type PASS
auth_pass Kxiaokk345Pix
}
track_interface {
eth0
}
virtual_ipaddress {
192.168.1.100
}

track_script {
chk_haproxy
}
notify_master "/etc/keepalived/mailnotify.py master"
notify_backup "/etc/keepalived/mailnotify.py backup"
notify_fault "/etc/keepalived/mailnotify.py fault"
}
###### --- haproxy存活狀態檢測腳本
#!/bin/bash
#
# desc: check haproxy service
#
A=`ip address show eth0 | grep 192.168.1.100 | wc -l`
B=`ps -C haproxy --no-heading | wc -l`

if [ $A -eq 1 ]; then
if [ $B -eq 0 ]; then
/usr/local/haproxy/haproxy.sh start
sleep 3
fi
fi
######----

主備切換時郵件提醒程序(此程序源自litus,有小改動,調試通過)
#!/usr/bin/python
#coding: utf-8
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
from email.MIMEImage import MIMEImage
from email.Header import Header
import sys
import smtplib

#-------------------------------
# file: mailnotify.py
# desc: send notify email
#
#-------------------------------
strFrom = 'toplover@sina.com'
strTo = 'toplover@126.com'
smtp_server = 'smtp.sina.com'
smtp_user = 'toplover'
smtp_pass = 'xxx***xxx'

if sys.argv[1] != "master" and sys.argv[1] != "backup" and sys.argv[1] != "fault":
sys.exit()
else:
notify_type = sys.argv[1]

mail_title = "[crt] Haproxy-notify-info"
mail_body_plain = notify_type + 'alive,please check it now'
mail_body_html = '<b><font color=red>' + notify_type + 'alive,please check it now'

msgRoot = MIMEMultipart('related')
msgRoot['Subject'] = Header(mail_title,'utf-8')
msgRoot['From'] = strFrom
msgRoot['To'] = strTo

msgAlternative = MIMEMultipart('alternative')
msgRoot.attach(msgAlternative)

msgText = MIMEText(mail_body_plain, 'plain', 'utf-8')
msgAlternative.attach(msgText)

msgText = MIMEText(mail_body_html, 'html', 'utf-8')
msgAlternative.attach(msgText)

smtp = smtplib.SMTP()
smtp.connect(smtp_server)
smtp.login(smtp_user,smtp_pass)
smtp.sendmail(strFrom, strTo, msgRoot.as_string())
smtp.quit()
到此完成了簡單的haproxy+keepalived負載均衡主從熱備功能。
不明之處請參閱haproxy官方cofiguration.txt文件及keepalived官方文檔。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品96久久久久久| 国产精品aaa| 高清欧美性猛交xxxx黑人猛交| 日韩国产精品视频| 2020久久国产精品| 奇米一区二区三区四区久久| 欧美日韩成人在线视频| 国产欧美精品在线| www国产精品com| 久久精品国产欧美激情| 色黄久久久久久| 欧美精品激情视频| 久久99热精品| 精品久久中文字幕| 日韩精品亚洲元码| 国产精品日韩在线| 日韩视频第一页| 国产亚洲精品美女久久久久| 国产欧美日韩最新| 亚洲精品国偷自产在线99热| 亚洲欧洲午夜一线一品| 精品无人国产偷自产在线| 欧美性视频精品| 欧美成人精品在线| 欧美在线欧美在线| 亚洲欧美视频在线| 国产日韩在线视频| 久久亚洲春色中文字幕| 国内精久久久久久久久久人| 日本一区二区在线免费播放| 欧美激情极品视频| 国产精品成人av性教育| 精品久久久久久久中文字幕| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲第一av在线| 日本欧美一二三区| 久久九九免费视频| 欧美电影在线观看网站| 久久人人看视频| 狠狠综合久久av一区二区小说| 精品国产乱码久久久久久天美| 亚洲毛片在线观看| 欧美精品性视频| 91网在线免费观看| 亚洲精品小视频在线观看| 91精品视频在线看| 精品国产一区二区三区四区在线观看| 在线视频一区二区| 亚洲人成欧美中文字幕| 欧美性xxxx18| 欧美精品aaa| 国产精品久久91| 亚洲精品一区二区三区不| 欧美日韩在线视频一区二区| 在线观看亚洲区| 在线观看日韩视频| 国产精品美女网站| 日韩电影第一页| 97精品在线视频| 日本午夜精品理论片a级appf发布| 亚洲人成77777在线观看网| 精品人伦一区二区三区蜜桃免费| 国产精品伦子伦免费视频| 欧美xxxx综合视频| 欧美日韩亚洲一区二区| 久久中文字幕在线视频| 中文字幕亚洲一区二区三区五十路| 国产精品人人做人人爽| 亚洲女同精品视频| 午夜精品久久久久久久白皮肤| 国产精品video| 国产免费一区二区三区在线观看| 日本精品一区二区三区在线播放视频| 亚洲国产高清福利视频| 日韩在线视频观看正片免费网站| 久久精品视频播放| 欧美激情国产日韩精品一区18| 国产成人在线一区二区| 欧美国产日韩视频| 亚洲高清av在线| 国产日韩中文字幕在线| 亚洲欧美综合区自拍另类| 九九精品视频在线观看| 91精品国产777在线观看| 性色av一区二区咪爱| 亚洲国产精品热久久| 性夜试看影院91社区| 久久国产精品视频| 成人av在线亚洲| 精品视频久久久久久| 精品国产一区二区三区四区在线观看| 欧美亚洲一级片| 久久久国产精品视频| 欧美国产日韩视频| 97**国产露脸精品国产| 97国产真实伦对白精彩视频8| 精品调教chinesegay| 亚洲欧美日韩天堂| 欧美日韩福利电影| 91探花福利精品国产自产在线| 欧美国产日韩xxxxx| 欧美黑人一级爽快片淫片高清| 成人性生交大片免费看小说| 色悠悠久久88| 久久精品一区中文字幕| 96sao精品视频在线观看| 亚洲欧美一区二区三区四区| 亚洲一区亚洲二区亚洲三区| 亚洲a在线播放| 国产精品夜间视频香蕉| 国产欧美精品久久久| 2018国产精品视频| 日韩精品久久久久久福利| 一本一道久久a久久精品逆3p| 久热精品视频在线| 91成人在线视频| 久久6免费高清热精品| 国产深夜精品福利| 国产日韩换脸av一区在线观看| 欧美视频裸体精品| 欧美黄色性视频| 亚洲电影成人av99爱色| 国产精品丝袜视频| 精品精品国产国产自在线| 91禁外国网站| 午夜精品久久久久久久久久久久久| 亚洲一区二区在线| 国产一区二区日韩精品欧美精品| 欧美亚洲视频在线看网址| 日韩少妇与小伙激情| 91精品久久久久久综合乱菊| 欧美中文字幕在线| 亚洲曰本av电影| 久久久久久久影院| 久色乳综合思思在线视频| 欧美大片免费看| 国产精品久久久久久av下载红粉| 性色av一区二区三区红粉影视| 日韩免费在线免费观看| 精品视频www| 亚洲精品日韩av| 97精品视频在线播放| 国产精品视频中文字幕91| 国产亚洲欧洲高清| 亚洲精品欧美一区二区三区| 91亚洲国产成人精品性色| 欧美极品第一页| 日韩中文字幕在线视频| 国产在线观看不卡| 一本色道久久综合狠狠躁篇怎么玩| 北条麻妃在线一区二区| 久久香蕉国产线看观看网| 久久久噜噜噜久久| 国内精品模特av私拍在线观看| 日本一欧美一欧美一亚洲视频| www.亚洲成人| 69久久夜色精品国产7777| 欧美日韩在线视频一区| 高跟丝袜欧美一区| 国产一区二区黄| 国产精品第10页| 欧美自拍大量在线观看| 亚洲在线视频观看| 亚洲成年网站在线观看|