KVM命令集管理虚拟机

使用KVM命令集管理虚拟机

查看虚拟机状态

[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 2     c01                            running

虚拟机的关机与开机

[[email protected] ~]# virsh shutdown c01
域 c01 被关闭

[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     c01                            关闭
[[email protected] ~]# virsh start c01
域 c01 已开始

[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 3     c01                            running

还有一种强行关机的方式,类似于直接断电关机的。

[[email protected] ~]# virsh destroy c01
域 c01 被删除

[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     c01                            关闭

启动还有一种通过配置文件启动虚拟机

[[email protected] ~]# virsh create /etc/libvirt/qemu/c01.xml
域 c01 被创建(从 /etc/libvirt/qemu/c01.xml)

[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 4     c01                            running

挂起和恢复虚拟机

[[email protected] ~]# virsh suspend c01
域 c01 被挂起

[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 4     c01                            暂停

挂起后,可以使用下面的命令恢复虚拟机。

[[email protected] ~]# virsh resume c01
域 c01 被重新恢复
[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 4     c01                            running

配置虚拟机实例伴随宿主机自启动

[[email protected] ~]# virsh autostart c01
域 c01标记为自动开始

导出虚拟机配置

这里为了下一步删除虚拟机,先导出一份xml配置文件

[[email protected] ~]# virsh dumpxml c01 > /etc/libvirt/qemu/c02.xml

删除和添加虚拟机

[[email protected] ~]# virsh shutdown c01
域 c01 被关闭
[[email protected] ~]# virsh undefine c01
错误:取消定义域 c01 失败
错误:所需操作无效:无法删除使用 1 快照的不活跃域

这个错误的原因可以明显看出来,因为之前我对c01做过快照,删除虚拟机必须要把快照删除后,在进行undefine

[[email protected] ~]# virsh shutdown c01

[[email protected] ~]# virsh snapshot-delete c01 1533630255
已删除域快照 1533630255
[[email protected] ~]# virsh undefine c01
域 c01 已经被取消定义

这里undefine后,c01.xml文件会消失,但是c01.img磁盘文件还在,所以要删除虚拟机,需要再把c01.img删除。

[[email protected] ~]# ls /etc/libvirt/qemu/
autostart  c02.xml  networks
[[email protected] ~]# ls /vdir/
c01.img  c01.qcow2
[[email protected] ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------

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

[[email protected] ~]# mv /etc/libvirt/qemu/c02.xml /etc/libvirt/qemu/c01.xml
[[email protected] qemu]# virsh define c01.xml
定义域 c01(从 c01.xml)
[[email protected] qemu]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     c01                            关闭

KVM文件管理

通过文件管理可以直接查看、修改、复制虚拟机的内部文件。虚拟机磁盘文件有raw和qcow2两种格式。KVM虚拟机默认使用raw格式,raw格式性能最好,速度最快,但是缺点就是不支持一些新功能,如镜像、Zlib磁盘压缩,AES加密。针对两种格式的文件有不同工具,通过yum安装libguestfs-tools后产生的命令行工具,可以直接读取qcow2格式的磁盘文件,所以需要将raw磁盘文件转换成qcow2的格式。

转换raw格式磁盘文件至qcow2格式。

查看当前磁盘格式:

[[email protected] vdir]# qemu-img info /vdir/c01.img
image: /vdir/c01.img
file format: raw
virtual size: 20G (21474836480 bytes)
disk size: 1.1G

将虚拟机关闭后,转换磁盘文件格式。

[[email protected] vdir]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     c01                            关闭

[[email protected] vdir]# qemu-img convert -f raw -O qcow2 /vdir/c01.img /vdir/c01.qcow2
[[email protected] vdir]# ls /vdir/
c01.img  c01.qcow2

修改c01.xml配置文件。

[[email protected] vdir]# vim /etc/libvirt/qemu/c01.xml

 <disk type=‘file‘ device=‘disk‘>
      <driver name=‘qemu‘ type=‘qcow2‘/>
      #这里的type从raw改成qcow2
      <source file=‘/vdir/c01.qcow2‘/>
      #将源文件类型也要修改
      <target dev=‘vda‘ bus=‘virtio‘/>
      <address type=‘pci‘ domain=‘0x0000‘ bus=‘0x00‘ slot=‘0x06‘ function=‘0x0‘/>
    </disk>

通过yum安装libguestfs-tools后,可以使用一些命令行工具查看qcow2文件。

[[email protected] vdir]# yum install libguestfd-tools -y

[[email protected] vdir]# virt-cat -a /vdir/c01.qcow2 /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="eth0"
DEVICE="eth0"
ONBOOT="yes"
MAC="52:54:00:AE:FC:8A"

虚拟机克隆

[[email protected] vdir]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     c01                            关闭
#保证虚拟机已经关闭
[[email protected] vdir]# virt-clone -o c01 -n c02 -f /vdir/c02.qcow2
WARNING  设置图形设备端口为自动端口,以避免相互冲突。
WARNING  当卷已经被全部分配后,需要的卷容量将超过可用池空间。(20480 M 需要的容量 > 12822 M 可用容量)
正在分配 ‘c02.qcow2‘                                          |  20 GB  00:00:32     

成功克隆 ‘c02‘。

[[email protected] vdir]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     c01                            关闭
 -     c02                            关闭

虚拟机快照

KVM虚拟机要使用镜像功能,磁盘格式必须为qcow2,下面对c01创建快照。

[[email protected] vdir]# virsh snapshot-create c01
已生成域快照 1533777836

查看虚拟机快照版本信息。

[[email protected] vdir]# virsh snapshot-current c01
<domainsnapshot>
  <name>1533777836</name>
  <state>shutoff</state>
  <creationTime>1533777836</creationTime>
  <memory snapshot=‘no‘/>
  <disks>
  .....省略

查看快照信息

[[email protected] vdir]# virsh snapshot-list c01
 名称               生成时间              状态
------------------------------------------------------------
 1533777836           2018-08-09 09:23:56 +0800 shutoff

恢复虚拟机至指定的快照状态。

[[email protected] vdir]# virsh snapshot-revert c01 1533777836

原文地址:http://blog.51cto.com/10693404/2156596

时间: 2024-10-06 09:49:52

KVM命令集管理虚拟机的相关文章

案例:使用KVM命令集管理虚拟机

一.KVM基本功能管理 1.查看命令帮助 virsh -h 或者virsh --help 2.查看KVM配置文件存放目录 ls /etc/libvirt/qemu 3.查看虚拟机状态 virsh list --all 4.虚拟机关机与开机 virsh shutdown c7-1 //关机virsh start c7-1 //开机 强制关闭关闭电源系统 virsh destroy c7-1 5.通过配置文件启动虚拟机 virsh create /etc/libvirt/qemu/c7-1.xmlv

KVM命令集与优化

(一)使用KVM命令集管理虚拟机 1:KVM基本功能管理 (1)查看命令帮助 [[email protected] ~]# virsh -h virsh [options]... [<command_string>] virsh [options]... <command> [args...] .../省略部分内容 2:查看KVM的配置文件存放目录 [[email protected] ~]# ls /etc/libvirt/qemu CentOS7.4-x86_64.xml ne

使用libvirt命令行管理虚拟机

本文主要介绍虚拟机的启动.停止.重启.挂起等基础操作,不过在进行这些操作之前,我们得先有一台kvm虚拟机,根据之前的文章,先创建一台虚拟机. virt-install --name "centos5" --vcpus=1 --ram=512 --disk=/images/kvm/centos55.img,size=10,sparse --force --network bridge=virbr0,model=virtio --cdrom /opt/CentOS-5.5-i386-bin

KVM管理虚拟机命令

KVM基本功能管理 virsh -h 查看命令帮助 kvm的配置存放路径 cd /etc/libvirt/qemu 下有.xml的文件 查看虚拟机的状态 virsh list --all 虚拟机关机与开启 virsh shutdown c1 //关机 virsh start c1 //开机 强行关闭虚拟 virsh destroy cc1 强行关闭电源状态 导出虚拟机配置 virsh dumpxml cc1 > /etc/libvirt/qemu/c1.xml virsh create /etc

kvm命令管理虚拟机

virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式:查网桥命令[[email protected] ~]# brctl showbridge name bridge id STP enabled interfacesbr0 8000.000c295c6c9e no ens33virbr0 8000.52540005d291 yes virbr0-nic (1)基础操作 --- 命令行下管理虚拟机语法结构:virsh

virsh命令管理虚拟机

virsh命令管理虚拟机 libvirt有两种控制方式,命令行和图形界面. 1.图形界面:通过执行名virt-manager,启动libvirt的图形界面,在图形界面下可以一步一步的创建虚拟机,管理虚拟机,还可以直接控制虚拟机的桌面. 2.命令行就是接下来我所说的.如何通过命令行来控制虚拟机. 创建虚拟机 在/etc/libvirt/qemu下新建xml文件,如node.xml.需要有内存.cpu.硬盘设置.光驱以及vnc等等.以下是我根据Openstack启的虚机修改而成,没办法,直接用Ope

KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机

一.KVM简介 KVM(名称来自英语:Kernel-basedVirtual Machine的缩写,即基于内核的虚拟机),是一种用于Linux内核中的虚拟化基础设施,可以将Linux内核转化为一个hypervisor.KVM在2007年2月被导入Linux 2.6.20核心中,以可加载核心模块的方式被移植到FreeBSD及illumos上. KVM在具备Intel VT或AMD-V功能的x86平台上运行.它也被移植到S/390,PowerPC与IA-64平台上.在Linux内核3.9版中,加入A

Linux实现KVM+QEMU+libvirt的虚拟机环境 并使用virsh对虚拟机进行管理

说明: 本文使用的实验环境是运行在windows10上的Vmware workstation 12.5 pro,宿主机操作系统是Ubuntu16(机器名称为KVM_test),kvm+qemu+libvirt安装在KVM_test上.运行在KVM_test上的客户机操作系统也是Ubuntu16(机器名称为test_ubuntu). 本实验需要的软件有Vmware workstation.vnc viewer.ubuntu16的ios镜像.Vnc viewer需要注册码,请自行百度查找. 本实验所

KVM管理虚拟机

笔记内容:KVM管理虚拟机笔记日期:2018-03-08 28.9 克隆虚拟机 28.10 快照管理 28.11 磁盘格式 28.12 磁盘扩容(raw) 28.13 磁盘扩容(qcow2) 28.14 调整cpu内存和网卡 28.15 迁移虚拟机 在上一篇中,我们介绍了如何在 CentOS7上安装并配置KVM,以及通过KVM安装CentOS系统.本篇则是介绍在KVM里安装完虚拟机后,如何使用KVM来管理虚拟机. 克隆虚拟机 克隆虚拟机是虚拟机软件必须得有的功能,这样能省去我们安装系统及环境的时