云原生 --- lvs

一、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)基本环境

bash 复制代码
#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的网关

bash 复制代码
#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的安装

bash 复制代码
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)管理集群服务中的增删改

  • 开启监控
bash 复制代码
watch -n 1 ipvsadm -Ln
  • 命令操作
bash 复制代码
#设定服务器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的增删改

bash 复制代码
#增加
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)用自定义文件保存策略

bash 复制代码
#保存会直接打印
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策略开机生效方式

bash 复制代码
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
相关推荐
虎头金猫18 小时前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
AI职业加油站20 小时前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
此冬歌咏21 小时前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
-梅21 小时前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog21 小时前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
张洛闻Eren1 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
琥珀色糖1 天前
SimlpeHttp
linux·服务器
其实防守也摸鱼1 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
第十人i1 天前
Linux 日志管理系统:journald 配置与优化
linux·服务器
布裘1 天前
【银河麒麟】V4桌面图标消失,右击鼠标没反应排查
运维·银河麒麟·桌面环境