Centos上部署KVM虚拟机

Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。

一.简介

Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。

KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。而Xen早期则是基于软件模拟的Para-Virtualization,新版本则是基于硬件支持的完全虚拟化。但Xen本身有自己的进程调度器,存储管理模块等,所以代码较为庞大。广为流传的商业系统虚拟化软件VMware ESX系列是基于软件模拟的Full-Virtualization。

1.软件模拟
优点:能够模拟任何硬件,包括不存在的
缺点:功能非常低效,一般用于研究,生产环境不同。
代表:QEM

2.虚拟化层翻译
file

2.1软件全虚拟化,通过虚拟化层翻译 ===> 你和美国人说话 —需要通过翻译=VMware

2.2半虚拟化 改动虚拟机的内核(linux)加上虚拟化层翻译
======>学了英语在和美国人交流 xen(被淘汰)

2.3硬件支持的全虚拟化 ===>你重生到美国和美国人交流KVM

2.4容器虚拟化 docker

二.环境准备

RHEL7中的虚拟化服务软件组:
虚拟化平台 —— "Virtualization Platform"
虚拟化主机 —— "Virtualization Host"
虚拟化客户端 —— "Virtualization Client"

另外需要注意,yum命令的软件组管理操作与RHEL6有些小变化:
yum groups list [hidden] [组名]...
yum groups info [组名]...
yum groups install [组名]...
yum groups remove [组名]...

三.安装

配置本地yum仓库

1.在光驱中插入RHEL7.2的系统光盘(若是虚拟机则连接相应ISO文件),然后在系统中将光盘挂载到/mnt目录。

[root@kvmsvr ~]# mkdir  /mnt/dvd                      //创建挂载点
[root@kvmsvr ~]# vim  /etc/fstab                      //添加开机挂载配置
.. ..
/dev/cdrom    /mnt/dvd      iso9660        ro        0  0
[root@kvmsvr ~]# mount  -a                            //根据fstab配置挂载光盘
mount: /dev/sr0 is write-protected, mounting read-only

2.确认/mnt/dvd访问点

[root@kvmsvr ~]# ls  /mnt/dvd/Packages/*.rpm          //确认软件包位置
.. ..
/mnt/Packages/zsh-5.0.2-14.el7.x86_64.rpm
/mnt/Packages/zziplib-0.13.62-5.el7.i686.rpm
/mnt/Packages/zziplib-0.13.62-5.el7.x86_64.rpm

3.将本地目录/mnt/dvd配置为本机的yum源

[root@kvmsvr ~]# yum-config-manager  --add-repo  file:///mnt/dvd      //添加源
.. ..
[root@kvmsvr ~]# vim  /etc/yum.repos.d/mnt_dvd.repo 
[mnt_dvd]
name=added from: file:///mnt/dvd
baseurl=file:///mnt/dvd
enabled=1
gpgcheck=0                                                      //禁止GPG检查
[root@kvmsvr ~]# yum  repolist                                  //列出可用仓库
mnt_dvd                                 | 4.1 kB     00:00     
(1/2): mnt_dvd/group_gz                   | 136 kB   00:00     
(2/2): mnt_dvd/primary_db                 | 3.6 MB   00:00     
repo id           repo name                              status
mnt_dvd           added from: file:///mnt/dvd            4620
repolist: 4620

确认RHEL7中的虚拟化软件组

1.安装兼容组信息

[root@kvmsvr ~]# yum  groups  mark  convert
.. ..
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Converted old style groups to objects.

2.查看全部软件组,过滤出与虚拟化相关的软件组

[root@kvmsvr ~]# yum  groups  list  hidden| grep  -i  virt
   Virtualization Host
   Virtualization Client
   Virtualization Hypervisor
   Virtualization Tools
   Virtualization Platform

其中主要的KVM软件组包括Virtualization Host、Virtualization Client、Virtualization Platform,其他两个组会由于依赖关系自动被关联。

安装KVM虚拟化

1.安装主要KVM软件组
yum -y groups install "Virtualization Host" "Virtualization Client" "Virtualization Platform"

2.确保libvirtd服务可用
systemctl restart libvirtd
systemctl enable libvirtd

3.确保虚拟系统管理器(virt-manager)可用
在KVM服务器的桌面环境中,可以通过“应用程序”菜单组找到“系统工具”-->“虚拟系统管理器”快捷方式。
file

单击可以成功开启KVM管理工具,可以看到还没有任何虚拟机。
file

四.KVM平台构建及简单管理

新建名为rhel7.2的虚拟机

使用KVM提供的virt-manager图形化管理程序来操作

1.在“虚拟系统管理器”中单击左上方“创建新虚拟机”按钮
file

2.弹出“新建虚拟机”向导,选择“本地安装介质”,单击“前进”
file

3.接下来“定位安装介质”,请正确指定RHEL7系统的ISO光盘镜像文件位置,确认自动识别到操作系统类型,单击“前进”
file

4.选择内存和CPU设置,建议为虚拟机分配内存不小于1024MB,单击“前进”
file

5.为虚拟机启用存储,例如分配一个40GiB的磁盘,单击“前进”
file

6.为虚拟机命名,设为rhel7.2(如图-8所示),单击完成
file

为虚拟机rhel7.2安装操作系统

1.确认新虚拟机从光盘引导,上述设置全部完成后,将会自动开启新虚拟机,并进入安装过程
file

2.完成后续手动安装过程具体过程与普通安装相同,注意禁用防火墙、禁用SELinux机制

3.确认安装结果,新装的虚拟机rhel7.2可以正常启动、登录。在“虚拟系统管理器”中也能够看到此虚拟机
file

克隆虚拟机并验证

1.将被克隆的虚拟机rhel7.2关机,右击选中的虚拟机rhel7.2,选择“关机”-->“强制关机”,根据提示确认即可。
file

2.执行克隆操作,右击已关闭的虚拟机rhel7.2,选择“克隆”,在弹出对话框中指定名称,确认默认设置,然后单击右下角的“克隆”按钮完成操作
file

3.确认克隆结果

新克隆的虚拟机rhel7.2-c1可以正常启动、登录,可以独立运行。在“虚拟系统管理器”中也能够看到此虚拟机
file

删除指定的虚拟机

1.删除虚拟机rhel7.2-c1,将虚拟机rhel7.2-c1关机,右击选择“删除”,在弹出窗口中根据需要确认是否删除虚拟机的磁盘,单击右下角的“删除”按钮即可
file

2.确认删除结果,在“虚拟系统管理器”界面中,虚拟机rhel7.2-c1已经没有了
file

0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论