1. 程式人生 > >VMWare 修改虛擬機的swap文件

VMWare 修改虛擬機的swap文件

vmware swap vmx

大早上我的一個墨爾本的同事就在折騰虛擬機,他試圖把一個5T的虛擬機的磁盤文件擴建到10T,這個本來是個很容易的事情,但是他試圖把datastore上的所有剩余空間都分配進去,然後造成的結果就是沒法開機了!

錯誤提示很明顯,空間不足,沒法創建swap文件。
技術分享圖片

看看剩余空間,還剩 11 g
技術分享圖片

比較尷尬的是這個datastore 對應的LUN是在Nimble上面創建的,這個LUN上還開啟了dedup和compress的功能,而且還有其他人在上面工作,因此暫時還沒法擴展LUN。為了立刻恢復VM,一個最快的方法就是把swap文件挪到其他的datastore上去。

方法如下:

  1. unregister這個VM。 右擊虛擬機 -> Remove from Inventory
  2. SSH 登錄任意一個主機,瀏覽到這個虛擬機對應的存儲位置
    技術分享圖片
  3. 備份一下當前的vmx文件
    copy XX.VMX xxx.VMXBACKUP
  4. 用vi 打開對應的vmx文件,刪除這一行,這個稍後重啟會自動配置
    sched.swap.derivedName = "/vmfs/volumes/5a835f1f-d6b358b5-eda7-9cdc716fde78/MELVP01/MELVP01-80ebfe9a.vswap
  5. 添加一行,註意替換volume下面對應的路徑,如果這個對應的路徑不存在,會報錯,如果需要創建新的目錄,自行創建
    sched.swap.dir = "/vmfs/volumes/swap_directory_name"
  6. 在web console裏面右擊vmx文件,重新註冊對應的虛擬機
  7. 重啟即可

VM恢復之後檢查一下新的vswap文件,大小是16G
技術分享圖片

VMWare 修改虛擬機的swap文件