22 KVM管理虚拟机-查询虚拟机信息

22 KVM管理虚拟机-查询虚拟机信息22.1 概述22.2 前提条件22.3 查询主机上的虚拟机信息22.4 查询虚拟机基本信息22.5 查询虚拟机基本信息示例

22 KVM管理虚拟机-查询虚拟机信息

22.1 概述

管理员在管理虚拟机的过程中经常需要知道一些虚拟机信息,libvirt提供了一套命令行工具用于查询虚拟机的相关信息。本章介绍相关命令的使用方法,便于管理员来获取虚拟机的各种信息。

22.2 前提条件

查询虚拟机信息需要:

  • libvirtd服务处于运行状态。

  • 命令行操作需要拥有管理员权限。

22.3 查询主机上的虚拟机信息

  • 查询主机上处于运行和暂停状态的虚拟机列表。

    # virsh list

    例如,下述回显说明当前主机上存在3台虚拟机,其中openEulerVM01、openEulerVM02处于运行状态,openEulerVM03处于暂停状态。

     Id    Name                           State
    ----------------------------------------------------
    39   openEulerVM01                   running
    40   openEulerVM02                   running
    69   openEulerVM03                   paused
  • 查询主机上已经定义的所有虚拟机信息列表。

    # virsh list --all

    例如,下述回显说明当前主机上定义了4台虚拟机,其中虚拟机openEulerVM01处于运行状态,openEulerVM02处于暂停状态,openEulerVM03和openEulerVM04处于关机状态。

     Id    Name                           State
    ----------------------------------------------------
    39   openEulerVM01                 running
    69   openEulerVM02                 paused
    -     openEulerVM03                 shut off
    -     openEulerVM04                 shut off

22.4 查询虚拟机基本信息

Libvirt组件提供了一组查询虚拟机状态信息的命令,包括虚拟机运行状态、设备信息或者调度属性等,使用方法请参见表1

表 1 查询虚拟机基本信息

22.5 查询虚拟机基本信息示例

  • 使用virsh dominfo查询一个创建好的虚拟机的基本信息,从查询结果可知,虚拟机ID为5,UUID为ab472210-db8c-4018-9b3e-fc5319a769f7,内存大小为8GiB,vCPU数目为4个等。

    [root@superman-21 ~]# virsh dominfo openEulerVM
    Id:             5
    Name:           openEulerVM
    UUID:           ab472210-db8c-4018-9b3e-fc5319a769f7
    OS Type:       hvm
    State:         running
    CPU(s):         4
    CPU time:       6.8s
    Max memory:     8388608 KiB
    Used memory:    8388608 KiB
    Persistent:     no
    Autostart:     disable
    Managed save:   no
    Security model: none
    Security DOI:   0
    [root@superman-21 ~]#
  • 使用virsh domstate查询虚拟机的当前状态,从查询结果可知,虚拟机openEulerVM当前处于运行状态。

    [root@superman-21 ~]# virsh domstate openEulerVM
    running
    [root@superman-21 ~]#

    使用virsh schedinfo查询虚拟机的调度信息,从查询结果可知,虚拟机CPU预留份额为1024。

    [root@superman-21 ~]# virsh schedinfo openEulerVM
    Scheduler     : posix
    cpu_shares     : 1024
    vcpu_period   : 100000
    vcpu_quota     : -1
    emulator_period: 100000
    emulator_quota : -1
    global_period : 100000
    global_quota   : -1
    iothread_period: 100000
    iothread_quota : -1
    [root@superman-21 ~]#
  • 使用virsh vcpucount查询虚拟机的vCPU数目,从查询结构可知,虚拟机有4个CPU。

    [root@superman-21 ~]# virsh vcpucount openEulerVM
    maximum     live           4
    current     live           4
    [root@superman-21 ~]#
  • 使用virsh domblklist查询虚拟机磁盘设备信息,从查询结构可知,虚拟机有2个磁盘,sda是qcow2格式的虚拟磁盘,sdb是一个cdrom设备。

    [root@superman-21 ~]# virsh domblklist openEulerVM
    Target   Source
    ---------------------------------------------------------------------
    sda     /home/openeuler/vm/openEuler_aarch64.qcow2
    sdb     /home/openeuler/vm/openEuler-20.09-aarch64-dvd.iso
    [root@superman-21 ~]#
  • 使用virsh domiflist查询虚拟机网卡信息,从查询结果可知,虚拟机有1张网卡,对应的后端是vnet0在主机br0网桥上,MAC地址为00:05:fe:d4:f1:cc。

    [root@superman-21 ~]# virsh domiflist openEulerVM
    Interface Type       Source     Model       MAC
    -------------------------------------------------------
    vnet0     bridge     br0       virtio      00:05:fe:d4:f1:cc
    [root@superman-21 ~]#
  • 使用virsh iothreadinfo查询虚拟机I/O线程信息,从查询结果可知虚拟机有5个I/O线程,在物理CPU7-10上进行调度。

    [root@superman-21 ~]# virsh iothreadinfo openEulerVM
    IOThread ID     CPU Affinity
    ---------------------------------------------------
    3               7-10
    4               7-10
    5               7-10
    1               7-10
    2               7-10
    [root@superman-21 ~]#


? 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!


有什么吐槽或反馈意见,直接告诉我!

温馨提示:如出现二维码失效也可直接添加微信号:ysc13803862469

请使用浏览器的分享功能分享到微信等