文章目录

  • 虚拟化产品介绍
  • KVM概述
  • KVM功能
  • KVM常用工具:
  • KVM安装
    • 安装前准备环境:
    • 安装kvm模块,管理工具和libvirt
    • 确定正确加载KVM模块
    • 使用命令 virt-manager 建立虚拟机

虚拟化产品介绍

虚拟化有两种类型:
Hypervisor直接在安装在宿主机的逻辑上:
Hypervisor 直接安装在物理机上,多个虚拟机在 Hypervisor 上运行。Hypervisor 实现方式一般是一个特殊定制的 Linux 系统。Xen 和 VMWare 的 ESXi 都属于这个类型。

Hypervisor安装在宿主机的操作系统上:
物理机上首先安装常规的操作系统,比如 Redhat、Ubuntu 和 Windows。Hypervisor 作为 OS 上的一个程序模块运行,并对管理虚拟机进行管理。KVM、VirtualBox 和 VMWare Workstation 都属于这个类型。

虚拟化产品对比介绍
vmware
KVM rhel6_x64
xen [kernel-xen]

虚拟化技术:
仿真虚拟化 [对系统硬件没有要求,性能最低]
半虚拟化 [虚拟机可以使用真机物理硬件,性能高,需要改内核]
全虚拟化

vmware 支持仿真虚拟化
xen 半虚 REHL5自带xen, 安装时需要安装内核 rpm -ivh kernel-xen-xxx.rpm
kvm 全虚拟化 RHEL6 自带kvm

KVM概述

KVM 即Kernel-based Virtual Machine 基于内核的虚拟机。

KVM,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization。

特点:
它由 Quramnet 开发,该公司于 2008年被 Red Hat 收购。
它支持 x86 (32 and 64 位), s390, Powerpc 等 CPU。
它从 Linux 2.6.20 起就作为一模块被包含在 Linux 内核中。
它需要支持虚拟化扩展的 CPU。
它是完全开源的。

KVM功能

从官网上摘录:
KVM 所支持的功能包括:

  1. 支持CPU 和 memory 超分(Overcommit)
  2. 支持半虚拟化I/O (virtio) 支持热插拔(cpu,块设备、网络设备等)
  3. 支持对称多处理(Symmetric Multi-Processing,缩写为 SMP )
  4. 支持实时迁移(Live Migration)
  5. 支持 PCI 设备直接分配和 单根I/O 虚拟化 (SR-IOV)
  6. 支持 内核同页合并(KSM )
  7. 支持 NUMA (Non-Uniform Memory Access,非一致存储访问结构 )

KVM常用工具:

libvirt:操作和管理KVM虚机的虚拟化 API,使用 C 语言编写,可以由 Python,Ruby, Perl, PHP, Java 等语言调用。可以操作包括 KVM,vmware,XEN,Hyper-v, LXC 等 Hypervisor。
Virsh:基于 libvirt 的 命令行工具 (CLI)
Virt-Manager:基于 libvirt 的 GUI 工具
virt-v2v:虚机格式迁移工具
virt-* 工具:包括 Virt-install (创建KVM虚机的命令行工具),
Virt-viewer (连接到虚机屏幕的工具),
Virt-clone(虚机克隆工具),
virt-top 等 sVirt:安全工具

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

KVM安装

安装拓扑图:
在win10上安装vmware,在vmware里面安装centos7,在centos7上安装KVM,在kvm里面安装centos7

安装前准备环境:

注意: 虚拟化cpu计数器的解释官方文档有:http://pubs.vmware.com/workstation-12/index.jsp

安装kvm模块,管理工具和libvirt

[root@zmedu63 ~]# yum install kvm virt-manager libvirt -y 注:使用系统镜像,先配置好yum本地源
注:
kvm : KVM虚拟化模块
virt-manager: KVM图形化管理工具
libvirt: 虚拟化服务

查看安装完KVM后的服务:
[root@zmedu63 ~]# service libvirtd start #虚拟化服务
[root@zmedu63 ~]# chkconfig libvirtd on

确定正确加载KVM模块

[root@zmedu63 ~]# lsmod | grep kvm
kvm_intel 50380 0
kvm 305113 1 kvm_intel
检查 KVM 模块是否成功安装
(3).检查KVM 是否成功安装可以使用virsh命令检查虚拟机的状态
[root@zmedu63 ~]# virsh list
Id Name State

使用命令 virt-manager 建立虚拟机

将kvm管理工具从英文界面,切换成中文界面:
[root@zmedu63 ~]# echo $LANG
en_US.UTF-8
[root@zmedu63 ~]# LNAG=‘zh_CN.UTF-8’
[root@zmedu63 ~]# virt-manager


点击右键,新建-然后根据向导安装一个新的虚拟机。





linux桌面虚拟化-KVM相关推荐

  1. Linux桌面虚拟化技术KVM

    内容: • 虚拟化产品对比介绍 • 安装 KVM • 实戓 1:配置 KVM 网络桥接功能 • 实戓 2:使用 KVM 安装虚拟机 虚拟化产品对比介绍 vmware KVM rhel6_x64 xen ...

  2. linux 桌面显示 kvm,Linux的桌面虚拟化技术KVM(五)——virsh常用命令

    (1).virsh常用命令 virsh list 查看已打开虚拟机列表 virsh list --all 查看所有虚拟机列表 virsh version 查看 virsh 版本号 virsh star ...

  3. Linux桌面虚拟化技术--KVM

    文章目录 虚拟化概念 为什么要使用虚拟化 KVM安装以及使用 virsh常用命令 磁盘格式转换 快照管理 虚拟机克隆 虚拟机的网络连接模式 磁盘热添加.扩容 热添加网卡 热添加内存 热添加CPU kv ...

  4. Linux 桌面虚拟化技术 KVM

    KVM:是 Kernel-based Virtual Machine 的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Linux自身的调度 ...

  5. Linux桌面虚拟化技术-KVM

    一. KVM概述 KVM 即 Kernel-based Virtual Machine 基于内核的虚拟机. KVM,是一个开源的系统虚拟化模块,自 Linux 2.6.20 之后集成在 Linux 的 ...

  6. 桌面虚拟化技术 KVM

    Linux 桌面虚拟化技术 KVM KVM: 是指基于Linux 内核的虚拟机(Kernel-based Virtual Machine).是第一个整合到 Linux 内核的虚拟化技术.在 KVM 模 ...

  7. centos7 通过kvm+vnc 实现远程桌面虚拟化和创建windows、Linux虚拟机

    感谢朋友支持本博客.欢迎共同探讨交流,因为能力和时间有限.错误之处在所难免,欢迎指正! 假设转载.请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...

  8. linux界面设计论文,毕业设计(论文)-基于linux的云校园桌面虚拟化系统的设计与实现.doc...

    毕业设计(论文)-基于linux的云校园桌面虚拟化系统的设计与实现.doc 还剩 67页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧, ...

  9. linux虚拟化毕业设计,毕业设计(论文)-基于Linux的云校园桌面虚拟化系统的设计与实现(68页)-原创力文档...

    毕业设计(论文) 题 目: 基于Linux的云校园桌面 虚拟化系统的设计与实现 学 生: 指导老师: 柯 院 别: 软件学院 专 业: 计算机科学与技术 班 级: 1301 学 号: 2015年5月 ...

  10. linux搭建虚拟化平台报告,部署KVM虚拟化平台------搭建(示例代码)

    一 .部署KVM虚拟化平台 hyper-v是windows中的虚拟化 1.KVM模块直接整合在Linux内核中,kvm是内核模块,虚拟机与kvm模块之间为管理工具 2.KVM组成 1.KVM Driv ...

最新文章

  1. CodeGen结构循环回路
  2. 走火入魔 | 暑期电子设计课程学生们的作品
  3. 【拓扑排序】【堆】CH Round #57 - Story of the OI Class 查错
  4. explain ref_数据库查询优化:使用explain分析sql语句执行效率
  5. 【ios】Storyboard教程
  6. Exchange Server 2013预览版服务器角色概况
  7. sql的外键约束和主键约束_SQL约束
  8. php数组比对算法,php学习之两种方法使用比较数组差异的array_diff()函数
  9. AR5B22刷win10的killer驱动
  10. mujoco_py中文文档
  11. WPS Office宏病毒实现shell反弹
  12. 使用Overleaf写作是参考文献引用没按顺序
  13. 设计模式之工厂方法模式(附源码)
  14. 修改计算机配置参数,男子买二手电脑重装系统后才知参数被修改
  15. 小程序 - 接入支付宝预授权支付 笔记
  16. 《过目不忘的读书方法》读书摘要
  17. 关于 麒麟系统启动应用报错“undefined symbol: __cxa_throw_bad_array_new_length, version Qt_5“ 的解决方法
  18. ubuntu linux通过rclone 挂载onedrive 到本地磁盘
  19. 遇到的MAVEN各种问题以及解决方案
  20. 【Android】Intent传递数据量过大的问题android.os.TransactionTooLargeException

热门文章

  1. MTK6577+Android之GPIO驱动简介
  2. mysql如何创建用户代码_Mysql 创建用户 受权_mysql
  3. 软件工程的未来发展趋势
  4. salt returner mysql_saltstack (4) 用mysql存储 salt 返回值
  5. 计算机视觉项目-银行卡卡号自动识别
  6. 格力如失去经销商支持,或将进一步落后于美的,董明珠慌了么?
  7. web前端全栈0基础到精通(祺)10
  8. 爬取招聘信息并进行数据分析及可视化
  9. 青岛大学计算机学院住宿条件,青大学霸宿舍 | 不一般的经济女神与“程序猿”的考研路...
  10. JS中的curry化(柯里化)