学习目标
1.安装LINUX下虚拟化的kvm(图形、命令)
2.虚拟机的快照
3.从局域网内迁移虚拟机
1.kvm基本概念
kvm(kernal-nssed Virtual Machine):基于内核的虚拟化机,是一个开源的系统虚拟化模型,是基于硬件辅助的开源全虚拟化解决方案,它集成在linux系统中。
全虚拟化功能:vmx,由于kvm是全虚拟化,因此我们必须知道我们的电脑cpu是否支持全虚拟化,可以通过查看以下文件知道:
cat /proc/cpuinfo ##查看cpu的功能
free -m ##查看电脑的内存信息,以便安装虚拟机时进行配置
首先需要安装虚拟机运行的软件(这里yum源已经配置好了,下几个文章会讲如何配置yum源)
yum install qemu-kvm qemu-img
yum install virt-manager
yum install libvirt
yum install libvirt-python
yum install python-virtinst
yum install libvirt-client
安装完毕以后就可以对虚拟机进行管理了
2.图形方式安装虚拟机
【注意】安装虚拟机对电脑的硬件要求:cpu需要支持全虚拟化,默认情况下如果内存超过4g,需要swap的1.5倍,如果超过8g,需要2倍。
##1.调用出虚拟机管理界面
virt-manager ##调出虚拟机的管理界面
##2.准备好镜像文集
rhel-server-7.0-x86_64-dvd.iso
所在位置:/home/kiosk/Documents/linux/10.16
##3.在虚拟机管理器里选则座上角的小电脑 创建一个新的虚拟机
##4.选择第一个本地镜像安装 local install media,选择FORWARD
##5.选择浏览本地browse local,之后选择之前镜像的位置:/home/kiosk/Documents/linux/10.16
##6.设定内存与cpu
“注意”:内存选择必须根据真机的实际内存大小,必须小于真机的实际内存,cpu的数目也必须小于实际的cpu数目
再配置虚拟机的硬盘容量,根据实际需求选择:
##7.设定虚拟机名称为linba,选择finish
“注意”:若虚拟机要开启图界面,内存设置必须大于768M,硬盘设置大于等于5G
##8.选择第一个install Red Hat Enterprise Linux 7.0
安装ing
##9.进入虚拟机设置界面,选择英语
##10.选择中国上海时间,语言英语和简体中文
##11.software selection选择server with GUI–> 关于虚拟机的三个软件不用再选择
若在真机中配置linux系统则需要选择
##12.进入installation destination,选择i will configure a partitioning,选择done完成
选择标准化
/boot 200M,swap 500M,/其余内存全部
##13.选择安装
##14.安装过程中设置root用户密码,普通用户密码
3.命令方式自动安装虚拟机
vim /mnt/virt_create.sh
#!/bin/bash #脚本头文件
virt-install \ #安装虚拟机
--cdrom /home/kiosk/Documents/linux/10.16/rhel-server-7.0-x86_64-dvd.iso \ ##安装包所在位置
--vcpus 1 \ #设置cpu为一核心
--memory 1000 \ #内存为1G
--disk /var/lib/libvirt/images/$1.qcow,size=9,bus=virtio \ #硬盘的信息
--network source=br0,medel=virtio \ #网卡的信息
--name $1 &> /dev/null & #系统的名字为命令后的第一个字符,并且以上所有内容在bash中不显示 并且不占用终端
chmod +x virt_create.sh #给脚本加上执行权限
运行脚本,用绝对路径或者再脚本文件前加sh或./
/mnt/virt_create.sh autolinba
sh virt_create.sh autolinba
./virt_create.sh autolinba
以上步骤仅省略了在虚拟机管理器里新建虚拟机的步骤,进入后还要进行图形化选择。接下来讲解如何将新建的虚拟机设置配置也用命令设置。
yum install system-config-kickstart
yum install httpd
systemctl stop firewalld
systemctl start httpd
验证:在浏览器输入本机ip,如果有界面就说明安装完毕,然后system-config-kickstart打开kickstart进行设置。
4.虚拟机管理的命令
virsh list ##列出当前正在运行的虚拟机
virsh list --all ##列出所有的虚拟机
virsh shutdown 虚拟机名 ##以正常方式关闭此虚拟机(耗时较长)
virsh destory 虚拟机名 ##强制关闭虚拟机
virsh start 虚拟机名 ##开启此虚拟机
virt-viewer 虚拟机名 ##开启虚拟机视图
5.虚拟机快照
1)手动的办法
virt-manager ##打开虚拟机管理器
qemu-img ##是QEMU的磁盘管理工具
[[email protected] images]# qemu-img create -f qcow2 -b /var/lib/libvirt/images/linba.qcow2 /var/lib/libvirt/images/lei.qcow2 ##快照
-f qcow2 ##指定硬盘影响格式
-b linba.qcow2 ##指定所要作快照的后端文件
lei.qcow2 ##快照名
在虚拟机管理界面选择用存在的硬盘添加
选择刚才快照的文件
配置完成后虚拟机可以直接使用
2)命令的方式
[[email protected] mnt]# vim virt_create.sh
#!/bin/bash
echo "create vm $2 ing..."
qemu-img create -f qcow2 \
-b /var/lib/libvirt/images/$1.qcow2 \
/var/lib/libvirt/images/$2.qcow2 &> /dev/null
virt-install \
--name $2 \
--vcpus 1 \
--ram 1000 \
--disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \
--network source=br0,model=virtio \
--import &> /dev/null &
[[email protected] mnt]# sh vm_snopshot.sh linba huihui
6.虚拟机的迁移
1)拷贝虚拟机硬件配置文件(/etc/libvirt/test1.xml文件):
2)拷贝虚拟机系统文件(/var/lib/libvirt/images/test1.qcow2文件):
可以看到在/mnt 目录下存在这两个文件:
3)更改test1.xml文件的属性(+x):为可执行文件
4)移动.qcow2文件到之指定目录:
5)virsh create name.xml
virsh create name.xml ##创建并开启虚拟机(临时)
virsh define name.xml ##创建虚拟机但不开启(永久)
virsh undefine VMname ##删除虚拟机