负载均衡集群(NAT)

负载均衡集群(NAT)

1.LVS负载均衡四种工作模式

julia 复制代码
LVS/NAT :网络地址转换模式
LVS/DR :直接路由模式
LVS/TUN : 隧道模式
LVS/full-nat : 双向转换

2.命令选项

julia 复制代码
-A #在服务器列表中添加一条新的虚拟服务记录
-s #使用的调度算法  rr | wrr | lc | wlc 
-a #在服务器列表中添加一条真实的主机记录
-t #说明虚拟服务器提供tcp服务
-u #说明虚拟服务是提供udp服务
-r #真实服务器地址
-m #指定LVS工作模式为nat
-w #真实服务器的权值
-g #指定LVS工作模式为路由模式
-E #编辑内核服务器表中的一条虚拟服务记录
-D #删除一条虚拟服务器记录
-S #保存虚拟服务器规则到标准输出
-d #删除一条虚拟服务器记录中的某条真实服务器记录
-L #显示内核虚拟服务器表

3.LVS应用实战(NAT)

  • 环境准备

    准备3台干净的虚拟机(两台web服务器)

    两台网段相同,负载均衡器需两个IP地址,一个IP地址与两台web服务器的网段相同

    另一个IP地址与web服务器不同

    LVS-server 安装管理软件

    关闭防火墙与selinux

  • 搭建服务

    负载均衡器

    julia 复制代码
    [root@localhost ~]# yum -y install ipvsadm
    #配置路由转发
    [root@localhost ~]# vim /etc/sysctl.conf
    net.ipv4.ip_forward = 1
    #重启路由转发
    [root@localhost ~]# sysctl -p
    #配置虚拟服务
    [root@localhost ~]# ipvsadm -A -t 192.168.222.128:80 -s wrr
    [root@localhost ~]# ipvsadm -a -t 192.168.222.128:80 -r 10.36.158.66:80 -m -w 3
    [root@localhost ~]# ipvsadm -a -t 192.168.222.128:80 -r 10.36.158.110:80 -m -w 1
    #检查
    [root@localhost ~]# 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.222.128:80 wrr
      -> 10.36.158.66:80              Masq    3      0          0         
      -> 10.36.158.110:80             Masq    1      0          0         

    两台web服务器

    julia 复制代码
    #这里是用nginx来测试(两台机器均安装)
    [root@localhost ~]# yum -y install nginx
    #修改两台机器的发布目录,方便观察
    [root@localhost ~]# cd /usr/share/nginx/html
    [root@localhost html]# rm -rf *
    [root@localhost html]# echo "LV测试1" > index.html
    #另一台web服务器
    [root@localhost ~]# cd /usr/share/nginx/html
    [root@localhost html]# rm -rf *
    [root@localhost html]# echo "LV测试2" > index.html
    #配置默认路由(两台机器均操作)
    [root@localhost ~]# ip route add default via 192.168.222.128
    #修改两台机器nginx配置文件(更改TCP连接的保存时间)
    [root@localhost ~]# vim /etc/nginx/nginx.conf +27
        tcp_nodelay         on;
        keepalive_timeout   0;
    #重启nginx(两台机器均操作)
    [root@localhost ~]# nginx -s reload
  • 测试

    浏览器浏览192.168.222.128并刷新多次

相关推荐
鸠摩智首席音效师4 小时前
linux 系统中 Shutting Down, Restarting, Halting 有什么区别 ?
linux·运维·服务器
CIb0la4 小时前
Linux 将继续不支持 HDMI 2.1 实现
linux·运维·服务器
吕了了4 小时前
85 微PE吕了了修改版--更新!
运维·windows·电脑·系统
鹿鸣天涯5 小时前
Kali Linux 2025.4 发布:桌面环境增强,新增 3 款安全工具
linux·运维·安全
学习&笔记5 小时前
MTK(系统篇)user版本无法使用setenforce 0命令关闭selinux权限
linux·运维·服务器
Bdygsl6 小时前
Linux(8)—— 进程优先级与环境变量
linux·运维·服务器
吕了了6 小时前
87 Windows 系统安装的本质是什么?
运维·windows·电脑·系统
阿里巴巴P8资深技术专家7 小时前
docker容器启动报错
运维·docker·容器
杨云龙UP7 小时前
MySQL 8.0.x InnoDB 写入链路优化:Redo Log 与 Buffer Pool 扩容与缓冲区调优实战记录-20251029
linux·运维·数据库·sql·mysql
txzz88888 小时前
CentOS-Stream-10 系统安装之网络设置
linux·运维·服务器·网络·计算机网络·centos