Tips:因为博客园排版的原因,图片显示不清晰,可以放大网页查看清晰图片。

如果系统使用物理机,需要在BIOS里面开启Intel VT-x(或AMD-V),如果是VMware workstation,还须将处理器的虚拟化引擎中的三项开启。

本机主要硬件配置(使用VMware workstation模拟)

CPU:i5-6200U(2核)

内存:4G

硬盘:SATA 100Gx2

网卡:Intel(R) 82574Lx2

安装Linux

这里我使用的是CentOS 7.4,其他发行版的Linux也可以。使用KVM可以完全命令行操作,但本文旨在简单介绍KVM,所以通过GUI操作。附加环境建议选上Compatibility Libraries、Development tools,如果英文水平有限语言可以选择中文,具体如何选择Linux环境查看下一节。

安装KVM

安装KVM有多种方式可供选择

1.安装系统时,在基础环境中选择Virtualization Host,附加环境中选择Virtualization Platform,这将仅安装基础虚拟化环境和命令行工具,此时只能通过命令行管理虚拟机。

2.安装系统时,在基础环境中选择Server with GUI,附加环境选择Virtualization Client, Virtualization Hypervisor, and Virtualization Tools,除了将安装虚拟化环境和命令行工具,还将安装一个管理虚拟机的图形工具(virt-manager)。

3.手动安装

在已经安装好的Linux中,安装下列rpm包。

qemu-kvm:此包提供hypervisor以及宿主机和虚拟机之间的通信。

qemu-img:此包提供虚拟机磁盘管理工具。

libvirt:简单来说就是提供控制hypervisor的库,基于这个库可以编写各种工具管理虚拟机。还提供了负责处理库调用、管理虚拟机和hypervisor的名为libvirtd守护进程。
4.编译安装

Tips:qemu-img是qemu-kvm的依赖包,所以安装命令中可以不敲出qemu-img。

yum install qemu-kvm libvirt

一些可选择的工具包

virt-install:这个包提供了virt-install命令,用于从命令行创建虚拟机。

libvirt-python:这个包包含一个模块,它允许用Python编写的应用程序使用libvirt 提供的API。

virt-manager:这个包提供了virt-manager工具,也称为Virtual Machine Manager。这是一个用于管理虚拟机的图形工具,它使用libvirt-client库作为管理API。

libvirt-client:此包提供用于访问libvirt的API和库,还包括virsh,用于从命令行管理和控制虚拟机。

yum install virt-install libvirt-python virt-manager virt-install libvirt-client

Tips:因为virt-manager是一个图形界面工具,所以要使用virt-manager,Linux必须安装图形界面。

写本文时,我采用的是第3种方式手动部署,并安装了所有列举的可选择包。不过一段时间后我再次使用该方式在CentOS 7.4手动部署,却始终无法启动libvirtd服务,推测是centos默认yum源(Base)中libvirt的版本升级,版本较高导致CentOS 7.4的默认环境不再适用,所以还是更推荐前两种方法,或者手动安装时使用ISO镜像源。

libvirtd服务非常重要,必须确保该服务能够正常运行,才能使用各种管理工具。

GUI创建虚拟机

按 win ,选择全部,打开虚拟系统管理系统,也就是virt-manager

选择从本地安装介质

定位安装介质,这里选择使用ISO映像

可以向默认路径复制系统ISO,然后刷新。

也可以选择本地浏览,选择自定义路径中的映像。

设置内存和CPU

这个可以理解为设置系统盘大小,选项“选择或创建自定义存储”是设置虚拟机存储路径,我这里直接前进使用默认路径。

虚拟机储存路径如图,如果想要手动配置一些硬件相关信息,可以勾选在安装前自定义设置, 网络维持默认的虚拟网络NAT即可。

Tips:如果选择安装前自定义配置,需要再次手动设置ISO映像位置。

点击开始安装

Tips:virt-manager和VMware workstation差不多,多尝试几次就熟悉了,可以参考:https://virt-manager.org/

此外,本文只是简单介绍KVM,更多关于KVM可以参考系列文章

主流服务器虚拟化技术简单使用——KVM(一)的更多相关文章

  1. 主流服务器虚拟化技术简单使用——KVM(二)

    通过Linux工具管理KVM 主流服务器虚拟化技术简单使用——KVM(一)部署了一台KVM主机,提到KVM可以通过命令行工具(virt-install.virsh)和GUI工具(virt-manage ...

  2. 主流服务器虚拟化技术简单使用——Hyper-V(二)

    当在多台Windows Server上部署了hyper-v的时候,需要采用合适的方法管理这些hyper-v节点. 远程桌面 最简单的方法就是逐台远程桌面登陆Windows Server,再使用每台本地 ...

  3. 主流服务器虚拟化技术简单使用——Xen(一)

    Tips:因为博客园网页布局的原因,部分图片显示不清晰,可以放大网页查看清晰图片. 如果系统使用物理机,需要在BIOS里面开启Intel VT-x(或AMD-V),如果是VMware workstat ...

  4. 主流服务器虚拟化技术简单使用——Hyper-V(一)

    Tips:因为博客园排版的原因,图片显示不清晰,可以放大网页查看清晰图片. 如果系统使用物理机,需要在BIOS里面开启Intel VT-x(或AMD-V),如果是VMware workstation, ...

  5. 主流服务器虚拟化技术简单使用——Xen(二)

    管理多台Xen主机可以使用GUI工具virt-manager和xm.xl等命令行工具. Tips:hypervisor一定要选到Xen web管理工具 Xen也有一个简易web管理工具叫xenwebm ...

  6. 虚拟化技术xen,kvm,qemu区别

    虚拟化类型 全虚拟化(Full Virtualization) 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在guest操作系统和裸硬件之间用于工作协调,一些 ...

  7. [51CTO]服务器虚拟化开源技术主流架构之争

    服务器虚拟化开源技术主流架构之争 http://virtual.51cto.com/art/201812/589084.htm 大部分客户已经是KVM+OpenStack的架构了 我所见到的 工商云 ...

  8. 云计算大数据:Xen、KVM、VMware、hyper-v等虚拟化技术的比较

    1.Xen.KVM.VMware.hyper-v等虚拟化技术的比较,xen和kvm,是开源免费的虚拟化软件. vmware是付费的虚拟化软件. hyper-v比较特别,是微软windows 2008 ...

  9. 虚拟化技术:Xen与KVM的对比

    作为开源的虚拟化技术,对比Xen和KVM可以看到,Xen以6个无与伦比的优势领先:更好的可用资源.平台支持.可管理性.实施.动态迁移和性能基准. 可用资源:Xen的问世要比KVM早4年之久(两者分别是 ...

随机推荐

  1. photoshop最全快捷键列表

    一.工具箱(多种工具共用一个快捷键的可同时按[Shift]加此快捷键选取) 矩形.椭圆选框工具 [M] 移动工具 [V] 套索.多边形套索.磁性套索 [L] 魔棒工具 [W] 裁剪工具 [C] 切片工 ...

  2. Openssl genrsa命令

    一.简介 生成RSA私有密钥 二.语法 openssl genrsa [-out filename] [-passout arg] [-f4] [-] [-rand file(s)] [-engine ...

  3. java IO之File基本操作

    public static void main(String[] args) { // TODO Auto-generated method stub //"G:\\JAVA\\test\\ ...

  4. Exception (1) Understanding Exception Handling

    When an exception is thrown, it cannot be ignored--there must be some kind of notification or termin ...

  5. 【小梅哥SOPC学习笔记】SOPC开发常见问题及解决办法集锦

    SOPC开发常见问题及解决办法集锦 一.Symbol 'NULL' could not be resolved 近期在评估使用NIOS II处理器进行项目的开发,我使用的软件是Quartus II 1 ...

  6. PyCharm可用Active Code分享

    目前可用,不保证更新!请及时取用. 6YQUPH9R7H-eyJsaWNlbnNlSWQiOiI2WVFVUEg5UjdIIiwibGljZW5zZWVOYW1lIjoi5o6I5p2D5Luj55C ...

  7. 介绍自己以及github注册流程

    我叫何季生,来自网络工程141,学号是1413042027,我喜欢看一些动漫和游戏,对于编程并不是很厉害希望今年能够有所突破. github注册流程:在刚开始注册github时,我用的是qq浏览器,却 ...

  8. c3p0-数据库连接池原理

    一直用c3p0很久了,但也没时间或没主动去研究过,直到最近频频在出现一些莫名其妙的问题,觉得还是有必要了解和研究一下. c3p0是什么 c3p0的出现,是为了大大提高应用程序和数据库之间访问效率的. ...

  9. [LeetCode 题解]: Anagrams

    Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will be ...

  10. 关于webRTC

    webRTC是浏览器实现的,用来实现p2p实时通讯的协议 现在已经被chrome和firefox支持 webRTC实现了三个API供前端开发者调用 MediaStream(或者叫getUserMedi ...