欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

KVM虚拟化技术的-KVM安装

程序员文章站 2022-06-21 18:54:23
...

一、查看CPU是否支持虚拟化

[root@node1 ~]# lsmod |grep kvm
    kvm_intel      162153  0 
    kvm            525259  1 kvm_intel
[root@node1 ~]# egrep 'svm|vmx'  /proc/cpuinfo 

二、 CPU 物理特性

[root@node1 ~] # numactl --hardware
available: 2 nodes (0-1) //2颗CPU 
node 0 cpus: 0 1 2 3 4 5 12 13 14 15 16 17 //这颗 CPU 有8个内核
node 0 size: 12276 MB
node 0 free: 7060 MB
node 1 cpus: 6 7 8 9 10 11 18 19 20 21 22 23 node 1 size: 8192 MB
node 1 free: 6773 MB
node distances:
node 0 1 0: 10 21 1: 21 10 
[root@node1 ~] # cat /proc/cpuinfo

三、 安装KVM
    KVM 是基于虚拟化扩展(Intel VT 或者 AMD-V)的 X86 硬件的开源的 Linux 原生的全虚拟化解决方案。KVM 中,虚拟机被实现为常规的 Linux 进程,由标准 Linux 调度程序进行调度;虚机的每个虚拟 CPU 被实现为一个常规的 Linux 进程。这使得 KMV 能够使用 Linux 内核的已有功能。
    KVM 本身不执行任何硬件模拟,需要客户空间程序通过 /dev/kvm 接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的 I/O,并将它的视频显示映射回宿主的显示屏。目前这个应用程序是 QEMU。
    在QEMU-KVM中,KVM运行在内核空间,QEMU运行在用户空间,实际模拟创建、管理各种虚拟硬件,QEMU将KVM整合了进来,通过/ioctl 调用 /dev/kvm,从而将CPU指令的部分交给内核模块来做,KVM实现了CPU和内存的虚拟化,但KVM不能虚拟其他硬件设备,因此qemu还有模拟IO设备(磁盘,网卡,显卡等)的作用,KVM加上QEMU后就是完整意义上的服务器虚拟化。
综上所述,QEMU-KVM具有两大作用:
    (1):提供对cpu,内存(KVM负责),IO设备((virtio QEMU负责)的虚拟
    (2):对各种虚拟设备的创建,调用进行管理(QEMU负责)
    QEMU模拟其他的硬件,如Network, Disk,同样会影响这些设备的性能。于是又产生了半虚拟化设备virtio_blk, virtio_net,提高设备性能。
KVM虚拟化技术的-KVM安装
    qemu-img是QEMU的磁盘管理工具,在qemu-kvm源码编译后就会默认编译好qemu-img这个二进制文件。qemu-img也是QEMU/KVM使用过程中一个比较重要的工具,

1)方法一
[root@node1 ~]# yum install qemu-kvm qemu-img libvirt
[root@node1 ~]# yum install virt-install libvirt-python virt-manager python-virtinst libvirt-client2)方法二
[root@node1 ~]yum -y groupinstall "virtualization*"