Cassandra 資料庫如何移除失效的節點服務

Cassandra 資料庫如何移除失效的節點服務(Windows Server 適用)

Apache Cassandra 是一套開源分散式 NoSQL 資料庫系統。
結合 Google Big Table 與 Amazon DynamoDB 的資料模型與分散式架構所設計。
由於 Cassandra 具有良好的可延伸性和效能,被 Apple, Comcast, Instagram, Spotify, eBay, Netflix 等知名網站所採用,成為了一種流行的分散式結構化資料儲存方案。

我原本架了 2 台伺服器在跑 Cassandra 資料庫,簡稱伺服器 A 與 B,它們彼此在相同的叢集裡面。
其中伺服器 A 因為要升級 Windows Server 2019 所以就直接關機重灌了。
當我回到伺服器 B 的時候,所運行的 Cassandra 資料庫就出現了錯誤,找不到伺服器 A 的 Cassnadra 服務。

Cassandra

畫面中每隔幾秒就出現了找不到節點服務的錯誤。

這時候我打算先將伺服器 B 的 Cassandra 移除失效的節點。
等待伺服器 A 重灌完成之後,我再將節點附加回來。

接下來我將會說明如何在伺服器 B 移除 Cassandra 失效的節點。

檢查服務狀態

切換到 Cassandra bin 目錄

找到 Cassandra 運行的目錄之下的 bin 目錄。

將目錄複製下來。
打開「CMD」命令提示字元。
切換 cmd 的目錄到 Cassandra 目錄之下
CMD 指令

查詢節點狀態指令

輸入 CMD 指令查詢節點狀態

Cassandra 狀態

會看到我的節點上面有 2 個 Cassandra 服務,其中第 1 個節點狀態為 DN,第 2 個節點狀態為 UN。
DN 表示停止,UN 表示運行中。

節點狀態說明

節點狀態由 2 種狀態組成。
第 1 個字表示節點是否正常運行。
字元意義為 U=運行、D=停止。
第 2 個字表示與叢集有關的節點狀態。
字元意義為 N=正常、L=離開、J=加入、M=移動。

複製失效節點 Host ID

第 1 台已失效的節點 Host ID 是 941f7000-e158……. (注意ID 太長會換行)
此 Host ID 先複製下來等等會用到。

移除節點指令

使用移除節點指令並加上失效節點 Host ID。

Cassandra

執行後就可以移除失效的節點。

移除節點訊息

當移除之後,在原有的運行畫面上也會看到移除訊息。

重新查詢節點狀態

再次輸入指令

會看到目前所有的 Cassandra 節點只剩一台了。

相關學習文章

如果你在學習上有不懂的地方,可以參考線上家教服務

如果你喜歡這篇文章,請幫我在上方綠色的拍手圖示按 5 下
使用 Google 或 FB 免費登入,你的鼓勵支持我繼續創作,寫出好的文章

[加入社團一起討論] 或是 [追蹤 Instagram]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *