KVM 虚拟化已经是一个工业级的虚拟化解决方案了,以前都是直接下载 VMware,然后安装其他操作系统的,今天我们来体验一下自己动手创建一台虚拟机,这样你就会知道在KVM下创建一台虚拟机,是多么简单的一件事情了,哈哈

step 1 : 首先我们需要检查一下我们的当前主机是否支持cpu虚拟化(如果出现下图,就是支持cpu虚拟化了):

step 2 : 然后我们需要安装一些必要的包:

step 3: 然后我们需要一个虚拟磁盘,相当于我们的系统盘(可以直接用 qemu-img 工具制作,具体使用方式可以用 qemu-img --help 查看,这个工具在上面的包安装过程中已被默认安装):

step 4 : 然后我们需要一个定义虚拟机配置的文件,一般用 xml 文件来描述(示例文件,配置不是很详细和充分):

<name>centos</name>
<memory>1048576</memory>
<currentMemory>1048576</currentMemory>
<vcpu>2</vcpu> <os>
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='ha'/>
</os> <features>
<acpi/>
<apic/>
<pae/>
</features> <clock offset='localtime'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash> <devices>
<emulator>/usr/bin/kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/home/zhangpeng/test.qcow2'/>
<target dev='hda' bus='ide'/>
</disk> <disk type='file' device='cdrom'>
<source file='/home/zhangpeng/centos.iso'/>
<target dev='hdb' bus='ide'/>
</disk> <interface type='bridge'>
<source bridge='default'/>
<mac address="00:16:3e:5d:aa:a8"/>
</interface> <input type='mouse' bus='ps2'/>
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' keymap='en-us'/>
</devices>
</domain> centos_config.xml

centos_config.xml

step 5 : 执行 virsh 命令定义一台虚机:

step 6 : 执行 virsh 命令启动一台虚机:

此时可以用 virsh 查看当前该宿主机所管理的虚机:

step 7 : 此时我们就可以用一些可视化软件连接到创建的该台虚拟机上进行操作了,本文用的是 vncViewer,点击进入下载页面;连接的 ip 地址为宿主机的 ip 地址,可以通过 ifconfig 进行查看:

step 8 : 由于第一次进入系统,显示出安装系统的界面,我们像在物理机上相同的安装操作进行安装就可以了

note: 安装完成后,系统就写入对应的虚拟磁盘中了,这时我们需要更改配置文件(xml) 中的启动项,将其从 cdrom 启动改为从磁盘启动就可以启动系统了:

更改前:

        <os>
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='cdrom'/>
</os>

更改后:

        <os>
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='hd'/>
</os>

注:如果进入虚机之后发现网络不通,请参考这篇博客

可能出错的地方:

1:定义一个主机的时候,可能提示找不到 kvm 目录,有的系统可能目录是/usr/bin/qemu或者是/usr/libexec/qemu-kvm

  2:启动过程中可能出现权限不够的错误提示

3:可能会出现某些 cpu 特征不支持的警告,点击这里查看

参考资料:

https://blog.csdn.net/qq_24369113/article/details/52929439

https://www.linuxidc.com/Linux/2017-05/143292.htm

https://stackoverflow.com/questions/46219552/host-doesnt-support-requested-feature-cpuid-01hedx-ds-bit-21-does-this-warn?answertab=active

KVM---利用 libvirt+qemu-kvm 创建虚拟机的更多相关文章

  1. 烂泥:KVM利用LVM快照快速部署虚拟机

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上一篇文章介绍了有关KVM利用LVM快照备份和恢复虚拟机的功能,这篇文章我们来介绍,如何利用LVM快照功能为KVM快速部署虚拟机. 部署虚拟机需要以下几 ...

  2. 干货分享: 长达250页的Libvirt Qemu KVM的ppt,不实验无真相

    下载地址:Libvirt Qemu KVM 教程大全 http://files.cnblogs.com/popsuper1982/LibvirtQemuKVM.pptx 1. 概论 1.1 虚拟化的基 ...

  3. kvm介绍、安装及创建虚拟机

    kvm虚拟化介绍 一.虚拟化分类 1.虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立 ...

  4. KVM 介绍(8):使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  5. KVM 介绍(6):Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  6. [Virtualization][qemu][kvm][virtio] 使用 QEMU/KVM 模拟网卡多队列

    序: 做DPDK例子的时候,发现一些例子需要多队列,而我当前所使用的虚拟机并不是多队列的.关于我当前虚拟机的状态,可以见前文. 所以,我的需求就是,让虚拟机里的网卡,有多队列! 参考: http:// ...

  7. 通过noVNC和websockify连接到QEMU/KVM 转

    开源项目 QEMU.KVM.libvirt 实现了创建虚拟机,启动虚拟机,监控虚拟机.我们解决了从无到有的问题,这时就该考虑从有到优了.尽管我们能使用 SSH 的方式来登录使用虚拟机,但这种方式从感觉 ...

  8. QEMU KVM Libvirt(12): Live Migration

    由于KVM的架构为 Libvirt –> qemu –> KVM 所以对于live migration有两种方式,一种是qemu + KVM自己的方式,一种是libvirt的方式,当然li ...

  9. qemu kvm 虚拟化

    虚拟化: KVM是一个基于Linux内核的虚拟机,属于完全虚拟化.虚拟机监控的实现模型有两类:监控模型(Hypervisor)和宿主机模型(Host-based).由于监控模型需要进行处理器调度,还需 ...

  10. KVM 介绍(7):使用 libvirt 做 QEMU/KVM 快照和 Nova 实例的快照 (Nova Instances Snapshot Libvirt)

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

随机推荐

  1. HDU 4901 多校4 经典计数DP

    RT 最近不想写博客,累积了一周多的题目,今天趁着周日放假,全部补上吧 dp[i][j]表示前i个数,操作后的值为j的总个数 注意取或不取,有种完全背包的意味.因为数字小于1024,所以异或的结果也绝 ...

  2. Assignment写作谨慎学术抄袭是关键

    学术写作(Academic Writing)作为留学生涯的“必修课”,总是让闻者叹气,抓耳挠腮.初入课堂的留学生,更是缺乏写作经验不知从何下笔,只想仰天长啸“Essay真的好难啊!!”面对一个Essa ...

  3. 负载均衡与CDN简介

    负载均衡 负载均衡是高可用网络基础架构的的一个关键组成部分,有了负载均衡,我们通常可以将我们的应用服务器部署多台,然后通过负载均衡将用户的请求分发到不同的服务器用来提高网站.应用.数据库或其他服务的性 ...

  4. [CSS]水平垂直居中方案

    简单总结一下常用的水平垂直居中方案 直接在父级元素设置 text-align 和 line-height ,针对未浮动的行内元素 <div class="box"> & ...

  5. SecureCRT打开文件中文乱码

    1.菜单:option(选项): 2.选择session options(会话选项): 3.打开的窗口中,点击Appearance(外观): 4.页面上:character encoding(字符编码 ...

  6. mui 横屏 竖屏

    在项目中只有某个页面需要横屏 ,其他的都是竖屏展示的. 假设a页面横屏 ,返回之后竖屏 b页面 a+ 将其设置为横屏显示: b+ 将其设置为竖屏显示 但是进入a页面之后再返回b页面时 b页面也会称为横 ...

  7. 路由反射器(RR)配置

    IBGP与EBGP的区别:是否使用指定源(update-source) 路由反射器(RR)配置: 零:关闭同步,关闭自动汇总. ①:启用BGP ②:在相同BGP-AS下建立邻居. ③:指定路由器及所在 ...

  8. C#应用程序结构

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  9. vue-cli3.x 搭建项目目

    安装文档 https://cli.vuejs.org/zh/guide/ 安装条件 npm 更至最新 node >=8.9 可以用npm -v 查看npm的版本号 1.关于旧版本 Vue CLI ...

  10. python函数-函数初识

    python函数-函数初识 1.函数的定义 语法 def 函数名(参数1,参数2,参数3,...): '''注释''' 函数体 return 返回的值 2.函数的使用原则---先定义后调用 #定义阶段 ...