我们在使用nginx配置集群管理的时候, nginx会出现很多请求和响应都经过nginx,服务器集群会出现瓶颈的情况,需要使用Lvs(linux virtual server)管理集群。 原理: 客户机发起请求到集群服务器,会有一个客户机ip和vip,集群服务器转发到后端服务器处理请求,然后直接返回到客户端,不再经过集群服务器。这是需要每个服务器有一个共同的vip,只有这样后端服务器响应到客户机时客户机才会接受。具体配置如下: 配置情况如下表:
1、 找一台主机作为DR(虚拟服务器),安装ipvsadm a) Yum install ipvsadm 2、 在DR设置两个IP地址: a) DIP: 192.168.1.134 ,设置静态ID b) VIP:192.168.1.200 , ifconfig eth0:1 192.168.1.200/24 3、 找多台机器作为RS( apeche或者tomcat ) a) 两台:静态设置192.168.1.137 192.168.1.138 b) 修改报文源IP的设置,需要设置内核参数 i. echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore ii. echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore iii. echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce iv. echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce c) 在两台机器(RS)上,设置网卡的别名IP:192.168.1.200 i. ifconfig lo:0 192.168.1.200 netmask 255.255.255.255 broadcast 192.168.1.200 d) 在两台机器(RS)上,添加一个路由 i. route add -host 192.168.198.200 dev lo:0 4、 DR上需要加一个路由设置:route add -host 192.168.1.200 dev eth0:1 5、 在RS 检查web服务是否正常 6、 在DR上使用ipvsadm添加集群服务 a) Ipvsadm –C //清楚所有 b) ipvsadm -A -t 192.168.1.200:80 -s wlc c) ipvsadm -a -t 192.168.1.200:80 -r 192.168.1.137 -g -w 1 |
|
来自: 昵称23016082 > 《nginx》