2台前端 keepalived+lvs,热备的方式,保证一台lvs前端能正常访问就行,如果一台down,另外一台热备升级到master主机
master: 192.168.1.210 ubuntu 12.0.4
salve: 192.168.1.211 ubuntu 12.0.4
后端2台web服务器通过lvs的算法轮询被访问
web1: 192.168.1.204 centos 5.10 nginx+tomcat
web2: 192.168.1.206 centos 5.10 nginx+tomcat
vip: 192.168.1.207
1:首先 web1和web2都不用装ipvsadm和keepalived,只要启用一个脚本即可,
当然你已经把nginx+tomcat已经配置完,并能正常访问页面
vim realserver.sh
|
#!/bin/bash # # Script to start LVS DR real server. # description: LVS DR real server # . /etc/rc.d/init.d/functions VIP=192.168.1.207 #这里根据需要改成自己的VIP地址 host=`/bin/hostname` case "$1" in start) # Start LVS-DR real server on this machine. /sbin/ifconfig lo down /sbin/ifconfig lo up echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up /sbin/route add -host $VIP dev lo:0 ;; stop) # Stop LVS-DR real server loopback device(s). /sbin/ifconfig lo:0 down echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce ;; status) # Status of LVS-DR real server. islothere=`/sbin/ifconfig lo:0 | grep $VIP` isrothere=`netstat -rn | grep "lo:0" | grep $VIP` if [ ! "$islothere" -o ! "isrothere" ];then # Either the route or the lo:0 device # not found. echo "LVS-DR real server Stopped." else echo "LVS-DR real server Running." fi ;; *) # Invalid entry. echo "$0: Usage: $0 {start|status|stop}" exit 1 ;; esac |
chmod +x realserver.sh
|
./realserver.sh start
|
可通过ifconfig和route -n来查询刚才脚本实现的功能
如果可以把此脚本放在启动时运行
2:然后再master和salve分别安装ipvsadm和keepalived
yum install -y keepalived ipvsadm (centos redhat)
或者
apt-get install keepalived ipvsadm (debian ubuntu)
安装完ipvsadm和keepalived,不用配置lvs,直接用keepalived来启用lvs就行
在master主机设置:
vim /etc/keepalived/keepalived.conf |
global_defs { router_id master_210 } vrrp_instance shengzc { state MASTER interface eth0 virtual_router_id 100 #这个数值 master和slave必须统一 priority 151 #这个数值决定哪台服务器是master advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 192.168.1.207 } } virtual_server 192.168.1.207 80 { delay_loop 6 lb_algo wrr lb_kind DR # persistence_timeout 50 protocol TCP real_server 192.168.1.204 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 192.168.1.206 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } } |
启动keepalived
/etc/init.d/keepalived start |
在slave主机设置:
vim /etc/keepalived/keepalived.conf |
global_defs { router_id slave_211 } vrrp_instance shengzc { state MASTER interface eth0 virtual_router_id 100 #这个数值 master和slave必须统一 priority 150 #这个数值决定哪台服务器是master 这里我们比master数值低,所以角色是backup, advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 192.168.1.207 } } virtual_server 192.168.1.207 80 { delay_loop 6 lb_algo wrr lb_kind DR # persistence_timeout 50 protocol TCP real_server 192.168.1.204 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 192.168.1.206 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } } |
启动keepalived
/etc/init.d/keepalived start |
可以运行 ipvsadm -ln 来查看是否启用
好了,现在我们直接访问 http://192.168.1.207 就实现了,高可用性,高负载的集群
相关推荐
本文主要讲述了如何构建一个高可用集群项目,使用 LVS、Keepalived、Nginx 和 Tomcat 实现高可用性和负载均衡。该项目的架构中,Keepalived 负责对 LVS 架构中的调度器进行热备份,至少包含两台热备的负载调度器,两...
这里提到的“4 lvs+keepalived+nginx+tomcat”架构,就是一种常用的解决方案,用于处理高流量的Web服务。下面将详细解释每个组件的作用和配置方法。 1. LVS(Linux Virtual Server): LVS是Linux内核中的一个负载...
本文将详细探讨如何使用lvs(Linux Virtual Server)、keepalived、nginx、tomcat以及memcached来实现这一目标。 首先,lvs是Linux内核中的一个模块,它提供了四层负载均衡功能,能够将进来的网络请求分发到后端多...
这个文档"lvs+keepalived+nginx+tomcat实现高性能负载均衡集群.docx"将详细解释每个组件的配置细节、集群的架构图以及可能出现的问题及解决方案,帮助你更好地理解和实施这个高性能的负载均衡集群。
在实际部署中,需要对这四个组件进行精细的配置,包括但不限于:LVS的调度策略、Keepalived的VRRP配置、Squid的缓存策略以及Nginx的反向代理和负载均衡规则。通过这样的组合,可以构建出一个能够应对高流量、高并发...
在搭建基于`lvs+keepalived+nginx+tomcat`的集群时,我们需要理解这些组件各自的作用以及它们如何协同工作以实现高可用性和负载均衡。以下是详细的知识点解释: 1. **LVS (Linux Virtual Server)**: LVS 是一种在 ...
本文档将详细介绍如何在 Linux 系统上部署 nginx、LVS 以及 Keepalived,构建一个高可用且负载均衡的服务集群。通过这种方式,不仅可以提高服务的稳定性和性能,还能实现服务的自动故障转移。 #### 二、环境准备 -...
项目要达到搭建一个每日PV200W的电子商务网站,系统采用lvs+keepalived+mha+mysql 高可用架构, 本项目各个服务器操作系统均采用Centos7.5,数据库均为MYSQL5.7.23
说明:前端两台负载均衡器安装lvs+keepalived ;web服务器上安装nginx+tomcat ;后端数据库采用双机备份安装mysql软件,用户访问web服务器ip 192.168.4.66
总结,通过Nginx+Tomcat的组合,结合LVS的负载均衡和Keepalived的故障转移,可以构建出一个高可用、高性能的JSP应用集群。这个架构不仅可以有效分发流量,还能在单个节点出现问题时自动切换,保证服务的连续性。
- 通过配置Keepalived来实现LVS、Nginx和DNS服务的故障转移机制,从而确保即使在一台服务器宕机的情况下也能提供不间断的服务。 2. **LVS的NAT模式实现HTTPD负载均衡**: - 采用LVS的NAT模式对HTTPD进行负载...
包含负载均衡、TCP网络、常见面试问题、数据库、Mysql、lvs+nginx、apache、tomcat、nginx、磁盘阵列、zabbix、Prometheus、Haproxy、LVS+keepalived、网络模型、redis、kafka、CI/CD、k8s、日志监控、
在配置中,Keepalived通常与Nginx或LVS(Linux Virtual Server)结合使用,提供网络服务的高可用性。 2. **Redis**: Redis是一个高性能的键值数据库,常用于缓存和消息队列。它可以大大提高应用程序的响应速度,...
【财华社项目部署安装文档】是一份详细指导在8台服务器上搭建LVS+Keepalived+Nginx+Tomcat+FastDFS+Mysql-Cluster+Redis的实施方案。该文档旨在实现高可用性和负载均衡的系统架构,以确保服务的稳定运行。 首先,...
- Keepalived 提供健康检查和 VRRP(Virtual Router Redundancy Protocol),配合 Nginx 实现主备切换,确保服务无中断。 **7. Nginx+Lua/OpenResty 扩展** - 通过 Lua 脚本增强 Nginx 功能,实现更复杂的业务...
1:Keepalived介绍和基本实现思路 2:VRRP协议:概念、理解、工作机制、负载分担等 3:Keepalived安装 4:Keepalived体系结构 5:Keepalived配置 6:Keepalived+Nginx的HA ...9:Keepalived+LVS实现高可用的负载均衡
Linux+系统运维之系统架构.pdf.rar,0分提供下载,造福网友。 本文通过生产应用实例,从运维工程师的角度对目前流行的Web 架构做了...如LAMP、LNMP、LVS Keepalived、Apache+Tomcat 负载均衡和Nginx+Tomcat负载均衡等。
13、 部署方面使用LVS + keepalived + Nginx实现了双机主备、双主热备,实现了一个高可用的系统架构。 14、 项目开发采用团队式的开发,统一使用Maven私服构建项目,使用统一的SVN服务进行代码的管理。 【课程内容...