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

相关推荐

  • 第四周作业

    1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限; [root@centos7 ~]# cp -r /etc/skel/ /home/tuser1[root@centos7 ~]# ls -ld /home/tuser1drwxr-xr-x. 2 root root 72 1…

    Linux干货 2016-11-27
  • Linux系统用户、组

    1、资源分派:          Authentication  认证        Authorization   授权     &nbs…

    Linux干货 2016-08-04
  • linux用户管理(一)

    作为一个专业的服务器发行版,CentOS上存在着n多个用户,作为一个专业的运维工程师,linux的用户管理和用户组的管理是做为一个SA必不可少的工作. 下面我们就先来谈谈linux中的用户管理: useradd可以在系统中新建一个用户 用法如下: useradd [选项] 用户名 常用选项: -u 指定用户的UID -g 指定用户的初始组ID -G…

    Linux干货 2017-04-03
  • 网络第21期第七周作业

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@localhost ~]# fdisk /dev/sdb WARNING: DOS-compatible m…

    Linux干货 2016-10-09
  • Centos7下的systemd管理

    systemd简介 Systemd是由红帽公司的一名叫做Lennart Poettering的员工开发,systemd是Linux系统中最新的初始化系统(init),它主要的设计目的是克服Sys V 固有的缺点,提高系统的启动速度,systemd和upstart是竞争对手,ubantu上使用的是upstart的启动方式,centos7上使用systemd替换…

    Linux干货 2016-09-23
  • 倒排索引-搜索引擎的基石

    1.概述       在关系数据库系统里,索引是检索数据最有效率的方式,。但对于搜索引起,他它并不能满足其特殊要求:       1)海量数据:搜索引擎面对的是海量数据,像Google,百度这样大型的商业搜索引擎索引都是亿级甚至几千的网页数量 ,面对…

    Linux干货 2015-12-10