`
wb284551926
  • 浏览: 541776 次
文章分类
社区版块
存档分类
最新评论

LVS+keepalived+nginx+tomcat部署实现(转载)

    博客分类:
  • LVS
LVS 
阅读更多

# 拓扑如下所示

wKioL1QOmLrDoQ2uAAHpCQhZ_Bk403.jpg

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来查询刚才脚本实现的功能
如果可以把此脚本放在启动时运行

ifconfig

ifconfig

route -n

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 来查看是否启用

ipvsadm

ipvsadm

好了,现在我们直接访问 http://192.168.1.207 就实现了,高可用性,高负载的集群

参考文章:

http://www.5ilinux.com/2014/05/lvs_keepalived_nginx_tomcat.html

分享到:
评论

相关推荐

    第三十三章:Lvs+Keepalived+Nginx+Tomcat高可用集群1

    第三十三章:Lvs+Keepalived+Nginx+Tomcat高可用集群1

    lvs+keepalived+nginx+tomcat+memcached实现服务负载均衡及session共享

    通过lvs+keepalived+nginx+tomcat实现服务负载均衡。 通过memcached实现不同服务器之间session共享。 包含jar文件。 本人亲测实验通过。

    lvs+keepalived+nginx+tomcat实现高性能负载均衡集群.rar

    lvs+keepalived+nginx+tomcat实现高性能负载均衡集群

    4 lvs+keepalived+nginx+tomcat实现高性能负载均衡集群.docx

    lvs keepalived+ngnix+tomcat 实现高性能负载均衡集群

    lvs+keepalived+nginx+tomcat 集群联系1

    Centos7 搭建 lvs+keepalived+nginx+tomcat 集群项目拓扑图项目实验环境系统类型IP地址主机名所需软件Centos 7.4 17

    nginx+lvs+keepalived安装文档

    nginx+lvs+keepalived安装文档

    在lvs+keepalived+MHA+MySQL下构建ecshop

    项目要达到搭建一个每日PV200W的电子商务网站,系统采用lvs+keepalived+mha+mysql 高可用架构, 本项目各个服务器操作系统均采用Centos7.5,数据库均为MYSQL5.7.23

    lvs+keeplive

    说明:前端两台负载均衡器安装lvs+keepalived ;web服务器上安装nginx+tomcat ;后端数据库采用双机备份安装mysql软件,用户访问web服务器ip 192.168.4.66

    nginx+lvs+alived

    Nginx是一个自由、开源、高性能及轻量级的HTTP服务器及反转代理服务器。Nginx以其高性能、稳定、功能丰富、配置简单...Keepalived的作用是检测web服务器的状态LVS的英文全称是Linux Virtual Server,即Linux虚拟服务器

    nginx+tomcat高可用、高性能jsp集群

    四、nginx、tomcat整合 #config web_1、web_2 #download software cd /opt wget http://labs.renren.com/apache-mirror/tomcat/tomcat-6/v6.0.32/bin/apache-tomcat-6.0.32.tar.gz wget ...

    财华社项目部署安装文档

    LVS+Keepalived+Nginx+tomcat+fastdfs+mysql-cluster+redis软件安装说明,8台系统,客户提出的架构图,结合后调整出的安装说明,附录还有Redis、mysqlcluster的配置说明

    关于linux的综合实验lvs-nginx-dns-tomcat-httpd-nfs

    1. 通过keepalived确保lvs、nginx、dns以及网关的高可用 2. 通过lvs的NAT模式实现httpd负载均衡 3. 通过nginx实现tomcat负载均衡 4. 通过nfs提供共享存储 5. 通过www.benet.com访问httpd,www.accp.com访问tomcat

    142道IT运维面试题

    包含负载均衡、TCP网络、常见面试问题、数据库、Mysql、lvs+nginx、apache、tomcat、nginx、磁盘阵列、zabbix、Prometheus、Haproxy、LVS+keepalived、网络模型、redis、kafka、CI/CD、k8s、日志监控、

    174道IT运维面试题

    包含负载均衡、TCP网络、常见面试问题、数据库、Mysql、lvs+nginx、apache、tomcat、nginx、磁盘阵列、zabbix、Prometheus、Haproxy、LVS+keepalived、网络模型、redis、kafka、CI/CD、k8s、日志监控、

    Linux+系统运维之系统架构

    本文通过生产应用实例,从运维工程师的角度对目前流行的Web 架构做了实验性的讲解,该系列的文档属于手册类型,可以直接在生产环境...如LAMP、LNMP、LVS Keepalived、Apache+Tomcat 负载均衡和Nginx+Tomcat负载均衡等。

    Linux 系统运维之系统架构

    本文通过生产应用实例,从运维工程师的角度对目前流行的Web 架构做了实验性的讲解,该系列的文档属于手册类型,可以直接在生产环境...如LAMP、LNMP、LVS Keepalived、Apache+Tomcat 负载均衡和Nginx+Tomcat负载均衡等。

    Linux运维从入门到高级全套案例v3

    3.1. 1 构建NTP时间...5. 8 LVS+Keepalived负载均衡 110 5. 9 Squid缓存服务器配置 116 6. Linux下高并发系统内核优化 122 7. Nginx负载均衡机制及常见问题 124 8. Linux运维职业规划 127 9. Linux运维面试总结 127

    Keepalived快速上手.pdf

    1:Keepalived介绍和基本实现思路 2:VRRP协议:概念、理解、工作机制、负载分担等 3:Keepalived安装 4:Keepalived体系结构 5:Keepalived配置 6:Keepalived+Nginx的HA ...9:Keepalived+LVS实现高可用的负载均衡

    Linux+系统运维之系统架构.pdf

    Linux+系统运维之系统架构.pdf.rar,0分提供下载,造福网友。 本文通过生产应用实例,从运维工程师的角度对目前流行的Web 架构做了...如LAMP、LNMP、LVS Keepalived、Apache+Tomcat 负载均衡和Nginx+Tomcat负载均衡等。

    JavaEE大型分布式电商项目 淘淘商城 29期

    13、 部署方面使用LVS + keepalived + Nginx实现了双机主备、双主热备,实现了一个高可用的系统架构。 14、 项目开发采用团队式的开发,统一使用Maven私服构建项目,使用统一的SVN服务进行代码的管理。 【课程内容...

Global site tag (gtag.js) - Google Analytics