木一 发表于 2019-1-5 12:48:09

LVS调度方法及NAT模型的演示

  LVS:
  类型:
  LVS-NAT:地址转换
  LVS-DR: 直接路由
  LVS-TUN:隧道
  NAT:
  集群节点跟director必须在同一个IP网络中;
  RIP通常是私有地址,仅用于各集群节点间的通信;
  director位于client 和 real server之间,并负责处理进出的所有通信;
  realserver必须将网关指向dip;
  支持端口映射;
  realserver可以使用任意OS;
  较大规模应用场景中,director易成为系统瓶颈;
  DR:
  集群节点跟director必须在同一个物理网络中;
  RIP可以使用公网地址,实现便捷的远程管理和监控;
  director仅负责入站请求,响应报文则有realserver直接发给客户端
  realserver不能将网站指向DIP;
  不支持端口映射;
  realserver可以使用大多数的OS;
  TUN:
  集群节点可以跨越Internet;
  RIP地址必须是公网地址;
  director仅负责入站请求,响应报文则有realserver直接发给客户端
  realserver不能将网站指向DIP;
  不支持端口映射;
  只有支持隧道功能的OS才能用于realserverz
  
  知识回顾:
  LB: 负载均衡集群
  HA: 高可用集群
  HP: 高性能集群
  
  LB:
  Hardware:
  F5 BIG-IP
  Citrix NetScaler
  A10
  SoftWare:
  四层:
  LVS
  七层:
  NGINX
  HAPROXY
  
  LVS: Linux Virtual Server
  

  Type:
  NAT:
  类似DNAT
  DR:直接路由
  
  TUN: 隧道(异地热备)
  
  
  固定调度:
  rr: 轮叫,轮询
  wrr: weight,加权
  sh: source hash, 源地址hash
  dh:destination hash目标地址hash
  

  
  
  动态调度
  
  LC:最少连接
  active*256+inactive
  谁小挑谁;
  WLC: 加权最少连接
  (active*256+inactive)/weight
  谁小挑谁;
  sed:最短期望延迟
  (active+1)*256/6
  nq: never queue 永不排队
  
  LBLC:基于本地的最少连接
  dh:
  LBLCR:基于本地带复制功能的最少连接
  
  
  
  默认方法: wlc
  
  ipvsadm
  管理集群服务
  添加:-A -t|u|f service-address [-s scheduler]
  -t: TCP协议的集群
  -u:UDP协议的集群
  service-address:IP:PORT
  -f:FirewallMark/FWM;防火墙标记
  service-address:Mark Number
  修改:-E
  删除:-D -t|u|f service-address
  
  例如 #ipvsadm -A -t 192.168.2.55:80 -s rr
  
  管理集群服务中的RS
  添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight]
  -t|u|f service-address: 事先定义好的某集群服务
  -r service-address: 某realserver地址; 在Nat模型中,可使用ip:port实现端口映射;
  [-g|i|m] :LVS类型
  -g:DR;
  -i:TUN;
  -m:NAT;
  [-w weight] 定义服务器权重;
  

  修改:-e
  删除:-d -t|u|f service-address -r server-address
  #ipvsadm -a -t 192.168.2.55:80 -r 192.168.10.8 -m
  #ipvsadm -a -t 192.168.2.55:80 -r 192.168.10.9 -m
  查看
  -L|l
  -n: 数字格式显示IP地址和端口
  --stats统计数据
  --rate 速率
  --timeout 显示tcp,tcpfin,和udp的会话超时时间;
  -c 显示当前IPVS连接状况的
  
  删除所有集群服务
  -C:清空IPVS规则;
  保持规则:
  -S
  # ipvsadm -S > /path/to/somefile
  载入此前的规则
  -R
  #ipvsadm -R < /path/to/somefile
  

  

  cat /proc/sys/net/ipv4/ip_forward
  

  出于安全考虑,Linux系统默认是禁止数据包转发的。所谓转发即当主机拥有多于一块的网卡时,其中一块收到数据包,根据数据包的目的ip地址将包发往本机另一网卡,该网卡根据路由表继续发送数据包。这通常就是路由器所要实现的功能。
  配置Linux系统的ip转发功能,首先保证硬件连通,然后打开系统的转发功能
  less /proc/sys/net/ipv4/ip_forward,该文件内容为0,表示禁止数据包转发,1表示允许,将其修改为1。可使用命令echo "1" > /proc/sys/net/ipv4/ip_forward 修改文件内容,重启网络服务或主机后效果不再。若要其自动执行,可将命令echo "1" > /proc/sys/net/ipv4/ip_forward 写入脚本/etc/rc.d/rc.local 或者 在/etc/sysconfig/network脚本中添加 FORWARD_IPV4="YES"
  




页: [1]
查看完整版本: LVS调度方法及NAT模型的演示