Linux中的虚拟机管理

一.命令方式管理虚拟机运行 

(需要在root用户下执行)


virsh list           ---显示正在运行的虚拟机的运行情况


virsh list --all    ---显示所有虚拟机运行情况

Linux中的虚拟机管理_第1张图片
virsh shutdown dai ---正常关闭虚拟机dai


virsh destroy dai   ---强制关闭虚拟机dai


virt-viewer dai    ---显示虚拟机dai

Linux中的虚拟机管理_第2张图片
virsh start dai       ---开启虚拟机dai

二虚拟机的迁移

从一台主机转移到另一台主机

html 超文本编辑语言
xml可扩展编辑语言,用来代替html,数据封装
rhel7.1.xml用来调用硬件信息
删除虚拟机的硬件管理文件
virsh

在root用户下执行:
scp [email protected]:/etc/libvirt/qumu/westos.xml .                 ##将172.25.254.16主机上的虚拟机服务文件拷贝到本地
scp [email protected]:/var/lib/libvirt/images/westos.qcow2 .   ##将172.25.254.16主机上的虚拟机硬件文件拷贝到本地

Linux中的虚拟机管理_第3张图片

注意:拷贝的文件路径需要事先查看,不能猜测文件所在位置

 

mv westos.qcow2 /var/lib/libvirt/images/                                          ##将硬件文件移动到安装虚拟机所读取的路径
virsh create westos.xml   ##临时打开westos虚拟机   

临时打开之后,关闭虚拟机,在virt-manager窗口中观察到虚拟机westos消失


virsh define westos.xml   ##永久添加westos虚拟机
virsh undefine westos     ##删除westos虚拟机
cd /var/lib/libvirt/images/
ls                         ##查看虚拟机服务文件

 

三.虚拟机快照

!!虚拟机快照文件从原文件读取内容,但是在镜像虚拟机中一切操作产生的文件都与原文件无关

1)如何对文件进行拍照

cd /var/lib/lib/libvirt/images               ---切换到包含虚拟机硬件配置文件的目录中
ls                                                         ---查看有哪些文件


qemu-img create -f qcow2 -b daizheng.qcow2 node1.qcow2       ---以daizheng,qcow2文件生成快照文件node1.qcow2


ls                                         ---查看当前路径有那些文件
 node1.qcow2                   ---多出一个快照产生的虚拟机硬件配置文件

Linux中的虚拟机管理_第4张图片
virt-manager 在name一行右键导入快照文件生成虚拟机node1   

Linux中的虚拟机管理_第5张图片

进行正常安装程序,得到一个快照虚拟机

 

2)脚本操作生成虚拟机快照,


cd /var/lib/lib/libvirt/images
ls


vim vm_kuaizhao.sh

#!/bin/bash
qemu-img create \                                             ---快照文件新建
-f qcow2 \                                                            ---文件类型时qcow2
-b /var/lib/libvirt/images/$1.qcow2 \                 ---原文件指定路径
/var/lib/libvirt/images/$2.qcow2                        ---快照文件保存路径

virt-install \                                                             ---新安装一个虚拟机
--name $2 \                                                           ---指定虚拟机名称为任意
--ram 1024 \                                                          ---内存为1024M
--vcpus 1 \                                                             ---cpu数量为1个
--network source=br0,model=virtio \                  ---指定网卡设备为br0;网卡工作模式为
--disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \     --- 虚拟机硬件文件路径指定在/var/lib/libvirt/images/dai2.qcow2,;数据总线为virtio模式
--import &>/dev/null &     ##导入

Linux中的虚拟机管理_第6张图片

退出保存

Linux中的虚拟机管理_第7张图片
!!!!!
$1 指的是执行命令后第一个字符串
$2 指的是执行命令后第二个字符串
例如下面的
sh vm_kuaizhao.sh dai 这是$1
sh vm_kuaizhao.sh dai node1 这是$2

sh vm_kuaizhao.sh dai node1      ---执行脚本文件生成虚拟机node1


sh vm_kuaizhao.sh dai node2        ---执行脚本文件生成虚拟机node2    

Linux中的虚拟机管理_第8张图片

                     
3)如何删除镜像虚拟机

virsh destroy node2     ##强行关闭node2虚拟器
virsh undefine node2   ##删除虚拟机node2


rm -fr node2.qcow2     ##删除镜像node2.qcow2文件

Linux中的虚拟机管理_第9张图片

 

 

你可能感兴趣的:(Linux中的虚拟机管理)