O03五、Nova Suspend / Rescue 操做詳解

 
Suspend / Resume
 
有時候須要長時間暫停 instance , 能夠經過 Suspend 操做將instance 的狀態保存到宿主機的磁盤上。須要恢復的時候,執行 Resume操做從磁盤讀回 instance 的狀態,而後繼續運行。
 
這裏對 Suspend 和 Pause 作個對比:
 
相同點:都是暫停 instance 的運行,保存狀態,須要恢復的時候執行 resume 恢復以前狀態。
 
不一樣點:
 
    一、Suspend 將 instance 狀態保存在磁盤上;Pause 是保存在內存中,因此 Pause 恢復的要快
    二、instance 被 Suspend 後,狀態爲 shutdown ,而 Pause 的 instance 狀態是 Paused
    三、雖然都是經過 Resume 操做恢復,Pause 對應的Resume 在 OpenStack 內部叫作 Unpause ; Suspend 對應的Resume 纔是真正的 Resume,這個在日誌中能體現出來。
 
操做流程和前面的練習是同樣的,這裏就不詳細分析了
 
 
 
Rescue / Unrescue
 
這節開始咱們將討論幾種 instance 故障恢復的方法,不一樣方法適用於不一樣的場景。首先咱們考慮操做系統故障。
 
有時候因爲誤操做或者忽然斷電,操做系統重啓後起不來了。爲了更大限度挽救數據,咱們一般會使用一張系統盤將系統引導起來,而後再嘗試恢復。問題若是不太嚴重,徹底能夠經過這種方式讓系統從新運行起來,好比某個系統文件被意外刪除,root密碼遺忘等。Nova也提供這種故障恢復機制,叫Rescue。咱們來看下Rescue的說明:
 
stack@DevStack-Controller:~$ nova help rescue
usage: nova rescue [--password <password>] [--image <image>] <server>
 
Reboots a server into rescue mode, which starts the machine from either the
initial image or a specified image, attaching the current boot disk as
secondary.
 
#    重啓系統從啓動盤的初始狀態或者是一個指定的啓動盤文件啓動,進入救援模式,並添加故障的啓動盤位第二硬盤。
 
Positional arguments:
  <server>               Name or ID of server.
 
Optional arguments:
  --password <password>  The admin password to be set in the rescue environment.     #    設置救援模式中admin的密碼
  --image <image>        The image to rescue with.    #    指定一個其餘的啓動盤文件
 
 
目前 Rescue 操做只能在命令行中執行,當系統修復完畢後,使用 Unrescue 將 instance恢復至正常狀態。
 
stack@DevStack-Controller:~$ nova help unrescue
usage: nova unrescue <server>
 
Restart the server from normal boot disk again.
 
Positional arguments:
  <server>  Name or ID of server.
 
該操做的實現流程與以前的練習同樣,這裏再也不作詳細分析
相關文章
相關標籤/搜索