当前位置: 首页 > news >正文

nginx+keepalived负载均衡及高可用

一、环境准备

主机名ip地址备注
openEuler-1

192.168.121.11(本机)

192.168.131.11(心跳连接)

nginx主负载均衡调度器
openEuler-2

192.168.121.12(本机)

192.168.131.12(心跳连接)

nginx-2主负载均衡调度器
openEuler-3192.168.121.13web1
openEuler-4192.168.121.14web2
Rocky-1192.168.121.51client

二、配置nginx反向代理

[root@openEuler-1 ~]# cd /etc/nginx/conf.d/
[root@openEuler-1 conf.d]# vim lb.conf
upstream webs {server 192.168.121.13:80;server 192.168.121.14:80;
}server {location / {proxy_pass http://webs;}
}
[root@openEuler-1 conf.d]# scp lb.conf 192.168.121.12:$PWD# 重启nginx服务

三、配置keepalived

[root@openEuler-1 conf.d]# cd /etc/keepalived/
[root@openEuler-1 keepalived]# vim keepalived.conf
! Configuration File for keepalivedglobal_defs {router_id LVS_1
}vrrp_script check_nginx {script "killall -0 nginx"
}vrrp_instance VI_1 {state MASTERinterface ens160lvs_sync_daemon_interface ens192virtual_router_id 51priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {check_nginx}virtual_ipaddress {192.168.121.10}
}# 副负载均衡调度器上稍作修改
[root@openEuler-1 keepalived]# scp keepalived.conf 192.168.121.12:$PWD
修改为;
! Configuration File for keepalivedglobal_defs {router_id LVS_2
}vrrp_script check_nginx {script "killall -0 nginx"
}vrrp_instance VI_1 {state BACKUPinterface ens160lvs_sync_daemon_interface ens192virtual_router_id 51priority 80advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {check_nginx}virtual_ipaddress {192.168.121.10}
}# 两台调度器都重启keepalived服务

四、测试

# 关闭nginx主负载调度器
[root@openEuler-1 ~]# systemctl stop nginx.service# 副负载调度器接管服务
[root@openEuler-2 ~]# tail -f /var/log/messages
Mar  2 16:25:16 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10
Mar  2 16:25:16 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10
Mar  2 16:25:16 openEuler-2 kernel: [ 9964.205163] IPVS: stopping backup sync thread 3081 ...
Mar  2 16:25:16 openEuler-2 kernel: [ 9964.208213] IPVS: sync thread started: state = MASTER, mcast_ifn = ens192, syncid = 0, id = 0
Mar  2 16:25:21 openEuler-2 Keepalived_vrrp[3078]: (VI_1) Sending/queueing gratuitous ARPs on ens160 for 192.168.121.10
Mar  2 16:25:21 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10
Mar  2 16:25:21 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10
Mar  2 16:25:21 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10
Mar  2 16:25:21 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10
Mar  2 16:25:21 openEuler-2 Keepalived_vrrp[3078]: Sending gratuitous ARP on ens160 for 192.168.121.10

相关文章:

nginx+keepalived负载均衡及高可用

一、环境准备 主机名ip地址备注openEuler-1 192.168.121.11(本机) 192.168.131.11(心跳连接) nginx主负载均衡调度器openEuler-2 192.168.121.12(本机) 192.168.131.12(心跳连接) n…...

SP导入智能材质球

智能材质球路径 ...\Adobe Substance 3D Painter\resources\starter_assets\smart-materials 放入之后就会自动刷新...

Kotlin语言特性(一):空安全、扩展函数与协程

Kotlin语言特性(一):空安全、扩展函数与协程 一、引言 Kotlin作为Android官方推荐的开发语言,相比Java具有诸多现代化特性。本文将重点介绍Kotlin三个最具特色的语言特性:空安全、扩展函数和协程,并结合A…...

Sqlserver安全篇之_启用TLS即配置SQL Server 数据库引擎以加密连接

官方文档 https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/configure-sql-server-encryption?viewsql-server-ver16 https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/manage-certificates?viewsql-server-ver15&pre…...

Python 爬虫 – BeautifulSoup

Python 爬虫(Web Scraping)是指通过编写 Python 程序从互联网上自动提取信息的过程。 爬虫的基本流程通常包括发送 HTTP 请求获取网页内容、解析网页并提取数据,然后存储数据。 Python 的丰富生态使其成为开发爬虫的热门语言,特…...

【星云 Orbit-STM32F4】07. 用判断数据尾来接收据的串口通用程序框架

【星云 Orbit-STM32F4】用判断数据尾来接收一串数据的串口通用程序框架 摘要 本文介绍了一种基于STM32F407微控制器的串口数据接收通用程序框架。该框架通过判断数据尾来实现一串数据的完整接收,适用于需要可靠数据传输的应用场景。本文从零开始,详细讲…...

授权与认证之jwt(一)创建Jwt工具类

JWT的Token要经过加密才能返回给客户端&#xff0c;包括客户端上传的Tokn,后端项目需要验证核 实。于是我们需要一个WT工具类&#xff0c;用来加密Token和验证Token的有效性。 一、导入依赖 <dependency><groupId>com.auth0</groupId><artifactId>jav…...

Kubernetes Service服务发现dns之CoreDNS

文章目录 背景什么是Service、服务发现、Endpoint什么是CoreDNSCoreDNS 的工作原理 常用命令coredns 运行状态根据服务名&#xff0c;判断某个服务dns解析是否正常 背景 Kubernetes 集群内部的服务发现是微服务架构的核心基础&#xff0c;而 DNS 服务则是实现这一机制的关键组…...

Spring Boot 测试:单元、集成与契约测试全解析

一、Spring Boot 分层测试策略 Spring Boot 应用采用经典的分层架构&#xff0c;不同层级的功能模块对应不同的测试策略&#xff0c;以确保代码质量和系统稳定性。 Spring Boot 分层架构&#xff1a; Spring Boot分层架构 A[客户端] -->|HTTP 请求| B[Controller 层] …...

用友NC系列漏洞检测利用工具

声明&#xff01;本文章所有的工具分享仅仅只是供大家学习交流为主&#xff0c;切勿用于非法用途&#xff0c;如有任何触犯法律的行为&#xff0c;均与本人及团队无关&#xff01;&#xff01;&#xff01; 目录标题 YongYouNcTool启动及适配环境核心功能界面预览一键检测命令执…...

PostgreSQL 创建表格

PostgreSQL 创建表格 在数据库管理中&#xff0c;表格&#xff08;Table&#xff09;是数据存储的基础。PostgreSQL作为一款强大的开源对象关系型数据库管理系统&#xff08;ORDBMS&#xff09;&#xff0c;创建表格是其最基本的功能之一。本文将详细讲解如何在PostgreSQL中创…...

一周一个Unity小游戏2D反弹球游戏 - 球的死区及球重生

前言 本文将实现当球弹到球板下方的死亡区域后,球会被重置到球板上发射点,并且重置物理状态的逻辑。 创建球的死亡区 之前创建的在屏幕下方的空气墙碰撞体可以将其Is Trigger勾选上,让其成为一个触发器,用来检测球是否进入该区域,如下。 创建一个脚本名为Deadzone…...

本地部署 DeepSeek:从 Ollama 配置到 Spring Boot 集成

前言 随着人工智能技术的迅猛发展&#xff0c;越来越多的开发者希望在本地环境中部署和调用 AI 模型&#xff0c;以满足特定的业务需求。本文将详细介绍如何在本地环境中使用 Ollama 配置 DeepSeek 模型&#xff0c;并在 IntelliJ IDEA 中创建一个 Spring Boot 项目来调用该模型…...

vue3:三项目增加404页面

一、路由添加 1、官网地址 带参数的动态路由匹配 | Vue Routerhttps://router.vuejs.org/zh/guide/essentials/dynamic-matching.html 2、复制核心语句 { path: /:pathMatch(.*)*, name: NotFound, component: NotFound } 3、粘贴到路由index.js中 4、建立页面 在view文件夹…...

MCAL(Microcontroller Abstraction Layer)介绍

目录 MCAL的核心作用 MCAL的模块组成 1. 微控制器驱动&#xff08;Microcontroller Drivers&#xff09; 2. I/O驱动&#xff08;DIO, PWM, ADC等&#xff09; 3. 通信驱动&#xff08;Communication Drivers&#xff09; 4. 存储驱动&#xff08;Memory Drivers&#xf…...

爬虫:PhantomJS的详细使用和实战案例

文章目录 一、PhantomJS介绍1.1 什么是 PhantomJS1.2 PhantomJS 的特点与优势二、PhantomJS 的安装2.1 在 macOS 上安装 PhantomJS2.2 在 Linux 上安装 PhantomJS2.3 在 Windows 上安装 PhantomJS2.4 验证安装三、PhantomJS 的基本使用3.1 示例 1:打开网页并截图3.2 示例 2:获…...

目标检测——数据处理

1. Mosaic 数据增强 Mosaic 数据增强步骤: (1). 选择四个图像&#xff1a; 从数据集中随机选择四张图像。这四张图像是用来组合成一个新图像的基础。 (2) 确定拼接位置&#xff1a; 设计一个新的画布(输入size的2倍)&#xff0c;在指定范围内找出一个随机点&#xff08;如…...

深度学习工程师的技术图谱和学习路径

在构建一个深度学习工程师的技术图谱时,按照“技能树与能力模型”的结构可以帮助清晰地展示出技术体系的层次化关系,帮助学习者更好地理解每个技术点的依赖与顺序。 深度学习工程师的技术图谱和学习路径 以下是深度学习工程师的技能树,包括从基础到进阶的学习路径,以及对…...

Qt 文件操作+多线程+网络

文章目录 1. 文件操作1.1 API1.2 例子1&#xff0c;简单记事本1.3 例子2&#xff0c;输出文件的属性 2. Qt 多线程2.1 常用API2.2 例子1&#xff0c;自定义定时器 3. 线程安全3.1 互斥锁3.2 条件变量 4. 网络编程4.1 UDP Socket4.2 UDP Server4.3 UDP Client4.4 TCP Socket4.5 …...

如何使用ArcGIS Pro制作横向图例:详细步骤与实践指南

ArcGIS Pro&#xff0c;作为Esri公司推出的新一代地理信息系统&#xff08;GIS&#xff09;平台&#xff0c;以其强大的功能和灵活的操作界面&#xff0c;在地理数据处理、地图制作和空间分析等领域发挥着重要作用。 在地图制作过程中&#xff0c;图例作为地图的重要组成部分&…...

现货库存MAX3311EEUB+T由ADI推出的高性能、低功耗RS-232收发器芯片,专为便携式和高可靠性电子设备设计,在工业控制、通信终端及嵌入式系统中表现出色

MAX3311EEUBT‌ 是一款由ADI推出的高性能、低功耗RS-232收发器芯片&#xff0c;专为便携式和高可靠性电子设备设计&#xff0c;在工业控制、通信终端及嵌入式系统中表现出色 。核心性能参数‌协议兼容性‌&#xff1a;完全符合EIA/TIA-232标准&#xff0c;支持RS-232电平转换‌…...

如何安全导出浏览器Cookie?本地处理方案全解析

如何安全导出浏览器Cookie&#xff1f;本地处理方案全解析 【免费下载链接】Get-cookies.txt-LOCALLY Get cookies.txt, NEVER send information outside. 项目地址: https://gitcode.com/gh_mirrors/ge/Get-cookies.txt-LOCALLY 在数据驱动的开发环境中&#xff0c;浏览…...

5步突破:思源宋体TTF字体库的商业级应用方案

5步突破&#xff1a;思源宋体TTF字体库的商业级应用方案 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 还在为中文排版的专业性发愁吗&#xff1f;面对商业字体高昂的授权费用和免费字…...

glb模型在Cesium中发黑的机理分析

最近在将一款火箭模型(fbx模式&#xff09;转换为glb(gltf)格式后&#xff0c;在Cesium中加载结果模型看起来全黑&#xff0c;经过分析发现是由于高光的折射率等级(IOR level)默认设置错误(设置为0)导致的&#xff0c;将其设置为0.5即可在Cesium中表现正常。 现象 现有一个fbx格…...

OpenClaw+Phi-3-vision智能相册:私人照片自动分类与摘要

OpenClawPhi-3-vision智能相册&#xff1a;私人照片自动分类与摘要 1. 为什么需要本地化的智能相册管理 去年夏天&#xff0c;我带着家人去海边度假&#xff0c;用手机拍了近千张照片。回来后面对杂乱的相册&#xff0c;花了整整两个周末才完成分类整理——这种痛苦经历让我开…...

intv_ai_mk11效果实测:技术面试题生成能力——覆盖算法/系统设计/行为问题

intv_ai_mk11效果实测&#xff1a;技术面试题生成能力——覆盖算法/系统设计/行为问题 1. 测试背景与模型介绍 intv_ai_mk11是一款基于Llama架构的AI对话助手&#xff0c;拥有7B参数规模&#xff0c;专门针对技术场景进行了优化。本次测试聚焦于其在技术面试题生成方面的能力…...

成都宠博会的发展历程

1.背景与起源创办背景&#xff1a;随着国内宠物经济的蓬勃发展&#xff0c;成都以其浓厚的宠物文化和“宠物友好城市”的定位&#xff0c;为宠博会的诞生提供了沃土。展会旨在满足中西部地区日益增长的行业交流与消费需求。首届信息&#xff1a;根据文档提及的“从2012年到2025…...

5 鸿蒙应用权限配置快速落地实操 | 鸿蒙开发筑基实战

鸿蒙应用权限配置快速落地实操 | 鸿蒙开发筑基实战 作者&#xff1a;杨建宾&#xff08;华夏之光永存&#xff09; 摘要 本文面向鸿蒙开发新手与普通工程师&#xff0c;详细讲解鸿蒙应用权限配置的完整实操流程&#xff0c;包含权限分类、配置文件声明、运行时申请、权限校验等…...

魔兽争霸3现代化修复指南:三步让经典游戏在Windows 10/11完美运行

魔兽争霸3现代化修复指南&#xff1a;三步让经典游戏在Windows 10/11完美运行 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸3在现代电…...

深入探索Java JPA中的CriteriaQuery

在Java持久化API(JPA)中,CriteriaQuery 提供了强大的查询功能,允许我们以面向对象的方式构建动态查询。今天我们将通过一个实际的例子,深入探讨如何使用CriteriaQuery来获取特定书籍的最新更新ID。 什么是CriteriaQuery? CriteriaQuery是JPA的一部分,它提供了一种类型…...