一、lvs的实验环境

1.环境说明

主机 网络模式 功能 是否设定网关
lvs nat-172.25.254.100,hostonly-192.168.0.100 vs

rs1

hostonly-192.168.0.10 rs1 192.168.0.100
rs2 hostonly-192.168.0.20 rs2 192.168.0.100

2.环境设定操作

(1)基本环境

#lvs
vmset.sh eth0 172.25.254.100 lvs
vmset.sh eth1 192.168.0.100  lvs

#rs1
vmset.sh eth0 192.168.0.10 rs1 noroute

#rs2
vmset.sh eth0 192.168.0.10 rs2 noroute

(2)设定RS1和RS2的网关

#RS1
nmcli connection modify eth0 ipv4.gateway 192.168.0.100
nmcli connection reload
nmcli connection up eth0

#RS2
nmcli connection modify eth0 ipv4.gateway 192.168.0.100
nmcli connection reload
nmcli connection up eth0

#测试
route -n

#结果
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.100   0.0.0.0         UG    100    0        0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 eth0

要求IP之间可以直接ping通

二、LVS命令使用详解

1.lvs安装部署

(1)lvs的安装

dnf install ipvsadm.x86_64 -y

(2)lvs软件相关信息

  • 程序包:ipvsadm

  • Unit File: ipvsadm.service

  • 主程序:/usr/sbin/ipvsadm

  • 规则保存工具:/usr/sbin/ipvsadm-save

  • 规则重载工具:/usr/sbin/ipvsadm-restore

  • 配置文件:/etc/sysconfig/ipvsadm-config

  • ipvs调度规则文件:/etc/sysconfig/ipvsadm

2.ipvsadm命令使用详解

(1)核心功能

  • 集群服务管理:增、删、改

  • 集群服务的RS管理:增、删、改

  • 查看

(2)管理集群服务中的增删改

  • 开启监控
watch -n 1 ipvsadm -Ln
  • 命令操作
#设定服务器vip,端口及调度算法
ipvsadm -A -t 172.25.254.100:80 -s rr

#指定使用防火墙标记来进行轮询
ipvsadm -A -f 66 -p 3000

#更改权重
ipvsadm -E -t 172.25.254.100:80 -s wrr

#删除
ipvsadm -D -f 66

(3)管理集群中RealServer的增删改

#增加
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.10 -m
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.20 -m

#修改
ipvsadm -e -t 172.25.254.100:80 -r 192.168.0.10 -w 2 -m
ipvsadm -e -t 172.25.254.100:80 -r 192.168.0.20 -w 5 -i

#删除
ipvsadm -d -t 172.25.254.100:80 -r 192.168.0.20
ipvsadm -C  --- 清空

3.lvs策略保存

(1)用自定义文件保存策略

#保存会直接打印
ipvsadm-save
-A -t lvs-server:http -s rr
-a -t lvs-server:http -r 192.168.0.10:http -m -w 1
-a -t lvs-server:http -r 192.168.0.20:http -m -w 1

#通过重定向
ipvsadm-save > /mnt/haha

#清空
ipvsadm -C
ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn

#恢复
ipvsadm-restore < /mnt/haha

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

(2)ipvs策略开机生效方式

ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl enable --now ipvsadm.service

reboot

#重启后仍然有效
ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.0.100:80 rr
  -> 192.168.0.10:80              Masq    1      0          0
  -> 192.168.0.20:80              Masq    1      0          0

更多推荐