Nginx学习(4)—— 高可用配置(keepalived实现Nginx的高可用)

K8s-Ingress高可用IP透传方案 简介: k8s暴露服务的方式有以下几种: Proxy + clusterIP NodePort LoadBalancer Ingress Proxy + ClusterIP 自定义代理 + 集群内存IP 有一些场景下,你得使用 Kubernetes 的 proxy 模式来访问你的服务: • 由于某些原因,你需要调试你的服务,或者需要直接通过笔记本电脑去访问... 阅读详情

高可用场景及解决方案

  • 一般高可用的服务端会都有备用服务,当某一个服务节点挂掉的时候就会有备用机顶上。这往往需要反向代理(Nginx)来将连接切换到可用的服务机器上。如下图:
    在这里插入图片描述
  • 那么,当反向代理服务Nginx挂掉之后,就没办法再对外提供服务了。所以,要想Nginx也高可用就需要有备用Nginx,每个Nginx服务上都有负责检测的keepalived:
    在这里插入图片描述
  • 那么问题来了,这里有两个Nginx服务用户接入的时候怎么知道应该接入哪个。这里就需要有一个公用IP,用户请求都打到这个公用IP上,然后两台Nginx去竞争这个公共IP,谁拿到就谁来转发请求。对于用户而言我只请求了这个公用IP,对于Nginx主备之间的竞争机制是无感知的。
    在这里插入图片描述

keepalived的安装

  • 直接安装
sudo apt install -y keepalived
  • 安装完成后默认在 /etc/下回创建 keepalived/ 文件夹,里面是空的。在这里创建keepalived.conf配置文件。
# keepalived.conf文件内容如下:

global_defs {
        router_id lb_111
}
vrrp_script chk_http_port { # 这个配置不是必须的,当有vrrp_script的时候,keepalived检测机制就是脚本的逻辑(可以通过它来检测Nginx的进程有没有挂掉),没有vrrp_script的时候,keepalived检测的是keepalived进程有没有挂掉。
    script "/etc/keepalived/a.sh"
    interval 2 #(检测脚本执行的间隔)
    weight 2
}
vrrp_instance VI_1 { # VI_1代表的是实例名称,主备机的必须相同
    state BACKUP # 表示当前机器是 MASTER 还是 BACKUP
    interface ens33 # 网卡名称,可以通过ifconfig查看
    virtual_router_id 51 # 主、备机的 virtual_router_id 必须相同
    priority 90 # 优先级,一般主机值较大,备份机值较小。用作主备竞选的时候
    advert_int 1	# 间隔检测的时间
    authentication {	# 分组,一个局域网络中可能有多个keepalived程序,对同一组中的keepalived的authentication配置要一样
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress { 
        192.168.44.200 # 公用虚拟地址
    }
}
  • 通过优先级来选举主备机。也就是priority字段。
k8s实现nginx-ingress通过统一IP访问服务无缝对接生产上游Nginx 阅读详情

相关推荐

Keepalived+Nginx实现高可用

架构 在 Keepalived + Nginx 高可用负载均衡架构中,keepalived 负责实现高可用。 Keepalived是以VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)协议为实现基础的,这个协议可以认为是实现了路由器高可用的协议,将多台提供相同功能的路由器组成一个路由器组。 原理:在整个Keepalived集群中会有一个MASTER和多个BACKUP,master节点上有一个对外提供服务的Virtual IP(VIP),并且MASTER会发组播

wz5891 5014

nginx详细配置,高可用

nginx详细配置,高可用

虫虫的博客 829

keepalived+Nginx实现高可用集群

1.素材与软件版本 软件版本: IDAE:2019.2.2 VMware:12.5.2 虚拟机镜像:CentOs7.3标准版 Xshell:Xshell6 Postman:7.33.1 Tomcat:8.5.41 Nginx:1.18.0稳定版 keepalived:2.0.18 项目素材链接放上,需要的朋友请自行下载。后台项目为foodie-dev,前端项目有两...

持之以恒,方得始终 5823

Nginx配置高可用(Nginx+keepalived)

在使用 Nginx 做反向代理或者负载均衡的时候,都是以 Nginx 为入口,如果 Nginx 宕机了,那么所有的服务都无法正常提供,影响非常严重。所有我们需要保证 nginx 高可用,就是配置备份机,前一个挂了,还有后一个。为了避免负载均衡服务器宕机造成严重影响,就需要建立一个备份机。主服务器和备份机上都运行高可用(High Availability)监控程序,通过传送诸如“I am alive”这样的信息来监控对方的运行状况。

sqlora的专栏 1374

linux集群 keepalived+nginx实现高可用集群

工作时 master会通过组播的形式向各个backup发送VRRP协议的数据包,当backup收不到master发来的VRRP数据包时,就会认为master宕机了。check模块负责健康检查;脚本返回1,表示nginx进程不存在,由于上面配置的weight为负数,priority 会减少,减少后的值 priority = priority+weight。●测试的时候,如果关闭nginx服务,虚拟ip还是在master上,那就是由于脚本的设计,关闭nginx后服务又自动起来了,可以把脚本这一行注释掉即可。

Gao0Yuu的博客 1980

Keepalived + Nginx实现高可用

IP规划VIPIPnginx端口默认主从80MASTER80BACKUP(1)配置IP(2)修改主机名(3)配置yum源(两台虚拟机相同)2. 安装nginx(1)首先安装依赖(两个节点同步)(2)安装nginx(3)解压nginx压缩包(4)进入nginx目录,编译并安装(两个节点同步)(5)修改nginx首页面IP地址(welcome to nginx改成本机IP,从节点同理,改为192.168.100.202)(6)启动nginx(两个节点同步)

m0_74825746的博客 998

nginx学习(5)Nginx 配置高可用集群(主从配置)

1、使用 ip a 查看主服务器的虚拟IP,进行访问。http://172.31.0.152/,成功访问!1、使用 ip a 查看从服务器的虚拟IP,进行访问。1.2第一台用默认的配置80端口,第二台用81端口。接着重启nginx,启动keepalived。接着重启nginx,启动keepalived。在两台服务器安装keepalived。1.1在两台服务器安装 nginx。

weixin_47139678的博客 2822

nginx利用keepalived实现高可用的配置

文章目录高可用性(High Availability)作用一、keepalived是什么?二、利用keepalived实现高可用的配置1.将两台服务器都配置负载均衡功能2.安装配置keepalived软件3.两台负载均衡器启动keepalived4.查看ip地址,看高可用是否搭建成功总结 高可用性(High Availability)作用 1、一个业务不能因为某个设备或者点出现问题而导致整个业务不能正常运转,不能有单点故障。 2、出现任何情况都可以运行—》利用高可用解决。 提示:以下是本篇文章正文内容,

qq_42778369的博客 1934

docker-部署Keepalived实现Nginx高可用

Keepalived是一款基于VRRP协议的高可用集群软件,通过虚拟IP(VIP)对外提供服务,能够实时监控集群中服务器的运行状态并自动进行故障隔离,这些服务器都启动着相同的服务,当主服务器发生故障时,会自动将虚拟IP漂移到备份服务器,从而实现业务高可用。

孟孟的博客 7166

keepalived+nginx实现高可用

如果我们有个网站,最开始只有一台服务器对用户提供服务,业务架构图如下:当业务量增大时,这台服务器支撑不了那么大的流量,随时会出现宕机的风险,于是优化为分布式架构,并使用了nginx做负载均衡:有了分布式架构+负载均衡,你的业务可用性越来越强,能承受住很高的流量,但是题出现了:所有流量都打在nginx代理上,你的nginx容易出现性能瓶颈,突然有一天,你的nginx撑不了那么大的流量,出现了宕机故障,那么用户发起的所有请求都到不了你的后端web服务器上,于是又优化为nginx做成分布式。

wyx的博客 1608

Windows Server安装Intel I219-V网卡驱动完整教程

在Windows Server系统上安装Intel I219-V网卡驱动的方法。

小白成长历程 5176

Keepalived + Nginx 实现高可用

Keepalived + Nginx 实现高可用

u014644574的博客 7772

GEE影像重采样实战:从10米到500米,如何用.reduceResolution和.reproject统一尺度?

本文详细介绍了在Google Earth Engine (GEE)平台中,如何利用`.reduceResolution()`和`.reproject()`方法解决多源遥感影像的尺度统一难题。通过实战案例,从哨兵2号10米分辨率影像聚合至MODIS 500米尺度,阐述了聚合规则选择、参数配置及效果验证的全流程,为环境监测、农业分析等领域的跨尺度数据融合提供了关键方法。

weixin_29223603的博客 84

Nginx+keepalived实现Nginx高可用

1)同时修改100、101nginx服务器上的index.html文件方便后续辨别访问的是那个节点下的nginx服务 如修改index.html内容welcome 100 Nginx即可。4)模拟主服务器上的nginx服务无法启动情况,关闭100服务器上的keepalived即可再次用虚拟ip访问指向地变成了101服务器下的Nginx服务。5)后续恢复主服务器下的keepalived再次使用虚拟ip访问则变回100服务器下的nginx服务。可以看到通过虚拟IP访问到了主服务器的nginx。

weixin_52823654的博客 1976

23、电器元件符号及封装大全(2025版本)

总计28类电器元件符号和封装。

XU157303764的博客 2655

科研绘图系列:基因突变瀑布图统计以及可视化

科研绘图系列:基因突变瀑布图统计以及可视化

专注生信领域 1653

NGINX+KEEPALIVED实现NGINX高可用集群

nginx作为一款企业级的代理服务器,在各种场景下均有广泛的使用,尤其是在前后端分离的项目中,nginx作为路由转发的功能是非常常用的。在一些流量比较大的项目中,为了应对高并发的场景,后端服务往往采用集群部署,这时候,就需要使用到nginx的负载均衡功能,从而避免应用节点的单节点故障问题。那么问题又来了,nginx的单点问题怎么解决?我们可以通过nginx+keepalived的高可用集群方案来避免nginx的单节点故障问题,从而大幅度提高nginx的稳定性和可靠性。

Wu 小杰的博客 2216

分布式爬虫架构实战:Scrapy+RabbitMQ+浏览器池,百万级数据抓取成本直降60%(附架构图+源码)

任务调度瓶颈:Redis 作为消息队列,不支持复杂任务优先级,高并发下容易消息堆积,且单点故障会导致全量任务丢失;资源浪费严重:每个爬虫节点每次爬取动态页面都启动新浏览器,启动耗时3-5秒,CPU 占用率高达80%+,单机最多同时跑3个浏览器;扩展性差:新增节点需要手动同步任务队列,节点忙闲不均,无法根据任务量动态分配资源。# 从settings读取RabbitMQ配置# 注册信号:爬虫关闭时关闭RabbitMQ连接"""启动时建立RabbitMQ连接"""

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1618

Keepalived+Nginx高可用配置指南

NginxNginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。它以其出色的性能、稳定性和丰富的功能而广受好评。Nginx可以作为静态网页服务器、反向代理服务器、负载均衡器等多种角色。KeepalivedKeepalived是一个基于VRRP协议的高可用性解决方案。它主要用于Linux系统,提供负载均衡和故障转移功能。当主服务器出现问题时,Keepalived会自动将流量转移到备份服务器上,确保服务不中断。

2401_83794506的博客 1981

YOLOv11 改进 - Mamba | 集成Mamba-YOLO(AAAI 2025),Mamba-YOLOv11-B 替换骨干,破解全局依赖建模难题,实现高效实时检测

本文介绍Mamba YOLO,为图片物体识别提供了“又快又准”的新方案。传统CNN架构运行快但难以捕捉远距离关联物体,Transformer架构精度高但计算量呈平方级增长,而SSM虽计算量为线性级且能抓全局关联,但用于图片识别时细节定位不准。为此,Mamba YOLO做了三项关键优化:引入ODMamba骨干网络,解决自注意力的二次复杂度问题,且无需预训练;设计ODMamba宏观结构确定最佳阶段比例和缩放大小;采用多分支结构的RG块建模通道维度,解决SSM在序列建模中的不足。在COCO数据集测试中,其小版本推

魔改工程师的博客 858

AUTOSAR进阶图解==>AUTOSAR_SWS_ADCDriver

本文深入解析了AUTOSAR ADC Driver的架构设计和技术实现。主要内容包括:1)ADC Driver在AUTOSAR分层架构中的定位及核心功能;2)详细的模块架构设计,涵盖初始化管理、组转换管理、优先级处理等核心子组件;3)全面的配置模型说明,包括主配置类、通用配置、通道配置等关键数据结构;4)状态机机制和操作序列分析。通过分层设计和标准化接口,ADC Driver实现了硬件抽象和软件解耦,提供了良好的可移植性和可维护性。

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 786

keepalived实现nginx高可用

Keepalived 软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。(LVS,不能做健康检查,以前用来管理lvs,现在用来做高可用)Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件。Keepalived软件主要是通过VRRP协议实现高可用功能的。.........

mushuangpanny的博客 2173

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

keepalived+Nginx实现高可用场景

在实际的生产项目中,我们对服务要实现高可用,这种效果可以用nginx实现; 但是nginx只有一台,若nginx的服务器宕了,高可用也就无法实现; 所以可以通过keepalived实现nginx的高可用。 本文通过虚拟机模拟实现该场景: 服务器A安装nginx和keepalived实现服务的主备切换。 服务器B安装nginx和keepalived实现服务的主备切换。 服务器C和D分别为应用服务。

大宇进阶之路的博客 3942

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

借助keepalived配置高可用nginx集群

是一种高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3代理服务器。Nginx因其轻量级、资源占用少、并发性能强等特点,广泛应用于负载均衡、静态内容服务和反向代理等场景,尤其在高并发环境下表现出色。是一个用来实现高可用性服务的工具,它通过VRRP(虚拟路由冗余协议)来管理虚拟IP地址,确保主机发生故障时,VIP自动漂移到备用节点,保证服务的连续性。Keepalived常与Nginx搭配使用,实现Nginx服务器的高可用集群配置。

lldhsds的专栏 1328

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: Nginx学习(3)—— 反向代理、负载均衡、动静分离、URLRewrite、防盗链
下一篇: Nginx学习(5)—— 基本结构(源码)
丶星下灯
博客等级 码龄6年 125粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值