考慮到Server備份或是遷移的問題,決定將目前的Server虛擬化,整個Server搬移到Proxmox VE上。Proxmox VE是一套開源的伺服器虛擬化平台,可以上面建立虛擬機或是將服務容器化,詳細介紹可以參考官網,安裝方式也可以看官網或是其他網站的教學,使用教學的部份我推Learn Linux TV的Proxmox VE教學,看完教學,對Proxmox VE差不多就能有基本的認識。
官網”Migration of servers to Proxmox VE“教學有列出幾種P2V、V2V的方法,這次我使用Clonezilla Live CDs的方式做P2V,這次使用的軟硬體.
- 實體主機 Morefine m6:目前的Linux server主機,系統是Ubuntu Server 22.04 LTS
- 實體主機 AMD PhenonII X4 945 , 16GB ram, 128 GB SSD + 3TB HHD:用來安裝Proxmax VE
- 實體主機 Mac Mini 2012 late:平常使用的電腦,用來下載ISO檔,製作開機碟
- 隨身碟:存放Proxmox VE ISO檔,安裝Proxmox VE用;之後用來製作Clonezilla開機碟
- 軟體Proxmox VE 7.2 ISO檔
- 軟體Clonezilla:官方網站
- 區域網路:這次使用網路,直接將實體機硬碟,由Clonezilla做成印象檔,傳送到虛擬機,區網速度建議1GAGA以上
P2V流程如下,由於是事後的記錄,有將流程調整一下,教學圖片則以Proxmox VE虛擬機操作,進行截圖,為了縮小篇幅,圖片只放小圖片(其實步驟很簡單);轉移的方式,會用網路,直接將實體機整個硬碟資料,以網路(需ssh登入)傳輸的方式進行傳輸
- 下載Proxmox VE,製作開機安裝碟,安裝Porxmox VE到AMD實體機
- 下載Clonezilla軟體,製作Clonezilla開機隨身碟
- Linux server主機以Clonzilla開機碟,並選擇Remete Source模式
到這邊就可以使用另一台電腦用Remote dest方式連人,進行磁碟的複製,過程如果有中斷,Remote Source這邊也必須重來;完戍磁碟複製,再回到這邊關機 - 啟動Proxmox VE,並上傳Clonezilla ISO檔到Proxmox VE
- Proxmox VE先建立虛擬機,HDD必須大於來源硬碟,並將CD rom指定到Clonezilla ISO,將開機順序設定CD rom第一順位,然後開機,進入Clonezilla,選擇Remote Dest模式,連線到Remote Source進行對烤
建立虛擬機
將ISO指定到Clonezilla ISO檔
System預設,不變更
Disks要大於等於來源硬碟總容量
其他設定依自身需求調整 - 虛擬機使用Clonezilla自源機磁碟複製整個磁碟,完成後,虛擬機關,再將來源機關機
- 在虛擬機Hardware新增EFI Disk,選擇format為OEMU format;將BIOS改為OMF(UEFI);.將CD/DVD改為Do not use any media;將Boot order改為SCSI0第一順位;然後即可啟動虛擬機,完成P2V的動怍
以下幾點是我自己在做 P2V時,所犯的一些錯誤以及其他該注意的事項
- 目的虛擬機磁碟小於來源磁碟.會在移轉到一半時發生錯誤,proxmox自行中斷,且只有提示Error
- 未新增EFI磁碟,虛擬機開機後,卡在找不到系統磁碟
- 移轉前沒修改實體機fstab檔,取消USB外接硬碟的自動掛載,但是仍可在移轉後開機時進cli修改
- 虛擬機首次開機時間較久,
- 虛擬機網路必須重新設定
另外一種P2V的方式,在你只有一部電腦主機,要將它虛擬化,或是沒有高速的區域網路。需要有顆比實體機系統碟大的磁碟(SSD最好,較快),做為備份碟,同樣使用Clonezilla,方法如下
- 實體機使用Clonezilla開機,選擇備份完整磁碟到另一磁碟,備份到我們準備的SSD,完成備份後關機
- 實體機重灌為Proxmox VE系統
- 或將備份磁碟裝到Proxmox VE主機上
- 同上面在Prixmox VE建立虛擬機,並且以Clonezilla開機,選擇自映像檔還原系統(選備份的磁碟)
- 還原完成後,同樣建立EFI磁碟,修改BIOS類型與開機順序,即完成
以上兩種方式,其實第二種方式會比較快,但是如果有10GB網路,磁碟又都是SSD,那或許第一種方式會較快。