热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

KVM—Kernel-basedVirtualMachine虚拟技术简介

Kernel-basedVirtualMachine的简称,是一个开源的系统虚拟化模块,自Linux2.6.20之后集成在linux的各个主要发行版本中。一个普通的Linux进程有两种运行模式:内核和用户。KVM增加了第三种模式:客户模式(有自己的内核和用户模式)KVM的虚拟机需要硬

Kernel-based Virtual Machine 的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20 之后集成在linux 的各个主要发行版本中。

一个普通的Linux 进程有两种运行模式:内核和用户。KVM 增加了第三种模式:客户模式(有自己的内核和用户模式)

KVM 的虚拟机需要硬件支持,即如Intel VT 技术(vmx)或AMD V 技术(svm).且Linux 发行版本必须在64bit 环境中才能使用KVM

完全虚拟化和半虚拟化

在完全虚拟化中,Guest OS运行在位于物理机的 hypervisor 之上。Guest OS并不知道它已被虚拟化,并且不需要任何更改就可以在该配置下工作。

相反,在半虚拟化中,Guest OS不仅知道它运行在 hypervisor 之上,还包含让Guest OS更高效地过渡到 hypervisor 的代码

在完全虚拟化模式中,hypervisor 必须模拟设备硬件,它是在会话的最低级别进行模拟的。尽管在该抽象中模拟很干净,但它同时也是最低效、最复杂的。在半虚拟化模式中,Guest OS和 hypervisor 能够共同合作,让模拟更加高效。半虚拟化方法的缺点是操作系统知道它被虚拟化,并且需要修改才能工作。

确定机器是否支持虚拟化:(必要时需要在BIOS开启VT)

[root@rhel6 ~]# egrep "(vmx|svm)" --color=always /proc/cpuinfo
flags    : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 x2apic popcnt xsave avx lahf_lm arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid

安装KVM

[root@rhel6 ~]# yum install kvm virt-manager libvirt
[root@rhel6 ~]# /etc/init.d/libvirtd start

确定正确加载KVM模块

[root@rhel6 ~]# lsmod | grep kvm
kvm_intel              50380  0
kvm                   305113  1 kvm_intel

检查KVM 是否成功安装

[root@rhel6 ~]# virsh -c qemu:///system list
 Id 名称               状态
----------------------------------

绑定桥接器:

[root@rhel6 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
BOOTPROTO=none
OnBOOT=yes
IPADDR=192.168.2.11
NETMASK=255.255.255.0
TYPE=Bridge
[root@rhel6 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
OnBOOT=yes
BRIDGE=br0
BOOTPROTO=none
TYPE=Ethernet

安装Virtio实现网卡和硬盘的透写

VirtIO 是一个用来实现"虚拟IO"的通用框架,用于实现虚拟的网卡,磁盘等虚拟设备的透写。

linux内核版本在2.6.25以上的,都应该集成了VirtIO的驱动,但windows需要另外安装

Windows安装VirtIO驱动有两种方法:

1、使用IDE方式来安装系统,安装系统完成后,在guest中安装virtio磁盘驱动,然后再修改kvm启动参数,设置磁盘为virtio。

安装完Windows后,创建一块临时的硬盘,将其设置为virtio模式添加到Windows中,并设置网卡模式为virio

开机后将提示检查到新硬件,然后安装驱动程序后关机

删除新添加的临时硬盘,将原来的硬盘设置为virtio模式,开机即可识别到硬盘与网卡都为virtio模式

2、在安装时直接加载virtio驱动。

由于XP的安装程序只支持从软盘加载驱动程序,因此需要一个软盘的镜像文件(virtio-win-1.1.16_1.vfd),在xp的安装开始,按F6从软盘加载驱动程序


推荐阅读
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 本文旨在提供一套高效的面试方法,帮助企业在短时间内找到合适的产品经理。虽然观点较为直接,但其方法已被实践证明有效,尤其适用于初创公司和新项目的需求。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文介绍如何通过Windows批处理脚本定期检查并重启Java应用程序,确保其持续稳定运行。脚本每30分钟检查一次,并在需要时重启Java程序。同时,它会将任务结果发送到Redis。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 本文介绍如何通过SQL查询从JDE(JD Edwards)系统中提取所有字典数据,涵盖关键表的关联和字段选择。具体包括F0004和F0005系列表的数据提取方法。 ... [详细]
  • 本文详细介绍了如何通过命令行启动MySQL服务,包括打开命令提示符窗口、进入MySQL的bin目录、输入正确的连接命令以及注意事项。文中还提供了更多相关命令的资源链接。 ... [详细]
  • 本文将详细介绍在Windows 7环境下,检查U盘启动盘是否制作成功的多种方法,包括通过BIOS设置和使用模拟启动工具。 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 高效解决应用崩溃问题!友盟新版错误分析工具全面升级
    友盟推出的最新版错误分析工具,专为移动开发者设计,提供强大的Crash收集与分析功能。该工具能够实时监控App运行状态,快速发现并修复错误,显著提升应用的稳定性和用户体验。 ... [详细]
  • C语言入门精选教程与书籍推荐
    本文精选了几本适合不同水平学习者的C语言书籍,从基础入门到进阶提高,帮助读者全面掌握C语言的核心知识和技术。 ... [详细]
author-avatar
罢脑货_246
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有