阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 7上实现LVS负载均衡群集之NAT转换模式

509次阅读
没有评论

共计 2692 个字符,预计需要花费 7 分钟才能阅读完成。

LVS 虚拟服务器

Linux Virtual Server(LVS)是针对 Linux 内核开发的一个负载均衡项目,由我国的章文嵩博土在 1998 年 5 月创建,官方站点位于 http://www.linuxvirtualserver.org/.

LVS 实际上相当于基于 IP 地址的虚拟化应用,为基于 IP 地址和内容请求分发的负载均衡提出了一种高效的解决方法。

LVS 现在已成为 Linux 内核的一部分,默认编译为 ip_vs 模块,必要时能够自动调用。

LVS 的负载调度算法

针对不同的网络服务和配置需要,LVS 调度器提供多种不同的负载调度算法,其中最常用的四种算法包括轮询、加权轮询、最少连接和加权最少连接。

轮询(RoundRobin):将收到的访问请求按照顺序轮流分配给群集中的各节点(真实服务器)。

加权轮询(WeightedRoundRobin):根据真实服务器的处理能力轮流分配收到的访问请求,调度器可以自动查询各节点的负载情况,并动态调整其权重。这样可以保证处理能力强的服务器承担更多的访问流量。

最少连接(LeastConnections):根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接数最少的节点。

加权最少连接(WeightedLeastConnections):在服务器节点的性能差异较大的情况下,可以为真实服务器自动调整权重,权重较高的节点将承担更大比例的活动连接负载。

使用 ipvsadm 管理工具

ipvsadm 是在负载调度器上使用的 LVS 群集管理工具,通过调用 ip_vs 模块添加、删除服务器节点,以及查看群集的运行状态。在 CentOS6 系统中,需要手动安装 ipvsadm 软件包。在 centos7 中直接安装就可以。

地址转换模式

地址转换(NetworkAddressTranslation)简称 NAT 模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口。服务器节点使用私有 IP 地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式。

图解

CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式
说明:节点服务器作用在私网,而客户端作用在公网,此时 LVS 就作为网关,节点服务器反馈信息给客户端时,会经过 LVS。

实验环境

角色 IP
LVS 192.168.100.1 / 12.0.0.1
apache1 192.168.100.110
apache2 192.168.100.120
NFS 192.168.100.130

步骤

在两台节点服务器上搭建 httpd 服务

# yum install httpd -y
# systemctl stop firewalld.service
# setenforce 0

在 NFS 服务器上搭建 NFS 服务

  • 安装服务
    # rpm -q nfs-utils
    # rpm -q rpcbind   // 看是否安装,服务已安装 
  • 编辑配置文件
    # vim /etc/exports
    /usr/share *(ro,sync)
    /opt/benet 192.168.100.0/24(rw,sync)// 创建目录 benet,192.168.100.0 网段的可以进行读写和同步操作
    /opt/accp 192.168.100.0/24(rw,sync)// 创建目录 accp,192.168.100.0 网段的可以进行读写和同步操作 
  • 创建目录并赋予权限
    # mkdir /opt/benet /opt/accp
    # chmod 777  /opt/benet /opt/accp
  • 开启 nfs 服务并发布共享
    # systemctl start nfs.service
    # exportfs -rv  // 发布共享 

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式

    节点服务器挂载 nfs 服务器的共享文件

  • apache1 将 /opt/benet 挂载到站点目录下
    # showmount -e 192.168.100.130  // 查看共享文件
    # mount.nfs 192.168.100.130:/opt/benet /var/www/html  // 挂载
    # cd /var/www/html/
    # echo "this is benet" > index.html
    # systemctl start httpd.service 

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式

  • apache2 将 /opt/accp 挂载到站点目录下
    # showmount -e 192.168.100.130  // 查看共享文件
    # mount.nfs 192.168.100.130:/opt/accp /var/www/html  // 挂载
    # echo "this is accp" > index.html
    # systemctl start httpd.service 

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式
    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式

    LVS 服务器 (注意是双网卡)

  • 安装 ipvsadm 管理工具
    # yum install ipvsadm -y
  • 加载内核模块
    # modprobe ip_vs
  • 设置路由转发(因为是双网卡)
    # vim /etc/sysctl.conf
    末尾添加:net.ipv4.ip_forward = 1
    # sysctl -p  // 立即生效 

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式

  • 防火墙设置
    iptables -F  
    # iptables -t nat -F
    # iptables -L
    // 清空所有规则
    # iptables -t nat -I POSTROUTING -s 192.168.100.0/24 -o ens36 -j SNAT --to-source 12.0.0.1   // 设置 SNAT 转发,将所有 192.168.100.0 段的都转换为 12.0.0.1,然后进行访问 client

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式

  • 开启 ipvsadm
    # systemctl start ipvsadm.service
    注:此时开启可能会出现问题
    # ipvsadm --save  > /etc/sysconfig/ipvsadm  // 输入该行即可 

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式

  • 编写可执行的脚本
    # cd /opt
    # vi net.sh
    #!/bin/bash
    ipvsadm -C
    ipvsadm -A -t 12.0.0.1:80 -s rr
    ipvsadm -a -t 12.0.0.1:80 -r 192.168.100.110:80 -m
    ipvsadm -a -t 12.0.0.1:80 -r 192.168.100.120:80 -m
    ipvsadm
    # chmod +x net.sh
    # ./net.sh
    解释如下:ipvsadm -C // 清除内核虚拟服务器表中的所有记录 //
    -A:添加虚拟服务器
    -s: 指定调度算法
    rr: 轮询算法
    -a: 添加真实服务器
    -t: 指定外网网关及 TCP 端口
    -r: 指定节点服务器的地址及 TCP 端口
    -m: 使用 NAT 集群模式 

    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式
    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式
    打开一台 win7 进行检测
    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式
    CentOS 7 上实现 LVS 负载均衡群集之 NAT 转换模式
    注:当两次连续访问 12.0.0.1 时,可能一时间切换不过来,显示的还是原来的界面,这时候就必须清除缓存,才能看到两个不同的界面。当然了,如果这时关掉其中一台节点服务器的 httpd 服务,那么再去访问 12.0.0.1 时,显示的就是另一台的网页界面啦。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2692字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7956519
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛 NAS-2:飞牛配置 RAID 磁盘阵列 前言 大家好,我是星哥之前星哥写了《星哥带你玩飞牛 ...
星哥带你玩飞牛NAS-5:飞牛NAS中的Docker功能介绍

星哥带你玩飞牛NAS-5:飞牛NAS中的Docker功能介绍

星哥带你玩飞牛 NAS-5:飞牛 NAS 中的 Docker 功能介绍 大家好,我是星哥,今天给大家带来如何在...
12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换...
安装并使用谷歌AI编程工具Antigravity(亲测有效)

安装并使用谷歌AI编程工具Antigravity(亲测有效)

  安装并使用谷歌 AI 编程工具 Antigravity(亲测有效) 引言 Antigravity...
星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的 NAS 中! 大家对「数据安全感」的需求越来越高 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...
浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍

浏览器自动化工具!开源 AI 浏览器助手让你效率翻倍 前言 在 AI 自动化快速发展的当下,浏览器早已不再只是...
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...