码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 部署LVS-NAT群集实验


    文章目录

    • 一、实验网络介绍
    • 二、LVS-NAT访问数据流向
    • 三、部署LVS-NAT群集实验
      • 1、部署共享服务器存储(20.0.0.58)
        • 1.1 修改名称,关闭防火墙
        • 1.2 安装nfs服务和rpcbind服务
        • 1.3 创建共享目录,设置权限
        • 1.4 输入网页内容
        • 1.5 设置共享目录
        • 1.6 发布共享
      • 2、配置节点服务器(20.0.0.56、20.0.0.57)
        • 2.1 修改名称,关闭防火墙
        • 2.2 安装nfs、rpcbind和httpd服务
        • 2.3 挂载共享目录
        • 2.4 修改网卡
      • 3、配置负载调度服务器(内网关ens33:20.0.0.55,外网关:192.168.100.100)
        • 3.1 修改主机名,关闭防火墙
        • 3.2 添加外网网卡
        • 3.3 设置外网网卡地址为:192.168.100.100
        • 3.4 配置SNAT 转发规则
        • 3.5 加载LVS内核模块
        • 3.6 安装ipvsadm管理工具
        • 3.7 配置负载分配策略
      • 4、客户端配置
        • 4.1 网络适配器设置成vmnet1的方式,并修改IP
        • 4.2 访问192.168.100.100
        • 4.3 模拟web2 节点故障,查看访问情况
    • 四、总结

    一、实验网络介绍

    需要装备4台centos服务器:1台作为负载调度器,2台作为web节点服务器,1台作为NFS共享服务器,

    需要1台windows服务器:作为客户端访问

    • 负载调度器: 内网网关(ens33):20.0.0.55 ; 外网网关 ens35 :192.168.100.100

    • Web节点服务器1: 20.0.0.56

    • Web节点服务器2: 20.0.0.57

    • NFS共享服务器: 20.0.0.58

    • 客户端: 192.168.100.10

    二、LVS-NAT访问数据流向

    达到的目的:外网的客户端,通过访问LB负载均衡器可以访问到web站点服务器1和web站点服务器2的网页内容,但是两个站点的内容是由NFS服务器共享提供。
    在这里插入图片描述

    数据流向:

    client客户端通过访问LB负载均衡服务器上面的ens35网卡地址,然后可以访问的web服务器的后台的两个站点,
    因为通过SNAT将web服务器站点转化为了ens33端口的地址。
    web服务器的两个站点网页内容时通过nfs服务器网络分别挂载到两台web站点服务器上的。
    当数据返回到客户端时,web服务器站点需要将数据发送到LB负载均衡服务器上的ens35网卡上,最后再返回到客户端。
    
    • 1
    • 2
    • 3
    • 4

    三、部署LVS-NAT群集实验

    1、部署共享服务器存储(20.0.0.58)

    1.1 修改名称,关闭防火墙

    在这里插入图片描述

    1.2 安装nfs服务和rpcbind服务

    在这里插入图片描述

    1.3 创建共享目录,设置权限

    在这里插入图片描述

    1.4 输入网页内容

    在这里插入图片描述

    1.5 设置共享目录

    在这里插入图片描述

    1.6 发布共享

    在这里插入图片描述

    2、配置节点服务器(20.0.0.56、20.0.0.57)

    2.1 修改名称,关闭防火墙

    在这里插入图片描述

    2.2 安装nfs、rpcbind和httpd服务

    在这里插入图片描述

    2.3 挂载共享目录

    在这里插入图片描述

    2.4 修改网卡

    由数据流向看出,web两个站点是属于内网中,所以要修改它的网卡为内网中的ip。
    在这里插入图片描述
    在这里插入图片描述

    3、配置负载调度服务器(内网关ens33:20.0.0.55,外网关:192.168.100.100)

    3.1 修改主机名,关闭防火墙

    在这里插入图片描述

    3.2 添加外网网卡

    在这里插入图片描述
    在这里插入图片描述

    3.3 设置外网网卡地址为:192.168.100.100

    在这里插入图片描述
    在这里插入图片描述

    3.4 配置SNAT 转发规则

    vim /etc/sysctl.conf    #设置路由转发
    net.ipv4.ip_forward = 1
    sysctl -p   #刷新
    
    yum -y install iptables   #下载iptables防火墙
    
    iptables -t nat -A POSTROUTING -s 20.0.0.0/24 -o ens35 -j SNAT --to-source 192.168.100.100
    # 将内网网段映射成外网网口地址
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    在这里插入图片描述
    在这里插入图片描述

    3.5 加载LVS内核模块

    在这里插入图片描述

    3.6 安装ipvsadm管理工具

    在这里插入图片描述

    3.7 配置负载分配策略

    (NAT模式只要在服务器上配置,节点服务器不需要特殊的配置)

    ipvsadm  -C    #清空原有策略
    
    ipvsadm -A -t 192.168.100.100:80 -s rr   #添加虚拟服务器,指定虚拟地址和端口,并指定轮询算法
    
    ipvsadm -a -t 192.168.100.100:80 -r 20.0.0.56:80 -m -w 1  
    ipvsadm -a -t 192.168.100.100:80 -r 20.0.0.57:80 -m -w 1
    #添加真实服务器地址,使用NAT群集模式,权重设置为1
    
    选项详解
    -A :添加虚拟服务器
    -a : 添加真实服务器(后端节点服务器)
    -t : 指定VIP地址及端口
    -s : 指定负载调度算法(轮询:rr,加权轮询:wrr,最少连接:lc,加权最少连接:wlc)
    -m : 表示使用NAT群集模式
    -w : 设置权重(权重为0时,表示暂停节点)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    在这里插入图片描述

    ipvsadm   #启动策略
    ipvsadm -ln    #查看节点状态,Masq代表NAT模式
    ipvsadm-save > /etc/sysconfig/ipvsadm   #保存策略
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    4、客户端配置

    4.1 网络适配器设置成vmnet1的方式,并修改IP

    在这里插入图片描述

    4.2 访问192.168.100.100

    在这里插入图片描述
    在这里插入图片描述

    4.3 模拟web2 节点故障,查看访问情况

    ipvsadm -d -t 192.168.100.100:80 -r 20.0.0.57:80   #删除群集中某一个姐点服务器
    ipvsadm -D -t 192.168.100.100:80    #删除整个虚拟服务器
    
    syatemctl stop ipvsadm   #停止服务(清除策略)
    systemctl start ipvsadm  #启动服务(重建规则)
    
    ipvsadm-restore > /etc/sysconfig/ipvsadm   #恢复LVS策略
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    不管刷新切换多少次页面,都将会一直时web1的页面

    在这里插入图片描述

    四、总结

    LVS-NAT模式 :就是通过防火墙规则+LVS-ipvsadm 管理工具实现。

    ①先做内外网地址转换(映射 iptables工具)

    • iptables -t nat -A PORTROUTING -s 20.0.0.0/24 -o ens35 -j SNAT --to-source 192.168.100.100

    ②基于LVS-NAT模式的RR轮询策略,对于HTTP访问的请求与,以轮询的方式转发给后端(使用ipvsadm工具来控制的)

    • ipbsadm -A -t 192.168.100.100 #添加虚拟主机

    然后再定义这台虚拟主机的网卡进入流量应该对应后端的哪个服务器,定义模式,权重,设置地址池

    • ipvsadm -a -t 192.168.100.100:80 -r 20.0.0.56 -m -w 1

    • ipvsadm -a -t 192.168.100.100:80 -r 20.0.0.57 -m -w 1

    注意:实验时,要将外网的服务器网关指向LVS调度器,将内网的服务器网关也指向LVS调度器

  • 相关阅读:
    一个开发者自述:我是如何设计针对冷热读写场景的 RocketMQ 存储系统
    为什么高防服务器比普通服务器贵
    pip pip3安装库时都指向python2的库
    专业图表绘制软件 OmniGraffle Pro mac v7.22.1中文版软件介绍
    MIL-100(Fe) cas:1195763-37-1 含铁mof有机骨架材料
    mysql冷拷贝大表
    MallBook联合人民交通出版社,推动驾培领域新发展,开启驾培智慧交易新生态
    连续仨月霸占牛客榜首,京东T8呕心巨作:700页JVM虚拟机实战手册
    Git 高级使用 域名访问服务器 常用命令 分支 远程仓库
    基于Web的商城后台管理系统的设计与实现
  • 原文地址:https://blog.csdn.net/m0_57515995/article/details/126219132
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号