LVS-Nat和Dr模式集群原理及部署

目录

一.lvs-nat模式集群原理及部署方法

1.实验环境

2.思路图

3.lvs配置1:

4.lvs配置2:

5.webserver1配置:

6.webserver2配置:

7.lvs配置:

二.lvs-dr模式原理集群及部署方法

1.实验环境

2.思路图

3.client: 简单配置ip网卡。

4.router配置:

5.lvs配置:

6.webserver1配置:

    6.1 限制响应级别:

    6.2 限制通告级别:

7.webserver2配置:

8.测试:


一.lvs-nat模式集群原理及部署方法

1.实验环境
主机名IP角色网卡
lvs.rhel9.org

172.25.254.100

eth1:192.168.0.100

调度器

eth0:nat

eth1:仅主机

webserver1.rhel9.org192.168.0.10; wg192.168.0.100web服务1eth0:仅主机
webserver2.rhel9.org192.168.0.20; wg192.168.0.100web服务2eth0:仅主机
2.思路图

3.lvs配置1:

在lvs的虚拟机设置里面添加网卡,选择仅主机连接。

bash vmest.sh eth0 172.25.254.100 lvs.rhel9.org   #vmset.sh为自己写的配置ip脚本
bash vmest.sh eth1 192.168.0.100 lvs.rhel9.org
vi /etc/NetworkManager/system-connections/eth0.nmconnection	
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	address1=172.25.254.100/24,172.25.254.2
	method=manual
	dns1=114.114.114.114;
nmcli connection reload
nmcli connection up eth1
vi /etc/NetworkManager/system-connections/eth1.nmconnection
	[connection]
	id=eth1
	type=ethernet
	interface-name=eth1
	[ipv4]
	address1=192.168.0.100/24
	method=manual
nmcli connection reload
nmcli connection up eth1    #一定要看清楚自己的ip。
4.lvs配置2:

内核功能路由需要开启,sysctl -a 命令会显示系统中所有的内核参数及其当前的值,输出结果为 net.ipv4.ip_forward = 1 ,这表示系统的 IP 转发功能已启用。如果结果为 net.ipv4.ip_forward = 0 ,则表示 IP 转发功能被禁用。

sysctl -a | grep ip_forward  #过滤
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/ip_forward.conf
sysctl -p    #生效
5.webserver1配置:

虚拟机设置里面修改网络适配器选择仅主机模式,查看网卡,保证网卡跟lvs的dip一致,否则无法通信。起Apache网络服务,下载httpd,保持开机自启。

bash vmest.sh eth0 192.168.0.10 webserver1.rhel9.org
vi /etc/NetworkManager/system-connections/eth0.nmconnection	
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	address1=192.168.0.10/24,192.168.0.100
	method=manual     #dns随意,不影响操作结果
nmcli connection reload
nmcli connection up eth0
route -n    #查看网卡
yum install httpd -y   #下载httpd
echo webserver1 - 192.168.0.10 > /var/www/html/index.html   
systemctl enable --now httpd
6.webserver2配置:

虚拟机设置里面修改网络适配器选择仅主机模式,查看网卡,保证网卡跟lvs的dip一致,否则无法通信。起Apache网络服务,下载httpd,保持开机自启。

bash vmest.sh eth0 192.168.0.20 webserver2.rhel9.org
vi /etc/NetworkManager/system-connections/eth0.nmconnection	
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	address1=192.168.0.20/24,192.168.0.100
	method=manual   #dns随意,不影响操作结果
nmcli connection reload
nmcli connection up eth0
route -n    #查看网卡
yum install httpd -y   #下载httpd
echo webserver1 - 192.168.0.20 > /var/www/html/index.html   
systemctl enable --now httpd
7.lvs配置:

在lvs里面测试ip。有对应的内容就对了,没有就检查一下自己的路径和ip。接着安装lvs软件包ipvsadm,配置相关策略,ipvsadm-save保存一下,最后xhell新开端口测试。

curl 192.168.0.10
curl 192.168.0.20
#####################################################
yum install ipvsadm -y    #安装ipvsadm
ipvsadm -A -t 172.25.254.100:80 -s rr     #添加调度策略
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.10:80 -m
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.20:80 -m
ipvsadm -Ln    #查看策略
ipvsadm-save > /etc/sysconfig/ipvsadm-config  #保存规则
systemctl enable --now ipvsadm.service   #开机启动
for i in {1..6};do curl 172.25.254.100;done   #测试

二.lvs-dr模式原理集群及部署方法

1.实验环境
主机名IPvip角色网卡
client.rhel9.org172.25.254.200; wg172.25.254.100测试主机eth0:nat
router.rhel9.orgeth0:172.25.254.100; eth1:192.168.0.100路由器eth0:nat eth1:仅主机
lvs.rhel9.org192.168.0.50; wg192.168.0.100192.168.0.200 /32调度器eth1:仅主机
webserver1.rhel9.org192.168.0.10; wg192.168.0.100192.168.0.200 /32web服务1eth0:仅主机
webserver2.rhel9.org192.168.0.20; wg192.168.0.100192.168.0.200 /32web服务2eth0:仅主机
2.思路图

3.client: 简单配置ip网卡。
bash vmest.sh eth0 172.25.254.200 client.rhel9.org
vim /etc/NetworkManager/system-connections/eth0.nmconnection
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	method=manual
	address1=172.25.254.200/24,172.25.254.100
nmcli connection reload
nmcli connection up eth0
route -n
4.router配置:

打开虚拟机设置,添加网络适配器选择仅主机,修改ip。内核功能路由需要开启,sysctl -a 命令会显示系统中所有的内核参数及其当前的值,输出结果为 net.ipv4.ip_forward = 1 ,这表示系统的 IP 转发功能已启用。如果结果为 net.ipv4.ip_forward = 0 ,则表示 IP 转发功能被禁用。

bash vmest.sh eth0 172.25.254.100 router.rhel9.org
vim /etc/NetworkManager/system-connections/eth0.nmconnection
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	method=manual
	address1=172.25.254.100/24
nmcli connection reload
nmcli connection up eth0
################################################################
bash vmest.sh eth1 192.168.0.100 router.rhel9.org
vim /etc/NetworkManager/system-connections/eth1.nmconnection
	[connection]
	id=eth1
	type=ethernet
	interface-name=eth1
	[ipv4]
	method=manual
	address1=192.168.0.100/24
nmcli connection reload
nmcli connection up eth0
route -n
###############################################################
sysctl -a | grep ip_forward  #过滤
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/ip_forward.conf
sysctl -p    #刷新生效
5.lvs配置:

删掉原先的net模式的eth0的ip,修改仅主机的eth1的ip,保存退出,记得重启。顺手看看网关修改成功没。最后添加vip192.168.0.200/32回环接口。配置策略,保存退出。

nmcli connection delete eth0
bash vmest.sh eth0 192.168.0.20 lvs.rhel9.org
vim /etc/NetworkManager/system-connections/eth1.nmconnection
	[connection]
	id=eth1
	type=ethernet
	interface-name=eth1
	[ipv4]
	method=manual
	address1=192.168.0.50/24,192.168.0.100
nmcli connection reload
nmcli connection up eth0
route -n
ip a a 192.168.0.200/32 dev lo #添加临时ip
#####################################################
ipvsadm -A -t 192.168.0.200:80 -s wrr     #添加调度策略
ipvsadm -a -t 192.168.0.200:80 -r 192.168.0.10:80 -g -w 1
ipvsadm -a -t 192.168.0.200:80 -r 192.168.0.20:80 -g -w 1
ipvsadm -Ln    #查看策略
ipvsadm-save > /etc/sysconfig/ipvsadm-config  #保存规则
systemctl enable --now ipvsadm.service   #开机启动
6.webserver1配置:

在原有的eth0.nmconnection进行修改网关,改成一致。最后添加vip192.168.0.200/32回环接口。

    6.1 限制响应级别:

arp_ignore 0:默认值,表示可使用本地任意接口上配置的任意地址进行响应 1:仅在请求的目标IP配置在本地主机的接收到请求报文的接口上时,才给予响应。

    6.2 限制通告级别:

arp_announce 0:默认值,把本机所有接口的所有信息向每个接口的网络进行通告 1:尽量避免将接口信息向非直接连接网络进行通告 2:必须避免将接口信息向非本网络进行通告。

vi /etc/NetworkManager/system-connections/eth0.nmconnection
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	method=manual
	address1=192.168.0.10/24,192.168.0.100
route -n
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore 
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce 
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce 
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore  #也可以在/etc/sysctl.conf写入net.ipv4.conf.all.arp_ignore = 1;在sysctl -p 刷新
ip a a 192.168.0.200/32 dev lo  #添加临时ip
7.webserver2配置:

在原有的eth0.nmconnection进行修改网关,改成一致。最后添加vip192.168.0.200/32回环接口。

vi /etc/NetworkManager/system-connections/eth0.nmconnection
	[connection]
	id=eth0
	type=ethernet
	interface-name=eth0
	[ipv4]
	method=manual
	address1=192.168.0.20/24,192.168.0.100
route -n
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore 
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce 
echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce 
echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
ip a a 192.168.0.200/32 dev lo   #添加临时ip
8.测试:

在client主机进行ping200是否可以通,ping100是否可以通。最后测试全部。

for i in {1..10};do curl 192.168.0.200;done
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值