文档章节

服务器-番外篇-LVS负载均衡

ZHAO_JH
 ZHAO_JH
发布于 2017/04/27 10:29
字数 1186
阅读 11
收藏 0

LVS负载均衡

(Linux Virtual Server)

命令描述和用法

描述:Linux虚拟服务器管理工具
用法:ipvsadm   选项  服务器地址 -s 算法
      ipvsadm   选项  服务器地址 -r 真实服务器地址[工作模式][权重]
选项:
        -A  添加一个虚拟服务,使用IP地址、端口号、协议来唯一定义一个虚拟服务
        -E  编辑一个虚拟服务
        -D  删除一个虚拟服务
        -C  清空虚拟服务表
        -R  从标准输入中还原虚拟服务规则
        -S  保存虚拟服务规则至标准输出,输出的规则可以使用 -R 导入还原
        -a  在虚拟服务中添加一台真实服务器
        -e  在虚拟服务中编译一台真实服务器
        -d  在虚拟服务中减去一台真实服务器
        -L  显示虚拟服务列表
        -t  使用 TCP 协议服务,该参数后需要加主机和端口信息
        -s  指定 LVS 所采用的调度算法
        -r  设置真实服务器IP地址和端口信息
        -g  设置 LVS 工作模式为 DR 直连路由模式
        -i  设置 LVS 工作模式为 TUN 隧道模式
        -m  设置 LVS 工作模式为 NAT 地址转换模式
        -w  设置指定服务器的权重
        -c  查看连接状态,配合 -L 使用
        -n  数字的输出格式
        

工作模式

NAT模式

网络地址转换模式,通过修改数据报头,使内网服务器映射到调度器公网IP,从而达到负载均衡的目的,调度器负载较大,客户端访问地址和回应源地址都是VIP地址。

TUN模式

隧道模式,将请求与响应数据分离,调度器只处理请求,转发给真实服务器,待数据处理完毕返回给客户端,所以客户端访问地址是VIP地址,回应源地址是后端真实服务器。

DR模式

直接路由模式,和TUN模式比较类似,但要求调度器和后端服务器必须要在同一局域网内VIP地址需要在调度器与后端所有服务器间共享,客户端访问地址和回应源地址都是VIP地址。

调度算法

简写 算法释义
RR 轮询算法
WRR 加权轮询算法
LC 最小连接调度算法
lblc 基于局部性的最少连接调度算法
lblcr 带复制的基于局部性的最少连接算法
DH 目标地址散列调度算法
SH 源地址散列调度算法

配置说明

==#建议做LVS负载均衡先绘出拓扑图,制作服务器IP表格再进行服务配置,模拟实验VIP和内网不要同一网段,建议关闭 NetWorkManager 服务==

安装ipvsadm工具

yum -y install ipvsadm

添加一个虚拟服务,使用TCP协议服务,端口为80,调度算法为轮询算法

ipvsadm -A -t 调度器公网IP:80 -s rr

添加一个真实的服务器IP并设置工作模式

ipvsadm -a -t 调度器公网IP:80 -r 真实服务器IP:80 -m
#这里把需要负载均衡的几个真实服务器都加入进来

查看调度器状态

ipvsadm -Lnc

保存调度器规则

ipvsadm -Sn > 保存路径

还原调度器规则

ipvsadm -R < 备份的文件

开启路由转发功能

sed -i '/ip_forward/s/0/1/' /etc/sysctl.conf

重新加载sysctl文件

sysctl -p

启用服务并加入开启自启

systemctl start ipvsadm
systemctl enable ipvsadm

==#若服务启动不了,缺少/etc/sysconfig/ipvsadm文件,创建一个空白文件即可==

#合理利用实际环境使用不同的工作模式和调度算法

网卡添加VIP地址并修改网卡参数重启网络服务(网卡配置略)

cp /etc/sysconfig/network-scripts/ifcfg-eno16777736 /etc/sysconfig/network-scripts/ifcfg-eno16777736:0

编写并在WEB服务器上执行ARP抑制脚本 vim realserver.sh

#!/bin/bash  
VIP=192.168.111.100  
source /etc/rc.d/init.d/functions  
case "$1" in  
start)  
       ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP  
       /sbin/route add -host $VIP dev lo:0  
       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  
       echo "RealServer Start OK"  
       ;;  
stop)  
       ifconfig lo:0 down  
       route del $VIP >/dev/null 2>&1  
       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  
       echo "RealServer Stoped"  
       ;;  
       *)  
       echo "Usage: $0 {start|stop}"  
       exit 1  
esac  
exit 0

==#若调度器对真实服务器都设置了VIP地址,可以通过arp_ignore参数和arp_announce参数来禁止对VIP地址的ARP响应,防止地址冲突==

重载sysctl配置

sysctl -p

© 著作权归作者所有

ZHAO_JH
粉丝 17
博文 203
码字总数 182453
作品 0
宝山
运维
私信 提问
LVS负载均衡群集(LVS-NAT)

负载均衡集群指使用多台提供相同服务的服务器组成集群系统,提高服务的并发处理能力。负载均衡集群的前端使用一个调度器,将客户端请求平均分配到后端的服务器中,同时调度器可能还具有后端服...

cchenyz
2018/06/20
0
0
lvs+keepalived 高可用负载均衡模式分析

1. 前言 在《keepalived 双机热备》这篇文章中,我写了利用keepalived 这个开源软件实现高可用的功能,以及keepalived 高可用所使用的协议——利用vrrp 协议,在高可用网络组内广播自己的优先...

hello_cjq
2018/03/30
0
0
《大型网站技术实践》借助LVS+Keepalived实现负载均衡

一、负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧   当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群...

passionfly
2015/09/04
243
0
服务器集群技术如日中天 借助LVS+Keepalived实现负载均衡

一、负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以...

swearyd457
2015/08/17
89
0
一文详解 LVS、Nginx 及 HAProxy 工作原理( 附大图 )

点击上方"蓝字", 右上角选择“设为星标” 精品技术文章准时送上! 当前大多数的互联网系统都使用了服务器集群技术,集群是将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集...

光明顶小招
04/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

灵光一闪来个科普贴:Linux文件系统

在计算机系统中,各种需要保存的信息都是以文件的形式存在的。文件管理是对系统信息资源的管理,是操作系统的一项重要功能。 1.文件与文件系统: 1.1文件: 文件是具有名字的一组相关信息的有...

Linux就该这么学
11分钟前
2
0
ExtJS 4.2 评分组件

本文转载于:专业的前端网站➸ExtJS 4.2 评分组件 上一文章是扩展ExtJS自带的Date组件。在这里将创建一个评分组件。 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2...

前端老手
15分钟前
2
0
如何为视频添加封面?

一个好的视频封面可以吸引观众的眼球,从而起到事半功倍的宣传效果,但是很多小伙伴并不知道怎么给视频添加封面。下面分享一个制作封面否方法,操作起来也比较简单的,有兴趣的小伙伴请接着往...

白米稀饭2019
25分钟前
2
0
如何使用soapUI模拟webservice客户端发送请求

参考资料 https://jingyan.baidu.com/article/cbcede0712849a02f40b4d88.html 左边是请求参数,可以自己填写!按着那个绿色三角箭头可以模拟发送请求,右边是返回的报文 soapui如何发送xml格...

故久呵呵
54分钟前
5
0
Java Security 介绍

1.介绍 Java平台设计的重点是安全性。在其核心,java语言本身是类型安全的并且提供了垃圾自动回收,这使其增加了应用程序代码的健壮性。安全的类加载以及验证机制确保了只有合法的代码才能够...

lixiaobao
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部