我需要進行從舊硬體到新硬體的主機到主機遷移。具體來說,從HP BL460G7到HP BL460G8。新舊伺服器都有 2 個 600GB 2.5 吋驅動器,並配置為 RAID1。
有四台伺服器需要遷移,最小的邏輯磁碟區總共分配了 120GB,最大的邏輯磁碟區分配了 510GB。三台伺服器運行 RHEL5,一台伺服器運行 RHEL6。
我一直在絞盡腦汁地思考如何在給定的時間範圍內完成此操作而不破壞作業系統和關鍵數據。
我唯一的想法是:
- 從舊伺服器中刪除一個磁碟機(伺服器已開啟)
- 從新伺服器中刪除兩個磁碟機(伺服器已關閉)
- 從托盤中取出 G7 驅動器並放在一邊
- 從托盤中取出 G8 驅動器並將其安裝到 G7 托盤中
- 將 G7 盒中的 G8 磁碟機安裝到舊伺服器中
- 等待 RAID 控制器重建 RAID1 陣列
- 完成後關閉舊伺服器
- 卸下 G7 盒中的 G8 驅動器
- 將G8驅動器安裝在G8盒中並插入G8(安裝單驅動器)
- 啟動G8伺服器
- 等待作業系統啟動
- 當作業系統啟動時插入剩餘的驅動器
- 等待 RAID 陣列重建
這聽起來合理嗎?
編輯:RHEL5 是 RHEL5.10,RHEL6 是 RHEL6.6
我還應該注意到,其中兩個系統是熱四節點叢集的一部分,該叢集幾乎不斷複製應用程式「事件」(它是關鍵基礎設施系統的一部分)。我們有備份,但我們只在整個系統故障時使用。
先前的測試顯示系統之間的最大「dd」約為 50MBps,這太慢了。
編輯:我打算依靠 kudzu 來拾取並處理硬體更改。
答案1
應該注意的是,根據發行版的不同,可能還需要其他步驟。最值得注意的是驅動程式(感謝您指出@ewwhite)。
- 從 livecd/usb 啟動新伺服器。
- 在新磁碟機上準備分割區和引導區塊。
- 根據設置,這可以透過複製 MBR/bootblock 來完成。
- 製作檔案系統。
- 從舊伺服器到新伺服器進行 rsync。
- 您可能想再次執行此操作,看看後續 rsync 需要多長時間 - 如果不到 30 分鐘,請繼續。
- 這個時候,你可以實際嘗試一下,如果新系統啟動的話。請注意不要引起任何 IP(或其他)衝突。
- 關閉所有寫入檔案系統的服務
- 最好重新啟動到 livecd/usb
- 再次將舊伺服器的資料同步到新伺服器
- 重啟新伺服器並使用
透過這種方式,您仍然可以保持原始伺服器完好無損,因此如果出現任何問題,可以輕鬆恢復。但它需要一些知識(grub/rsync/partitions),所以我建議在上線之前提前做一些準備工作和測試。
答案2
兩件事情:
- 我會重新建構並同步資料。
- 您的停機時間分配/視窗似乎太短。 30 分鐘在特定情況下可行,但不應你根據實際完成工作所需的時間來規定實際的停機時間要求?
數據量取決於每個伺服器中包含的數據攪拌和您的設定方案,在新的 Gen8 ProLiant 上安裝必要的作業系統並在可以停頓資料的位置同步設定和其他資料部分可能是有意義的。
也許可以製作一個種子副本,並根據在後續 rsync 中獲取文件更改所需的時間來得出您的停機時間要求。如果您需要加速傳輸過程或有大量小文件,可以使用可以幫助解決這個問題的技術。
我經常進行這些類型的轉換。對於類似的 Linux 安裝,您幾乎只需要一個準確的軟體包清單(可以透過 Yum 或 RPM 輕鬆取得)、設定目錄(例如/etc
)和資料分割區。如果您還沒有 kickstart 設定係統,您可以利用該/root/anaconda-ks.cfg
檔案來了解 G7 系統的建置方式。
要回答您關於簡單移動磁碟的問題,根據您提到的特定 RHEL 版本,這絕對是可能的。您可以移動磁碟/托盤,並且 HP Smart Array 元資料在系統中的 P410 和 P420 控制器之間相容。但是,如果不先完全更新新系統中的磁碟機和組件的韌體,我不會這樣做。
答案3
如果您以前的作業系統版本能夠處理新硬體(主要是 RAID 控制器),您可以嘗試克隆齊拉。
要檢查是否可以從一個硬體移動到另一個硬件,您可以使用 dd 將所有資料從舊伺服器傳遞到新伺服器,並執行一些技巧。
使用即時發行版啟動新伺服器,例如系統救援光碟,使用 IP 位址和 dd 指令進行配置,如下所示:
nc -l 8000 | dd of=/dev/sda
在當前伺服器上執行
dd if=/dev/sda | nc ${newserverip} 8000
這會將伺服器的 /dev/sda 的原始副本複製到新伺服器 /dev/sda。這樣,您就可以在原始伺服器上執行測試,而無需停機,風險幾乎為零。
答案4
專案經理拒絕了我要求延長停電時間的請求。
問題中概述的建議程序在測試中效果良好。停機時間不到 20 分鐘。我使用 hpacucli 實用程式來監控 G7 和 Gen8 的進度,它對此非常有用。
我還沒有憤怒地這樣做,但如上所述,這在 BL460G7 到 BL460 Gen8 上的 RHEL 5.10 測試中效果很好。
我沒有更新韌體。
G7 中的初始 RAID1 重新同步花了一個多小時。 Gen8 中的重新同步花了不到 50 分鐘。這讓我很擔心,但我沒能發現任何問題。
再次感謝所有有用的意見和建議。