keepalived + nginx 实现负载均衡
keepalived 用途
keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。
Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,
并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,
这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器
环境说明:centos6
192.168.1.102(keepalived ==> nginx) master
192.168.1.132(keepalived ==> nginx) slave
192.168.1.100 虚拟ip
102安装如下:
首先安装keepalived
下载地址:http://www.keepalived.org/download.html
Keepalived for Linux - Version 1.2.7 - August 29, 2012
下载到文件:keepalived-1.2.7.tar.gz
1.tar -xzvf keepalived-1.2.7.tar.gz
2.
cd keepalived-1.2.7
./configure --prefix=/home/soft/keepalived
错误1:
configure: error:
!!! OpenSSL is not properly installed on your system. !!!
!!! Can not include OpenSSL headers files. !!!
解决:yum -y install openssl-devel
错误2:
configure: error: Popt libraries is required
解决:yum install popt-devel
如果编译成功:
Keepalived configuration
------------------------
Keepalived version : 1.2.7
Compiler : gcc
Compiler flags : -g -O2
Extra Lib : -lpopt -lssl -lcrypto
Use IPVS Framework : Yes
IPVS sync daemon support : Yes
IPVS use libnl : No
Use VRRP Framework : Yes
Use VRRP VMAC : Yes
SNMP support : No
Use Debug flags : No
make
提示:
Make complete
make[1]: Leaving directory `/home/soft/source/keepalived-1.2.7/genhash'
make install
3. 配置keepalived
cp /home/soft/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /home/soft/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /home/soft/keepalived/sbin/keepalived /usr/sbin/
vi /etc/keepalived/keepalived.conf
global_defs {
notification_email {
king_819@163.com
}
notification_email_from king_819@163.com
smtp_server smtp.163.com
# smtp_connect_timeout 30
router_id LVS_DEVEL
}
# VIP1
vrrp_instance VI_1 {
state MASTER #备份服务器上将MASTER改为BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 51
priority 100 # 备份服务上将100改为90
advert_int 5
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.102
#(如果有多个VIP,继续换行填写.)
}
}
virtual_server 192.168.1.102 80 {
delay_loop 6 #(每隔10秒查询realserver状态)
lb_algo wlc #(lvs 算法)
lb_kind DR #(Direct Route)
persistence_timeout 60 #(同一IP的连接60秒内被分配到同一台realserver)
protocol TCP #(用TCP协议检查realserver状态)
real_server 192.168.1.132 80 {
weight 100 #(权重)
TCP_CHECK {
connect_timeout 10 #(10秒无响应超时)
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.1.133 80 {
weight 100
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
4.service keepalived start|stop
5.启动keepalived!,查看虚拟IP是否绑定!
ip addr
6.nginx源码安装 看 nginx/nginx源码安装.txt
102配置完成
--------------------------------------
下面配置132
安装keepalived 如上:
vi /etc/keepalived/keepalived.conf 这里有变动,具体内容如下:
global_defs {
notification_email {
king_819@163.com
}
notification_email_from king_819@163.com
smtp_server smtp.163.com
# smtp_connect_timeout 30
router_id LVS_DEVEL_2
}
# VIP1
vrrp_instance VI_1 {
state BACKUP #备份服务器上将MASTER改为BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id 51
priority 90 # 备份服务上将100改为90
advert_int 5
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.100
#(如果有多个VIP,继续换行填写.)
}
}
virtual_server 192.168.1.100 80 {
delay_loop 6 #(每隔10秒查询realserver状态)
lb_algo wlc #(lvs 算法)
lb_kind DR #(Direct Route)
persistence_timeout 60 #(同一IP的连接60秒内被分配到同一台realserver)
protocol TCP #(用TCP协议检查realserver状态)
real_server 192.168.1.102 80 {
weight 100 #(权重)
TCP_CHECK {
connect_timeout 10 #(10秒无响应超时)
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
real_server 192.168.1.132 80 {
weight 100
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
同样安装nginx
--------------------------
测试:102上执行 service keepalived stop
检测132是否接替任务
分享到:
相关推荐
Keepalived+Nginx实现高可用Web负载均衡
Keepalived + Nginx 实现高可用 Web 负载均衡配置文件,具体详情参见博文:http://blog.csdn.net/l1028386804/article/details/72801492
lvs+Keepalived+nginx高可用负载均衡搭建部署方案
Nginx+keepalived+tomcat实现性负载均衡
Nginx+keepalived+tomcat实现性负载均衡
keepalived+Nginx+tomcat ...主要提供loadbalancing(负载均衡)和 high-availability(高可用)功能,负载均衡实现需要依赖Linux的虚拟服务内核模块(ipvs),而高可用是通过VRRP协议实现多台机器之间的故障转移服务。
Keepalived+Nginx实现高可用Web负载均衡
lvs+keepalived+nginx+tomcat实现高性能负载均衡集群
高可用之Keepalived+Nginx实现高可用Web负载均衡
使用Keepalived+nginx负载均衡高可用,解决单台Nginx故障,无法提供服务。
通过lvs+keepalived+nginx+tomcat实现服务负载均衡。 通过memcached实现不同服务器之间session共享。 包含jar文件。 本人亲测实验通过。
Nginx++Keepalived+Tomcat负载 均衡 &动 静 分 离。配置
keepalived+Nginx负载均衡+双机互备[文].pdf
keepalived+nginx双机热备+负载均衡 非抢占模式,支持虚拟IP切换,tomcat负载均衡配置等服务,可以动态自动切换
lvs keepalived+ngnix+tomcat 实现高性能负载均衡集群
CentOS系统安装配置Nginx+keepalived实现负载均衡
一个稳定Web服务器架构必须实现高可用与负载均衡。这里配置Keepalived + Nginx + Tomcat + Redis的架构,其中:keepalived用于管理Virtual IP,与nginx一起搭配实现高可用性的反向代理前端;后端使用Tomcat管理web...
运用nginx的负载均衡功能实现后端web服务器之间的负载均衡,运用keepalived的功能实现nginx服务器的高可用,比较了nginx和lvs的负载均衡的优缺点。
随着你的网站业务量的增长你网站的服务器压力越来越大?需要负载均衡方案!商业的硬件如F5又太贵,你们又是创业型互联公司...我们利用LVS+Keepalived基于完整开源软件的架构可以为你提供一个负载均衡及高可用的服务器。