codecamp

Linux 部署KVM虚拟化平台

防伪码:一场秋雨一场寒,十场秋雨穿上棉。

             第四章 部署KVM虚拟化平台

前言:我们在以前学习过vsphere虚拟化平台,安装过esxi5.5,在esxi5.5上安装过虚拟机,使用vcenter管理esxi,从而实现了虚拟机的迁移,备份,高可用等操作,但是安装成本很高,需要购买正版。今天这一章内容是利用linux内核的一个模块kvm,并使用一些辅助工具来搭建虚拟机,完成和esxi类似的操作,实现linux虚拟化。KVM直接整合到了linux内核,因此在性能、安全性、兼容性、稳定性上都有好的表现。我们都知道,使用虚拟化技术可以为公司节约成本,可以在一台物理机上运行多个系统,充分利用物理机的资源。

KVM虚拟化架构:

由上图得知,在KVM环境中运行的每一个虚拟化操作系统都将表现为单个独立的系统进程,因此它可以很方便的与Linux系统中的安全模块就行整合,

可以灵活地实现资源的管理及分配

一、 安装和部署kvm

1、 我们可以在安装操作系统的时候,选择桌面安装,并选择“现在自定义”,下一步之后选择“虚拟化”,并勾选右侧的所有功能。

但是如果安装系统的时候没有选择也没关系,可以使用yum安装,下面给大家演示使用yum安装。

注:groupinstall “Desktop"            //安装GNOME桌面环境

qemu-kvm.x86_64            //KVM模块

qemu-kvm-tools.x86_64            //KVM调试工具,可不安装

python-virtinst.noarch            //Python组件,记录创建VM时的xml文件

qemu-img.x86_64            //qemu组件,创建磁盘、启动虚拟机等

bridge-utils.x86_64            //网络支持工具

libvirt            //虚拟机管理工具

virt-manager            //图形界面管理虚拟机


验证cpu是否支持虚拟化,如果有输出代表没问题。

上图中没有输出,说明要么cpu不支持,要么没有修改虚拟你的设置,修改方法如下:(需要关闭计算机,修改处理器设置,如下)

 


再次验证:

然后检查kvm模块是否安装好

2、 设置kvm网络

在libvirt中运行kvm网络有两种方法:nat和bridge,默认是nat(用户模式),用户模式可以访问外网,但是无法从外部访问虚拟机网络,所以用的不是很多,我们一般做的服务器都需要外网的访问,所有我们多数情况采用桥接模式(bridge),这种模式允许虚拟机像一台独立的主机一样拥有网络,外部的机器可以直接访问到虚拟机,下面以桥接模式为例:

1)修改网卡配置文件

Vi /etc/sysconfig/network-scripts/ifcfg-eth0

Vi /etc/sysconfig/network-scripts/ifcfg-br0

重启network服务

确认IP地址信息

3、 kvm管理

1) 打开管理软件libvirt

2) 双击图中箭头所指位置

3) 选择“存储”,单击“+”新建存储池,输入/data_kvm/store,这个位置用于存储之后创建的虚拟机。

然后单击完成即可。

 4)按照上面的做法,再创建一个镜像存储池,用于存储系统镜像,方便之后安装系统。

创建完成的结果如下所示

5)创建存储卷

6)新建虚拟机,点击图中的“新建”

上图中选择本地的光盘安装,如果提前把光盘上传到服务器就可以选择“使用ISO镜像”

然后注意选择下面几个地方:

注:时钟偏移选择localtime

选择完成之后选择右下角的“应用”应用这个配置。

 最后选择左上角的begin  installation开始启动虚拟机的安装。

下面的步骤就不用说明了吧,安装好了之后对我们进行管理,例如:快照,备份,挂起等操作。

二、 使用kvm命令管理虚拟机

由于这里的命令有很多,而且多数都很简单,所以在这里我就把重点几个给大家说明一下,其它的命令大家自己练习,学习linux这么长时间了,相信大家没有问题。

我一共安装了三台,下面我以centos1这台为例进行管理。

1、查看虚拟机状态

2、 挂起虚拟机

3、 从挂起恢复虚拟机

4、 配置虚拟机伴随主机自动启动

5、 修改改虚拟机配置信息

通过virsh命令修改:

通过vim命令修改:

6、 虚拟磁盘有raw和qcow2两种格式,默认使用的是raw,raw性能好,速度快,缺点是不支持一些功能,

例如:制作快照,压缩,加密等。下面给大家介绍qcow2格式的使用,这种格式用的比较多,功能多。

1) 转换raw格式到qcow2格式

关闭虚拟机:

转换格式:

2) 修改centos2的xml配置文件

注:修改23行的type=‘qcow2’,修改24行centos1的后缀,改为centos1.qcow2

3) 安装libguestfs-tools工具

4) 安装好上面的工具之后,可以直接读取qcow2格式的磁盘文件,

也可以使用更多的命令,例如查看虚拟机磁盘信息。

 7、 克隆虚拟机

例如:从centos2克隆一台centos4(需要关闭虚拟机)

8、 虚拟机快照(KVM虚拟机要使用镜像功能,磁盘格式必须为qcow2)

1) 为centos3创建快照,并查看快照信息

2) 恢复快照

3) 删除快照

谢谢观看,真心希望能帮到您!

本文出自 “一盏烛光” 博客,谢绝转载!

Linux Nginx+Tomcat负载均衡集群
Linux LVS负载均衡集群
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }