LVS负载均衡

LVS负载均衡

负载均衡群集,高可用群集,高性运算群集。

负载均衡工作模式:

1.地址转换(NAT模式)

2.IP隧道(tun模式)

3.直接路由(DR模式)

LVS由我国章文嵩博士在1998年5月创建,实际上相当于基于IP地址的虚拟化应用,为基于IP抵制内容请求分发的负载均衡提出了一种高效的解决方法。

modprobe ip_vs 加载ip_vs模块

cat /proc/net/ip_vs 查看ip_vs版本信息

yum install ipvsadm -y下载安装ipvsadm

ipvsadm -v 查看安装情况

为了模拟生产状况,可以准备五台服务器,三台内网web,一台服务器(两个网卡),一台外部服务器

创建虚拟服务器:ipvsadm -A -t 200.0.0.1:80 -s rr (rr轮询,wrr加权轮询,lc最少连接, 加权最少连接wlc)

ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.2:80 -m -w 1

ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.3:80 -m -w 1

(-a 添加真实服务器, -t用来指定VIP及其TCP端口, -r用来指定RIP地址及TCP端口,-m表示NAT群集模式,-w用来设置权重)

ipvsadm -ln 查看节点状态

ipvsadm -d -r 200.0.0.2:80 -t 192.168.1.2:80 从服务器池中删除某一个节点-d

ipvsadm -D -r 200.0.0.2:80删除整个虚拟机服务器。

ipvsadm-save > /etc/sysconfug/ipvsadm 保存策略

cat /etc/sysconfig/opvsadm 确认保存结果

systemctl stop ipvsadm 停止服务

systemctl start ipvsadm 启动服务

NFS 共享存储服务

NFS是一种基于TCP/IP传输的网络文件系统协议,通过NFS 客户机就可以像访问本地目录一样访问远程服务器中的共享资源,对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法NFS也是NAS存储设备必然支持的一种协议。

yum install nfs-utils rpcbind -y 下载安装nfs-utils. rpcbind软件包

systemctl enable nfs

systemctl enable rpcbind

mkdir -p /opt/wwwroot

vi /etc/exports

systemctl start rpcbind

systemctl start nfs

netstat -tunlp |grep rpcbind

showmount -e

在库户籍上访问NFS共享资源

yum install nfs-utils rpcbind -y 下载安装nfs-utils. rpcbind软件包

systemctl enable nfs

systemctl enable rpcbind

showmount -e 192.168.1.4

mount 192.168.1.4: /opt/wwwroot /var/www/html 在客户机上手动挂载

tail -l /etc/mtab 确认挂载结果

vi /var/www/html在本地创建客户机测试文件

挂在完成后,访问客户机的/var/www/html

NFS共享资源基本原理:

1.在服务器和客户机上都安装安装nfs-utils rpcbind

2.启动服务器启动nfshe rpcbind

3.在服务器找一个想要共享的目录文件

4.将要共享的目录文件写入/etc/export,格式:/opt/wwwroot 192.168.1.0/24(rw,sync,no_root_squash)(重点)

或者/var/ftp/pub 192.168.1.2(ro) 192.168.1.3(rw),将文件分给不同的主机分配不同的权限。

5.可以在服务器上showmount -e 查看一下主机NFS的共享目录

6.在客户机上查看指定服务器发布的共享目录有哪些showmount -e 192.168.1.4,接着将共享目录挂载到本地目录,在访问本地目录时就可以通过NFS访问远程的目录了mount 192.168.1.4:/var/www/html/ /var/www/html/

7.也可以实现自动挂载在 /etc/fstab文件中加入dev/mapper/centos-swap swap swap defaults 0 0 皆可以实现自动挂载

LVS-DR

内部主机调度器上的设置(vnet1)ens33 192.168.1.1 GATEWAY=192.168.1.5 ens33:0(192.168.1.4)

modprobe ip_vs

下载一下ipvsadm包,主机没联网可以用光盘下载

配置调度器策略:ipvsadm -A -t 192.168.1.4:80 -s rr

		    ipvsadm -a -t 192.168.1.4:80 -r 192.168.1.2:80 -g

		    ipvsadm -a -t 192.168.1.4:80 -r 192.168.1.3:80 -g

保存策略:ipvsadm-save > /etc/sysconfig/ipvs

[root@localhost ~]# vim /etc/sysctl.conf

net.ipv4.conf.all.send_redirects=0
net.ipv4.conf.default.send_redirects=0
net.ipv4.conf.ens33.send_redirects=0 现在以后收到的报文都不主动向外发送

[root@localhost ~]# sysctl -p 保存 至此所有调度器上做的操作都已完成

[root@localhost ~]# vim /etc/rc.local
modprobe ip_vs
ipvsadm-restore < /etc/sysconfig/ipvs 设置开机启动

chmod +x /etc/rc.d/rc.local

第二台内部主机主机 两个网卡(ens33:192.168.1.2,回环地址lo-0:192.168.1.4,子网掩码:255.255.255.255)

route add -host 192.168.1.4 dev lo:0 设置来自192.168.1.4全部的包不发送出去。

[root@localhost ~]# vim /etc/sysctl.conf

net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.default.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.default.arp_announce=2
net.ipv4.conf.all.arp_announce=2

保存策略:sysctl -p

现在可以给网页添加东西进行测试

[root@localhost ~]# systemctl restart httpd
[root@localhost ~]# echo 1.2 > /var/www/html/index.html

[root@localhost ~]# vim /etc/rc.local 在开机启动里添加这条路由规则

route add -host 192.168.1.4 dev lo:0

chmod +x /etc/rc.d/rc.local 给他执行权限

第三台内部主机 同样两个网卡(ens33:192.168.1.3, 网关:192.168.1.5 ,lo:0 192.168.1.4,子网掩码255.255.255.255)

和第二台主机一样设置规则

[root@localhost ~]# vim /etc/sysctl.conf

net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.default.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.default.arp_announce=2
net.ipv4.conf.all.arp_announce=2

同样添加路由不向外面转发 route add -host 192.168.1.4 dev lo:0

启动web systemctl start httpd

echo 1.3 > /var/www/html/index.html

设置完毕现在可以在网管位置访问192.168.1.4网页,可以通过访问curl192.168.1.4这个代理网站 看到内部网络网页(192.168.1.2,192.168.1.3)

在主机上设置两个网卡和网段并设置防火墙规则 iiptables -t nat -A PREROUTING -d 200.0.0.1 -p tcp --dport 80 -j DNAT --to 192.168.1.4:80通过外网访问代理主机

全部设置完成,在外网访问代理主机可以通过调度器访问到两个内网的网页。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值