云原生 --- 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
相关推荐
Brilliantwxx32 分钟前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
不怕犯错,就怕不做1 小时前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
richdata1 小时前
商品数字化不是先做大数据,而是先把数据变成可用决策
大数据·运维·数据治理·商品数字化·智能补货·ai商品决策
weixin_416667962 小时前
【无标题】
运维·服务器·网络
一池秋_3 小时前
arm低配linux设备,桌面应用冷启动提速方法
linux·运维·arm开发
上海云盾-小余4 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
IT大白鼠4 小时前
Docker 私有仓库管理:Harbor 企业级仓库搭建与镜像全生命周期管理
运维·docker·容器
戴西软件5 小时前
戴西iDWS.3DViz Suite数据轻量化可视化软件,从传统桌面软件向云端协同的重大突破
大数据·运维·网络·人工智能·机器学习·3d
我命由我123456 小时前
Linux - Linux/POSIX 路径斜杠折叠规则
linux·运维·服务器·android studio·android jetpack·android-studio·android runtime
姚不倒6 小时前
Nginx 反向代理:5 种负载均衡策略与实战
运维·nginx·负载均衡