码迷,mamicode.com
首页 > 其他好文 > 详细

搭建NAT模型

时间:2021-05-24 08:18:05      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:etc   访问   restart   转发   prot   col   rgb   pvs   源地址   

 

两大部分,一环境,二LVS规则

一、环境

1、两台服务器上安装httpd 服务

yum install httpd -y

2、开启服务,并设置为开机自启

systemctl start httpd 
systemctl enable httpd

3、新建页面

  1)、在RS1 服务器上新建页面RS1

echo 192.168.11.4 RS1 > /var/www/html/index.html

  2)、在RS2 服务器上新建页面RS2

echo 192.168.11.5 RS2 > /var/www/html/index.html

正常是两台页面应该是一样的,我这里为了区分具体调度到哪台机器上,所以显示不一样的。

4、防火墙设置(下面任选一种,不设置无法访问,)(所有机器都需要设置,不然会不通的)

  1)、关闭防火墙

systemctl stop firewalld

  2)、设置防火墙规则临时允许80端口

firewall-cmd --zone=public --add-port=80/tcp 

  3)、设置永久允许防火墙80端口

firewall-cmd --zone=public --add-port=80/tcp --permanent 
firewall-cmd --reload

  4)、设置临时允许对应的服务

firewall-cmd --add-service=http

  5)、设置永久允许对应的服务

firewall-cmd --add-service=http --permanent 
firewall-cmd --reload

临时生效,重启就没了,设置服务允许,对应的端口也会允许(此处针对centos7及以上)

5、在192.168.11.3上开启路由转发

vim /etc/sysctl.conf 

net.ipv4.ip_forward=1

6、路由生效

sysctl -p

返回如下,则表示生效成功

net.ipv4.ip_forward = 1

二、LVS规则(在LVS服务器上)

1、安装ipvsadmin 包

yum install ipvsadm -y

2、列出规则表

ipvsadm -L

3、增加集群

ipvsadm -A -t 172.16.8.35:80 -s rr

(-A 增加)、(-t,tcp协议)、(172.16.8.35:80,LVS服务器外网IP地址,80web服务的端口号)、(-s rr,指定调度算法rr (轮循),不指定默认,默认wLc)

4、查看

  1)、通过ipvsadm -L 可以列出:

ipvsadm -L
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  lvs:http rr

  2)、ipvsadm -Ln ,数字方式查看,和上面显示http不同直接显示IP地址

ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  172.16.8.35:80 rr

5、增加集群上的RS

ipvsadm -a -t 172.16.8.35:80 -r 192.168.11.4 -m
ipvsadm -a -t 172.16.8.35:80 -r 192.168.11.5 -m

(-a 增加rs)、(-t 集群服务,指明集群服务)、(-r rs 地址)、(-m 指定NAT模型,不加默认DR模型)

6、查看集群状态

ipvsadm -Ln --stats

7、查看速率(速度比率)

ipvsadm -Ln --rate

8、循环没隔0.5 测试访问,是否是轮循

while true; do curl 172.16.8.35 ;sleep 0.5 ;done

9、ipvs规则

cat /proc/net/ip_vs

10、ipvs连接

cat /proc/net/ip_vs_conn

NAT模型源地址不变,所以后端RS 服务器可以查看到是谁在访问我

三、修改权重,前面是都是1,没有权重

1、修改集群里调度算法为wrr(wrr=加权轮循)

ipvsadm -E -t 172.16.8.35:80 -s wrr

2、修改权重3:1

ipvsadm -e -t 172.16.8.35:80 -r 192.168.11.4 -m -w 6
pvsadm -e -t 172.16.8.35:80 -r 192.168.11.5 -m -w 2

-E 修改集群,-e 修改rs ,-m NAT 模型 -w 轮循比重 

访问就是3比1了,192.168.11.4这台机器三次,192.168.1.5这台机器一次

四、后端服务非标端口

1、将192.168.11.4的httpd服务的端口改成8080

sed -i s@^Listen 80@ Listen 8080@ /etc/httpd/conf/httpd.conf 

2、重启httpd服务

systemctl restart httpd

这个时候,就只能调度到192.168.11.5这台服务器上去了,从这里就可以看LVS的巨大缺憾,对后台服务器没有健康性检查

3、在LVS服务器上修改权重

  1、)直接改是改不了的,只能删除

ipvsadm -d -t 172.16.8.35:80 -r 192.168.11.4:80

  2、) 重新添加,这里将两个权重修改为同样的,可以不修改为一样的(记得改防火墙规则哦)

ipvsadm -a -t 172.16.8.35:80 -r 192.168.11.4:8080 -m -w 2

 

搭建NAT模型

标签:etc   访问   restart   转发   prot   col   rgb   pvs   源地址   

原文地址:https://www.cnblogs.com/alexlv/p/14765916.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!