安装Hypervisor软件

openEuler 22.03 LTS/openEuler 20.03 LTS/Kylin V10 SP2/Kylin V10/BC Linux 21.10/UOS V20(1050e)/CULinux 3.0/CentOS 7.5(5.10.0)/Tlinux3.1/UOS V20(1050u2e)/Kylin V10 SP3/BC Linux 8.2

  1. 执行如下命令,安装必要的工具软件和库文件。

    • 对于Tlinux3.1:请执行yum install -y libvirt* virt-install virt-viewer edk2*
    • 对于BC Linux 8.2:
      1. 手动修改/etc/yum.repos.d/目录下的.repo文件,编辑gpgcheck=1 enabled=1
      2. 执行如下命令:

        yum install -y libvirt*

        yum install -y virt-install virt-viewer edk2*

    • 其他OS:请执行yum install -y libvirt* virt-install virt-viewer edk2* edk2-devel edk2-help

    openEuler 20.03 LTS/BC Linux 21.10在安装库文件时,若提示“Unable to find a match: virt-install”,请参见openEuler 20.03 LTS/BC Linux 21.10安装virt-install时出错,提示“Unable to find a match: virt-install”处理。

    显示如下,表示安装成功。

    Complete!

  2. 对于Kylin V10 SP2/Kylin V10 SP3,执行如下命令,安装QEMU。

    yum install qemu

    显示如下,表示安装成功。

    Complete!

  3. 执行如下命令,重启libvirtd服务。

    service libvirtd restart

    Redirecting to /bin/systemctl restart libvirtd.service

  4. 执行如下命令,查看Hypervisor是否安装成功。

    virsh version

    显示如下,表示安装Hypervisor成功。

    Compiled against library: libvirt 6.2.0
    Using library: libvirt 6.2.0
    Using API: QEMU 6.2.0
    Running hypervisor: QEMU 6.2.0

Ubuntu 20.04/Ubuntu 22.04/veLinux 1.1

  1. 执行如下命令,安装virt-manager管理虚拟机。

    apt-get install -y virt-manager
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following additional packages will be installed:
    acl adwaita-icon-theme at-spi2-core dns-root-data dnsmasq-base fontconfig fontconfig-config fonts-dejavu-core genisoimage gir1.2-appindicator3-0.1 gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0
    gir1.2-glib-2.0 gir1.2-gstreamer-1.0 gir1.2-gtk-3.0 gir1.2-gtk-vnc-2.0 gir1.2-gtksource-4 gir1.2-libosinfo-1.0 gir1.2-libvirt-glib-1.0 gir1.2-pango-1.0 gir1.2-spiceclientglib-2.0

  2. 执行如下命令,查看virt-manager是否安装成功。

    virt-manager --version

    显示如下,表示安装成功。

    2.2.1

  3. 执行如下命令,安装必要的工具软件和库文件。

    apt-get install -y qemu-kvm libvirt-daemon-system libvirt-clients qemu-system virt-viewer

    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    virt-viewer is already the newest version (7.0-2build1).
    virt-viewer set to manually installed.
    libvirt-clients is already the newest version (6.0.0-0ubuntu8.16).

  4. 执行如下命令,设置libvirtd开机自启动。

    systemctl enable --now libvirtd

  5. 执行如下命令,查询libvirtd的服务状态,确保服务为开机自启动。

    systemctl status libvirtd
    ● libvirtd.service - Virtualization daemon
    Loaded: loaded (/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
    Active: active (running) since Mon 2023-01-09 11:43:00 UTC; 6min ago
    TriggeredBy: ● libvirtd.socket
    ● libvirtd-admin.socket
    ● libvirtd-ro.socket
    Docs: man:libvirtd(8)
    https://libvirt.org
    Main PID: 6314 (libvirtd)
    Tasks: 19 (limit: 32768)
    Memory: 26.7M
    CGroup: /system.slice/libvirtd.service
    ├─6314 /usr/sbin/libvirtd
    ├─6455 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_leaseshelper
    └─6456 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_leaseshelper
    
    Jan 09 11:43:00 atlas systemd[1]: Started Virtualization daemon.
    Jan 09 11:43:01 atlas dnsmasq[6455]: started, version 2.80 cachesize 150
    Jan 09 11:43:01 atlas dnsmasq[6455]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth nettlehash DNSSEC loop-detect inotify dumpfile
    Jan 09 11:43:01 atlas dnsmasq-dhcp[6455]: DHCP, IP range 192.168.122.2 -- 192.168.122.254, lease time 1h
    Jan 09 11:43:01 atlas dnsmasq-dhcp[6455]: DHCP, sockets bound exclusively to interface virbr0
    Jan 09 11:43:01 atlas dnsmasq[6455]: reading /etc/resolv.conf
    Jan 09 11:43:01 atlas dnsmasq[6455]: using nameserver 127.0.0.53#53
    Jan 09 11:43:01 atlas dnsmasq[6455]: read /etc/hosts - 7 addresses
    Jan 09 11:43:01 atlas dnsmasq[6455]: read /var/lib/libvirt/dnsmasq/default.addnhosts - 0 addresses
    Jan 09 11:43:01 atlas dnsmasq-dhcp[6455]: read /var/lib/libvirt/dnsmasq/default.hostsfile

Debian11.8/Debian10.13/veLinux 1.2

  1. 执行如下命令,安装必要的工具软件和库文件。

    apt install -y libvirt* qemu-kvm libvirt-daemon-system libvirt-clients qemu-system-arm virt-viewer virtinst

    显示如下,表示安装成功。

    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    Note, selecting 'libvirt-daemon-config-nwfilter' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-xen' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-system-systemd' for glob 'libvirt*'
    Note, selecting 'libvirt-login-shell' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-storage-iscsi-direct' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-storage-rbd' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-storage-zfs' for glob 'libvirt*'
    Note, selecting 'libvirt0' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-vbox' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-qemu' for glob 'libvirt*'
    Note, selecting 'libvirt-clients' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-config-network' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-system' for glob 'libvirt*'
    Note, selecting 'libvirt-sanlock' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-system-sysv' for glob 'libvirt*'
    Note, selecting 'libvirt-glib-1.0-0' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-storage-gluster' for glob 'libvirt*'
    Note, selecting 'libvirt-daemon-driver-lxc' for glob 'libvirt*'
    Note, selecting 'qemu-system-arm' instead of 'qemu-kvm'
    libvirt0 is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-driver-qemu is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-driver-lxc is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-driver-xen is already the newest version (7.0.0-3+deb11u2).
    qemu-system-arm is already the newest version (1:5.2+dfsg-11+deb11u3).
    libvirt-clients is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-config-network is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-config-nwfilter is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-system-systemd is already the newest version (7.0.0-3+deb11u2).
    libvirt-daemon-system is already the newest version (7.0.0-3+deb11u2).
    libvirt-glib-1.0-0 is already the newest version (3.0.0-1).
    virtinst is already the newest version (1:3.2.0-3).
    virt-viewer is already the newest version (7.0-2).
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

  2. 执行如下命令,重启libvirtd服务。

    service libvirtd restart

    Redirecting to /bin/systemctl restart libvirtd.service

  3. 执行如下命令,查看Hypervisor是否安装成功。

    virsh version

    显示如下,表示安装Hypervisor成功。

    Compiled against library: libvirt 7.0.0
    Using library: libvirt 7.0.0
    Using API: QEMU 7.0.0
    Running hypervisor: QEMU 4.1.0

  4. 执行如下命令,设置libvirtd开机自启动。

    systemctl enable --now libvirtd

  5. 执行如下命令,查询libvirtd的服务状态,确保服务为开机自启动。

    systemctl status libvirtd
    ● libvirtd.service - Virtualization daemon
         Loaded: loaded (/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
         Active: active (running) since Mon 2024-05-27 22:37:51 CST; 7min ago
    TriggeredBy: ● libvirtd-ro.socket
                 ● libvirtd-admin.socket
                 ● libvirtd.socket
           Docs: man:libvirtd(8)
                 https://libvirt.org
       Main PID: 4826 (libvirtd)
          Tasks: 22 (limit: 32768)
         Memory: 67.8M
            CPU: 1.350s
         CGroup: /system.slice/libvirtd.service
                 ├─3476 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_>
                 ├─3477 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/lib/libvirt/libvirt_>
                 └─4826 /usr/sbin/libvirtd