LVS专题: NAT和DR模型实现Web负载均衡

    前言:

    在上篇文章中我们讲了一些LVS的基本概念和相应模型的实验原理和流程,本篇文章我们主要使用lvs为web服务提供负载均衡

    NAT实现

    实验拓扑

    实验环境

    主机 IP地址 功用
    Director.anyisalin.com 172.16.1.2,172.16.2.2 LVS-Director
    rs1.anyisalin.com 172.16.2.3 Real Server
    rs2.anyisalin.com 172.16.2.3 Real Server

    注意: 本文实验中所有主机SElinux和iptables都是关闭的

    实验步骤

    Real Server配置

    [[email protected] ~]# yum install httpd -y &> /dev/null && echo success || echo failure    #RS1安装httpd
    success #安装成功
    [[email protected] ~]# route add default gw 172.16.2.2  #设置默认网关为Director的DIP
    [[email protected] ~]# echo "<h1>This is Real Server 1 </h1>" > /var/www/html/index.html    #添加网页
    [[email protected] ~]# service httpd start &> /dev/null && echo success #启动httpd服务
    success #启动成功
    
    ##以下操作在rs2上执行
    
    [[email protected] ~]# yum install httpd -y &> /dev/null && echo success || echo failure    #RS1安装httpd
    success #安装成功
    [[email protected] ~]# route add default gw 172.16.2.2  #设置默认网关为Director的DIP
    [[email protected] ~]# echo "<h1>This is Real Server 2 </h1>" > /var/www/html/index.html    #添加网页
    [[email protected] ~]# service httpd start &> /dev/null && echo success #启动httpd服务
    success #启动成功
    Director配置

    Director配置

    IP地址配置的过程就不写了

    [[email protected] ~]# curl 172.16.2.3 #可以访问RS1
    <h1>This is Real Server 1 </h1>
    [[email protected] ~]# curl 172.16.2.4 #可以访问RS2
    <h1>This is Real Server 2 </h1>
    [[email protected] ~]# cat /proc/sys/net/ipv4/ip_forward   #查看内核核心转发是否开启
    0   #没有开启
    [[email protected] ~]# echo 0 > /proc/sys/net/ipv4/ip_forward  #开启路由转发, 若要永久修改自行配置配置文件
    
    ##添加ipvs规则, 这里为了直观, 所以选择了Round Robin的调度方法
    [[email protected] ~]# ipvsadm -A -t 172.16.1.2:80 -s rr
    [[email protected] ~]# ipvsadm -a -t 172.16.1.2:80 -r 172.16.2.3 -m
    [[email protected] ~]# ipvsadm -a -t 172.16.1.2:80 -r 172.16.2.4 -m
    
    [[email protected] ~]# ipvsadm -L -n   #查看ipvs规则的信息
    IP Virtual Server version 1.2.1 (size=4096)
    Prot LocalAddress:Port Scheduler Flags
      -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
    TCP  172.16.1.2:80 rr
      -> 172.16.2.3:80                Masq    1      0          0         
      -> 172.16.2.4:80                Masq    1      0          0         
    [[email protected] ~]#

    测试

    DR实现

    实验拓扑

    实验环境

    主机 IP地址 功用
    director.anyisalin.com 172.16.2.2,172.16.2.5 lvs-director
    rs1.anyisalin.com 172.16.2.3,172.16.2.5 lvs-rs
    rs.anyisalin.com 172.16.2.4,172.16.2.5 lvs-rs

    注意: 本文实验中所有主机SElinux和iptables都是关闭的

    实验步骤

    由于LVS-NAT模式较为复杂,所以配置较为麻烦, 如果对LVS-DR模式还不是很理解的可以看我上一篇博客

    Director配置

    [[email protected] ~]# ifconfig eth1:0 172.16.2.5/32 broadcast 172.16.2.5 up   #配置VIP地址[[email protected] ~]# route add -host 172.16.2.5 dev eth1:0   #添加一条路由避免地址冲突[[email protected] ~]# ipvsadm -A -t 172.16.2.5:80 -s rr[[email protected] ~]# ipvsadm -a -t 172.16.2.5:80 -r 172.16.2.3 -g[[email protected] ~]# ipvsadm -a -t 172.16.2.5:80 -r 172.16.2.4 -g

    Real Server配置

    ##修改内核参数,若要永久生效请修改配置文件[[email protected] ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore [[email protected] ~]# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore [[email protected] ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce [[email protected] ~]# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce[[email protected] ~]# ifconfig lo:0 172.16.2.5/32 broadcast 172.16.2.5 up  #配置VIP到lo:0[[email protected] ~]# route add -host 172.16.2.5 dev lo:0[[email protected] ~]# yum install httpd -y &> /dev/null && echo success || echo failure    #RS1安装httpdsuccess #安装成功[[email protected] ~]# route add default gw 172.16.2.2  #设置默认网关为Director的DIP[[email protected] ~]# echo "<h1>This is Real Server 2 </h1>" > /var/www/html/index.html    #添加网页[[email protected] ~]# service httpd start &> /dev/null && echo success #启动httpd服务success #启动成功
    
    ##以下操作在rs2中执行[[email protected] ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore [[email protected] ~]# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore [[email protected] ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce [[email protected] ~]# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce[[email protected] ~]# ifconfig lo:0 172.16.2.5/32 broadcast 172.16.2.5 up  #配置VIP到lo:0[[email protected] ~]# route add -host 172.16.2.5 dev lo:0[[email protected] ~]# yum install httpd -y &> /dev/null && echo success || echo failure    #RS1安装httpdsuccess #安装成功[[email protected] ~]# route add default gw 172.16.2.2  #设置默认网关为Director的DIP[[email protected] ~]# echo "<h1>This is Real Server 2 </h1>" > /var/www/html/index.html    #添加网页[[email protected] ~]# service httpd start &> /dev/null && echo success #启动httpd服务success #启动成功
    
    

    测试

    总结:

    本文介绍了如何使用lvs来对多台服务器进行负载均衡, 但是还是有多情况是本文没有介绍的, 例如TUN, FULLNAT等, 以后有机会会和大家分享, 过两天可能会写使用keepalive+lvs实现director的高可用, 敬请期待 
    作者:AnyISalIn QQ:1449472454 
    感谢:MageEdu

    时间: 2024-11-06 17:14:01

    LVS专题: NAT和DR模型实现Web负载均衡的相关文章

    lvs(3) - nat和dr模型演示

    一.lvs-nat 1.1 环境信息 角色 IP 网关 Service director vip(ens37): 172.29.2.69<br>dip(ens33): 192.168.123.100 ens37: 172.29.2.1<br>ens33: 192.168.123.2 lvs-nat Real-Server1 rip: 192.168.123.101 192.168.123.100 httpd Real-Server2 rip: 192.168.123.102 192

    LVS+Keepalived DR模式实现web负载均衡高可用

    一.环境介绍: lvs_master:192.168.1.18 lvs_backup:192.168.1.19 web1:192.168.1.16 web2:192.168.1.17 vip:192.168.1.20 二.安装: 在两台lvs上安装lvs+keepalived: yum install lvsadm keepalived -y 在两台web服务器上安装nginx(安装配置略过) 配置keepalived: 主lvs上配置: vim /etc/keepalived/keepaliv

    CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

    一.系统环境 实验拓扑: 实验环境: Vmware 9.01 + Windows 8 x64 企业版+8G内存 虚拟机步骤: 1.安装一台CentOS 6.3 x64主机,内存为1GB,网络为NAT模式,注意检查Vmware中EDIT菜单下Virtual Network Editor中VMnet8 2. 加电,安装系统.基础知识了,不再多说,注意:选择英文而不要选择中文,选择是Basic Server模式,系统名称:LVS-MASTER 3.安装系统后,用root用户登录进去,执行 ifconf

    虚拟机 搭建LVS + DR + keepalived 高可用负载均衡

    一:环境说明:   LVS-DR-Master:    10.3.0.82   LVS-DR-Backup:    10.3.0.70   VIP:                10.3.0.60   RealServer1:    10.3.0.69   RealServer1:    10.3.0.83   Centos:5.7    二:安装LVS和Keepalvied软件包   1. 下载相关软件包    mkdir /usr/local/src/lvs    cd /usr/loca

    CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡【转】

    CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡 一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1.26 keepalived版本:keepalived-1.2.4 三.安装 0.安装LVS前系统需要安装popt-static,kernel-devel,make,gcc,openssl-devel,lftp,libnl*,popt*

    web负载均衡整理

    参考:http://www.cnblogs.com/lovingprince/archive/2008/11/13/2166350.html http://www.cnblogs.com/lovingprince/archive/2008/11/13/2166349.html http://news.cnblogs.com/n/208124/ http://network.51cto.com/art/201108/281452.htm 负载均衡的概念 Web集群是由多个同时运行同一个web应用的

    Web负载均衡的几种方式

    Web负载均衡的几种实现方式 摘要:负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用是Web负载均衡.根据实现的原理不同,常见的web负载均衡技术包括:DNS轮询.IP负载均衡和CDN.其中IP负载均衡可以使用硬件设备或软件方式来实现. 什么是web负载均衡服务器集群(Cluster)使得多个服务器节点能够协同工作,根据目的的不同,服务器集群可以分为: 高性能集群:将单个重负载的请

    Web负载均衡实现方式(转)

    Reference [1] https://www.cnblogs.com/eric-qin/p/7238278.html 负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用是Web负载均衡.根据实现的原理不同,常见的web负载均衡技术包括:DNS轮询.IP负载均衡和CDN.其中IP负载均衡可以使用硬件设备或软件方式来实现. 什么是web负载均衡 服务器集群(Cluster)使得多个

    Linux LVS(Linux virtual server)V1.26 负载均衡 详细配置教程

    2 Linux LVS(Linux virtual server)V1.26 负载均衡 配置思路: 安装LVS服务器 在LVS服务器上安装kernel 链接内核文件 并手动绑定VIP 配置realserver后端服务,手动执行VIP绑定脚本 2.1 LVS 概念 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是www.linuxvirtualserver.org.现在LVS已经是 Linux标准内核的一部分