LVS-NAT实验

实验前准备:

LVS负载调度器:ens33:192.168.20.11 ens34:192.168.188.3

Web1节点服务器1:192.168.20.12

Web2节点服务器2:192.168.20.13

NFS服务器:192.168.20.14

客户端(win11):192.168.188.1(使用的是本机,非虚拟机)

  1. 部署共享存储(NFS服务器:192.168.20.14)

    1. 关闭防火墙

      systemctl stop firewalld.service

      systemctl disable firewalld.service

      setenforce 0

    2. 安装nfs服务

      yum install -y nfs-utils rpcbind

    3. 启动服务

      systemctl start nfs.service

      systemctl start rpcbind.service

      systemctl enable nfs.service

      systemctl enable rpcbind.service

    4. 创建两个目录作为共享目录

      mkdir /opt/kgc /opt/dzd

      chmod 777 /opt/kgc /opt/dzd

    5. 配置共享文件并发布共享

      exportfs -rv

      bash 复制代码
      /usr/share *(ro,sync)
      /opt/kgc 192.168.20.0/24(rw,sync)
      /opt/dzd 192.168.20.0/24(rw,sync)

      showmount -e

  2. 配置节点服务器(192.168.20.12 192.168.20.13)

    1. 关闭防火墙

    2. 安装httpd服务

      yum install -y httpd

      systemctl start httpd.service

      systemctl enable httpd.service

    3. 安装nfs服务

      yum install -y nfs-utils rpcbind

      systemctl start rpcbind.service

      systemctl enable rpcbind.service

      查看共享情况

      showmount -e 192.168.20.14

    4. 挂载共享目录

      192.168.20.12的服务器:

      bash 复制代码
      mount.nfs 192.168.20.14:/opt/kgc /var/www/html/
      echo "hello,here is kgc" > /var/www/html/index.html

      vim /etc/fstab(进行永久挂载)

      bash 复制代码
      192.168.20.14:/opt/kgc /var/www/html nfs defaults,_netdev 0 0

      mount -a(刷新)

      192.168.20.13的服务器:

      bash 复制代码
      mount.nfs 192.168.20.14:/opt/dzd /var/www/html/
      echo 'hello,i am dzd' > /var/www/html/index.html

      vim /etc/fstab

      bash 复制代码
      192.168.20.14:/opt/dzd /var/www/html nfs defaults,_netdev 0 0

      mount -a

  3. 配置负载调度器LVS(ens33:192.168.20.11 ens34:192.168.188.3)

    1. 关闭防火墙

    2. 配置SNAT转发规则

      vim /etc/sysctl.conf

      bash 复制代码
      net.ipv4.ip_forward=1

      sysctl -p

      iptables -t nat -F(删nat表)

      iptables -F(以防出意外可以全删掉,工作中请不要这样)

      iptables -t nat -vnL(查看一下nat表是不是删干净了)

      添加规则

      bash 复制代码
      iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -o ens34 -j SNAT --to-source 192.168.188.3
    3. 加载LVS内核模块

      modprobe ip_vs #手动加载ip_vs模块

      cat /proc/net/ip_vs #查看ip_vs版本信息

    4. 安装ipvsadm管理工具

      yum install -y ipvsadm

      启动服务前必须保存负载分配策略,否则将会报错

      ipvsadm-save > /etc/sysconfig/ipvsadm

      systemctl start ipvsadm.service

    5. 配置负载分配策略

      ipvsadm -C #清除原有策略

      ipvsadm -A -t 192.168.188.3:80 -s rr

      ipvsadm -a -t 192.168.188.3:80 -r 192.168.20.12:80 -m -w 1

      ipvsadm -a -t 192.168.188.3:80 -r 192.168.20.13:80 -m -w 1

      ipvsadm #启动策略

      ipvsadm -ln #查看节点状态,Masq代表 NAT模式

      ipvsadm-save > /etc/sysconfig/ipvsadm #保存策略

  4. 测试:

相关推荐
Lsir10110_30 分钟前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好1 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
css趣多多1 小时前
add组件增删改的表单处理
java·服务器·前端
予枫的编程笔记2 小时前
【Linux进阶篇】从基础到实战:grep高亮、sed流编辑、awk分析,全场景覆盖
linux·sed·grep·awk·shell编程·文本处理三剑客·管道命令
Sheep Shaun2 小时前
揭开Linux的隐藏约定:你的第一个文件描述符为什么是3?
linux·服务器·ubuntu·文件系统·缓冲区
Tfly__2 小时前
在PX4 gazebo仿真中加入Mid360(最新)
linux·人工智能·自动驾驶·ros·无人机·px4·mid360
野犬寒鸦2 小时前
从零起步学习并发编程 || 第七章:ThreadLocal深层解析及常见问题解决方案
java·服务器·开发语言·jvm·后端·学习
陈桴浮海2 小时前
【Linux&Ansible】学习笔记合集二
linux·学习·ansible
生活很暖很治愈2 小时前
Linux——环境变量PATH
linux·ubuntu
?re?ta?rd?ed?2 小时前
linux中的调度策略
linux·运维·服务器