您的位置:首页 > 其它

ISA安全地发布Web服务器

2007-03-26 00:27 288 查看
lvs+keepalived实现高可用群集配置详解
lvs有三种工作模式NAT(地址转换),IP Tunneling(IP隧道)、Direct Routing(直接路由)。

工作效率最低的是NAT模式,但NAT模式可以用于各种系统,各种环境的负载均衡,只需要一个公网ip即可实现

IP Tunneling模式调度器将连接分发到不同的后端real server,然后由real server处理请求直接相应给用户,大大提高了调度器的调度效率,后端real server没有物理位置和逻辑关系的限制,后端real server可以在Lan/Wlan,但是后端real server必须支持IP隧道协议.

DR(Direct Routing)是效率最高的,与IP Tunneling类似,都是处理一般连接,将请求给后端real server,然后由real server处理请求直接相应给用户,Direct Routing与IP Tunneling相比,没有IP封装的开销,但由于采用物理层,所以DR模式的调度器和后端real server必须在一个物理网段里,中间不能过路由器(也就是一个交换机相连).

lvs支持8种不同的调度算法轮叫(rr)、加权轮叫(wrr)、最小连接(lc)、加权最小连接(wlc)、基于局部性最小连接(lblc)、带复制的基于局部性最少链接(lblcr)、目标地址散列(dh)和源地址散列(sh).

下面就介绍如何来安装和配置lvs+keepalived
本文使用环境:

操作系统:CentOS 5.4 32bit

vip(virtual ip):192.168.1.180
主调度器:192.168.1.50/24 eth1 10.10.10.10

备调度器:192.168.1.60/24 eth1 10.10.10.20

后端real server: 192.168.1.200/24 192.168.1.250/24
首先配置ip save和master 机器均为双网
yum -y install ipvsadm
我们查看lvs是否支持: modprobe -l| grep ip_vs
01
vi/etc/sysctl.conf
02
net.ipv4.ip_forward = 1 # 此参数改为1
03
sysctl -p # 使修改生效
__________________________________________________________________________________________

yum -y instll kernel-devel
yum -y install gcc gcc-c++
yum -y instll openssl openssl-devel
__________________________________________________________________________________________

然后开始安装keepalived

# 下载并安装keepalived
07
wget http://www.keepalived.org/software/keepalived-1.1.19.tar.gz
08
tar-zxvf keepalived-1.1.19.tar.gz
09
cdkeepalived-1.1.19
10
./configure --prefix=/ \ # 安装在默认位置(配置文件,二进制文件,启动脚本放到默认位置)
11
--mandir=/usr/local/share/man/ \
make && make install

ipvsadm设置好后开始配置 keepalived

#!/bin/bash

VIP=192.168.2.10

/sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up

/sbin/route add -host $VIP dev eth0:0

脚本写入
____________________________________________________________________________________________

vi/etc/keepalived/keepalived.conf

! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.180
}
}
virtual_server 192.168.1.180 80 {
delay_loop 6
lb_algo rr
lb_kind NAT
nat_mask 255.255.255.0
persistence_timeout 50
protocol TCP
real_server 192.168.1.200 80 {
weight 1
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.1.250 80 {
weight 1
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
重启keepalived 即可
可以查看tail -f /var/log/message 查看

当 把 web1 关掉时候服务器会移除

成功

本文出自 “YuYuang_linux” 博客,请务必保留此出处http://linuxyuyang.blog.51cto.com/1645597/1049099
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: