VM resource allocation in a virtual environment

Virtual resources are controled by hypervisor, and to allocated to individual VM.

CPU/MEM resources are not  equivilant  with them on the node, this is called resource overcommitment.

1. CPU:

VM consue CPU resource which can be treated in frequency. 

for example: we have 20 VMs, each of them running CPU at 1100Mhz, thus total 22000Mhz.

when the node has 10 cores, and each has 2.5GHZ.

we can see that the CPU usage is 22000/2500*10= 88%.

thus when we design the architecutre we may consider the CPU frequence/Cores/sockets and also the estimation of consuption on each VM in frequence.

furthermore there is a cpu_allocation_ratio which point the ability of  each physical cores can virulized to vitual cores. if the ratio is 16:1 which means that each physical core can simulate up to 16 virutal cores

2. Memory

Same with CPU resource, there is also a ram_allocation_ratio. we can  imagin that we have totally 4G memory on the node, but we can create 4 VMs  with 2G memory each, totally 8G memory, more than capacibily of 4G on the node; hypervisor will monitor the idle VM instance, and allocate the memory to the busier instance from  the idle ones.

but we still need to monitor closely  and gather more infomation to determine the best ratio number, make full use of the hardware  with no performance issue or crash problems.

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

KVM调整cpu和内存

一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid