一、简单介绍

LVS是 Linux Virtual Server 的简称,也就是Linux虚拟服务器。这是一个由章文嵩博士发起的一个开源项目,它的官方网站是 http://www.linuxvirtualserver.org 现在 LVS 已经是 Linux 内核标准的一部分。使用 LVS 可以达到的技术目标是:通过 LVS 达到的负载均衡技术和 Linux 操作系统实现一个高性能高可用的 Linux 服务器集群,它具有良好的可靠性、可扩展性和可操作性。从而以低廉的成本实现最优的性能。LVS 是一个实现负载均衡集群的开源软件项目,LVS架构从逻辑上可分为调度层、Server集群层和共享存储。

二、配置实操

LVS VIP

--虚拟服务器配置子网卡,设置子网掩码为255.255.255.0
        --删除一个子网卡    ifconfig eth0:8 down
ifconfig eth0:8 192.168.3.200/24

--0        表示禁止IP转发
        --1        表示开启转发功能
        --        修改只能以重定向方式,不能vi/vim
        --        永久生效方式需要修改配置文件/etc/sysctl.conf中net.ipv4.ip_forward = 1
        --        sysctl -p /etc/sysctl.conf
    
echo 1 > /proc/sys/net/ipv4/ip_forward

--安装ipvsadm(LVS只是一个技术名称,linux将此技术放到内核并成为ipvsadm功能模块)
        
yum install ipvsadm -y

--add-service     -A   add virtual service with option 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器
        --edit-service    -E        edit virtual service with options 编辑内核虚拟服务器表中的一条虚拟服务器记录
        --delete-service  -D        delete virtual service 删除内核虚拟服务器表中的一条虚拟服务器记录
        --clear           -C        clear the whole table 清除内核虚拟服务器表中的所有记录
        --restore         -R        restore rules from stdin 恢复虚拟服务器规则
        --save            -S        save rules to stdout 保存虚拟服务器规则,输出为-R 选项可读的格式
        --add-server      -a        add real server with options 在内核虚拟服务器表的一条记录里添加一条新的真实服务器
        --edit-server     -e        edit real server with options 编辑一条虚拟服务器记录中的某条真实服务器记录
        --delete-server   -d        delete real server 删除一条虚拟服务器记录中的某条真实服务器记录
        --list            -L|-l     list the table 显示内核虚拟服务器表
        --zero            -Z        zero counters in a service or all services 虚拟服务表计数器清零
        --set tcp tcpfin udp        set connection timeout values 设置连接超时值
        --start-daemon              start connection sync daemon 启动同步守护进程。他后面可以是master 或backup,用来说明LVS Router 是master 或是backup。在这个功能上也可以采keepalived 的VRRP 功能。
        --stop-daemon               stop connection sync daemon 停止同步守护进程
        --help            -h        display this help message 显示帮助信息
        --tcp-service  -t service-address   service-address is host[:port] 说明虚拟服务器提供的是tcp 的服务[vip:port] or [real-server-ip:port]
        --udp-service  -u service-address   service-address is host[:port] 说明虚拟服务器提供的是udp 的服务[vip:port] or [real-server-ip:port]
        --fwmark-service  -f fwmark         fwmark is an integer greater than zero 说明是经过iptables 标记过的服务类型。
        --scheduler    -s scheduler         one of rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,the default scheduler is wlc. 使用的调度算法,有这样几个选项,默认的调度算法是: wlc.
        --persistent   -p [timeout]         persistent service 持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理。timeout 的默认值为300 秒
        --netmask      -M netmask           persistent granularity mask
        --real-server  -r server-address    server-address is host (and port) 真实的服务器[Real-Server:port]
        --gatewaying   -g                   gatewaying (direct routing) (default) 指定LVS 的工作模式为直接路由模式(也是LVS 默认的模式
        --ipip         -i                   ipip encapsulation (tunneling) 指定LVS 的工作模式为隧道模式
        --masquerading -m                   masquerading (NAT) 指定LVS 的工作模式为NAT 模式
        --weight       -w weight            capacity of real server 真实服务器的权值
        --u-threshold  -x uthreshold        upper threshold of connections
        --l-threshold  -y lthreshold        lower threshold of connections
        --mcast-interface interface         multicast interface for connection sync 指定组播的同步接口
        --syncid sid                        syncid for connection sync (default=255)
        --connection   -c                   output of current IPVS connections 显示LVS 目前的连接 如:ipvsadm -L -c
        --timeout                           output of timeout (tcp tcpfin udp) 显示tcp tcpfin udp 的timeout 值 如:ipvsadm -L
        --timeout --daemon                            output of daemon information 显示同步守护进程状态
        --stats                             output of statistics information 显示统计信息 --rate                              output of rate information 显示速率信息
        --thresholds                        output of thresholds information --persistent-conn                   output of persistent connection info
        --sort                              sorting output of service/server entries 对虚拟服务器和真实服务器排序输出
        --ops          -O                   one-packet scheduling --numeric      -n                   numeric output of addresses and ports 输出IP 地址和端口的数字形式

--在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器
        --rr        轮询算法
        --wrr        加权轮训调度
        --dh        目的地址哈希调度
        --sh        源地址哈希调度
ipvsadm -A -t 192.168.3.200:80 -s rr

--在内核虚拟服务器表的一条记录里添加一条新的真实服务器
        --[-g|i|m]: LVS类型    
        --    -g: DR
        --    -i: TUN
        --    -m: NAT
        --    [-w weight]: 定义服务器权重

ipvsadm -a -t 192.168.3.200:80 -r 192.168.3.214 -g
ipvsadm -a -t 192.168.3.200:80 -r 192.168.3.215 -g
ipvsadm -lnc

--        真实服务器配置
S-R1

--设置lo子网卡,掩码设置4个255
ifconfig lo:8 192.168.3.200 netmask 255.255.255.255

--arp_ignore参数的作用是控制系统在收到外部的arp请求时,是否要返回arp响应。
        --0:响应任意网卡上接收到的对本机IP地址的arp请求(包括环回网卡上的地址),而不管该目的IP是否在接收网卡上。
        --1:只响应目的IP地址为接收网卡上的本地地址的arp请求。
        --2:只响应目的IP地址为接收网卡上的本地地址的arp请求,并且arp请求的源IP必须和接收网卡同网段。
        --3:如果ARP请求数据包所请求的IP地址对应的本地地址其作用域(scope)为主机(host),则不回应ARP响应数据包,如果作用域为全局(global)或链路(link),则回应ARP响应数据包。
        --4~7:保留未使用
        --8:不回应所有的arp请求
      --sysctl.conf中包含all和eth/lo(具体网卡)的arp_ignore参数,取其中较大的值生效。

echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

--arp_announce:定义将自己地址向外通告时的通告级别;
        --0:允许使用任意网卡上的IP地址作为arp请求的源IP,通常就是使用数据包a的源IP。
        --1:尽量避免使用不属于该发送网卡子网的本地地址作为发送arp请求的源IP地址。
        --2:忽略IP数据包的源IP地址,选择该发送网卡上最合适的本地地址作为arp请求的源IP地址。
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

--安装httpd,启动服务,设置开机启动
yum install httpd -y
service httpd start
chkconfig httpd on
    
        --添加主页
vi /var/www/html/index.html

LVS负载均衡简单配置的更多相关文章

  1. nginx负载均衡简单配置

    nginx负载均衡简单配置准备三台虚拟机来做这个实验:192.168.232.132        web服务器192.168.232.133        web服务器192.168.232.134 ...

  2. nginx 负载均衡简单配置

    配置要求: 三台服务器 127.0.0.1       主负载(把访问请求分给主机池) 127.0.0.2       主机2 127.0.0.3       主机3 第一步: 配置127.0.0.1 ...

  3. php nginx 负载均衡简单配置过程

    负载均衡 负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解 ...

  4. Linux(CENTOS7) Nginx负载均衡简单配置

    负载均衡的作用 1.转发功能 按照一定的算法[权重.轮询],将客户端请求转发到不同应用服务器上,减轻单个服务器压力,提高系统并发量. 2.故障移除 通过心跳检测的方式,判断应用服务器当前是否可以正常工 ...

  5. window下nginx负载均衡简单配置-----权重的实现

    下面介绍一个在window下的nginx的负载均衡配置. 需要你在你的电脑上跑两个tomcat.一个8080,一个9080. 需要一个nginx服务器. 需要修改本机的host 注意:我们这里配置不会 ...

  6. LVS负载均衡机制之LVS-DR模式工作原理以及简单配置

    本博文主要简单介绍一下LVS负载均衡集群的一个基本负载均衡机制:LVS-DR:如有汇总不当之处,请各位在评论中多多指出. LVS-DR原理: LVS的英文全称是Linux Virtual Server ...

  7. LVS负载均衡中arp_ignore和arp_annonuce参数配置的含义

    先简单的介绍下关于LVS负载均衡 LVS(Linux  Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...

  8. LVS负载均衡中arp_ignore和arp_annonuce参数配置

    先简单的介绍下关于LVS负载均衡 LVS(Linux  Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...

  9. LVS负载均衡IP隧道模式原理介绍以及配置实战

    LVS 基本工作原理 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 PREROUTING 链首先会接收到用户请求,判断目标 IP 确定是本机 IP,将数 ...

随机推荐

  1. JS练习第三课

    用typeof查看数据类型 <pre> <script type="text/javascript"> alert(typeof 12345); <s ...

  2. appium定位toast消息的使用

    定位使用xpath后,定位消息文本,然后使用text获取消息文本做断言.toast_loc = ("xpath", ".//*[contains(@text,'切换运营商 ...

  3. echart 图例

    说明:stack相同,两个bar合并但是不会重叠 如果需要重叠 用barGap: '-100%', 根据不同的需求来使用两者. <template> <div> echart ...

  4. SQL SERVER 如何把1列多行数据 合并成一列显示

    示例 修改前:1列多行数据 修改后:合并成一列 示例语句 1 2 3 4 5 6 7 8 9 10 11 select 类别,     名称 = (         stuff(            ...

  5. sourceInsight4 完美破解

    sourceInsight4 完美破解 参考路径: https://blog.csdn.net/zxy020/article/details/75047670 首先确保你在官网下载了原版4.0并安装好 ...

  6. 【信号与线性系统】为什么求解零输入响应时转移算子H(p)不能约分,但计算单位冲激响应时却可以约分?

    为什么求零输入响应rZI时转移算子H(p)不能约分? . . . 我们知道,求零输入响应rZI的实质其实是求解微分方程 D(p)r(t) = N(p)e(t) 的解.由于这里 e(t)=0 ,所以这是 ...

  7. thinkpadE系列重装系统:u盘启动

    一.下载深度装机大师,制作启动u盘. 二.重启电脑:按F1;进入bios设置:     thinkpad e430c笔记本使用u盘装系统时无法使用u盘启动,这是由于thinkpad e430c笔记本u ...

  8. 用angular制作简单的选项卡

    现在angular变得挺火热的,自己也去简单的学习了一下,学了几天下来觉得angular果然好用,但是现在只是停留在比较浅的层面上,要想学好angular还是得下一番功夫的.学了一点新知识就想和大家分 ...

  9. 关于在spring boot里使用Thymeleaf模板的application.properties配置

    spring.thymeleaf.cache=false spring.thymeleaf.encoding=utf- spring.thymeleaf.mode=HTML5 spring.thyme ...

  10. 第七周助教工作总结——NWNU李泓毅

    本周应批改作业0,实批改作业0 因本周开始软工团队项目,故本周几位助教正在制定团队项目题目并且处理相关工作. 这一次的作业将于4月17日前进行提交,作业为软件研发团队的组建.