当前位置: 首页 > news >正文

LVS配置

基础介绍

http://t.csdnimg.cn/Lv5Byicon-default.png?t=N7T8http://t.csdnimg.cn/Lv5By

部署NAT模式集群案例

实验环境

主机名
IP
vip
角色
node1
192.168.0.100
172.25.254.100
调度器( VS
node1
192.168.0.101 GW 192.168.0.100
\
真实服务器( RS
node1
192.168.0.102 GW 192.168.0.100
\
真实服务器( RS
node1
172.25.254.104
\
测试机

配置命令

1.node1中启用内核路由功能

echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/ip_forward.conf
sysctl --system
2. node1 中安装 ipvsadm
yum install ipvsadm -y
3. node1 中添加调度策略
ipvsadm -A -t 172.25.254.100:80 -s rr
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.101:80
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.101:80 -m
ipvsadm -a -t 172.25.254.100:80 -r 192.168.0.102:80 -m

4.查看策略

ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 172.25.254.100:80 rr
-> 192.168.0.101:80 Masq 1 0 3
-> 192.168.0.102:80 Masq 1 0 3
cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP AC19FE64:0050 rr
-> C0A80066:0050 Masq 1 0 3
-> C0A80065:0050 Masq 1 0 3
cat /proc/net/ip_vs_conn
Pro FromIP FPrt ToIP TPrt DestIP DPrt State Expires PEName PEData
TCP AC19FE01 D82F AC19FE64 0050 C0A80066 0050 TIME_WAIT 117
TCP AC19FE01 D830 AC19FE64 0050 C0A80065 0050 TIME_WAIT 117
TCP AC19FE01 D832 AC19FE64 0050 C0A80065 0050 TIME_WAIT 117
TCP AC19FE01 D834 AC19FE64 0050 C0A80065 0050 TIME_WAIT 117
TCP AC19FE01 D831 AC19FE64 0050 C0A80066 0050 TIME_WAIT 117
TCP AC19FE01 D833 AC19FE64 0050 C0A80066 0050 TIME_WAIT 117

5.保存规则

ipvsadm -Sn
-A -t 172.25.254.100:80 -s rr
-a -t 172.25.254.100:80 -r 192.168.0.101:80 -m -w 1
-a -t 172.25.254.100:80 -r 192.168.0.102:80 -m -w 1
ipvsadm -Sn > /etc/sysconfig/ipvsadm-config

6.删除所有规则

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

7.重载规则

ipvsadm -R < /etc/sysconfig/ipvsadm-config
ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 172.25.254.100:80 rr
-> 192.168.0.101:80 Masq 1 0 0
-> 192.168.0.102:80 Masq 1 0 0

8.测试

for N in {1..6};do curl 172.25.254.100;done
RS2 server - 192.168.0.102
RS1 server - 192.168.0.101
RS2 server - 192.168.0.102
RS1 server - 192.168.0.101
RS2 server - 192.168.0.102
RS1 server - 192.168.0.101

9.修改权重

ipvsadm -E -t 172.25.254.100:80 -s wrr
ipvsadm -e -t 172.25.254.100:80 -r 192.168.0.101:80 -m -w 2
ipvsadm -e -t 172.25.254.100:80 -r 192.168.0.102:80 -m -w 1
测试效果
for N in {1..6};do curl 172.25.254.100;done
RS2 server - 192.168.0.102
RS1 server - 192.168.0.101
RS1 server - 192.168.0.101
RS2 server - 192.168.0.102
RS1 server - 192.168.0.101
RS1 server - 192.168.0.101

部署DR模式集群案例

一、配置网络和基本设置
  1. 分配 IP 地址
    • LVS 调度设备的 VIP(虚拟 IP)和 DIP(数据 IP)。
    • Webserver 的 RIP(真实 IP)。
   setenforce 0systemctl disable --now firewalld
二、安装并配置 LVS
   yum install ipvsadm -y
   ipvsadm -A -t <VIP>:80 -s rr

其中 <VIP> 是调度设备的 VIP 地址,80 是服务端口,rr 表示轮询算法。

   ipvsadm -a -t <DIP>:80 -r <RIP> -g

其中 <DIP> 是 webserver 的数据 IP 地址,<RIP> 是 webserver 的真实 IP 地址。

三、配置 webserver
   vi /etc/httpd/conf/httpd.conf 

添加如下内容以确保请求直接返回给客户端:

   <VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName <VIP>
ErrorLog logshttpd error log
CustomLog logshttpd access log common<IfModule ipvs module>
VirtualServer <VIP> 80 {
Server <RIP> 80;
Server <RIP2> 80;
}
</IfModule></VirtualHost>
   systemctl restart httpd
四、测试和验证

在客户机上使用浏览器访问 <VIP>

安装和配置 ipvsadm:

  • 安装 ipvsadm

在大多数 Linux 发行版中,ipvsadm 通常已经预装。如果未安装,可以通过包管理器进行安装。对于 rhel9,可以使用以下命令:

yum install -y ipvsadm

这一步骤基于 中的信息。

  • 验证安装

安装完成后,可以通过执行以下命令来验证 ipvsadm 是否正确安装并可用:

ipvsadm -L --timeout

如果输出结果中第三个数字是 10,则说明 IPVS 类型集群的 UDP 超时时间变更成功。这一步骤同样基于 中的信息。

保存及重载规则

在对 ipvsadm 规则进行修改后,为了确保重启电脑服务不会丢失这些规则,需要将规则保存到文件中,并在重启后重新导入这些规则。

清理当前的 ipvsadm 规则(如果需要):

systemctl stop ipvsadm
ipvsadm -C

将 ipvsadm 规则保存到文件中:

ipvsadm -save > /data/ipvs.log 

在重启后,将规则导入到

ipvsadm -r /data/ipvs.log 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Facebook的区块链技术:提升数据安全与隐私保护
  • Go更换国内源配置环境变量
  • XSS反射型和DOM型+DOM破坏
  • 【学习总结】JVM篇
  • 快速把文件名统计到excel表的方法
  • Kafka环境搭建
  • uniapp vue 在适配百度小程序平台动态:style
  • python实现人脸轮廓提取(开操作和闭操作)
  • EmguCV学习笔记 VB.Net和C# 下的OpenCv开发
  • Python爬虫-批量爬取七猫中文网小说
  • [C#]实现GRPC通讯的服务端和客户端实例
  • 从今年的计算机视觉比赛看风向
  • 基因组学系列4:参考转录本数据库MANE
  • java:实现简单的验证码功能
  • 【Solidity】继承
  • [译]Python中的类属性与实例属性的区别
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • JAVA 学习IO流
  • JavaScript HTML DOM
  • Linux链接文件
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • NSTimer学习笔记
  • Python连接Oracle
  • Python中eval与exec的使用及区别
  • SpringCloud(第 039 篇)链接Mysql数据库,通过JpaRepository编写数据库访问
  • VuePress 静态网站生成
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 动态规划入门(以爬楼梯为例)
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • 机器学习 vs. 深度学习
  • 通过npm或yarn自动生成vue组件
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • ​HTTP与HTTPS:网络通信的安全卫士
  • #android不同版本废弃api,新api。
  • #QT(智能家居界面-界面切换)
  • (rabbitmq的高级特性)消息可靠性
  • (SERIES12)DM性能优化
  • (STM32笔记)九、RCC时钟树与时钟 第一部分
  • (笔试题)分解质因式
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (二十六)Java 数据结构
  • (区间dp) (经典例题) 石子合并
  • (十八)Flink CEP 详解
  • (十三)Maven插件解析运行机制
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • ***监测系统的构建(chkrootkit )
  • .NET 8 编写 LiteDB vs SQLite 数据库 CRUD 接口性能测试(准备篇)
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .NET Core 中插件式开发实现
  • .net MySql
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...
  • .Net Winform开发笔记(一)