Linux中LVS群集应用基础—NAT模式—LVS+Apache+NFS

news2024/9/22 4:08:09

 

🏡作者主页:点击! 

🐧Linux基础知识(初学):点击!

🐧Linux高级管理专栏:点击!

🔐Linux中firewalld防火墙:点击!

⏰️创作时间:2024年7月9日14点11分

🀄️文章质量:94分


目录

前言——

1.调度器(LVS)

2.两台Web服务器

3.检测群集

4.调度器LVS配置

4.NFS服务器

5.NFS共享挂载


前言——

LVS(Linux Virtual Server)是一种高性能、高可用的服务器集群系统,它能够通过IP负载均衡技术实现网络服务的负载均衡。NAT模式是LVS中最常用的一种工作模式。

在NAT模式下,LVS集群包含三种角色的节点:

  1. 负载均衡器(Director Server):这是一台运行LVS软件的服务器,它接收来自客户端的请求,并根据调度算法将请求转发至真实服务器(Real Server)。

  2. 真实服务器(Real Server):这是一组提供实际服务的服务器,它们可以是Web服务器、数据库服务器等。

  3. 共享存储服务器(NFS Server):为了实现会话共享,真实服务器需要将会话数据存储在共享存储服务器上,通常使用NFS(Network File System)来实现。

NAT模式的工作流程如下:

  1. 客户端发送请求到负载均衡器的虚拟IP(VIP)地址。
  2. 负载均衡器根据调度算法选择一台真实服务器,并将客户端的请求通过网络地址转换(NAT)转发给该真实服务器。
  3. 真实服务器处理请求,并将响应数据直接发送回客户端。

配置LVS NAT模式需要以下步骤:

  1. 安装LVS软件包和内核模块。
  2. 在负载均衡器上配置虚拟IP(VIP)和真实服务器(RIP)池。
  3. 在负载均衡器上配置NAT规则和调度算法。
  4. 在真实服务器上配置共享存储(NFS)并挂载。
  5. 配置真实服务器的网关指向负载均衡器。

实验环境

网络配置

1.调度器(LVS)

 cd /etc/sysconfig/network-scripts/
 cp -p ifcfg-ens33 ifcfg-ens36
vim ifcfg-ens33
vim ifcfg-ens36

vim /etc/sysctl.conf
sysctl -p  刷新
net.ipv4.ip_forward = 1

开启路由转发

重启网卡 测试连通性

systemctl restart network

安装

yum install -y ipvsadm
  1. ipvsadm: 这是要安装的软件包名称。ipvsadm是Linux虚拟服务器管理工具,

2.两台Web服务器

网关需要指向LVS的ens33网卡IP

都安装httpd
yum install -y httpd

3.检测群集

先做测试人为干预网页 检测集群是否正常 是否在两台web服务器上切换

第一台Web
echo 1111111 > /var/www/html/index.html
​
​
第二台Web
echo 2222222 > /var/www/html/index.html

配置完成之后打开或重启服务

systemctl restart httpd
systemctl start httpd
​

进行访问测试是否可以访问页面 选择LVS调度器那台服务器

一切正常,可以访问(如果遇到不能访问的情况下 记得关闭防火墙)

4.调度器LVS配置

  1. modprobe ip_vs: 加载 IP 虚拟服务器内核模块。

  2. cat /proc/net/ip_vs: 查看当前 IP 虚拟服务器的配置和状态。

[root@localhost ~]# modprobe  ip_vs
[root@localhost ~]# 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
  
  1. ipvsadm-save > /etc/sysconfig/ipvsadm: 保存当前 IPVS 配置到文件。

[root@localhost ~]# ipvsadm-save  > /etc/sysconfig/ipvsadm 
  1. ipvsadm -C: 清除所有现有的 IPVS 配置。

[root@localhost ~]# ipvsadm -C

[root@localhost ~]# ipvsadm -A -t 192.168.140.100:80 -s rr
[root@localhost ~]# ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.111:80 -m -w 1
[root@localhost ~]# ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.112:80 -m -w 1
[root@localhost ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
  1. ipvsadm -A -t 192.168.140.100:80 -s rr:
    添加一个新的虚拟服务,IP 为 192.168.140.100,端口 80,使用轮询(Round Robin)调度算法。

  2. ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.111:80 -m -w 1:
    为虚拟服务添加一个真实服务器,IP 为 192.168.192.111,端口 80,使用 NAT 模式(-m),权重为 1。

  3. ipvsadm -a -t 192.168.140.100:80 -r 192.168.192.112:80 -m -w 1:
    添加另一个真实服务器,IP 为 192.168.192.112,配置与上一个相同。

  4. ipvsadm-save > /etc/sysconfig/ipvsadm: 再次保存 IPVS 配置到文件。

这些命令设置了一个简单的负载均衡器,将发往 192.168.140.100:80 的流量均匀分配到两个后端服务器(192.168.192.111:80 和 192.168.192.112:80)。使用 NAT 模式意味着源 IP 地址将被修改为负载均衡器的 IP。

systemctl start ipvsadm 

客户端网关指向ens36 192.168.140.100

访问测试

可以看到这个页面一直在轮替切换 表示一切正常

4.NFS服务器

接下来配置NFS

yum install -y install rpcbind nfs-utils
​
​
root@localhost ~]# vim /etc/exports
[root@localhost ~]# mkdir /wwwroot
[root@localhost ~]# vim /etc/exports
​
​
​
[root@localhost ~]# echo NFS SMQNZ /wwwroot/index.html
[root@localhost ~]# systemctl start nfs rpcbind
​
[root@localhost ~]# netstat -nultp | grep rpcbind
udp        0      0 0.0.0.0:893             0.0.0.0:*                           1142/rpcbind        
udp        0      0 0.0.0.0:111             0.0.0.0:*                           1142/rpcbind        
udp6       0      0 :::893                  :::*                                1142/rpcbind        
udp6       0      0 :::111                  :::*                                1142/rpcbind        
[root@localhost ~]# showmount -e
Export list for localhost.localdomain:
/wwwroot 192.168.192.0/24
  1. showmount 命令用于显示NFS服务器上已经导出(exported)的目录列表。

  2. -e 选项表示显示远程主机已导出的目录列表。

 

5.NFS共享挂载

你执行的这些命令是在配置NFS服务,启动NFS服务器,查看导出的共享目录,并将远程NFS共享挂载到本地系统上。这种网络文件系统可以让多台Linux系统方便地共享数据。

在两台Web上操作

同样的操作 进行挂载

[root@localhost ~]# systemctl start nfs
[root@localhost ~]# showmount -e 192.168.192.113
Export list for 192.168.192.113:
/wwwroot 192.168.192.0/24
[root@localhost ~]# mount 192.168.192.113:/wwwroot /var/www/html
[root@localhost ~]# df -hT

进行访问测试

客户端访问测试

进行访问测试

客户端访问测试

查看连接数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1930431.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ctfshow-web入门-php特性(web123、web125、web126)

目录 1、web123 2、web125 3、web126 1、web123 要求存在 post 传入 CTF_SHOW 和 CTF_SHOW.COM,不能存在 get 传入 fl0g。 正则匹配过滤掉了一些符号,符合则会执行 eval 函数,其中 c 来自 post 传入的 fun。 我们先说非预期解&#xff0c…

Windows搭建RTMP视频流服务器

参考了一篇文章,见文末。 博客中nginx下载地址失效,附上一个有效的地址: Index of /download/ 另外,在搭建过程中,遇到的问题总结如下: 1 两个压缩包下载解压并重命名后,需要 将nginx-rtmp…

【Linux】进程信号 --- 信号预备阶段(入门篇)

👦个人主页:Weraphael ✍🏻作者简介:目前正在学习c和算法 ✈️专栏:Linux 🐋 希望大家多多支持,咱一起进步!😁 如果文章有啥瑕疵,希望大佬指点一二 如果文章对…

PIC单片机ICSP接口电路原理图

ICSP接口电路只有五根线,依次为: VPP、VDD、VSS、PGD、PGC,它们与PIC单片机的连接如下图: 题外话单片机中的佼佼者是谁,想知道点击上方图片查看视频 为保证ICSP安全正常工作,烧写时序线PGD和PGC、烧写电压…

C语言 | Leetcode C语言题解之第237题删除链表中的节点

题目: 题解: /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/void deleteNode(struct ListNode* node) {struct ListNode * p node->next;int temp;temp node->val;node->val…

深度学习驱动智能超材料设计与应用

在深度学习与超材料融合的背景下,不仅提高了设计的效率和质量,还为实现定制化和精准化的治疗提供了可能,展现了在材料科学领域的巨大潜力。深度学习可以帮助实现超材料结构参数的优化、电磁响应的预测、拓扑结构的自动设计、相位的预测及结构…

线程控制

对线程的控制思路和进程相似,创建、等待、终止,只需要调用接口就行。但是在Linux下没有线程的概念,因为Linux的设计者认为,线程是一种轻量级的进程,毕竟创建线程只需要创建PCB。因此Linux中使用多线程必须使用第三方pt…

打破平台限制,使智能手机和平板电脑上无缝运行Windows x86/x64架构的软件和游戏的一款安卓应用

大家好,今天给大家分享一款专为Android设备设计的模拟器应用Winlator。其核心功能是能够在基于ARM架构的智能手机和平板电脑上无缝运行Windows x86/x64架构的软件和游戏。 Winlator是一款Android应用程序,它允许用户使用Wine和Box86/Box64在Android设备上…

Ubuntu的磁盘扩容遇到的问题

1.先用终端上的命令查看磁盘的使用情况 #查看磁盘空间容量的占用情况 $ df -h #查看当前文件夹中,各个文件占用磁盘空间的情况 $ du -sh* 如果容量少的话,需要尽快扩容 2.开机前的扩容 2.1 VMware 扩展磁盘空间 关闭当前客户机,在编辑虚拟…

《企业实战分享 · Druid 连接监控》

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 近期刚转战 CSDN,会严格把控文章质量,绝不滥竽充数,如需交流&#xff…

华为以客户为中心的战略

2005年,伴随着国际化步伐的加快,华为重新梳理了自己的愿景、使命和发展战略,提出了以客户为中心的战略定位: 为客户服务是华为存在的唯一理由;客户需求是华为发展的原动力。质量好、服务好、运作成本低,优…

部署kafkamanager

1,检查kafka的版本 到lib下查看 libs/kafka-clients-0.11.0.3.jar kafka的版本 0.11 2,下载kafkamanager 链接: https://pan.baidu.com/s/1qYifoa4 密码:el4o 3,解压后更改该conf下conf/application.conf 中zkhosts …

VUE:跨域配置代理服务器

//在vite.config。js中,同插件配置同级进行配置server:{proxy:{"/myrequest":{//代理域名,可自行修改target:"https://m.wzj.com/",//访问服务器的目标域名changeOrigin:true,//允许跨域configure:(proxy,options) > {proxy.on(&…

Ubuntu上安装配置samba服务

Ubuntu上安装配置samba服务 在Ubuntu中安装配置samba共享服务,可以让你在网络上共享文件和打印机。以下是一个相对详细的步骤指南,介绍如何在Ubuntu上安装和配置Samba。 1. 安装Samba 首先,需要安装Samba软件包。打开终端并运行以下命令&a…

【学习笔记】无人机系统(UAS)的连接、识别和跟踪(一)-3GPP TS 23.256 技术规范概述

3GPP TS 23.256 技术规范,主要定义了3GPP系统对无人机(UAV)的连接性、身份识别、跟踪及A2X(Aircraft-to-Everything)服务的支持。 3GPP TS 23.256 技术规范: 以下是文档的核心内容总结: UAV系…

设计模式-概述*

1.代码的质量的评判 可维护性:不破坏原有代码设计以及不引入新的bug的前提下,能够快速修改或新增代码;可读性:人类能理解的代码(编程规范-命名、函数是否冗长、类是否过大等);可扩展性&#xff…

BiliBili 阴阳师主题 前端技术展示

实现效果 实现方式 纯 Html CSS 文件展示如下 下载地址 https://download.csdn.net/download/qq_43638033/89543490 部分代码解析 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"> <!-- 设置文档的字符编码…

【概率论三】参数估计

文章目录 一. 点估计1. 矩估计法2. 极大似然法1. 似然函数2. 极大似然估计 3. 评价估计量的标准2.1. 无偏性2.2. 有效性2.3. 一致性 三. 区间估计1. 区间估计的概念2. 正态总体参数的区间估计 参数估计讲什么 由样本来确定未知参数参数估计分为点估计与区间估计 一. 点估计 所…

每日刷题(cf)

目录 1.C. Increasing Sequence with Fixed OR 2.C. Jellyfish and Green Apple 3.B. Jellyfish and Game 1.C. Increasing Sequence with Fixed OR Problem - C - Codeforces 题目要求我们构造一个最长的序列&#xff0c;使得任意相邻两个元素按位或等于n&#xff0c;我们对…

汇智知了堂推出“鸿蒙系统开发培训”,探索万物互联新纪元

在数字化转型的浪潮中&#xff0c;操作系统作为连接硬件与软件的桥梁&#xff0c;其重要性不言而喻。随着5G、物联网、人工智能(AI)等技术的飞速发展&#xff0c;我们正步入一个万物皆可互联的时代。在这个背景下&#xff0c;华为推出的鸿蒙系统(HarmonyOS)应运而生&#xff0c…