LVS集群的基础概念篇

端口映射其实就是常说的NAT的一种,其功能就是把在公网的地址转翻译成私有地址(目标地址转换DNET)

LVS集群中实现的三种IP负载均衡技术:

VS/NAT:在已有的IP负载均衡技术中,主要有通过网络地址转换NAT(Network Address  Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器

VS/TUN:通过IP隧道实现虚拟服务器。(Virtual Server via IP Tunneling)

VS/DR:通过直接路由实现虚拟服务器的方法

wps_clip_image-25429

LVS  DR模型:

CIP进入Director中目标IP(VIP)没改变,只是改变了目标IP 的mac。

当响应返回时,源IP是VIP,目标IP是CIP。

都处于同一物理网络,不要跨越路由器

拒绝realserver上VIP对前端路由上的VIP的arp请求:

wps_clip_image-23524

在LVS DR模型中:

Realserver中有eth0和lo接口,lo接口上配置的是VIP地址,要设置来自 director向后端realserver转发请求时,通过lo接口接进来,它还要从lo出去,lo又没办法出去,所以lo就将响应通过eth0转发出去,能通过eth0转发出去的条件是,eth0(DIP)必须指向一个网关,这个网关可以连向互联网。Eth0必须把网关指向能够到达CIP的网关。

CIP -- VIP --- DIP --- RS(lo -->eth0)--router --CIP

LVS-DR模型:

Director两个地址:VIP, DIP

RS有两个地址:VIP, RIP

禁止RS响应对VIP的ARP广播请求:

1、在前端路由上实现静态MAC地址VIP的绑定;

前提:得有路由器的配置权限;

缺点:Directory故障转时,无法更新此绑定;

2、arptables

前提:在各RS在安装arptables程序,并编写arptables规则

缺点:依赖于独特功能的应用程序

3、修改Linux内核参数

前提:RS必须是Linux;

缺点:适用性差;

两个参数:

arp_announce:定义通告模式

arp_ignore:定义收到arp请求的时响应模式

配置专用路由,以使得响应报文首先通过vip所配置的lo上的别名接口

Linux的工作特性:IP地址是属于主机,而非某特定网卡;

LVS-DR配置架构根据其VIP与RIP是否在同一样网络上有两种模型:

在Directory和RS上配置VIP,要使用如下格式:

# ifconfig ALIAS VIP netmask 255.255.255.255 broadcast VIP up

# route add -host VIP dev ALIAS

LVS-DR的配置:

Director: 最好打开路由转发

# iptables -t filter -F  

# ifconfig eth0:0 VIP  up     不加broadcast和netmask

# route add -host VIP dev eth0:0  

RSs:

# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

# echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

# ifconfig lo:0 VIP netmask 255.255.255.255 broadcast VIP up    

# route add -host VIP dev lo:0

Director:

# ipvsadm -A -t IP:PORT -s SCHEDULER(调度方法)   定义集群服务

# ipvsadm -a -t IP:PORT -r RS1 -g(lvs类型) -w WEIGHT  wps_clip_image-26435

/proc/sys/net/ipv4/conf/etho

proc/sys/net/ipv4/conf/all

先配置参数,再去配置IP地址。

arp_announce :arp主动通告(只当有arp请求时,主机主动的通告)

arp_announce=0(默认)  B网卡上的所以网卡地址都去通过

arp_announce=1 尽量只让B上和A在同一物理网络的网卡去通告

arp_announce=2 只让B上和A在同一物理网络的网卡去通告(假设A为172.16网络, 那就只让m去向A通告)

arp_ignore :arp 响应

arp_ignore=0 只要主机上有地址,就去响应arp请求

arp_ignore=1 对方请求的本地IP地址,并且配置在响应报文的接口上(A去请求m,   只有m刚好在与它连接的端口上,才响应)

    arp_ignore=2 同上,跟请求的一方必须在一个子网内

arp_ignore=3 同上,并且某一网卡的作用域是本地(localhost)的话,不予响应

    arp_ignore=8 同上,并且全部的请求都不响应

wps_clip_image-25432

你可能感兴趣的:(技术,网络,target,blank)