《KVM实战:原理、进阶与性能调优》一3.3.4 安装KVM

举报
华章计算机 发表于 2019/06/06 15:37:23 2019/06/06
【摘要】 本书摘自《KVM实战:原理、进阶与性能调优》一书中第3章,第3.3.4节,作者是任永杰 程舟

3.3.4 安装KVM

       编译完KVM之后,下面介绍如何安装KVM。
       KVM的安装包括两个步骤:安装module,安装kernel与initramfs。
       1.安装module
       通过“make modules_install”命令可以将编译好的module安装到相应的目录中,默认情况下module被安装到/lib/modules/$kernel_version/kernel目录中。
[root@kvm-host kvm]# make modules_install
<!- 此处省略千余行安装时的输出信息 ->
    INSTALL /lib/firmware/whiteheat.fw
    INSTALL /lib/firmware/keyspan_pda/keyspan_pda.fw
    INSTALL /lib/firmware/keyspan_pda/xircom_pgs.fw
    DEPMOD  4.8.0+
       安装好module之后,可以查看一下相应的安装路径,可看到kvm模块也已经安装。如下所示:
       [root@kvm-host kvm]# ll /lib/modules/4.8.0+/kernel/
       total 16
       drwxr-xr-x  3 root root   16 Oct 15 15:05 arch
       drwxr-xr-x  3 root root 4096 Oct 15 15:05 crypto
       drwxr-xr-x 66 root root 4096 Oct 15 15:06 drivers
       drwxr-xr-x 26 root root 4096 Oct 15 15:06 fs
       drwxr-xr-x  3 root root   18 Oct 15 15:06 kernel
       drwxr-xr-x  4 root root  152 Oct 15 15:06 lib
       drwxr-xr-x  2 root root   31 Oct 15 15:06 mm
       drwxr-xr-x 32 root root 4096 Oct 15 15:06 net
       drwxr-xr-x 10 root root  135 Oct 15 15:06 sound
       drwxr-xr-x  3 root root   16 Oct 15 15:06 virt 
       [root@kvm-host kvm]# ll /lib/modules/4.8.0+/kernel/arch/x86/kvm/
       total 11256
       -rw-r--r-- 1 root root 1940806 Oct 15 15:05 kvm-intel.ko
       -rw-r--r-- 1 root root 9583878 Oct 15 15:05 kvm.ko
       2.安装kernel和initramfs
       通过“make install”命令可以安装kernel和initramfs,命令行输出如下:
       [root@kvm-host kvm]# make install
       sh ./arch/x86/boot/install.sh 4.8.0+ arch/x86/boot/bzImage \
           System.map "/boot"
       [root@kvm-host kvm]# ll /boot -t
       ......
       drwx------. 6 root root      103 Oct 15 15:12 grub2
       -rw-r--r--  1 root root 58106303 Oct 15 15:11 initramfs-4.8.0+.img
       lrwxrwxrwx  1 root root        23 Oct 15 15:10 System.map -> /boot/System.map-4.8.0+
       lrwxrwxrwx  1 root root       20 Oct 15 15:10 vmlinuz -> /boot/vmlinuz-4.8.0+
       -rw-r--r--  1 root root  3430941 Oct 15 15:10 System.map-4.8.0+
       -rw-r--r--  1 root root  5815104 Oct 15 15:10 vmlinuz-4.8.0+
       可见,在/boot目录下生成了内核(vmlinuz)和initramfs等内核启动所需的文件。
       在运行make install之后,在grub配置文件(如:/boot/grub2/grub.cfg)中也自动添加了一个grub选项,如下所示:
       menuentry 'Redhat Enterprise Linux Server (4.8.0+) 7.2 (Maipo)' ... {
          load_video
          insmod gzio
          insmod part_msdos
          insmod xfs
          set root='hd1,msdos1'
          if [ x$feature_platform_search_hint = xy ]; then
             search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1, msdos1 --hint-baremetal=ahci1,msdos1  da2e2d53-4b33-4bfe-a649- 73fba55a7a9d
          else
             search --no-floppy --fs-uuid --set=root da2e2d53-4b33-4bfe-a649-73fba55a7a9d
          fi
             linux16 /vmlinuz-4.8.0+ root=/dev/mapper/rhel-root ro rd.lvm.lv=rhel/root crashkernel=auto rd.lvm.lv=rhel/swap vconsole.font=latarcyrheb-sun16 vco           nsole.keymap=us rhgb /dev/disk/by-uuid/19d79b0d-898f-4d34-a895-c842fa65e9b9.UTF-8 console=ttyS0,115200 console=tty0 intel_iommu=on
             initrd16 /initramfs-4.8.0+.img
           }
       检查了grub之后,重新启动系统,选择刚才为了KVM而编译、安装的内核启动。
       系统启动后,登录进入系统,通常情况下,系统启动时默认已经加载了kvm和kvm_intel这两个模块。如果没有加载,手动用modprobe命令依次加载kvm和kvm_intel模块。
        [root@kvm-host kvm]# modprobe kvm
        [root@kvm-host kvm]# modprobe kvm_intel
        [root@kvm-host kvm]# lsmod | grep kvm
        kvm_intel             192512  0
        kvm                   577536  1 kvm_intel
        确认KVM相关的模块加载成功后,检查/dev/kvm这个文件,它是kvm内核模块提供给用户空间的QEMU程序使用的一个控制接口,它提供了客户机(Guest)操作系统运行所需要的模拟和实际的硬件设备环境。
        [root@kvm-host kvm]# ls -l /dev/kvm
        crw-rw-rw-+ 1 root kvm 10, 232 Oct  9 15:22 /dev/kvm

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。