情況描述
四節點組成的proxmox VE超融合集羣,連續運行時間超過500天。每個節點除了系統盤而外,由四個單獨的2.4T 10000轉sas盤做ceph osd。
監控發現,其中一個節點的一塊硬盤處於down的狀態,嘗試修復未獲得成功,登錄系統,發現系統日誌有大量的IO錯誤,由此判斷,一定是硬盤物理損壞。再通知機房,請值班技術幫忙,現場查看硬盤指示燈狀態,有一塊硬盤常亮紅燈,確認故障與判斷一致。
故障修復計劃
由於是在線系統,服務不允許停止,這是最基本的要求。非常幸運的是,proxmox VE去中心化超融合集羣,在保證集羣得以維持的情況下,可以關掉任意一臺或者多臺物理服務器(別的超融合平臺有控制節點,這個控制節點不能關)。
沒有停機擔憂以後,做出如下安排:
- 把有故障的物理機上正在運行的虛擬機,加入到ha中;
- 停機換硬盤;
- 系統識別硬盤;
- 創建osd;
- 回遷部分虛擬機到恢復好的物理節點。
故障修復實施
一切準備妥當之後,風高月黑之夜派人潛入機房,待命。按照計劃,進行如下的步驟:
-
Web管理界面,把故障機運行着的虛擬機的ID號記錄下來,然後將其加入到proxmox VE的HA(此高可用與pve集羣不同,是建立在pve集羣之上的)。
- 關機,查看故障機運行的虛擬機是否全部自動漂移(對照記錄下來的虛擬機id號)。
- 通知機房待命的兄弟,拔出壞硬盤,身手敏捷地插上新硬盤。啓動系統,看系統是否識別硬盤,不幸的是,沒有被識別(其實也是意料之中),需要進入raid卡的控制控制界面,把這個新盤做成raid 0(單盤raid0 ,強烈建議不要搞raid 5),再啓動,能識別到這個硬盤,具體的指令就是df -h。
-
執行下列命令初始化新更換的磁盤:
wipefs -af /dev/sdc
wipefs -af /dev/sdc #sdc爲新更換的磁盤設備名稱
- Web管理界面創建osd。如果下拉列表提示“沒有未使用的磁盤”,可以重複第“4”步。
- 刷新頁面,查看新的osd是否已經被正確加入。同時也可以在命令執行如下指令進行同步驗證:
ceph osd tree
ceph osd tree
- 回遷部分虛擬機到恢復好物理節點。點鼠標就行,不再贅述。