虚拟化技术之kvm基础】的更多相关文章

一.KVM简介 KVM的全称是kernel base virtual machine(基于内核的虚拟机)是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少.KVM已成为学术界的主流VMM之一.KVM的虚拟化需要硬件支持(如Inter VT技术或者AMD V技术),是基于硬件的完全虚拟化.而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完…
虚拟化技术之KVM 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是虚拟化 其实虚拟化技术已经不是一个新技术了,上个世纪六十年代IBM公司已经在使用,只不过后来(上个世纪八十年代)随着PC机的出现,虚拟化为最初的应用目的已经可用武之地了,但是随着X86系统的增多以及PC机性能的提升以及现在业务模式的需要,所以使得虚拟化技术再一次蓬勃发展起来.在上个世纪的1974年有2位很著名的教授Popek和Glodberg在一篇论文中定义了经典虚拟化应该至少满足三个需求: 1>.等…
在前边的博客中我们介绍了如何创建kvm虚拟机,以及一些常用的工具的介绍和使用,今天我们来了解下kvm原始工具qemu-kvm:为什么说qemu-kvm是一个原始的工具呢,如果你用kvm虚拟机,心细的你一定会发现我们不管用什么工具创建kvm虚拟机,在宿主机上表现的都是一个以/usr/libexec/qemu-kvm的进程:这意味着我们之前用的工具它们都调用了qemu-kvm这个工具来创建虚拟机,从而我们在宿主机上看到的都是qemu-kvm进程:如下所示: 提示:以上centos7这个虚拟机上我们之…
在上一篇博客中,我们了解了KVM基础架构和部署以及图形管理工具virt-manager安装虚拟机的过程,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13499801.html:今天我们来聊一下kvm的命令行工具virsh:virsh工具功能非常丰富,它可以全生命周期的管理kvm:比如创建虚拟机,查看虚拟机,动态热插拔硬盘,给虚拟机做快照,迁移.启动.停止.挂起.暂停.删除虚拟机等等操作: 一.KVM工具栈 提示:上图主要描述了kvm的主要工具栈,从大的类…
市场上的VPS商家主要有 Xen ,KVM 和 OpenVZ 三种开源的虚拟化技术 Xen 是一个开放源代码虚拟机监视器,由剑桥大学开发.它打算在单个计算机上运行多达 100个满特征的操作系统.操作系统必须进行显式地修改(“移植”)以在Xen上运行(但是提供对用户应用的兼容性).这使得Xen无需特殊硬件支持,就能达到高性能的虚拟化. KVM(kernel-based Virtual Machine)的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版…
目录 文章目录 目录 前文列表 x86 体系结构的虚拟化 硬件辅助的 CPU 虚拟化 由 VMX 切换支撑的 CPU 虚拟化技术 KVM 的 CPU 虚拟化实现 vCPU 的调度方式 客户机 CPU 拓扑和模型 虚拟机 vCPU 数量分配原则 总结 参考文档 前文列表 <虚拟化技术实现 - 虚拟化技术发展编年史> <虚拟化技术实现 - QEMU-KVM> x86 体系结构的虚拟化 首先回顾一下,我们在<虚拟化技术实现 - 虚拟化技术发展编年史>介绍了 x86 体系结构虚…
在前边的博客中,我们创建KVM虚拟机用到了virt-manager,这个工具是一个图形化工具,创建虚拟机很方便:除此我们还是用virsh define/create +虚拟机配置文件来创建虚拟机,这种方式是通过配置文件的方式,我们把定义虚拟机的信息写成一个.xml格式的描述文件,然后使用virsh这个工具来读取配置文件,从而根据我们定义的配置文件创建虚拟机:今天我们来了解下直接在命令行使用virt-install命令的方式来创建虚拟机; 1.virt-install的帮助信息 [root@nod…
上一篇博客我们主要聊了下virsh 管理kvm虚拟机的命令相关用法和说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13508231.html:今天我们来继续说virsh 管理kvm虚拟机的话题: 1.virsh 监控kvm虚拟机相关命令 virsh domblklist:列出指定虚拟机上的磁盘信息 [root@node1 ~]# virsh help domblklist NAME domblklist - 列出所有域块 SYNOPSIS dombl…
在前边的博客中,我们大致了解了virsh这个工具对kvm虚拟机的一些操作,回顾请参考https://www.cnblogs.com/qiuhom-1874/tag/virsh/:今天我们来了解下kvm的磁盘管理工具qemu-img常用命令的用法: 1.qemu-img的帮助信息 [root@node1 ~]# qemu-img -h qemu-img version 1.5.3, Copyright (c) 2004-2008 Fabrice Bellard usage: qemu-img co…
virt-sysprep这个工具来自libguest-tools这个工具包,它能够把kvm虚拟机对应的磁盘文件做成一个模板,后续我们启动虚拟机就可以基于这个镜像模板启动:什么是镜像模板呢?所谓模板就是去除了一个虚拟机自身的私有信息的一个镜像磁盘文件:我们知道把一个镜像文件启动为虚拟机以后,它会生成许多私有信息,比如网卡的mac地址,ip地址,磁盘的uuid,ssh密钥等等:对于模板我们是不需要把这些私有信息的,而virt-sysprep这个工具就能很好的帮助我们去制作一个模板文件,它能够让我们在…
在前面的博客中,我们介绍了kvm的各种工具,有基于图形管理的virt-manager.有基于命令行管理的virt-install .qemu-kvm.virsh等等:今天我们来介绍一款基于web界面的管理工具kimchi:kimchi是一款基于HTML5的kvm管理工具,它被设计成尽可能容易使用kvm并创建虚拟机web工具,它通过libvirt管理kvm虚拟机.它的运行时基于wok的一个插件方式运行,所以我们要用kimchi这个工具首先要安装wok:官方项目地址:https://github.c…
1.Proxmox proxmox是一个开源的虚拟化管理平台,支持集群管理和HA.在存储方面,proxmox除了支持常用的lvm,nfs,iscsi,还支持集群存储glusterfs和ceph,这也是我们选择它的原因.官方网站http://www.proxmox.com. Proxmox VE (Proxmox VirtualEnvironment) 是一个非常棒的集成OPENVZ[1]支持KVM[2]应用的环境.有方面易用的WEB界面,基于JAVA的UI和内核接口,可以登录到VM客户方便的操作…
KVM虚拟化技术 Qemu-kvm kvm virt-manager VNC Qemu-kvm创建和管理虚拟机 一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machine的缩写,即基于内核的虚拟机),是一种用于Linux内核中的虚拟化基础设施,可以将Linux内核转化为一个hypervisor.KVM在2007年2月被导入Linux 2.6.20核心中,以可加载核心模块的方式被移植到FreeBSD及illumos上. KVM在具备Intel VT或AMD-V功能…
1 什么是 KVM KVM 是指基于 Linux 内核的虚拟机(Kernel-based Virtual Machine). 2006 年 10 月,由以色列的 Qumranet 组织开发的一种新的“虚拟机”实现方案. 2007 年 2 月发布的 Linux 2.6.20 内核第一次包含了 KVM .增加 KVM 到 Linux 内核是 Linux 发展的一个重要里程碑,这也是第一个整合到 Linux 主线内核的虚拟化技术. KVM 在标准的 Linux 内核中增加了虚拟技术,从而我们可以通过优…
1.Xen.KVM.VMware.hyper-v等虚拟化技术的比较,xen和kvm,是开源免费的虚拟化软件. vmware是付费的虚拟化软件. hyper-v比较特别,是微软windows 2008 R2附带的虚拟化组件,如果你买了足够的授权,hyper-v(包括hyper-v 2008 core)都可以免费使用. 如果是vmware或hyper-v虚拟windows系统,不管是虚拟化软件本身,还是其中的子系统,都要支付许可费用. 如果是vmware或hyper-v虚拟linux,虚拟化软件本身…
虚拟化技术应用越来越广泛,虚拟化技术需求越来越强劲.KVM.XEN.Docker等比较热门,尤其是KVM技术越来越受欢迎. 基于此背景,了解一下KVM+QEMU就有点必要了. 从网上收集了一些资料进行科普,由于篇幅太长,分开如下: <关于Linux虚拟化技术KVM的科普 科普一(先用起来!)> <关于Linux虚拟化技术KVM的科普 科普二(KVM虚拟机代码揭秘)> <关于Linux虚拟化技术KVM的科普 科普三(From OenHan)> <关于Linux虚拟化…
http://oenhan.com/archives,包括<KVM源代码分析1:基本工作原理>.<KVM源代码分析2:虚拟机的创建与运行>.<KVM源代码分析3:CPU虚拟化>.<KVM源代码分析4:内存虚拟化>.<KVM源代码分析5:IO虚拟化之PIO>,可以有个基本认识,以及CPU.内存.IO虚拟化(里面的一些图居然没有了,可以在转载地址找到). 这一系列文章按照基础原理.使用以及CPU/Memory/IO虚拟化分析来进行的. KVM源代码分…
KVM:Kernel Virtual Machine KVM是基于虚拟化扩展的x86硬件,是Linux完全原生的全虚拟化解决方案.部分半虚拟化支持,主要是通过半虚拟网络驱动程序的形式用于Linux和Windows客户机系统的. KVM被设计为是一个内核模块,支持广泛的客户机操作系统:在KVM架构中,虚拟机实现为常规的Linux进程.这使KVM能够享受Linux内核的所有功能. KVM模块是KVM虚拟机的核心部分.其主要功能是初始化CPU硬件,打开虚拟化模式,然后将虚拟机客户机运行在虚拟机模式下,…
一 .虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模 拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率. 虚拟化的类型: 全虚拟化 半虚拟化(涉及修改guestos内核,因此仅支持开源kernel的系统) 硬件辅助虚拟化(主板上开启虚拟化支持) 几种虚拟化软件简介 KVM 完全虚拟化 架构:寄居架构(linux…
内存虚拟化 Shadow Paging 作者 Shawn 在其中文博客中很详尽地介绍了 KVM 在只支持一级分页的 x86 平台上用 “Shadow Paging”进行 MMU 虚拟化的实现,由于目前新的 X86 硬件平台提供的虚拟化扩展都能支持两维分页处理,所以笔者在此没必要再细节描述“Shadow Paging” 的实现, 但仍有必要概括一下其特点 : 1. 每个虚拟机对应的 qemu-kvm 进程通过分配不同的虚拟内存区间来映射虚拟机不同的物理内存区域. 每个虚拟机对应的 struct k…
1>虚拟化技术: 计算机虚拟化技术是多种技术的综合实现,它包括硬件平台,操作系统,存储以及网络等,简单地说,虚拟化技术就是在单台主机上可以虚拟多个虚假主机,并可以在这些虚拟主机上运行不同的操作系统平台,虚拟化技术的出现可以节约大量的硬件资源与能源消耗,降低资金成本,虚拟化现在已经是每个企业必有的项目:目前所提供的比较成熟的虚拟化解决方案主要有VMware,Xen,KVM以及Kyper-V,虚拟化技术通过Hypervisor动态模拟与分配计算机硬件资源给虚拟机操作系统,由于Hypervisor可以…
通过Linux工具管理KVM 主流服务器虚拟化技术简单使用——KVM(一)部署了一台KVM主机,提到KVM可以通过命令行工具(virt-install.virsh)和GUI工具(virt-manager)管理虚拟机.实际上virt-install.virsh.virt-manager只是管理工具,如果部署多台KVM,并不需要每一台都安装这些管理工具,因为它们也可以管理其它KVM.甚至于这些管理工具也不一定需要安装在某一台KVM上,可以安装在任意一台Linux中. Tips:virt-instal…
说明:个人理解,KVM是内核虚拟化技术,而内核是不能使用在界面上使用的,那么此时QEMU提供了用户级别的使用界面,相互辅助.当然,单独使用QEMU也是可以实现一整套虚拟机,不过QEMU+KVM基本是标配Linux虚拟机管理工具. 一.介绍: 主要分为三个部分.第一部分是虚拟化技术介绍:第二部分是KVM.QEMU与libvirt介绍,第三部分是对网卡的虚拟介绍. 第一部分: 这一部分是对当期存在的虚拟机技术进行简单的总结与讲解,很多是一句而过的.其实每一个技术都可以重新写出一篇内容丰富的博客,但是…
第一章和第二章 第一章 虚拟化和云计算 Saas(软件即服务):将已经部署好的软件作为一种服务来提供,比如:Google Docs, Google Apps Paas(平台即服务):将开发环境作为一种服务来提供. Iaas(基础设施即服务):将多台服务器组成的“云端”基础设施作为计量服务提供给客户. 软件虚拟化: 利用纯软件的方法在现有的物理平台上(往往并不支持硬件虚拟化)实现对物理平台访问的截获和模拟. 常见的软件虚拟机如QEMU,它是通过纯软件来仿真x86平台处理器的取指.解码和执行,客户机…
Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机 Linux的桌面虚拟化技术KVM(二)——远程桌面管理 (1).KVM虚拟机克隆 KVM虚拟克隆命令virt-clone [选项] 常用选项: -o [原虚拟机],--original [原虚拟机] 原虚拟机,必须关闭或暂停状态 -n [新虚拟机],--name [新虚拟机] 新虚拟机 -f [新虚拟机存储文件],--file [新虚拟机存储文件] 新虚拟机使用的磁盘镜像文件 基于centos7.0克隆一台虚拟机centos7.0-ba…
(1).虚拟化产品对比介绍 虚拟化技术有以下三种:仿真虚拟化,这是一种对系统硬件没有要求,但性能最低的虚拟化技术:半虚拟化,这是一种直接使用物理硬件,性能高,但需要修改内核的虚拟化技术:全虚拟化,这是一种直接使用物理硬件,性能高的虚拟化技术. VMware支持仿真虚拟化,xen支持半虚拟化,KVM支持全虚拟化.其中VMware安装在Windows上,支持虚拟机系统与物理机系统不同:xen在REHL5中自带,安装时需要安装内核kernel-xen,只支持与物理机一样的操作系统:KVM在REHL6中…
KVM虚拟机的配置文件在/etc/libvirt/qemu/下,为xml文件 整体结构如下: <domain type='kvm'> 虚拟机整体信息 系统信息 硬件资源特性 突发事件处理 虚拟磁盘(单个或多个) 虚拟光盘(可选) 虚拟网络(单个或多个) vnc/spice配置 </domain> 在Libvirt官方文档里面,将虚拟机定义为domain,而不是vm(virtual machine).Xen中Domain0表示宿主机系统,而在KVM中,domain完全指虚拟机系统.…
恒天云:http://www.hengtianyun.com/download-show-id-68.html 一.说明 本文主要从功能方面和性能方面对Xen和KVM对比分析,分析出其优缺点指导我们恒天云产品针对不同需求.不同环境下该使用何种虚拟化技术. 二.优缺点对比 Xen 优势 作为开源的虚拟化技术,对比Xen和KVM可以看到,Xen以6个以下优势领先:更好的可用资源.平台支持.可管理性.实施.动态迁移和性能基准. 可用资源:Xen的问世要比KVM早4年之久(两者分别是2003年和2007…
近期一直研究虚拟化技术,曾经对VMware虚拟机有一定的了解,近期突发奇想,能不能在VMware虚拟机中再装一个虚拟机呢? 那么问题就来了,首先,你须要一台电脑,vmware软件,(本人的电脑配置渣渣.内存有点吃不消了),这样我们就能够開始了,先在vmware中装一个ubuntu系统.(最好是64位的).装好系统之后我们就能够在ubuntu系统中装kvm虚拟机了. 第一步:查看我们的硬件是否支持虚拟化: 输入命令: egrep '(vmx|svm)' /proc/cpuinfo 假设支持应该会显…
是骡子是马是拉出来溜溜,通过<KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机>跑一遍,就会对KVM.QEMU-KVM有个大概的认识了. qemu-kvm已经不单独存在,qemu加上-enable-kvm可以实现同样的功能. 关于不同CPU支持的硬件虚拟化技术,参考Processor_support. Intel: VT-x,在/proc/cpuinfo中对应vmx标识.AMD:AMD-V,在/proc/cpuinfo中对应svm标识.ARM:ARMv7-A的A15.A7.A17和ARM…