什么是 CSSD?

文章目錄

  • 一、什么是 CSSD?
    • CSSD 的職責
  • 二、CSSD 是如何工作的?
  • 三、CSSD 為什么會重啟節點?
    • 情況一:網絡和存儲都斷聯(失聯)
    • 情況二:收到其他節點對自己的踢出通知(外部 fencing)
  • 四、重啟機制由哪些參數控制?
  • 類比理解:CSSD 就像是“集群中的智能保安”
  • 總結


一、什么是 CSSD?

CSSD 全稱是:Cluster Synchronization Services Daemon

是 Oracle Clusterware 中最核心、最關鍵的后臺進程之一,運行在每個 Oracle RAC 節點上。


CSSD 的職責

作用說明
節點監控監聽其他節點是否在線(心跳機制)
狀態判斷判斷自己是否還能“安全地存在于集群中”
超時判定檢查 Voting Disk 是否可寫、是否超過超時
自我保護在特定條件下主動讓節點重啟,避免腦裂

可以說:

CSSD 就是集群中 判斷節點生死 的大腦。


二、CSSD 是如何工作的?

CSSD 會每秒進行如下操作:

  1. 通過網絡心跳(Interconnect)與其他節點通信;
  2. 訪問 Voting Disk,寫入“我還活著”,讀取其他節點狀態;
  3. 判斷自己是否被“孤立”(比如無法訪問 Voting Disk + 收不到其他節點的心跳);
  4. 一旦失聯,會觸發“節點重啟保護機制”:
    • 防止兩個分區各自以為自己是“主集群”
    • 避免“腦裂”(Split Brain)

三、CSSD 為什么會重啟節點?

我們重點看這個問題。CSSD 會觸發“重啟節點”操作,通常有兩種場景:


情況一:網絡和存儲都斷聯(失聯)

條件描述
網絡心跳中斷CSSD 無法通過私網感知其他節點
Voting Disk 無法訪問可能是存儲故障或路徑異常
觸發機制CSSD 判斷“我可能是唯一節點,也可能不是”
動作主動重啟當前節點,讓集群重新決定誰是“主”

這是一種 自殺保護機制(Suicide Fencing),是 RAC 保證一致性的重要設計。


情況二:收到其他節點對自己的踢出通知(外部 fencing)

如果 CSSD 正常,但交換機或集群其他節點判斷你不再可信(例如你已經被交換機 fenced 掉):

  • 其他節點把你踢出;
  • 你再嘗試訪問 Voting Disk 失敗;
  • CSSD 檢測到狀態不一致 → 重啟自己以退出集群

四、重啟機制由哪些參數控制?

以下參數控制 CSSD 何時“放棄自己”:

參數名說明默認值
misscount心跳丟失多久認為節點可能失聯30 秒
reboottime判斷失敗后等待多久執行重啟3 秒
disk timeoutVoting Disk I/O 超時時間200 毫秒

類比理解:CSSD 就像是“集群中的智能保安”

它一直在監聽:

  • “我是不是還能和大家說話?”
  • “我是不是還能在共享筆記本上簽字(Voting Disk)?”
  • “別人還在嗎?我是不是一個人了?”

一旦它發現自己可能“誤入另一個平行宇宙”,就會立刻喊一句“我走了”,然后關機自保


總結

CSSD 是 Oracle RAC 中專門用來判斷節點存活狀態的核心進程,一旦檢測到自己失去與其他節點通信或無法訪問 Voting Disk,就會主動觸發節點重啟,以保證集群一致性、防止腦裂。

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

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

相關文章

arm64平臺下linux訪問寄存器

通用寄存器 示例:讀取寄存器值 // 用戶態程序或內核代碼中均可使用 unsigned long reg_value; asm volatile ("mov %0, x10" // 將X10的值保存到reg_value變量: "r" (reg_value) ); printk("X10 0x%lx\n", reg_value);示例&…

超級好用的小軟件,連接電腦和手機。

將手機變成電腦攝像頭的高效工具Iriun Webcam是一款多平臺軟件,能夠將手機攝像頭變成電腦的攝像頭,通過簡單的設置即可實現視頻會議、直播、錄制等功能。它支持Windows、Mac和Linux系統,同時兼容iOS和Android手機,操作簡單&#x…

Mysql MIC高可用集群搭建

1、介紹 MySQL InnoDB Cluster(MIC)是基于 MySQL Group Replication(MGR)的高可用性解決方案,結合 MySQL Shell 和 MySQL Router,提供自動故障轉移和讀寫分離功能,非常適合生產環境 2、部署 …

PERL開發環境搭建>>Windows,Linux,Mac OS

特點 簡單 快速 perl解釋器直接對源代碼程序解釋執行,是一個解釋性的語言, 不需要編譯器和鏈接器來運行代碼>>速度快 靈活 借鑒了C/C, Basic, Pascal, awk, sed等多種語言, 定位于實用性語言,既具備了腳本語言的所有功能,也添加了高級語言功能 開源.免費 沒有&qu…

ubuntu改用戶權限

在 Linux 系統中,賦予普通用戶 sudo 權限可以讓他們執行一些需要 root 權限的命令,而不需要頻繁切換到 root 用戶。以下是具體步驟: 創建用戶(useradd和adduser兩種方式) 首先,需要創建一個新的用戶。可以使用 adduser 或 usera…

藍橋杯 web 學海無涯(axios、ecahrts)版本二

答案: // TODO: 待補充代碼// 初始化圖表的數據,設置周視圖的初始數據 option.series[0].data [180, 274, 253, 324, 277, 240, 332, 378, 101]; // 周數據(每周的總學習時長) option.xAxis.data ["2月第1周", "…

Java 大視界 -- Java 大數據在智慧文旅虛擬場景構建與沉浸式體驗增強中的技術支撐(168)

💖親愛的朋友們,熱烈歡迎來到 青云交的博客!能與諸位在此相逢,我倍感榮幸。在這飛速更迭的時代,我們都渴望一方心靈凈土,而 我的博客 正是這樣溫暖的所在。這里為你呈上趣味與實用兼具的知識,也…

API vs 網頁抓取:獲取數據的最佳方式

引言 在當今數字化時代,對于企業、研究人員以及開發人員而言,獲取準確且及時的數據是大多數項目成功的關鍵因素。目前,收集網頁數據主要有兩種常用方法,即使用 API(應用程序接口)和網頁抓取。然而&#xf…

車載以太網網絡測試-25【SOME/IP-報文格式-1】

目錄 1 摘要2 SOME/IP-報文格式2.1 **Service ID / 16 bits**2.2 **Method ID / Event ID / 16 bits**2.3 **Length / 32 bits**2.4 **Client ID / 16 bits**2.5 Session ID / 16 bits2.6 Protocol Version / 8 bits2.7 Interface Version / 8 bits2.8 Message Type / 8 bits2.…

Python數據可視化-第3章-圖表輔助元素的定制

環境 開發工具 VSCode庫的版本 numpy1.26.4 matplotlib3.10.1 ipympl0.9.7教材 本書為《Python數據可視化》一書的配套內容,本章為第3章-圖表輔助元素的定制 本章主要介紹了圖表輔助元素的定制,包括認識常用的輔助元素、設置坐標軸的標簽、設置刻度范…

小程序30-wxml語法-聲明和綁定數據

小程序頁面中使用的數據均需要在Page() 方法的 data對象中進行聲明定義 在將數據聲明好以后,在 WXML 使用 Mustache 語法 ( 雙大括號{{ }} ) 將變量包起來,從而將數據綁定 在 {{ }} 內部可以做一些簡單的運算,支持如下幾種方式: 算數運算三…

ubuntu開啟黑屏現象解決

文章目錄 前言一、問題描述二、解決方案1. 檢查顯卡驅動解決步驟: 2. 修復 GRUB 配置解決步驟: 3. 使用恢復模式解決步驟: 三、驗證與總結 前言 在使用 Ubuntu 操作系統時,一些用戶可能會遇到開機后屏幕黑屏的現象。這種問題可能…

Modbus TCP轉Profibus DP網關接防撞雷達與PLC通訊

Modbus TCP轉Profibus DP網關接防撞雷達與PLC通訊 在工業自動化領域,通信協議的多樣性既是技術進步的體現,也給系統集成帶來了挑戰。Modbus TCP和Profibus DP是兩種廣泛應用于不同場景下的通信標準,它們各有優勢但也存在著互操作性的需求。本…

分布式鎖方案-Redisson

分布式鎖:Redisson還實現了Redis文檔中提到像分布式鎖Lock這樣的更高階應用場景。事實上Redisson并沒有不止步于此,在分布式鎖的基礎上還提供了聯鎖(MultiLock),讀寫鎖(ReadWriteLock)&#xff…

【AI插件開發】Notepad++ AI插件開發實踐:從Dock窗口集成到功能菜單實現

一、項目背景與技術選型 在上篇文章實現"選中即問AI"功能的基礎上,本文重點解決AI對話窗口的集成與核心功能菜單的開發。通過Notepad插件體系,我們將實現以下功能矩陣: AI交互系統:支持自然語言提問與任務執行代碼智能…

ControlNet-Tile詳解

一、模型功能與應用 1. 模型功能 ControlNet-Tile模型的主要功能是圖像的細節增強和質量提升。它通過以下幾個步驟實現這一目標: 語義分割:模型首先對輸入的圖像進行語義分割,識別出圖像中不同的區域和對象。這一步是為了讓模型理解圖像的內…

英飛凌高信噪比MEMS麥克風驅動人工智能交互

導言 在英飛凌,我們一直堅信卓越的音頻解決方案對于提升消費類設備的用戶體驗至關重要。我們堅定不移地致力于創新,在主動降噪、語音透傳、錄音室錄音、音頻變焦和其他相關技術方面取得了顯著進步,對此我們深感自豪。作為MEMS麥克風的領先供…

【Azure】如何使用 Docker CLI 和 Compose 將容器部署到 Azure ACI

推薦超級課程: 本地離線DeepSeek AI方案部署實戰教程【完全版】Docker快速入門到精通Kubernetes入門到大師通關課AWS云服務快速入門實戰在云中運行容器可能既困難又令人困惑。有太多選項可供選擇,而且還需要理解從虛擬網絡到安全性的不同云服務的工作方式。更不用說編排器了。…

結構化剪枝(Structured Pruning)與動態蒸餾(Dynamic Distillation)

結構化剪枝(Structured Pruning)技術詳解 核心原理 結構化剪枝通過模塊級(如層、通道、塊)而非單個權重的方式去除冗余參數,保留關鍵子網絡。其優勢在于: 硬件友好性:生成規則稀疏模式&#x…

linux shell 刪除空行(remove empty lines)

命令行 grep -v ^$ file sed /^$/d file 或 sed -n /./p file awk /./ {print} file 或 awk {if($0!" ") print} tr -s "n"vim交互 %s/^n//g