LVS

    Linux虚拟服务器LVS)是基于Linux内核的操作系统的负载平衡软件。

    LVS提供了良好的可扩展性,可靠性和可服务性。

LVS项目的主要工作是开发先进的IP 负载平衡软件(IPVS),应用级负载平衡软件(KTCPVS)和集群管理组件。

  • IPVS:在Linux内核中实现的高级IP负载平衡软件。
  • KTCPVS:在Linux内核中实现应用级负载平衡

    LVS可用于构建高可扩展性和高可用性的网络服务,如网络,电子邮件,媒体和VoIP服务,并将可扩展网络服务集成到大规模可靠的电子商务或电子政务应用中。基于LVS的解决方案已经部署在世界各地的许多实际应用中。

    LVS组件依赖于Linux Netfilter框架,其源代码可在Linux内核源代码中的net/netfilter/ipvs子目录中使用。LVS能够通过检查第7层数据包来处理UDP,TCP第4层协议以及FTP被动连接。它提供目录中的计数器的层次结构。/proc调用用于配置LVS 的用户实用程序ipvsadm(8),这需要超级用户权限才能运行。

LVS实现了几个平衡调度器,下面列出了相关的源文件:

  • 循环(ip_vs_rr.c)
  • 加权循环(ip_vs_wrr.c)
  • 最小连接(ip_vs_lc.c)
  • 加权最小连接(ip_vs_wlc.c)
  • 基于位置的最小连接(ip_vs_lblc.c)
  • 基于位置的与复制的最小连接(ip_vs_lblcr.c)
  • 目标散列(ip_vs_dh.c)
  • 源哈希(ip_vs_sh.c)
  • 预期延迟最短(ip_vs_sed.c)
  • 不排队(ip_vs_nq.c)

示例

使用两个真实服务器设置虚拟HTTP服务器:

ipvsadm -A -t 192 .168.0.1:80 -s rr
ipvsadm -a -t 192 .168.0.1:80 -r 172 .16.0.1:80-m
ipvsadm -a -t 192 .168.0.1:80 -r 172 .16.0.2:80-m

    第一个命令将IP地址192.168.0.1上的TCP端口80 分配给虚拟服务器。所选择的负载均衡调度算法是round-robin()。第二和第三个命令是将真实服务器的IP地址添加到LVS设置。转发的网络包将被masked()。 

查询上述配置的LVS设置的状态:

#ipvsadm -L -n
IP虚拟服务器版本1.0.8(size = 65536)
Prot LocalAddress:端口调度器标志
  - > RemoteAddress:端口正向重量ActiveConn InActConn
TCP 192.168.0.1:80 rr
  - > 172.16.0.2:80 Masq 1 3 1
  - > 172.16.0.1:80 Masq 1 4 0

原创文章,作者:HGG,如若转载,请注明出处:http://www.178linux.com/85252

(0)
HGGHGG
上一篇 2017-08-21 21:20
下一篇 2017-08-22 08:55

相关推荐

  • 文件管理

    compress:压缩命令 -d:解压缩(=uncompress) -c:结果输出到标准输出,不删除原文件 -v:显示详情 zcat:不解压文件查看内容   gzip:压缩命令 -d:解压缩 -c:结果输出到标准输出,不删除原文件 -#:1-9代表压缩比,默认为6 zcat:不解压文件查看内容   bzip2:压缩命令 -k:保留原文件 …

    Linux干货 2016-08-18
  • 磁盘管理之LVM

    1、什么是LVM     LVM(Logical Volume Manager)逻辑卷管理,是linux环境下将一种将一个或多个硬盘的分区在逻辑上集合来呈现给上层应用,对磁盘实现动态管理的机制。相对于普通的磁盘分区有很大的灵活性,使用LVM在一定程度上就可以解决普通磁盘分区带来的问题。 2、专业术语     &nbsp…

    Linux干货 2016-09-02
  • 进程与计划任务

    PID 进程号,用来标记各个进程;CentOS6中起始的第一个进程为init7中为systemd 进程优先级: 系统优先级:数字越小,优先级越高 0-139(4,5中) 各有140个运行队列和过期队列 0-98,99(6中) 实时优先级:99-0:值越大优先级越高 nice值:-20到19,对应系统优先级100-139或99 进程状态: 运行:running…

    2017-05-14
  • 第一周作业

    – 描述计算机的组成及其功能。 – 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。 – 描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。 – 说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shu…

    Linux干货 2016-12-04
  • Linux文件管理及bash特性详解

    1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。  文件管理工具:cp,mv,rm       cp命令:copy       源文件:目标文件  单源复制:cp [OPTION]… [-T] SOURCE DEST  多源复制:…

    Linux干货 2016-11-06
  • shell编程之循环

           当需要重复运行特定的指令以满足系统管理工作需要时,条件判断语句if、case并不能很好地提供支撑,shell提供了for、while、until循环语句来满足此需求。 一、for循环语句        for循环用于重复整个对象列表,依次遍历对列…

    Linux干货 2016-08-18