基于 CentOS 7 构建 LVS-DR 群集以及配置nginx负载均衡
目录
一、基于 CentOS 7 构建 LVS-DR 群集
1、前期准备
1、关闭防火墙
2、安装ifconfig
3、准备四台虚拟机
2、在DS上
2.1、配置LVS虚拟IP
2.2、手工执行配置添加LVS服务并增加两台RS
2.3、查看配置
3、在RS端(第三台、第四台) 上
3.1、配置Web服务器
3.2、配置默认主页
3.3、启动服务
3.4、测试:在客户端访问web服务器
3.5、绑定VIP
3.6、配置主机路由
3.7、抑制ARP响应
4、在客户端上测试
二、配置nginx负载均衡
1、安装部署nginx
2、内网服务器151
3、内网服务器152
4、代理服务器150
5、客户端
一、基于 CentOS 7 构建 LVS-DR 群集
1、前期准备
1、关闭防火墙
[root@localhost ~]# systemctl stop firewalld
2、安装ifconfig
yum install net-tools.x86_64 -y
3、准备四台虚拟机
ip | 用途 |
192.168.226.150 | 客户端 |
192.168.226.151 | lvs |
192.168.226.152 | RS |
192.168.226.153 | RS |
2、在DS上
2.1、配置LVS虚拟IP
安装ipvsadm
yum install ipvsadm -y增加IP
ifconfig ens33:200 192.168.226.200 netmask 255.255.255.255 up
2.2、手工执行配置添加LVS服务并增加两台RS
[root@localhost ~]# ipvsadm -C
[root@localhost ~]# ipvsadm -A -t 192.168.226.200:80 -s rr
[root@localhost ~]# ipvsadm -a -t 192.168.226.200:80 -r 192.168.226.151:80 -g
[root@localhost ~]# ipvsadm -a -t 192.168.226.200:80 -r 192.168.226.152:80 -g
2.3、查看配置
3、在RS端(第三台、第四台) 上
3.1、配置Web服务器
yum install httpd -y
3.2、配置默认主页
hostname -I 取地址[root@backup ~]# echo "web test page, ip is `hostname -I`." > /var/www/html/index.html
3.3、启动服务
[root@backup ~]# systemctl start httpd
3.4、测试:在客户端访问web服务器
[root@localhost ~]# curl 192.168.226.147
web test page, ip is 192.168.226.147 .
[root@localhost ~]# curl 192.168.226.148
web test page, ip is 192.168.226.148 .
3.5、绑定VIP
ifconfig lo:200 192.168.226.200 netmask 255.255.255.255 up
3.6、配置主机路由
route add -host 192.168.226.200 dev lo
3.7、抑制ARP响应
调整内核参数,关闭arp响应echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
4、在客户端上测试
二、配置nginx负载均衡
1、安装部署nginx
在linux系统上部署Nginx_搞笑狗的博客-CSDN博客
2、内网服务器151
[root@localhost ~]# vim /etc/nginx/conf.d/vhost.conf
server {listen 80;server_name web1.yunjisuan.com;location / {root /usr/share/nginx/html/web1;index index.html index.htm;}access_log /usr/share/nginx/html/web1/logs/access_bbs.log main;}
[root@localhost ~]# mkdir -p /usr/share/nginx/html/web1/logs
[root@localhost ~]# echo "`hostname -I `web1" > /usr/share/nginx/html/web1/index.html
[root@localhost ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@localhost ~]# systemctl restart nginx
3、内网服务器152
[root@localhost ~]# vim /etc/nginx/conf.d/vhost.conf
server {listen 80;server_name web1.yunjisuan.com;location / {root /usr/share/nginx/html/web1;index index.html index.htm;}access_log /usr/share/nginx/html/web1/logs/access_bbs.log main;}[root@localhost ~]# mkdir -p /usr/share/nginx/html/web1/logs
[root@localhost ~]# echo "`hostname -I `web1" > /usr/share/nginx/html/web1/index.html
[root@localhost ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@localhost ~]# systemctl restart nginx
4、代理服务器150
[root@localhost ~]# vim /etc/nginx/conf.d/lb_test.conf
upstream www_server_pools {server 192.168.226.151:80 weight=1;server 192.168.231.152:80 weight=1;
}
server {listen 80;server_name web1.haha.com;location / {proxy_pass http://www_server_pools;proxy_set_header Host $host;}
}
5、客户端
[root@localhost ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.226.150 web1.haha.com
[root@localhost ~]# for ((i=1;i<=6;i++)); do curl web1.haha.com; done
192.168.226.152 web1
192.168.226.151 web1
192.168.226.152 web1
192.168.226.151 web1
192.168.226.152 web1
192.168.226.151 web1
相关文章:

基于 CentOS 7 构建 LVS-DR 群集以及配置nginx负载均衡
目录 一、基于 CentOS 7 构建 LVS-DR 群集 1、前期准备 1、关闭防火墙 2、安装ifconfig 3、准备四台虚拟机 2、在DS上 2.1、配置LVS虚拟IP 2.2、手工执行配置添加LVS服务并增加两台RS 2.3、查看配置 3、在RS端(第三台、第四台) 上 3.1、配置W…...

golang trace view 视图详解
大家好,我是蓝胖子,在golang中可以使用go pprof的工具对golang程序进行性能分析,其中通过go trace 命令生成的trace view视图对于我们分析系统延迟十分有帮助,鉴于当前对trace view视图的介绍还是很少,在粗略的看过tra…...

zju代码题:4-6
一 分段函数算水费 #include <stdio.h>int main() {/*** 定义两个* 定义浮点型变量* y:水费* x:用水的吨数* */double x, y;printf("Enter x(x>=0):\n"...

数据链路层概述
数据传输过程如下: 数据包按上述过程传输,详见(计算机网络概述三)。在分析数据链路层时可以假象成其沿着水平传播。 这三段链路层的传播方式可能会有所不同。 基本概念: 链路:指一个节点到相邻节点的一段物…...
Python代码使用技巧汇总:提升你的编程技能
各位程序员朋友们,今天我要跟大家分享一些关于Python代码的最佳使用技巧,这些技巧可以帮助你们成为更专业且高效的程序员。不管你是刚刚入门还是已经有一些经验,这些技巧都能够为你提供实际操作价值。 一、合理使用Python的数据结构和算法&am…...

Ae 效果:CC Spotlight
透视/CC Spotlight Perspective/CC Spotlight CC Spotlight(CC 聚光灯) 主要用途是创建和控制逼真的聚光灯效果。通过调整这些属性,可以模拟出各种不同的照明环境和效果,比如舞台照明、日出日落、特定的颜色照明等。 ◆ ◆ ◆ 效…...

如何在页面中嵌入音频和视频?
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 嵌入音频⭐ 嵌入视频⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅!这个专栏是为那些对Web开发感兴趣、刚刚踏…...

Unity 中检测射线穿过的所有的物体
在开发中 有个需求,射线要检测所有穿过的物体。 代码如下: using UnityEngine;public class HitCollider : MonoBehaviour {public float raycastDistance Mathf.Infinity;// Update is called once per framevoid Update(){Ray ray Camera.main.Scre…...

LeetCode 29题:两数相除
题目 给你两个整数,被除数 dividend 和除数 divisor。将两数相除,要求 不使用 乘法、除法和取余运算。 整数除法应该向零截断,也就是截去(truncate)其小数部分。例如,8.345 将被截断为 8 ,-2.…...

Axure RP9中使用Echarts示例
目录 在Axure中拖入一个矩形框,并命名tes 进入Echarts官网示例页面https://echarts.apache.org/examples/zh/index.html 选择自己需要的图表,修改数据,并复制左侧js代码 把上面复制的代码替换下方的option{}; javascript: var script docum…...

利用Jmeter做接口测试全流程分析
利用Jmeter做接口测试怎么做呢?过程真的是超级简单。 明白了原理以后,把零碎的知识点填充进去就可以了。这篇文章就来介绍一下如何利用Jmeter做接口测试的流程,主要针对的是功能测试。暂不涉及到自动化测试和性能测试的内容。 一把来说&…...

超级浏览器与指纹浏览器:功能与特点的比较
导语:随着互联网的快速发展,隐私和安全问题日益受到关注。在这个背景下,超级浏览器和指纹浏览器作为定制化浏览器的两个重要类型,各自具有独特的功能和特点。本文将对超级浏览器和指纹浏览器进行比较,帮助读者更好地理…...

云端同步、高效无界:5款免费的跨平台思维导图软件推荐!
思维导图是一种以图形化方式表示思想、概念或任务的方法,可以帮助用户梳理思维、提高记忆和理解。在工作中,思维导图可以用于会议记录、任务规划、项目管理等,帮助提高工作效率和团队协作能力;在学习中,思维导图可以用…...

OpenAI允许网站阻止其网络爬虫;谷歌推出类似Grammarly的语法检查功能
🦉 AI新闻 🚀 OpenAI推出新功能,允许网站阻止其网络爬虫抓取数据训练GPT模型 摘要:OpenAI最近推出了一个新功能,允许网站阻止其网络爬虫从其网站上抓取数据训练GPT模型。该功能通过在网站的Robots.txt文件中禁止GPTB…...

SpringBoot操作Jedis
SpringBoot操作Jedis 1、pom依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://ma…...

实现静态资源访问的几种方法
什么是静态资源? 静态资源是指在服务器端存储的不会变化的文件,如HTML、CSS、JavaScript、图片、音频、视频等文件。这些文件一般不包含动态内容,每次请求时返回的内容都是固定的。 为什么要使用静态资源? 提升网站性能…...
chrome 下 autocomplete=off (禁止记住密码)不起作用解决方案
chrome 下 autocompleteoff (禁止记住密码)不起作用解决方案: 不知道是否是CHROME一个BUG,按说不应该,但事实它确实存在。 因时间关系,懒得查阅官方资料,这类问题解锁容易,思路如下: 初始化设置…...

设计模式-简单工厂模式(静态工厂模式)java实现
介绍 简单工厂模式根据所提供的参数数据返回几个可能类中的一个类的实例。通常返回的类都有一个公共的父类和公共的方法。 意图 提供一个类,负责根据一定的条件创建某一具体类的实例。同时使用工厂模式也是为了隐藏创建对象的过程 角色及其职责 (1)工厂(Creator…...

如何共享笔记本电脑网络
为了让手机连接笔记本网络,我们通常通过在笔记本上安装诸如WiFi共享精灵来实现,其实没有那么麻烦: 1、在电脑上打开“设置”—>选择“网络和Internet”—>选择“移动热点”(如果系统是Windows 7或更低版本,则需要…...
Android 高级进阶知识整理
Android Framework 启动流程 init 进程启动过程 Android系统启动流程 Zygote启动流程及源码分析 APP启动流程 init进程是Android用户空间第一个进程,主要做以下3件事情: 创建和挂载启动所需的文件目录。初始化和启动关键服务,守护关键…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...

Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
【实施指南】Android客户端HTTPS双向认证实施指南
🔐 一、所需准备材料 证书文件(6类核心文件) 类型 格式 作用 Android端要求 CA根证书 .crt/.pem 验证服务器/客户端证书合法性 需预置到Android信任库 服务器证书 .crt 服务器身份证明 客户端需持有以验证服务器 客户端证书 .crt 客户端身份…...

深入解析光敏传感技术:嵌入式仿真平台如何重塑电子工程教学
一、光敏传感技术的物理本质与系统级实现挑战 光敏电阻作为经典的光电传感器件,其工作原理根植于半导体材料的光电导效应。当入射光子能量超过材料带隙宽度时,价带电子受激发跃迁至导带,形成电子-空穴对,导致材料电导率显著提升。…...

高抗扰度汽车光耦合器的特性
晶台光电推出的125℃光耦合器系列产品(包括KL357NU、KL3H7U和KL817U),专为高温环境下的汽车应用设计,具备以下核心优势和技术特点: 一、技术特性分析 高温稳定性 采用先进的LED技术和优化的IC设计,确保在…...

RFID推动新能源汽车零部件生产系统管理应用案例
RFID推动新能源汽车零部件生产系统管理应用案例 一、项目背景 新能源汽车零部件场景 在新能源汽车零部件生产领域,电子冷却水泵等关键部件的装配溯源需求日益增长。传统 RFID 溯源方案采用 “网关 RFID 读写头” 模式,存在单点位单独头溯源、网关布线…...