1、环境说明
  系统版本:ubuntu14.04
  LVS服务器:14.17.64.3
  真实服务器:14.17.64.4-12
  VIP:14.17.64.13
  部署目的:用户请求14.17.64.13的报文转发至14.17.64.4-12上进行负载均衡。
2、安装LVS
  由于LVS像iptables一样是工作在内核层,所以只需要安装模块ip_vs就可以了,并没有后台进程在跑
  #aptitude install ipvsadm
  # ipvsadm -v
  ipvsadm v1.26
  # lsmod |grep ip_vs     #查看内核模块,有代表ipvsadm加载进内核当中,此时LVS安装完毕
  ip_vs                 136701  0
  nf_conntrack           96976  1 ip_vs
  libcrc32c              12644  3 xfs,btrfs,ip_vs
  # ipvsadm -L -n       #查看lvs规则
  IP Virtual Server version 1.2.1 (size=4096)
  Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
  root@ubun
  # ipvsadm -L -c   #查看连接情况
3、配置LVS VIP服务
  -A是添加一条虚拟服务器记录,即VIP。此处配置要选择算法。
  #ipvsadm -A-t 14.17.64.13  -s wrr -p 300     #代理转发所有去往该IP TCP的报文,-s指定算法wrr为加权轮询算法,-p会话保持时间(默认值是300s)
  #ipvsadm -A-t 14.17.64.13:80 -s wrr -p 20    #代理转发去往该IP TCP80端口的报文
  VIP维护:
  使用-E修改VIP设置
例:ipvsadm -E -t 14.17.64.13 -s wrr -p 40 #可修改会话保持时间与算法。
  使用-D删除VIP设置
  例:ipvsadm -D -t 14.17.64.13    #删除该条VIP
4、配置LVS RIP规则
  -a是添加VIP要对哪些真实服务器IP(即RIP)进行负载(默认是DR模式即-g)。
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.4 -g -w 1   #-r指定真实服务器IP,-g为选择DR模式(-m为NAT模式,-t为tunnel模式),-w选择权重。
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.5 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.6 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.7 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.8 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.9 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.10 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.11 -g -w 1
  ipvsadm -a -t 14.17.64.13 -r 14.17.64.12 -g -w 1
  #如果只对tcp 80端口进行负载,可使用如下命令
  #ipvsadm -a-t14.17.64.13:80 -r 14.17.64.4:80 -g -w 1
  RIP维护:
  使用-e修改RIP配置
  例:ipvsadm -e -t14.17.64.13 -r 14.17.64.6 -g -w 4    #修改这条RIP规则的权重。
  使用-d删除RIP配置
  例:ipvsadm -d -t14.17.64.13 -r 14.17.64.6 -g -w 1   #删除该条RIP配置
5、在真实服务器上配置VIP
  在真实服务器上都配置上VIP,即14.17.64.13地址。
  #ifconfig lo:1314.17.64.13 netmask 255.255.255.255
6、在真实服务器上关闭ARP响应
  关闭真实服务器上loop口的arp回应,其它口的无须关闭。
  默认arp_ignore和arp_announce的参数都是0,即回应所有目的IP是本机的arp请求。
  在所有真实服务器上进行如下操作:
  echo "1">/proc/sys/net/ipv4/conf/all/arp_ignore         #只回答目标IP地址是来访网络接口本地地址的ARP查询请求。
  echo "2">/proc/sys/net/ipv4/conf/all/arp_announce      #对查询目标使用最适当的本地地址。
  #此处可以进行测试,在测抑制arp前,能ping通VIP地址。在抑制arp后,在前端交换机上清掉arp缓存,再ping VIP就不通了。但物理eth0网卡IP还是能通的。
  arp含义参考地址:http://www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html
  接下来在lvs上配置VIP:
  ifconfig lo:13 14.17.64.13 netmask255.255.255.255
7、开启内核转发功能
  在lvs上开启内核转发功能。
  #echo  'net.ipv4.ip_forward=1'  >>/etc/sysctl.conf
  #sysctl -p
8、LVS测试
  由于真实服务器上未搭建http服务,但我设置的lvs是转发所有tcp连接,所以我通过ssh到VIP上进行测试。
  #iptables -L -c  #查看lvs转发记录,确定请求转发成功。
  TCP 14:59 ESTABLISHED 242.103.143.219.broad.bj.bj.dynamic.163data.com.cn:5197714.17.64.13:22  14.17.64.10:22
  至此lvs搭建成功。
9、lvs补充思考
  1、  自身无法对真实服务器保活,如果出现服务器down情况,还会向down的服务器转发请求。
  解决方法是keepalived或自已写脚本来监测连通性再清除相应规则。
  2、一台LVS服务器会出现单点故障,需要有备份LVS服务器
  解决方法是keepalived来进行LVS故障接管。

Ubuntu LVS DR模式生产环境部署的更多相关文章

  1. 一个公网地址部署LVS/DR模式

    http://blog.chinaunix.net/uid-7411781-id-3436142.html 一个公网地址部署LVS/DR模式   网上看了很多关于LVS的文章,在选取2种模式LVS/D ...

  2. LVS+Keepalived 高可用环境部署记录(主主和主从模式)

    之前的文章介绍了LVS负载均衡-基础知识梳理, 下面记录下LVS+Keepalived高可用环境部署梳理(主主和主从模式)的操作流程: 一.LVS+Keepalived主从热备的高可用环境部署 1)环 ...

  3. ubuntu Django + Uwsgi + Nginx 的生产环境部署

    一.概述 使用runserver可以使我们的django项目很便捷的在本地运行起来,但这只能在局域网内访问,如果在生产环境部署django,就要多考虑一些问题了.比如静态文件处理,安全,效率等等,本篇 ...

  4. 第三百九十八节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5系统环境设置

    第三百九十八节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5系统环境设置 1.Linux安装配置 注意事项: 虚拟机网卡桥接模式 不要拨VPN 如果,网络怎么都 ...

  5. 深度学习Tensorflow生产环境部署(上·环境准备篇)

    最近在研究Tensorflow Serving生产环境部署,尤其是在做服务器GPU环境部署时,遇到了不少坑.特意总结一下,当做前车之鉴. 1 系统背景 系统是ubuntu16.04 ubuntu@ub ...

  6. Vue生产环境部署

    前面的话 开发时,Vue 会提供很多警告来帮助解决常见的错误与陷阱.生产时,这些警告语句却没有用,反而会增加载荷量.再次,有些警告检查有小的运行时开销,生产环境模式下是可以避免的.本文将详细介绍Vue ...

  7. 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置

    第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本  uwsgi- ...

  8. HyperLedger Fabric 1.4 kafka生产环境部署(11.1)

    11.1 Kafka模式简介       上一章介绍的Solo模式只存在一个排序(orderer)服务,是一种中心化结构,一旦排序(orderer)服务出现了问题,整个区块链网络将会崩溃,为了能在正式 ...

  9. lvs之 lvs+nginx+tomcat_1、tomcat_2+redis(lvs dr 模式)

    前提:已经安装好 lvs+nginx+tomcat_1.tomcat_2+redis环境 ,可参考 (略有改动,比如tomcat_1.tomcat_2安装在两台机器上,而不是单机多实例 ,自行稍稍变动 ...

随机推荐

  1. jmeter md5加密请求参数

    实际的接口测试过程中,再发生http之前有可能需要对某些参数(或某几个参数的组合)进行md5加密 在jmeter中可通过两种方式来实现md5加密 beanshell实现md5加密 在org.apach ...

  2. [CSS] Change the Alignment of a Single Flexed Item with 'align-self'

    Inside of a flexed container, a single item can control its own flex with align-self. The possible v ...

  3. 使用Newtonsoft.Json将数据导出至Json文件

    导出方法: /// <summary> /// 导出文件 /// </summary> public void Export(List<Dict> dicts, s ...

  4. linux系列(十三):less命令

    1.命令格式: less [参数]  文件 2.命令功能: less 与 more 类似,但使用 less 可以随意浏览文件,而 more 的功能不如less,而且 less 在查看之前不会加载整个文 ...

  5. Zotero使用教程(1)-安装及配置

    小书匠kindle   作为一名科研人员,经常要阅读大量文献(当然我收集>>阅读,哎!),收集来的文献一般我们使用文件夹管理,通常使用文件夹命名和层级分布解决论文的分类问题.   但是,实 ...

  6. win10下子系统的倒腾记录

    本文是对于win10下安装ubuntu 18.04的安装.配置c语言开发环境的记录: 一.win10下面的设置,从win10的1709开始,可以完整的搞定linux子系统,如果win10版本不够的同学 ...

  7. ICEM rpl文件简要讲解【转载】

    转载自:http://blog.sina.com.cn/s/blog_90affd9801016xti.html 很多人问ICEM的rpl怎样录制的问题,为什么CFX调用时老是报错,这里开个帖子简单讲 ...

  8. pc电源cpu插座和显卡插座

    cpu插座是8口的,一般4+4 显卡插座是6口的,也有8口的用6+2 6+2的中2有一个小边,组合成8口也不能插入cpu插座.

  9. Leetcode题 112 和 113. Path Sum I and II

    112题目如下: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that addi ...

  10. Flutter移动电商实战 --(46)详细页_自定义TabBar Widget

    主要实现详情和评论的tab provide定义变量 自己做一个tab然后用provide去控制 定义两个变量来判断是左侧选中了还是右侧选中了.并定义一个方法来接受参数,修改是左侧还是右侧选中的状态值 ...