Shelve Instance 操做詳解 - 天天5分鐘玩轉 OpenStack(38)

image240.5.png

Instance 被 Suspend 後雖然處於 Shut Down 狀態,但 Hypervisor 依然在宿主機上爲其預留了資源,以便在之後可以成功 Resume。api

若是但願釋放這些預留資源,能夠使用 Shelve 操做。 Shelve 會將 instance 做爲 image 保存到 Glance 中,而後在宿主機上刪除該 instance。 下面是 shelve instance 的流程圖spa

image180.png

  1. 向 nova-api 發送請求日誌

  2. nova-api 發送消息資源

  3. nova-compute 執行操做it

下面咱們詳細討論每個步驟。請求

向 nova-api 發送請求

客戶(能夠是 OpenStack 最終用戶,也能夠是其餘程序)向API(nova-api)發送請求:「幫我 shelve 這個 Instance」程序

查看日誌 /opt/stack/logs/n-api.log方法

nova-api 發送消息

nova-api 向 Messaging(RabbitMQ)發送了一條消息:「shelve 這個 Instance」 查看源代碼 /opt/stack/nova/nova/compute/api.py,方法是 shelve。im

nova-compute 執行操做

查看日誌 /opt/stack/logs/n-cpu.log命名

首先,關閉 instance

而後對 instance 執行 snapshot 操做

成功後,snapshot 生成的 image 會保存在 Glance 上,命名爲 <instance name>-shelved

最後刪除 instance 在宿主機上的資源

暫停操做成功執行後,instance 的狀態變爲 Shelved Offloaded,電源狀態是 Shut Down

以上就是 Shelve 操做的分析,下一節咱們討論 Unshelve 操做。

相關文章
相關標籤/搜索