我的印象是,您可以将OpenStack集群配置为为KVM实例过度提交vCPUs和内存。
我认为过度提交vCPU是相对无害的;我猜主机上的实例只需要时间共享可用的物理CPU,如果CPU需求超过物理容量,则会按比例降低速度。
对于内存,如果实例超过了主机的物理容量,我想这一定是一个完全不同的故事。
如果集群中的内存分配过高,而运行在主机上的实例超出了主机内存的物理容量,那么实际会发生什么?它是否开始切换到磁盘(而且--我想--结果是速度大大减慢了)?这些实例是简单地崩溃了,还是完全不同?
发布于 2022-06-24 14:30:07
您不仅可以占用内存,还可以占用CPU。
https://docs.openstack.org/arch-design/design-compute/design-compute-overcommit.html
在这里,https://access.redhat.com/documentation/en-us/red_帽子_企业_linux/7/html/虚拟化_部署_和_管理_指南/节-超额承付_使用_kvm-超额承付_内存很好地解释了实际内存消耗超过虚拟机监控程序物理内存的影响。
过度提交并不是解决一般内存问题的理想解决方案。解决内存不足的推荐方法是为每个来宾分配更少的内存,向主机添加更多的物理内存,或者利用交换空间。如果频繁地交换虚拟机,虚拟机将运行得更慢。此外,过度提交会导致系统耗尽内存(OOM),从而导致Linux内核关闭重要的系统进程。
https://serverfault.com/questions/1103985
复制相似问题