openstack实例状态错误_Openstack虚机操作总结
1. 概覽
Openstack作為常見的IAAS服務,其最核心的對象就是虛機實例,而Openstack下支持的虛機操作有很多種,有些是特別常見的虛機操作比如創建虛機、啟動虛機、刪除虛機等,而有些虛機操作則是針對特定場景下比如出現故障而提供的保護/恢復虛擬機資源的各種解決方案,下面先通過一張圖總體了解一下Openstack的各種虛機操作及及其應用場景:
文章余下部分將借助上圖中常規操作和故障操作這兩大應用場景來對Openstack各種虛機實例的操作一一展開說明。
2. 常規操作
所謂常規操作,這里是指日常對Openstack虛機最基本的操作,且Openstack集群及虛機運行狀態良好的情況下。
2.1 創建
創建虛機,Openstack專業術語:啟動虛機實例,根據已經定義好的主機類型、存儲資源、網絡資源等從無到有新建一個虛擬機。如果底層的虛擬化基于KVM,相當于先編輯一個虛機的XML文件然后進行DEFINE。
2.2 啟動/關閉/重啟/刪除
- 啟動:跟上文中創建啟動虛機實例不是一個概念,可以理解成類似物理機的開機的操作;
- 關閉:類似物理機的關機操作;
- 重啟:有軟重啟和硬重啟之分,軟重啟只是重啟虛機的OS,虛機仍處于運行狀態,相當于執行reboot,而硬重啟則是關機之后再開機;
- 刪除:從宿主機上刪除虛機實例;
2.3 暫停/掛起
- 暫停:Pause操作,短時間暫停虛機實例,將其狀態保存到宿主機的內存中,操作之后虛機對外顯示狀態為Paused;
- 掛起:Suspend操作,長時間暫停虛機實例,將其狀態保存到宿主機的磁盤上,操作之后虛機對外顯示狀態為Shut Down;
以上兩種操作后的虛機實例,都可以通過其他Openstack的接口重新恢復(Pause--> Unpause,Suspend--> Resume)虛機,并且顯然經過Pause操作的虛機實例恢復要快的多。
2.4 調整虛機大小
對應Openstack Resize操作,用來修改虛機實例的規格,當原始的主機類型(Flavor)無法滿足其上運行的業務需求時,通過新的Flavor在當前宿主機或者新的宿主機上重新啟動一個新的虛機,但是這個虛機的資源比如網絡資源、OS版本等還是跟之前的虛機是一樣的,只是擴展了CPU Core數目、內存和磁盤大小,提高了虛機性能。
2.5 快照
對應Openstack Snapshot操作,用來作備份恢復的,將某個狀態下的虛機導出image并上傳至Glance管理,方便以后通過快照來恢復一個出現故障的虛機,另外Openstack快照跟傳統意義的快照不是一個含義。
2.6 鎖定
對應Openstack Lock操作,用來作資源保護,如果為防止誤操作或者不想讓某些人操作虛機實例可以執行此操作,當然可以通過Unlock操作來解除鎖定。
3. 故障操作
首先解釋一下,這里的故障操作不是指錯誤操作或者誤操作,而是Openstack虛機實例或者其它組件出現故障時應對的措施或者操作。
3.1 冷遷移/熱遷移
冷遷移(Migrate)和熱遷移(Live Migrate)最大的區別在于將虛機實例從一個計算節點遷移到另一個計算節點的過程中是不是做了虛機關閉的操作。
3.2 擱置
對應Openstack Shelve操作,用作釋放暫不使用的虛機資源。
對于暫時不用的虛機如前文所述可以通過Pause/Suspend來暫停以節約成本,不過這兩種操作下虛機實例需要的比如CPU、內存等資源宿主機仍然要維護,如果想從底層來釋放這些資源可以執行Shelve操作,它的原理是釋放虛機之前先會對虛機做快照并上傳Glance,然后才從宿主機刪除虛機,當然如果想恢復則可以執行Unshelve操作。
3.3 Rescue
當虛機實例因為某個文件系統誤刪或者權限導致虛機實例無法正常開啟時,可以執行Rescue操作來嘗試恢復:選擇一個虛機image來引導虛機正常起來,同時把之前的系統盤作為數據盤掛載到起來的虛機OS下,修復好之后使用Unrescue操作從原啟動盤重新引導虛機。
3.4 重建
對應Openstack Rebuild操作,當虛機實例損壞無法正常開啟,而一般的修復操作比如Rescue不起作用,此時可以考慮在原先虛機實例的基礎上利用虛機鏡像或者快照進行Rebuild操作,它的原理替換原先虛機實例的鏡像文件,同時保持虛機其他比如網絡資源、其他分配屬性不變而實現虛機正常開啟。
3.5 Evacuate
上述的操作都是在宿主機ok的情況下進行的,如果虛機實例的宿主機直接掛掉該怎么辦呢?還好有Evacuate操作,它能夠在當前宿主機宕掉的情況,將其上的虛機實例遷移到其它正常的計算節點,不過它需要滿足共享存儲(比如后端采用NFS、CEPH等)。
以上基本上就是目前Openstack所支持的對虛機實例的所有操作,實際使用中需要結合具體的業務場景。
總結
以上是生活随笔為你收集整理的openstack实例状态错误_Openstack虚机操作总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python randint什么分布_p
- 下一篇: 李宏毅机器学习(一)基本概念介绍