centos7上实现LVS负载均衡群集之NAT转换模式

LVS虚拟服务器

Linux Virtual Server(LVS)是针对 Linux内核开发的一个负载均衡项目,由我国
的章文嵩博土在1998年5月创建,官方站点位于http://www.linuxvirtualserver.org/.

LVS实际上相当于基于IP地址的虚拟化应用,为基于IP地址和内容请求分发的负载均衡提出了一种高效的解决方法。

LVS现在已成为Linux内核的一部分,默认编译为ip_vs模块,必要时能够自动调用。

LVS的负载调度算法

针对不同的网络服务和配置需要,LVS调度器提供多种不同的负载调度算法,其中最常用的四种算法包括轮询、加权轮询、最少连接和加权最少连接。

轮询( RoundRobin):将收到的访问请求按照顺序轮流分配给群集中的各节
点(真实服务器)。

加权轮询( WeightedRoundRobin):根据真实服务器的处理能力轮流分配收到的访问请求,调度器可以自动查询各节点的负载情况,并动态调整其权重。这样可以保证处理能力强的服务器承担更多的访问流量。

最少连接( LeastConnections):根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接数最少的节点。

加权最少连接(WeightedLeastConnections):在服务器节点的性能差异较大的情况下,可以为真实服务器自动调整权重,权重较高的节点将承担更大比例的活动连接负载。

使用ipvsadm管理工具

ipvsadm是在负载调度器上使用的LVS群集管理工具,通过调用ip_vs模块添加、删除服务器节点,以及查看群集的运行状态。在Centos6系统中,需要手动安装ipvsadm软件包。在centos7中直接安装就可以。

地址转换模式

地址转换( NetworkAddressTranslation)简称NAT模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口。服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式。

图解


说明:节点服务器作用在私网,而客户端作用在公网,此时LVS就作为网关,节点服务器反馈信息给客户端时,会经过LVS。

实验环境

角色 IP
LVS 192.168.100.1 / 12.0.0.1
apache1 192.168.100.110
apache2 192.168.100.120
NFS 192.168.100.130

步骤

在两台节点服务器上搭建httpd服务

# yum install httpd -y
# systemctl stop firewalld.service
# setenforce 0

在NFS服务器上搭建NFS服务

  • 安装服务

    # rpm -q nfs-utils
    # rpm -q rpcbind   //看是否安装,服务已安装
  • 编辑配置文件
    # vim /etc/exports
    /usr/share *(ro,sync)
    /opt/benet 192.168.100.0/24(rw,sync)//创建目录benet,192.168.100.0网段的可以进行读写和同步操作
    /opt/accp 192.168.100.0/24(rw,sync)//创建目录accp,192.168.100.0网段的可以进行读写和同步操作
  • 创建目录并赋予权限
    # mkdir /opt/benet /opt/accp
    # chmod 777  /opt/benet /opt/accp
  • 开启nfs服务并发布共享
    # systemctl start nfs.service
    # exportfs -rv  //发布共享

    节点服务器挂载nfs服务器的共享文件

  • apache1将/opt/benet挂载到站点目录下
    # showmount -e 192.168.100.130  //查看共享文件
    # mount.nfs 192.168.100.130:/opt/benet /var/www/html  //挂载
    # cd /var/www/html/
    # echo "this is benet" > index.html
    # systemctl start httpd.service 

  • apache2将/opt/accp挂载到站点目录下
    # showmount -e 192.168.100.130  //查看共享文件
    # mount.nfs 192.168.100.130:/opt/accp /var/www/html  //挂载
    # echo "this is accp" > index.html
    # systemctl start httpd.service 


    LVS服务器(注意是双网卡)

  • 安装ipvsadm管理工具
    # yum install ipvsadm -y
  • 加载内核模块
    # modprobe ip_vs
  • 设置路由转发(因为是双网卡)
    # vim /etc/sysctl.conf
    末尾添加:net.ipv4.ip_forward = 1
    # sysctl -p  //立即生效

  • 防火墙设置
    iptables -F
    # iptables -t nat -F
    # iptables -L
    //清空所有规则
    # iptables -t nat -I POSTROUTING -s 192.168.100.0/24 -o ens36 -j SNAT --to-source 12.0.0.1   //设置SNAT转发,将所有192.168.100.0段的都转换为12.0.0.1,然后进行访问client

  • 开启ipvsadm
    # systemctl start ipvsadm.service
    注:此时开启可能会出现问题
    # ipvsadm --save  > /etc/sysconfig/ipvsadm  //输入该行即可

  • 编写可执行的脚本
    # cd /opt
    # vi net.sh
    #!/bin/bash
    ipvsadm -C
    ipvsadm -A -t 12.0.0.1:80 -s rr
    ipvsadm -a -t 12.0.0.1:80 -r 192.168.100.110:80 -m
    ipvsadm -a -t 12.0.0.1:80 -r 192.168.100.120:80 -m
    ipvsadm
    # chmod +x net.sh
    # ./net.sh
    解释如下:
    ipvsadm -C //清除内核虚拟服务器表中的所有记录//
    -A:添加虚拟服务器
    -s:指定调度算法
    rr:轮询算法
    -a:添加真实服务器
    -t:指定外网网关及TCP端口
    -r:指定节点服务器的地址及TCP端口
    -m:使用NAT集群模式



    打开一台win7进行检测


    注:当两次连续访问12.0.0.1时,可能一时间切换不过来,显示的还是原来的界面,这时候就必须清除缓存,才能看到两个不同的界面。当然了,如果这时关掉其中一台节点服务器的httpd服务,那么再去访问12.0.0.1时,显示的就是另一台的网页界面啦。

原文地址:http://blog.51cto.com/13620936/2160636

时间: 2024-10-16 18:17:31

centos7上实现LVS负载均衡群集之NAT转换模式的相关文章

CentOS7上部署LVS负载均衡群集之LVS-NAT(地址转换模式)

CentOS7中的LVS负载均衡群集之LVS-NAT(地址转换模式) 简介 在当今各种互联网应用中,随着站点对硬件性能.响应速度.服务稳定性.数据可靠性等的要求越来越高,单台服务器将难以承担所有的访问.除了使用价格昂贵的大型机.专用负载分流设备以外,企业还有另外一种选择来解决难题,就是构建集群服务器--通过整合多台相对廉价的普通服务器,以同一个地址对外提供相同的服务. 负载均衡群集:以提高应用系统的响应能力.尽可能处理更多的访问请求.减少延迟为目标,获得高并发.高负载的整体性能. 实验介绍 环境

linux,centos7上搭建LVS负载均衡

在linux,centos7上搭建LVS负载均衡 实前准备 准备五台虚拟机 四台centos7 一台做调度 一台做nfs缓存 两台做wed群集 一台windows7 开始逐个配置 配置nfs服务器(centos7在用的时候是在线下载源代码包但是为了做实验先把源代码用yum安装好后改为仅主机模式) IP:192.168.10.174 用rpm -q nfs-utils查看有没有安装 rpcbind (远程过程调用) 编辑配置文件 [[email protected] ~]# vim /etc/ex

#构建LVS负载均衡群集之地址转换模式(LVS-NAT)

构建LVS负载均衡群集之地址转换模式(LVS-NAT) 试验环境:本实验共需要五台虚拟机,一台作为调度服务器的Linux虚拟机.两台作为真实服务器的Linux虚拟机,一台作为NFS服务器的Linux虚拟机,一台用于最后用于测试访问的win7虚拟机(也可以用自己的宿主机访问). 网址规划:作为调度服务器的Linux需要配置双网卡,公网网卡IP地址ens33:12.0.0.1 私网地址ens37:192.168.1.1 两台真实服务器的IP:192.168.1.8 192.168.1.9 NFS服务

CentOS7.4——构建LVS负载均衡群集—地址转换模式(LVS-NAT)

LVS负载均衡群集-地址转换模式(LVS-NAT)环境:调度服务器一台:Linux-CentOS7.4IP地址:192.168.80.20(内网)192.168.90.20(外网)Web服务器两台:Linux-CentOS7.4IP地址:192.168.80.30(SERVER AA)IP地址:192.168.80.40(SERVER BB)客户端一台:以win7为例,用于测试验证IP地址:192.168.80.2(内网)IP地址:192.168.90.2(外网) 第一步:配置调度服务器//加载

CentOS7.4——LVS负载均衡群集—直接路由模式(LVS-DR)

LVS负载均衡群集-直接路由模式(LVS-DR)环境:调度服务器一台:Linux-CentOS7.4IP地址:192.168.80.20Web服务器两台:Linux-CentOS7.4IP地址:192.168.80.30(SERVER AA)IP地址:192.168.80.40(SERVER BB)客户端一台:以win7为例,用于测试验证IP地址:192.168.80.2 第一步:配置调度服务器//加载LVS内核模块LVS现在已成为Linux内核的一部分,默认编译为ip_vs模块,必要时能够自动

lvs负载均衡群集搭建(DR)

lvs负载均衡群集搭建(DR) 1:之前有讲过使用NAT技术的lvs的群集搭建接下来使用DR的直接路由模式来搭建负载均衡群集 2:在DR模式中.lvs负载调度器作为群集的访问入口,但不作为网关使用,服务器池中的所有节点来自internet.发送给客户端的web相应数据包不需要经过负载调度器:这种方式入站.出站访问数据分别被处理,因此lvs负载调度器和所有节点服务器都需要配置VIP地址,以便响应整个群集的访问. VIP地址192.168.1.254 负载均衡服务器           web1服务

【中级篇】Linux中部署LVS负载均衡群集

LVS负载均衡群集 1.          实验需求: 1)     2台服务器部署HTTPD服务 2) 1台做负载调度器 3) 搭建负载均衡,测试其效果. 2.          实验环境: Linux服务器系统版本:CentOS-6.5 -S02 IP:192.168.10.15  ( httpd ) Linux服务器系统版本:CentOS-6.5 -S03 IP : 192.168.10.18  ( httpd ) Linux服务器系统版本:  RedHat6.5     IP1 :192

lvs负载均衡群集以及高可用性能

   lvs负载均衡群集   一:lvs的群集技术概述 1:群集的类型:分为三种: (1)负载均衡群集: 以提高应用系统的相应能力,尽可能处理更多的访问请求,减少延迟:为目标获得高并发:高负载:的整体性能.将客户端的访问分担给多个服务器节点,从而延缓整个系统的负载压力:如web,ftp服务 (2)高可用群集:以提高应用系统的可靠性,尽可能的减少中断时间,确保服务的连续性.例如:双机热备:故障切换多用于后台应用:如典型的mysql数据库服务 (3)高性能运算群集:以提高应用系统的cpu运算速度.扩

LVS负载均衡群集

 第五章:LVS负载均衡群集 简介:   在各种互联网应用中,随着站点对硬件性能.响应速度.服务稳定性.数据可靠性等要求越来越高,单台服务器难以承担所有的访问.除了使用价格昂贵的大型机.专用负载分流设备以外,企业还有另外一种选择来解决难题,那就是构建群集服务器--通过整合多台相对廉价的普通服务器,以同一个地址对外提供相对的服务.   今天我们一起来学习在企业中常用的一种群集技术--LVS(Linux Virtual Server,Linux虚拟服务器). 一.群集技术概述 1.群集的类型 1)负