這篇文章主要介紹如何實現openstack主機內存ram超額分配,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
openstack提供資源利用率的方式一種主要途徑是創建虛擬機時對內存進行超額分配。在對物理主機的選擇策略如下代碼所示:
def host_passes(self, host_state, filter_properties): """Only return hosts with sufficient available RAM.""" instance_type = filter_properties.get('instance_type') requested_ram = instance_type['memory_mb'] free_ram_mb = host_state.free_ram_mb total_usable_ram_mb = host_state.total_usable_ram_mb ram_allocation_ratio = self._get_ram_allocation_ratio(host_state, filter_properties) memory_mb_limit = total_usable_ram_mb * ram_allocation_ratio used_ram_mb = total_usable_ram_mb - free_ram_mb usable_ram = memory_mb_limit - used_ram_mb if not usable_ram >= requested_ram: LOG.debug("%(host_state)s does not have %(requested_ram)s MB " "usable ram, it only has %(usable_ram)s MB usable ram.", {'host_state': host_state, 'requested_ram': requested_ram, 'usable_ram': usable_ram}) return False # save oversubscription limit for compute node to test against: host_state.limits['memory_mb'] = memory_mb_limit return True
total_usable_ram_mb為物理主機所能提供的物理內存,如4G,8G,ram_allocation_ration為內存超額分配系數,在nova.conf中設置。openstack默認超額分配系數為1.5。free_ram_mb為主機剩余內存值,該值可為負數。used_ram_mb為以分配內存,一般為該主機上已創建虛擬機內存總和。memory_mb_limit為超額后的內存,當剩余可以可用的useble_ram內存小于虛擬機的創建時所需內存時,表示該主機無法創建虛擬機,系統將不會選擇該主機創建虛擬機。
以上是“如何實現openstack主機內存ram超額分配”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。