虚拟机
1. 虚拟机
虚拟机是运行操作系统和应用程序的虚拟计算机,整个虚拟机(硬件配置、BIOS 配置、内存状态、磁盘状态、CPU 状态)都储存在独立于物理硬件的一小组文件中。这样只需复制几个文件就可以随时随地根据需要复制、保存和移动虚拟机。
虚拟机属性
- CPU
- 插槽数=总内核数/单内核数
- 份额:表示虚拟机可占用主机系统资源的比例关系
以一个主频为2.8GHz的单核物理主机为例,如果上面运行有三台单CPU的虚拟机。三个虚拟机A,B,C,份额分别为1000,2000,4000。当三个虚拟机CPU满负载运行时,会根据三个虚拟机的份额按比例分配计算资源。份额为1000的虚拟机A的计算能力约为400MHz的,份额为2000的虚拟机B获得的计算能力约为800MHz,份额为4000的虚拟机C获得的计算能力约为1600MHz。
CPU份额只在各虚拟机竞争计算资源时发挥作用,如果没有竞争情况发生,有需求的虚拟机可以独占物理CPU资源,例如,如果虚拟机B和C均处于空闲状态,虚拟机A可以获得整个物理核即2.8GHz的计算能力。- 预留:表示主机保留给虚拟机的最低资源量,这部分资源量不能被其他虚拟机占用。
如果虚拟机根据份额值计算出来的计算能力小于虚拟机预留值,调度算法会优先按照虚拟机预留值的能力把计算资源分配给虚拟机,对于预留值超出按份额分配的计算资源的部分,调度算法会从主机上其他虚拟机的CPU上按各自的份额比例扣除,因此虚拟机的计算能力会以预留值为准。
如果虚拟机根据份额值计算出来的计算能力大于虚拟机预留值,那么虚拟机的计算能力会以份额值计算为准。
以一个主频为2.8GHz的单核物理机为例,如果运行有三台单CPU的虚拟机A、B、C,份额分别为1000、2000、4000,预留值分别为700MHz、0MHz、0MHz。当三个虚拟机满CPU负载运行时:
虚拟机A如果按照份额分配,本应得400MHz,但由于其预留值大于400MHz,因此最终计算能力按照预留值700MHz算。
多出的(700-400)MHz按照B和C各自的份额比例从B和C处扣除。
虚拟机B获得的计算能力约为(800-100)MHz,虚拟机C获得的计算能力约为(1600-200)MHz。
CPU预留只在各虚拟机竞争计算资源的时候才发挥作用,如果没有竞争情况发生,有需求的虚拟机可以独占物理CPU资源。例如,如果虚拟机B和C均处于空闲状态,虚拟机A可以获得整个物理核即2.8GHz的计算能力。- 限制:表示虚拟机可以使用的最大的资源量,虚拟机一旦达到限制的资源量,将无法继续占用更多的主机资源。
以一个主频为2.8GHz的单核物理主机为例,如果上面运行有三台单CPU的虚拟机。三个虚拟机A,B,C,限制分别为400MHz、未设置、未设置(默认值为不限制)。当虚拟机B和C未运行时,虚拟机A能获得的最大计算能力就是400MHz,即便CPU还有空闲资源,虚拟机A也不能占用更多的CPU资源。
- 内存
- 内存资源份额:在虚拟机申请内存资源,或主机释放空闲内存(虚拟机迁移或关闭)时,会根据虚拟机的内存份额情况按比例分配。不同于CPU资源可实时调度,内存资源的调度是平缓的过程,内存份额策略在虚拟机运行过程中会不断进行微调,使虚拟机的内存获取量逐渐趋于比例。以6G内存规格的主机为例,假设其上运行有三台4G内存规格的虚拟机,内存份额分别为20480、20480、40960,那么其内存分配比例为1:1:2。当三个虚拟机内部均逐步加压,策略会根据三个虚拟机的份额按比例分配调整内存资源,最终三个虚拟机获得的内存量稳定为1.5G、1.5G、3G。内存份额只在各虚拟机竞争内存资源时发挥作用,如果没有竞争情况发生,有需求的虚拟机可以最大限度地获得内存资源。例如,如果虚拟机B和C没有内存压力且未达到预留值,虚拟机A内存需求压力增大后,可以从空闲内存、虚拟机B和C中获取内存资源,直到虚拟机A达到上限或空闲内存用尽且虚拟机B和C达到预留值。以上面的例子,当份额为40960的虚拟机没有内存压力(内存资源预留为1G),那么份额为20480的两个虚拟机理论上可以各获得最大2.5G的内存。
- 内存资源预留:预留的内存被会虚拟机独占。即,一旦内存被某个虚拟机预留,即使虚拟机实际内存使用量不超过预留量,其他虚拟机也无法抢占该虚拟机的空闲内存资源。
- GPU
- 自动分配
若选择自动分配方式,虚拟机开机时,自动分配主机上的GPU资源,关机后即释放GPU资源。重新开机,再次重新自动分配GPU资源。
设置主机图形处理器为直通模式时,该图形处理器只能被一个虚拟机使用。
设置为虚拟化模式时,可被多个虚拟机使用,但需要图形处理器支持虚拟化。- 指定绑定
若选择指定绑定,与图形处理器绑定后,虚拟机和图形处理器所在的主机会自动绑定,在虚拟机和图形处理器解除绑定之前,虚拟机只能运行在该主机上,无法迁移至其他主机。
其他
- 创建虚拟机时,按定义的虚拟机规格自动从资源池中为虚拟机分配相应量的内存和CPU。
- 虚拟机创建完成后,可以对虚拟机进行迁移,对虚拟机的规格或外设进行调整,例如添加网卡、绑定磁盘、挂载光驱、绑定图形处理器、绑定USB设备等。
- 说明:一台虚拟机所使用的内存资源和CPU资源只能由同一台主机提供,但如果虚拟机运行的主机发生故障,可立即由另一台主机为该虚拟机提供计算资源。因此,虚拟机实际可使用计算资源的最大限度不能超过该主机的硬件规格。
2. 创建虚拟机方式
- 创建空虚拟机
需要安装os,通常系统初始部署需要创建空的虚拟机 - 使用模板创建虚拟机
将模板转换为虚拟机,虚拟机所有的属性 和模板相同,转换完成后,模板不再存在,通常系统中有合适模板或其他站点有合适模板可以导出,使用模板创建可以节省时间
- 优点:模板是虚拟机的一个副本,包含操作系统、应用软件和虚拟机规格配置,使用模板创建虚拟机能够大幅节省配置新虚拟机和安装操作系统的时间
- 使用虚拟机创建虚拟机
已有虚拟机为副本,此虚拟机可被配置且安装不同软件,克隆相似虚拟机
3.制建模板的方式
- 虚拟机转换为模板
所有参数为虚拟机设置,转换后,原虚拟机不存在 - 虚拟机克隆为模板
参数可调整,原虚拟机正常使用 - 模板克隆为模板
参数可调,原模板仍存在
4.虚拟机和虚拟机模板的区别
虚拟机
虚拟计算机,可运行os和应用程序,占用主机的资源,用途是处理计算任务,应用程序的运行载体
模板
是虚拟机的一个副本,包含os,应用软件,虚拟机规格配置,不能直接运行,主要用途是为了批量创建虚拟机
5. 虚拟机模板的导出
将系统内的模板或虚拟机导出到本地作为虚拟机的模板,便可以在其他系统中使用该模板创建与模板设置一致的虚拟机,达到快速部署的目的
镜像文件
1.虚拟机镜像(虚拟机模板)
虚拟机镜像就是前文所说的虚拟机模板,是虚拟机的一个副本,包含操作系统、应用软件和虚拟机规格配置等数据,用于创建与模板设置一致的虚拟机,实现快速部署的功能。
2.操作系统镜像
操作系统镜像指的是把操作系统安装光盘中的所有数据打包并压缩所生成的特殊格式的文件,通常以.iso作为文件扩展名,包含了安装操作系统所需要的所有文件,既可以用于安装物理机的操作系统,也可以用于安装虚拟机的操作系统。