linux集群成员机配置,LINUX集群LVS负载均衡配置

LINUX集群LVS负载均衡配置

基础原理篇:

LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器。

负载均衡一般是指一群计算机的集合,通过一个虚拟ip去根据某种算法,去不停分配到这集合的计算机当中,假如有 主机A 主机B 主机C 主机A作为一个负载均衡机,主机B和主机C都是web应用服务器,主机A是负载均衡机,主机A会虚拟一个IP出来作为这个负载均衡的IP,假定主机A的IP 192.168.1.1 主机B的IP是192.168.10.2 主机C的IP 192。168.10.3 这个负载均衡虚拟IP的192.168.1.10 就是访问这web服务器的IP地址 当外部来访问web站点的时候,主机A(负载均衡机)会把这个虚拟IP通过作为NAT地址转换,分发主机A和主机B,采用一种算法,通常一般采用轮询的方式,当外部网络来访问时候,主机A(负载均衡机)首先任意分开给主机A ,有主机A把页面访问给来至外部网络的访问,当有下一个来外部网络的访问,主机A(负载均衡机)在分发给主机B,按照这样的机制,一次分发给主机A,一次分发给主机B。

uid-7387830-id-183310.html

LVS有三种负载均衡的模式,分别是VS/NAT(nat模式) VS/DR(路由模式) VS/TUN(隧道模式)

VS/NAT模式介绍

这种模式当来访问这个网络的时候,负载均衡机会会通过NAT的转换分别分发给应用服务器A或应用服务器B。应用服务器返回给来至外部的访问,要在次通过负载机访问给来至外部的访问。这种模式通常是应用服务器是IP是私有IP地址,需要通过NAT地址来转换成公网IP地址。

uid-7387830-id-183310.html

VS/DR模式介绍

路由模式,负载均衡机和应用服务器同属于一个IP范围,并且负载均衡虚拟的IP也属于这个IP范围,通常都是配置的公网IP地址,这种方式我们可以采用路由模式。当外部网络来访问时候,首先肯定是通过负载均衡机来分发给这个集合的应用服务器,但是应服务器,返回给外部网络的不在通过这个负载均衡机出去,而且自己通过路由返回给外部网络,自己去查路由,去返回。

uid-7387830-id-183310.html

vs/tun模式介绍

隧道模式,负载均衡机和集群集合的服务器和负载均衡虚拟出来IP不属于同一个网段,分别分布在不同网段,这时候我需要隧道模式,好比这个负载均衡机和这个集群集合的服务器建议一条用来专门用来负载均衡隧道,隧道模式首先外部网络访问时候,经负载均衡机来分发到应用服务器,应用服务器也是和路由模式一样的方式,自己路由出去返回结果给来至外部的访问,也不经在过负载均衡机出返回给来至外部网络的访问。

uid-7387830-id-183310.html

VS/NAT、VS/DR、 VS/TUN、这三种模式区别

VS/NAT这种模式返回给来至外部的访问的数据时候,需要在经过负载均衡的那台服务器,这种模式给负载均衡服务器带来负重,如果集群集合的服务器效果,访问量过大,这样负载均衡服务器这样有所谓负担,而另外2种模式不在通过负载均衡机,自己本身通过路由出去,这样也给负载均衡服务器,降低了负担。

配置篇:

lvs 需要2.4.24 以后版本的内核源代码才能支持 下载地址:

需要下载ipvsadm用户工具 下载地址

这里使用的是ipvsadm-1.24.的版本

安装ipvsadm

tar -zxvf ipvsadm-1.24.tar.gz

cd ipvsadm-1.24

make all

make install

ln –s/usr/src/kernels/2.6.18-194.el5-xen-i686 /usr/src/linux

VS/NAT模式配置

uid-7387830-id-183310.html

200.200.200.1这台机

uid-7387830-id-183310.html

192.168.10.2 这台机网卡配置:

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.10.2

NETNASK=255.255.255.0

GATEWAY=192.168.10.1

192.168.10.3 这台机网卡配置:

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.10.3

NETNASK=255.255.255.0

GATEWAY=192.168.10.1

回到 200.200.200.1这台机

首先

echo "1" >/proc/sys/net/ipv4/ip_forward 开启路由功能

ipvsadm –C 清楚配置信息

设置这个IP为负载均衡的IP-s rr为轮询的方式负载均衡

uid-7387830-id-183310.html

添加这个负载集群IP的成员-m伪装(NAT转换) -w权重值

uid-7387830-id-183310.html

ipvsadm –ln 查询集群情况

uid-7387830-id-183310.html

测试效果

uid-7387830-id-183310.html

uid-7387830-id-183310.html

uid-7387830-id-183310.html

uid-7387830-id-183310.html 代表访问的负载均衡次数

VS/DR配置模式

uid-7387830-id-183310.html

200.200.200.101这台机网卡配置

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=200.200.200.101

NETNASK=255.255.255.0

GATEWAY=200.200.200.254

200.200.200.102这台机网卡配置

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=200.200.200.102

NETNASK=255.255.255.0

GATEWAY=200.200.200.254

200.200.200.103这台机网卡配置

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=200.200.200.103

NETNASK=255.255.255.0

GATEWAY=200.200.200.254

200.200.200.101 这台机

vi /ect/sysctl.conf

添加或修改如下配置

net.ipv4.ip_forward = 0

net.ipv4.conf.all.send_redirects = 1

net.ipv4.conf.default.send_redirects = 1

net.ipv4.conf.eth0.send_redirects = 1

执行sysctl  –p 命令 立即生效

设置这个IP为负载均衡的IP-s rr为轮询的方式负载均衡

# ipvsadm -A -t 200.200.200.200:80 -s rr

添加这个负载集群IP的成员-g路由模式 -w权重值

# ipvsadm -a -t 200.200.200.200:80 -r 200.200.200.102 -g -w 1

# ipvsadm -a -t 200.200.200.200:80 -r 200.200.200.103 -g -w 1

配置负载均衡虚拟IP地址

# ifconfig eth0:0 200.200.200.200 broadcast 200.200.200.200 netmask 255.255.255.255 up

配置主机路由

# route add -host 200.200.200.200 dev eth0:0

200.200.200.102 和 200.200.200.103这两台机配置(配置相同)

vi /ect/sysctl.conf

添加或修改如下配置

net.ipv4.ip_forward = 0

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

执行sysctl  –p 命令 立即生效

配置负载均衡虚拟IP地址

# ifconfig lo:0 200.200.200.200 broadcast 200.200.200.200 netmask 255.255.255.255 up

配置主机路由

# route add -host 200.200.200.200 dev lo:0

测试效果

uid-7387830-id-183310.html

uid-7387830-id-183310.html

VS/TUN模式配置

uid-7387830-id-183310.html

192.168.10.2 这台机网卡配置:

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.10.2

NETNASK=255.255.255.0

GATEWAY=192.168.10.1

200.200.200.101这台机网卡配置

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=200.200.200.101

NETNASK=255.255.255.0

GATEWAY=200.200.200.254

200.200.200.102这台机网卡配置

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=200.200.200.102

NETNASK=255.255.255.0

GATEWAY=200.200.200.254

200.200.200.101这台机

vi /ect/sysctl.conf

添加或修改如下配置

net.ipv4.ip_forward = 0

net.ipv4.conf.all.send_redirects = 1

net.ipv4.conf.default.send_redirects = 1

net.ipv4.conf.eth0.send_redirects = 1

执行sysctl  –p 命令 立即生效

配置负载均衡虚拟IP地址

#ifconfig tunl0 200.200.200.200 broadcast 200.200.200.200 netmask 255.255.255.255 up

ipvsadm –C 清楚ipvsamd

设置这个IP为负载均衡的IP-s rr为轮询的方式负载均衡

ipvsadm -A -t 200.200.200.200:80 –s  rr

添加这个负载集群IP的成员 –i 隧道模式 –w 权重值

ipvsadm –a  -t 200.200.200.200:80 –r 200.200.200.102 –i –w 1

ipvsadm –a  -t 200.200.200.200:80 –r 192.168.10.2 –i –w 1

200.200.200.102 和 200.200.200.103这两台机配置(配置相同)

vi /ect/sysctl.conf

添加或修改如下配置

net.ipv4.ip_forward = 0

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

执行sysctl  –p 命令 立即生效

配置负载均衡虚拟IP地址

#ifconfig tunl0 200.200.200.200 broadcast 200.200.200.200 netmask 255.255.255.255 up

测试效果

uid-7387830-id-183310.html

uid-7387830-id-183310.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值