Delete Volume 操做 - 天天5分鐘玩轉 OpenStack(57)

今天討論 cinder 如何刪除 volume 。api

狀態爲 Available 的 volume 纔可以被 delete。若是 volume 當前已經 attach 到 instance,須要先 detach 後才能 delete。安全

Delete操做實現比較簡單,流程圖以下:spa

image413.png

  1. 向 cinder-api 發送 delete 請求日誌

  2. cinder-api 發送消息ci

  3. cinder-volume 執行 delete 操做rem

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

向 cinder-api 發送 delete 請求

客戶(能夠是 OpenStack 最終用戶,也能夠是其餘程序)向 cinder-api 發送請求:「請 delete 指定的 volume。程序

這裏咱們將 delete volume 「vol-2」方法

進入 GUI 操做菜單 Project -> Compute -> Volumes。im

選擇volume 「vol-2」,點擊「Delete Volume」。

再次確認。

cinder-api 將接收到 delete volume 的請求。日誌文件在 /opt/stack/logs/c-api.log。

cinder-api 發送消息

cinder-api 發送消息 delete 消息。cinder-api 沒有打印發送消息的日誌,只能經過源代碼查看 /opt/stack/cinder/cinder/volume/api.py,方法爲 delete。

cinder-volume delete volume

cinder-volume 執行 lvremove 命令 delete volume。 日誌爲 /opt/stack/logs/c-vol.log。

這裏比較有意思的是:cinder-volume 執行的是「安全」刪除。 所謂「安全」實際上就是將 volume 中的數據抹掉,LVM driver 使用的是 dd 操做將 LV 的數據清零。日誌以下:

而後刪除 LV。

以上就是 delete volume 的分析,下一節咱們討論 snapshot 操做。

 

相關文章
相關標籤/搜索