如何在 Linux 叢集中實作 SBD STONITH

Riepilogo: 本文的目的是解釋基於存儲的死亡 (SBD) STONITH 是如何工作的,以及如何在多路徑環境中實現它。

Questo articolo si applica a Questo articolo non si applica a Questo articolo non è legato a un prodotto specifico. Non tutte le versioni del prodotto sono identificate in questo articolo.

Istruzioni

石碑:“朝頭部射擊另一個節點”或“向頭部射擊有問題的節點”

STONITH:“向其他成員或機器的頭部射擊”STONITH

是一種在計算機集群中擊劍的技術。遮罩是隔離故障節點,使其不會導致計算機群集中斷。

在 SBD STONITH 中,Linux 群集中的節點使用檢測信號機制使彼此保持更新。如果群集中的節點出現問題,則會將該節點的毒丸寫入共用存儲設備。節點必須吃掉(接受)毒丸並自行終止。之後,可以安全地將文件系統資源故障轉移到 Linux 群集中的另一個節點。

在 DELL 環境中,所有磁碟都是多重路徑的。這包括 SBD STONITH 裝置。因此,在創建 SBD STONITH 設備時,必須調整 SBD 使用的超時,因為以下內容可能會導致延遲;多路徑 I/O (MPIO) 路徑中斷偵測、PowerPath 路徑中斷偵測或 NMP 路徑路徑中斷偵測。如果您有多個設備,則單個設備的暫時超時不會對 SBD 產生負面影響。但是,如果它們都通過相同的FC交換機,則必須執行此操作。監視程式逾時是偵測路徑故障並切換到其他路徑所需的時間。之後 msgwait 超時,假定消息已傳遞到節點。對於多路徑,這應該是多路徑檢測路徑故障並切換到下一個路徑所需的時間,加上兩個環路訪問 SBD 設備之間的時間(兩個環路之間的預設間隔為 1 秒)。

監視程式逾時必須短於 msgwait 逾時 - 該值的一半是不錯的值。

預設值 msgwait 逾時為 10 秒。如果 msgwait 未調整逾時,這個時間太短,在存取 SBD 裝置時,無法為路徑上發生問題的主機提供時間,以偵測路徑損壞並容錯移轉至另一條路徑。如果主機無法以足夠快的速度更新監視程式計時器, 則會向主機寫入毒丸。這會導致主機在可以再次訪問 SBD 設備時自殺, 這不是 STONITH 機制的目的。

您可以通過添加以下內容來設定這些值 -4 msgwait -1 watchdogtimeout 到創建命令。
以下是使用 NMP 的 ESX 環境的範例:
/usr/sbin/sbd -d /dev/sbd -4 40 -1 20 create
以下是使用 PowerPath 或 MPIO 的 Linux 環境範例 (在 devloss tmo 設為 30):
/usr/sbin/sbd -d /dev/sbd -4 72 -1 36 create
(所有超時均以秒為單位。

Informazioni aggiuntive

此問題可能會導致容錯移轉的嚴重延遲。如需 SBD STONITH 的詳細資訊,請查看 SUSE 儲存保護和 SBD外部連結

Prodotti interessati

PowerPath/VE for VMware

Prodotti

PowerPath/VE for VMware
Proprietà dell'articolo
Numero articolo: 000022740
Tipo di articolo: How To
Ultima modifica: 22 ago 2024
Versione:  6
Trova risposta alle tue domande dagli altri utenti Dell
Support Services
Verifica che il dispositivo sia coperto dai Servizi di supporto.