openStack五分钟之KVM虚拟化原理

  1. CPU虚拟化
    KVM的虚拟化需要CPU硬件的支持。CPU厂商Intel和AMD都支持虚拟化,除非是非常老的CPU。
    一个KVM虚拟机在宿主机中其实是一个qemu-kvm进程,与其他Linux进程一样被调度。可以通过ps命令查看。
    虚机的vCPU总数可以超过物理CPU数量,这个叫做CPU的超配。KVM允许超配情况的出现,这种特性使得虚机能充分利用宿主机的CPU资源,但是有前提的,即同一时刻,不是所有的虚机都满负荷运行。。。否则会影响性能,所以在超配前要对负载情况有了解。
  2. 内存虚拟化
    KVM通过VA(虚拟内存)->PA(物理内存)->MA(机器内存)之间的地址转换,实现一台机器运行多个虚拟机。虚机OS控制虚拟地址到客户内存物理地址的映射(VA->PA),但是虚机OS不能直接访问实际机器内存,因此KVM需负责映射客户物理内存到实际机器内存(PA->MA)。
    内存也支持超配。
  3. 存储虚拟化
    KVM的存储虚拟化通过存储池和卷来管理。
    存储池是宿主机上可以看到的一片空间,可多种类型。
    卷是存储池划分出来的一块空间,宿主机将卷分配给虚机,卷在虚拟机中看到就是一块硬盘。
    卷的优点:存储方便、移植性好、可复制、可远程访问(可放在远程文件系统中,便于多宿主机共享)。
    KVM支持卷文件格式有raw/qcow2/vmdk。
    raw默认格式,原始磁盘镜像格式,移植便利,性能好,但是大小固定,难节省空间。
    qcow2推荐使用,copy on write,省空间,支持AES加密,支持压缩,多快照。
    vmdk是VMWare的虚拟磁盘格式,简单而言,就是VMWare可以直接在KVM上运行。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值