Kafka 副本同步異常與 ISR 收縮故障排查實錄

背景

某高流量 Kafka 集群(原 10G 網卡)在切中心時頻繁觸發帶寬報警,擴容至 25G 網卡后出現副本同步異常:

  • 操作流程:停機→升級網卡→重啟→觸發分區同步→切換首選 Leader
  • 現象:
    • 寫入流量上升后,ISR(同步副本集合)頻繁收縮
    • 部分分區退化為單副本
  • 根因:新舊節點 message.max.bytes 配置不一致導致同步失敗

關鍵問題分析

  • ISR 收縮本質:Broker 節點被踢出 ISR,意味著副本同步落后,無法跟上 Leader 的數據進度。
  • 排查路徑:重點關注同步線程(如 ReplicaFetcherThread)相關日志,尋找報錯原因。
    • 典型報錯:RecordTooLargeException —— Follower 拉取 Leader 消息時,批次大小超過自身配置上限。
      在這里插入圖片描述
      在這里插入圖片描述
      在這里插入圖片描述

根因復盤

  • 配置不一致導致同步失敗
    • 新節點升級后采用新配置(如 message.max.bytes=10485760,即10MB)
    • 舊節點遺留舊配置(如 message.max.bytes=3145728,即3MB)
  • 同步失敗鏈路
    • 新 Leader 節點可接收大消息
    • 舊 Follower 節點拉取大消息時超限,消費線程異常斷開
    • Follower 被 Leader 剔除出 ISR
    • 多數 Follower 失聯,分區退化為單副本

最佳實踐建議

  • 運維變更前后,務必全量核查關鍵 Kafka 配置參數一致性
  • 建議用自動化腳本統一檢查和修復配置,降低人工疏漏
  • 變更后持續監控ISR、分區健康、Lag等指標
  • 建議建立配置審計機制,每次升級或擴容都要 review 配置一致性

總結

Kafka 副本同步高度依賴于核心參數的一致性,message.max.bytes 等配置如不統一,極易引發副本同步失敗、ISR 收縮和分區退化等高危故障。
務必在運維升級、擴容、遷移等操作前后,統一配置并做好監控。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/94983.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/94983.shtml
英文地址,請注明出處:http://en.pswp.cn/web/94983.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

頂點 (VS)vs 片段(FS):OpenGL紋理滾動著色器的性能博弈與設計哲學

一個微妙的選擇,影響整個應用性能表現在實時圖形渲染中,實現紋理滾動效果是一種常見需求。但當我們在頂點著色器和片段著色器之間做出不同實現選擇時,會對性能產生顯著影響。今天,我們將深入探討這兩種實現的差異,幫助…

基于博客系統的自動化測試項目

目錄 一、引言 二、項目背景 三、項目功能 1)初始登錄界面 2)博客首頁 3)博客詳情頁 4)博客編輯頁 四、測試工具 1)基礎操作系統環境 2)瀏覽器環境 3)開發與測試工具環境 4&#xf…

R 語言 eulerr 包繪制韋恩圖:比例精準

在數據可視化中,韋恩圖是展示多組數據交集關系的常用工具,尤其在生物信息(如基因差異表達分析)、統計分析等領域高頻使用。但傳統繪圖工具常面臨橢圓比例失衡、數值顯示混亂、樣式調整繁瑣等問題,而 R 語言的eulerr包恰好能解決這些痛點 —— 它支持按數據比例自動適配圖形…

CRYPT32!CryptMsgUpdate函數分析和asn.1 editor nt5inf.cat 的總覽信息

0000: 30 83 09 69 2f ; SEQUENCE (9692f Bytes) 0005: 06 09 ; OBJECT_IDENTIFIER (9 Bytes) 0007: | 2a 86 48 86 f7 0d 01 07 02| ; "PKCS 7 已簽名 (1.2.840.113549.1.7.2)" 0010: …

04數據庫約束實戰:從入門到精通

感謝黑馬程序員提供的免費課程約束概念:約束是作用于表中字段上的規則,用于限制存儲在表中的數據。目的:保證數據庫中數據的正確、有效性和完整性。常見的幾種約束:注意:約束是作用于表中字段上的,可以在創…

WPF+IOC學習記錄

最近在學WPF,上一篇文章記錄了WPF的MVVM自己實現和用框架的區別(WPFMVVM入門學習),接下這篇文章記錄一下在WPF中使用IOC,這里演示用的是微軟官方的DependencyInjection,也可以用其他的第三方框架。 項目源…

從零開始學習單片機16

STM32單片機STM32和51單片機的區別51單片機的外設資源少,寄存器少,運行速度慢,價格便宜,容易上手STM32單片機的外設資源更多,寄存器多,運行速度相對快,價格相對貴,上手相對較難STM32…

[特殊字符]論一個 bug 如何經過千難萬險占領線上

謹以此文獻給每一個曾與 Bug 搏斗、最終卻目睹它成功上線的你 本文旨在揭露 Bug 的狡猾,絕非鼓勵以下行為。若你照做,后果自負🐶每一個在線上逍遙法外的 Bug,都不是偶然。它是一場精心策劃的奇跡,是開發、聯調、測試、…

Day12-python文件操作(二)

目錄前言一、Excel文檔操作1.1、xlrd和xlwt庫1.2、openpyxl庫1.3、pandas庫總結前言 今天繼續學習文件操作相關內容,為后續辦公自動化打基礎。 一、Excel文檔操作 1.1、xlrd和xlwt庫 如果要兼容 Excel 2007 以前的版本,也就是xls格式的 Excel 文件&am…

CollageIt:簡單易用的照片拼貼工具

在數字圖像處理領域,制作照片拼貼是一種常見的創意表達方式。CollageIt作為一款體積小巧、簡單易用的照片拼貼工具,能夠幫助用戶輕松將多張圖片拼合成一張精美的拼貼畫。它不僅操作簡單,還支持多種圖片格式,確保用戶可以快速制作出…

Java全棧工程師的實戰面試:從基礎到微服務的全面解析

Java全棧工程師的實戰面試:從基礎到微服務的全面解析 一、開場介紹 面試官:你好,歡迎來到我們公司。我是今天的面試官,負責技術部分的評估。請先簡單介紹一下你自己。 應聘者:您好,我叫李明,25歲…

驅動開發系列68 - GLSL編譯器實現 - 算數指令折疊及訪存優化

一 : 指令合并概述 指令折疊的意思,原本一個語句會產生多條指令,通過折疊,可以刪除一些中間指令,減少指令數量,并且能夠減少寄存器占用。提高執行效率。 舉一個例子: MUL A, B, 4 ; A = B * 4MAD D, A, 2, F ; D = A * 2 + F MAD G, A, 3, I ; G …

深入解析Qt節點編輯器框架:高級特性與性能優化(四)

文章目錄一、高級交互特性:超越基礎操作的用戶體驗提升1. 節點組管理:折疊與嵌套的層級組織2. 智能連接線路由:避免交叉與視覺混亂3. 批量操作與快捷鍵:提升操作效率二、性能優化:應對大規模節點場景的核心策略1. 圖形…

Python 入門操作指南

引言 Python 是一種簡單易學卻功能強大的編程語言,廣泛應用于數據分析、人工智能、Web 開發等領域。對于初學者而言,掌握 Python 的入門操作是邁向編程世界的第一步。本文將以總分總的結構,系統介紹 Python 的安裝方法、推薦的開發工具、第一個 Python 程序示例,以及包管理…

ZooKeeper 安裝配置

前言 有時會需要安裝開源的大數據集群進行測評或者驗證問題,已經裝過很多遍了,所以想系統的總結整理一下各個組件的安裝部署,包括 Zookeeper、Hadoop、Hive、Spark 等。 版本 Zookeeper 3.5.6 3.8.4 3.9.3 初始化 包括主機名修改、SSH互…

考研數據結構Part3——二叉樹知識點總結

一、前言 二叉樹是一種特殊的樹形結構,每個節點最多有兩個子節點,分別稱為左子樹和右子樹。其特點是子樹有嚴格的左右之分,順序不可顛倒。從歷年真題來看,二叉樹的鏈式存儲實現、遍歷算法、屬性統計是高頻考點,常以選擇…

網絡與信息安全有哪些崗位:(12)威脅分析師

今天是七夕節,首先祝大家早遇良緣、有情人終成眷屬!!七夕節快樂、工作順利、學業有成~~ 想知道網絡與信息安全領域有哪些具體崗位嗎?此前我們已陸續介紹網絡安全工程師、滲透測試工程師、SOC 總監、SOC 工具運維工程師等核心角色&…

mysql雙機熱備(主主模式)

一、環境準備 主機名ip操作系統備注node01192.168.48.91CentOS Linux 7 (Core)mysql主庫node01192.168.48.92CentOS Linux 7 (Core)mysql主庫192.168.48.90漂移IP(VIP) centos7鏡像下載地址: https://mirrors.aliyun.com/centos/7.9.2009/…

微積分 | 積分代換

注:本文為 “微積分 | 積分代換法 ” 相關合輯。 英文引文,機翻未校, 中文引文,略作重排。 未去重,如有內容異常,請看原文。 Integration by Substitution 積分代換法 May 23, 2018 / By Dave Peterson …

循環高級(1)

1.無限循環2.break3.coutinue4.練習1 打印矩形&#xff08;循環嵌套&#xff09;5.練習2 打印直角三角形#include<stdio.h> int main() {/*打印一個5行5列的三角形效果如下&#xff1a;***** ***** ***** ***** *****…