關於在openstack中創建實例時任務一直卡在Building的現象描述

單位有一個小型的使用OpenStack搭建的私有云平臺,昨天在使用Horizon創建一個實例時,發現該實例創建失敗,任務狀態一直顯示爲Building,隨後可以在分配給該實例的計算節點上的compute.log中發現如下信息:


compute.log:2015-06-08 16:23:17 WARNING nova.compute.manager [-] Found 4 in the database and 3 on the hypervisor.
compute.log:2015-06-08 16:23:17 WARNING nova.compute.manager [-] [instance: d078bb27-0c78-4534-ae25-c58703488eff] Instance found in database but not known by hyperv
isor. Setting power state to NOSTATE

用google搜索了一下,沒得到什麼有效的信息,於是去查了一下該計算節點的其他服務日誌,發現其他服務日誌中,只有api.log中可以發現該實例相關的消息請求記錄,其他均沒有發現與該實例相關的記錄,也沒有錯誤或者警告的信息。

後查詢nova數據庫,在compute_nodes表和instances表中找到該實例的相關記錄。

這說明nova-db接收並響應了api的請求,但消息發送給nova-compute服務時出了問題,具體是消息隊列還是nova-compute的問題,尚不清楚。


折騰了一天,沒有找到好的解決辦法,於是第二天一早對該計算節點的nova所有相關服務進行了重啓,問題解決:

for srv in api cert network scheduler compute consoleauth ; do service openstack-nova-$srv restart; done


後記:重啓相關服務是沒有辦法的辦法,在遇到類似情況時,可能會解決問題。但是尚不清楚問題的癥結所在(日誌中查不出來,搜索了compute.log的那兩條警告也沒什麼結果),同時也不排除是使用的openstack的版本比較陳舊(Essex,2012年的東西)遺留的BUG導致的問題。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章