云原生 --- 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
相关推荐
好评1241 小时前
【Linux】进程信号
linux·运维·服务器
cakeism8252 小时前
Gitee DevOps 平台定位、核心能力与选型指南
运维·gitee·devops
xianyuCcCcCCCcc2 小时前
Nginx 深度解析:从基础架构到反向代理与负载均衡实战全解
linux·运维·nginx·bash·负载均衡
qq_25294131682 小时前
列车车轮缺陷智能检测数据集:800张图像、4大类别,助力铁路安全运维
运维·人工智能·安全·yolo·目标检测·计算机视觉·视觉检测
爱折腾的小码农2 小时前
解决Navicat 17 Premium Lite在Linux上运行报错“LIBSYSTEMD_251‘ not found”问题
linux·运维
Doraemomo3 小时前
Linux编程-标准IO和系统IO
linux·运维·服务器
骇客野人3 小时前
Linux 查看 Java 进程常用命令
java·linux·运维
睡一觉就好了。3 小时前
Linux 信号机制
linux·运维·网络
正点原子3 小时前
【正点原子Linux连载】 第十章 pinctrl和gpio子系统实验 摘自【正点原子】ATK-DLRK3568嵌入式Linux驱动开发指南
linux·运维·驱动开发
冠希陈、4 小时前
Nginx部署SSL,导致多站点串站问题
运维·nginx·ssl