zhendeaini123 发表于 2019-1-4 09:15:10

lvs-dr

  lvs
  arp 3层协议
  arp -a
  arp -d
  arp -a (linux,windows)
  arp cache表双刃剑
  1、减少广播风暴
  2、arp 欺骗
  arp 生产环境问题与解决办法
  1、arp欺骗,违造mac-ip,网关的伪造。
  高可用性arp cache 清空。
  lvs+keeplived架构
  culter:利用高速通信网络组成的计算机系统,每个节点都是一个进程。
  集群:
  lbc(负载均衡),lvs,nginx,haproxy,lighttpd
  hac(高可用性),keepalived,heartbeat
  lvs 只可以在unix上,节点可以是windows
  ipvsadmin,keepalived管理工具
  ipvs 实现调度
  lvs 负载均衡技术是linux内核实现。
  lvs术语
  vip (给客户提供服务的IP)
  rip(real servers ip)
  dip(director ip address),物理网卡iP地址
  cip(client ip address)
  lvs 3种模式
  nat
  tun
  dr
  dr 模式*
  是通过改写请求目标mac地址,将请求发给真实服务器,而真实服务器将响应后的处理结果直接返给客户端用户。
  vip对应的mac改成rsmac
  cip-vip-vip改变rmac-绑定(lo:vip;arp抑制)
  好处:访问量大
  rs上绑定
  只改变mac地址,不会改port
  dr模式效率高,但配置也麻烦。
  nat 模式(不是很常用)
  1、将请求报文和响应报文,通过lb地址重写然后转发给内部服务器,报文返回时改写成原来的用户请求地址。
  2、只要在lb上配置wan IP即可,lb也要有私有lan内物理网卡地址
  3、每rs网关必须是lb内网关
  4、lb访问量大时不行的,最多10-20个节点。
  5、nat模式与ip的转换如,请求10.0.0.1:80可以调度到rs上的8080(DR与tun不具备)
  6、要开启iptables 的forward功能。
  tun 模式(仅仅了解)
  in:增加1个IP头。
  lvs 的调度算法
  固定高度方法:rr(轮训,rs性能相关不大的时候)
  wrr(加权轮盾,性能好就多做点)
  dh(目地)
  sh (源hash)
  动态
  lc(最小连接数)
  wcl(连接数少时,让谁来处理,依据状成态)
  lvs 常用算术
  http,mail,mysql
  a.rr
  b.wlc
  c.wrr
  lvs 实验
  lvs:10.0.0.7(lb)
  rs1:10.0.0.8
  rs2:10.0.0.9
  lvs 的安装
  1.2.4
  1.2.6(centos 6.X)
  1、lsmod|grep ip_vs(内核支持调度)
  ln -s /usr/src/kerner/2.6 /usr/src/linux
  ll /usr/src/linux
  2、安装lvs依赖的包
  yum install -y wget make kernel-devel gcc gcc-c++ libnl* libpopt* popt-static
  3、ln -sv /usr/src/kernels/2.6.32-573.8.1.el6.x86_64 /usr/src/linux
  4、下载并安装lvsadmin
  wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz
  tar xf ipvsadm-1.26.tar.gz
  cd ipvsadm
  make
  make install
  报错:err
  make:** error 1
  soluction: yum install libnl* libpopt* popt-static
  5、内核加载
  lsmod | grep ip_vs
  modprobe ip_vs(/sbin/ipvsadm)
  6、手动配置lvs转发
  vip 配置
  #ifconfig eth1:0 10.0.0.10/24 up
  #ipvsadm --help
  #ipvsadm --set 30 5 60 (tcp tcpfin udp)
  #ipvsadm -A -t 10.0.0.10:80 -s rr -p 20 --添加一个ipvs虚拟服务,-t 指定IP:Port -s,轮询算法 -p 保持20s
  #ipvsadm -a -t 10.0.0.10:80 -r 10.0.0.8 -g -w 1
  #ipvsadm -a -t 10.0.0.10:80 -r 10.0.0.9 -g -w 1
  #ipvsadm -L -n 来查看rs-
  7、rs配置好
  8、绑定ip
  rs1#ifconfig lo:0 10.0.0.10/32 up
  rs2#ifconfig lo:0 10.0.0.10/32 up
  #route add -host 10.0.0.10 dev lo
  9、arp
  echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
  echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
  echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
  10、进行测试

页: [1]
查看完整版本: lvs-dr