我们知道vsphere虚拟化平台,安装esxi5.5,在esxi5.5上安装过虚拟机,使用vcenter管理esxi,从而实现了虚拟机的迁移,备份,高可用等操作,但是安装成本很高,需要购买正版。我们可以利用linux内核的一个模块kvm,并使用一些辅助工具来搭建虚拟机,完成和esxi类似的操作,实现linux虚拟化。

KVM直接整合到了linux内核,因此在性能、安全性、兼容性、稳定性上都有好的表现。我们都知道,使用虚拟化技术可以为公司节约成本,可以在一台物理机上运行多个系统,充分利用物理机的资源。

 KVM虚拟化架构

部署KVM虚拟化平台_部署

实验过程

1.准备工作

为了使虚拟机支持虚拟化,需要以下设置

部署KVM虚拟化平台_虚拟化 _02

添加一块硬盘,用来做存储设备

2.安装KVM所需软件

部署KVM虚拟化平台_部署_03

3.验证。重启系统后,查看CPU是否支持虚拟化,对于Inter的服务器可以通过以下命令查看,只要有输出就说明CPU支持虚拟化;AMD服务器可用 cat/proc/cpuinfo | grep smv 命令查看

部署KVM虚拟化平台_虚拟化 _04

检查KVM模块是否安装

部署KVM虚拟化平台_部署_05

4.设置KVM网络

在libvirt中运行KVM网络有两种方法:NATBridge,默认是NAT。

用户模式,即NAT方式,数据包由NAT方式通过主机的接口进行传送,可以访问外网,但是无法从外部访问虚拟机网络。

桥接模式,这种模式允许虚拟机像一台独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机内部,但需要网卡支持,一般有线网卡都支持

这里以Bridge为例

部署KVM虚拟化平台_部署_06

部署KVM虚拟化平台_部署_07

部署KVM虚拟化平台_虚拟化 _08

部署KVM虚拟化平台_部署_09

设置完成后,重启network服务.

5.创建存储目录

(1)将新添加的硬盘进行分区,格式化

部署KVM虚拟化平台_部署_10

(2)新建文件夹,并将新建好的磁盘分区挂载到新建的文件夹

部署KVM虚拟化平台_虚拟化 _11

(3)创建存储池文件,也可以创建一个镜像存储池,用来存放镜像文件

部署KVM虚拟化平台_虚拟化 _12

6.KVM管理

调用libvirt图像化虚拟机管理软件

部署KVM虚拟化平台_KVM_13

部署KVM虚拟化平台_KVM_14

(1)创建存储池,双击"localhost(QEMU)",选择"存储"选项卡,然后单机"+"按钮新建存储池

部署KVM虚拟化平台_部署_15

部署KVM虚拟化平台_部署_16

部署KVM虚拟化平台_虚拟化 _17

(2)以同样的操作创建一个镜像存储池

部署KVM虚拟化平台_虚拟化 _18

部署KVM虚拟化平台_部署_19

(3)创建存储卷

部署KVM虚拟化平台_KVM_20

部署KVM虚拟化平台_虚拟化 _21

(4)回到虚拟机系统管理器,邮寄"localhost(QEMU)",然后选择"新建"选项

部署KVM虚拟化平台_部署_22

部署KVM虚拟化平台_虚拟化 _23

部署KVM虚拟化平台_KVM_24

部署KVM虚拟化平台_KVM_25

部署KVM虚拟化平台_虚拟化 _26

部署KVM虚拟化平台_虚拟化 _27

部署KVM虚拟化平台_部署_28

部署KVM虚拟化平台_虚拟化 _29

部署KVM虚拟化平台_部署_30

使用KVM命令集管理虚拟机

  1. KVM基本功能管理

(1)查看命令帮助

部署KVM虚拟化平台_部署_31

(2)查看KVM的配置文件存放目录

部署KVM虚拟化平台_虚拟化 _32

(3)查看虚拟机状态

部署KVM虚拟化平台_虚拟化 _33

(4)虚拟机关机与开机

首先需要确认acpid服务安装并运行

部署KVM虚拟化平台_部署_34

(5)强制关闭电源

部署KVM虚拟化平台_虚拟化 _35

(6)通过配置文件启动虚拟机

部署KVM虚拟化平台_KVM_36

(7)挂起虚拟机

部署KVM虚拟化平台_虚拟化 _37

(8)恢复虚拟机

部署KVM虚拟化平台_虚拟化 _38

(9)配置虚拟机伴随宿主机自动启动

部署KVM虚拟化平台_部署_39

(10)导出虚拟机配置

部署KVM虚拟化平台_KVM_40

(11)虚拟机的删除与添加

删除虚拟机(虚拟机要关机才能删除)

部署KVM虚拟化平台_虚拟化 _41

查看删除结果,centos6.5的配置文件被删除,但是磁盘文件不会被删除

部署KVM虚拟化平台_KVM_42

通过virsh  list  - -all 查看不到centos6.5 的信息,说明此虚拟机被删除了.

通过备份的配置文件重新定义虚拟机

部署KVM虚拟化平台_部署_43

重新定义虚拟机

部署KVM虚拟化平台_虚拟化 _44

通过以上步骤就可以恢复被删除的虚拟机了.

(12)修改虚拟机配置信息(用来修改系统内存大小,磁盘文件等信息)

直接通过vim命令修改

部署KVM虚拟化平台_部署_45

通过Virsh命令修改

部署KVM虚拟化平台_KVM_46

2.KVM文件管理

虚拟机磁盘文件有raw与qcow2格式,KVM虚拟机默认使用raw格式,raw格式性能最好,速度最快,其缺点是不支持一些新的功能,如镜像,Zlib磁盘压缩,AES加密等.

将raw格式的磁盘文件转换成qcow2的格式

(1)准备工作,安装libguestfs-tools工具

部署KVM虚拟化平台_虚拟化 _47

(2)查看当前磁盘格式

部署KVM虚拟化平台_虚拟化 _48

关闭虚拟机

部署KVM虚拟化平台_部署_49

转换磁盘文件格式

部署KVM虚拟化平台_部署_50

(3)修改centos6.5的xml配置文件

virsh  edit  centod6.5

部署KVM虚拟化平台_虚拟化 _51

(4)virt-cat命令,类似于cat命令

(5)virt-edit命令,用于编辑文件,用法与vim基本一致

(6)virt-df命令用于查看虚拟机磁盘信息

部署KVM虚拟化平台_部署_52

3.虚拟机克隆

(1)查看虚拟机状态(虚拟机应处于关闭状态)

(2)克隆

部署KVM虚拟化平台_KVM_53

(3)克隆完成,可以开启虚拟机运行了

4.虚拟机快照

(1)创建快照

部署KVM虚拟化平台_虚拟化 _54

(2)查看虚拟机快照版本信息

部署KVM虚拟化平台_KVM_55

(3)查看快照信息

部署KVM虚拟化平台_KVM_56

(4)恢复快照

部署KVM虚拟化平台_KVM_57

(5)删除快照

部署KVM虚拟化平台_部署_58