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
下一篇 2017-08-22

相关推荐

  • 磁盘配额实现

    磁盘配额实现 磁盘配额要求必须是独立的分区 创建一个新的分区 #同步分区表 [root@localhost ~]# partx -a /dev/sda [root@localhost ~]# mkfs.ext4 /dev/sda6 -L /home [root@localhost ~]# blkid /dev/sda6: LABEL=”/home…

    Linux干货 2017-12-09
  • Redis 存储分片之代理服务Twemproxy 测试

    概述 实际业务场景中单点 Redis 容量、并发都是有限的,所以有 Redis Cluster 的需求。 但是官方的 Redis Cluster 一再跳票,还不可用。 只好先使用最简单的方式:Proxy。有很多可选,但在大范围生产使用的, Twitter 开源的 Twemproxy  看起来是个理想的选择 – https://…

    Linux干货 2015-03-10
  • Linux下软链接与硬链接

    Linux下软链接与硬链接的区别 Linux中的文件都文件名和数据,在linux上面被分为两个部分:元数据与数据。用户数据,即文件数据块(data block),数据块是记录文件真实内容的地方,而元数据是文件的附加属性,如大小,创建时间,所有者等信息。在Linux中,元数据中的inode号(inode是文件的元数据的一部分,但其不包含文件名,inode号即索…

    Linux干货 2016-10-20
  • 第三周 磁盘文件系统进阶

    文件系统的使用:     首先要“挂载”:mount 命令和umount命令     根文件系统这完的其他文件系统要想能够访问, 都必须通过“关联”至根文件上的某个目录来实现,次关联操作即为“挂载”;此目录几位“挂载点”;     挂载点:mount-point,用于做为另一个文件系统的访问入口; …

    Linux干货 2016-11-22
  • Linux终端类型

    Linux中各种终端的解释 设备终端   键盘鼠标显示器 物理终端( /dev/console ) )   在Linux 系统中,计算机显示器通常被称为控制台终端(Console)。 虚拟终端(tty :teletypewriters, /dev/tty# # 为[1-6])   tty 可有n 个,Ctrl+Alt+…

    Linux干货 2016-10-13
  • 马哥教育网络班22期+第14周课程练习

    系统的INPUT和OUTPUT默认策略为DROP;   iptables -P INPUT DROP   iptables -P OUTPUT DROP 1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了adm…

    Linux干货 2016-12-05