OpenStack 簡介
OpenStack 是一個開源的 IaaS 實現,它由一些相互關聯的子項目組成,主要包括計算、儲存、網路。由於以 Apache 協議發布,自 2010 年項目成立以來,超過 200 個公司加入了 OpenStack 項目,其中包括 AT&T、AMD、Cisco、Dell、IBM、Intel、Red Hat 等。目前參與 OpenStack 項目的開發人員有 17,000+,來自 139 個國家,這一數字還在不斷增長中。
OpenStack 相容一部分 AWS 介面,同時為了提供更強大的功能,也提供 OpenStack 風格的介面(RESTFul API)。和其他開源 IaaS 相比,架構上松耦合、高可擴充、分布式、純 Python 實現,以及友好活躍的社區使其大受歡迎,每半年一次的開發峰會也吸引了來自全世界的開發人員、供應商和客戶。
Openstack 節點維護
維護的動機
一台Openstack節點進行維護的動機主要有三點:
- 硬體替換或升級
- 打安全補丁後需要重啟
- 軟體升級和服務重啟
一般存在兩種情境:
1.VM的磁碟儲存在dfs上(cephFS, glusterFS, NFS),容易維護
2.VM磁碟儲存在本地磁碟,最難維護的情況
將一台Openstack節點設為維護模式
在目前的 Openstack中已經有maintenance mode,但僅對Xen hypervisor有效,如果使用的是kvm,那麼你會看到一條500錯誤:
nova host-update compute-01 --maintenance enableERROR: The server has either erred or is incapable of performing the requested operation. (HTTP 500) (Request-ID: req-5667d1ff-bgha-4veq-9drb-8c6'733f1s4b)
作為變通方案,你可以採用以下方式:
1.將新的instacnes指到其他位置;
2.禁用該compute node
私人雲端的解決方案
使用以下命令來強制vm建立到指定節點,預設zone是nova:
nova boot bla bla bla --availability-zone <your-zone>:<compute-node>
公用雲端的解決方案
直接disable該node,這樣scheduler就不會嘗試在該node上跑執行個體了:
$ sudo nova-manage service disable --host=<host> --service=<service>
感謝閱讀,希望能協助到大家,謝謝大家對本站的支援!