系统极客一直在努力
专注操作系统及软件使用技能

如何在Ubuntu 18.04 LTS上安装和配置KVM

KVM(Kernel-based Virtual Machine,基于内核的虚拟机)是面向 Linux 系统的开源虚拟化解决方案,KVM 使用 Intel VT 或 AMD-V 等虚拟化扩展提供虚拟化功能。当我们在 Linux 机器上安装 KVM 时,它都会通过加载(基于 Intel 的 kvm-intel.ko 或基于 AMD 的 kvm-amd.ko)内核模块将其转换为 Hypervisor。

KVM 允许我们安装和运行(基于 Windows 和 Linux的)多个虚拟机,并通过 virt-manager 图形用户界面或 virt-installvirsh cli 命令创建和管理基于 KVM 的虚拟机。

本文系统极客将向大家介绍如何在 Ubuntu 18.04 LTS 上安装和配置 KVM hypervisor 管理程序。

步骤1:验证Linux系统是否支持硬件虚拟化

您可以执行如下命令验证您的 Linux 系统是否支持硬件虚拟化:

egrep -c '(vmx|svm)' /proc/cpuinfo

如果输出大于 0,则表示系统支持硬件虚拟化。否则请重启系统,然后转到 BIOS 设置中启用 VT 技术。

现在请使用以下命令安装 kvm-ok 实用程序,它用于确定您的服务器是否能够运行硬件加速的 KVM 虚拟机

sudo apt install cpu-checker

运行 kvm-ok 命令并验证输出:

sudo kvm-ok

步骤2:安装KVM及其所需的软件包

请运行以下命令安装 KVM 及其依赖项:

sudo apt update
sudo apt install qemu qemu-kvm libvirt-bin bridge-utils virt-manager

成功安装上述软件包后,您登录的本地用户将自动添加到 libvirtd 组中。

步骤3:启动并启用libvirtd服务

当我们在 Ubuntu 18.04 LTS 中安装 qemu 和 libvirtd 软件包时,将会自动启动并启用 libvirtd 服务。如果 libvirtd 服务没按预期启动或启用,请执行以下命令:

sudo service libvirtd start
sudo update-rc.d libvirtd enable

现在使用下面的命令验证 libvirtd 服务的状态:

service libvirtd status

步骤4:为KVM虚拟机配置网桥

KVM 虚拟机需要通过网桥才能访问 Host 主机或访问网络,所以在安装好之后需要先配置网桥。而 Ubuntu 18.04 的网络由 netplan 实用程序进行管理,在安装 Ubuntu 18.04 系统时就会自动创建 /etc/netplan/50-cloud-init.yaml 文件来配置静态 IP 和网络,而系统会通过 netplan 来引用此文件。

下面我们需要通过 Nano 或 vi 来编辑 /etc/netplan/50-cloud-init.yaml 配置文件:

network:
  version: 2
  ethernets:
	ens33:
	  dhcp4: no
	  dhcp6: no

  bridges:
	br0:
	  interfaces: [ens33]
	  dhcp4: no
	  addresses: [192.168.1.170/24]
	  gateway4: 192.168.1.1
	  nameservers:
		addresses: [192.168.1.1]

我将 Linux 的静态 IP 地址添加到了网桥 br0,并将 ens33 网卡挂到了网桥 br0 下。配置文件中的网桥 IP、网关和 NS 地址请按您的实际情况进行配置。

配置文件更改完成后,请执行如下命令应用更改:

sudo netplan apply

如果要查看调试日志,请使用以下命令:

sudo netplan --debug apply

现在使用以下命令验证网桥状态:

sudo networkctl status -a

ifconfig

步骤5:创建KVM虚拟机

创建 KVM 虚拟机的方式一共有 2 种:

  • virt-manager(GUI 实用程序)
  • virt-install 命令(CLI 实用程序)

使用virt-manager创建虚拟机

要使用 virt-manager 工具创建虚拟机,可以在「终端」中执行如下命令打开:

sudo virt-manager

接下来就是简单的图形化操作,与其它虚拟机的使用方法类似,这里就不赘述了。

使用virt-install命通过CLI创建虚拟机

如果您配置的是 Ubuntu 18.04 Server,当然就需要类似使用以下 virt-install 命令从终端为 KVM 创建 VM 虚拟机。

sudo virt-install -n Sysgeek-Server --description "Test VM for Sysgeek" --os-type=Linux --os-variant=rhel7 --ram=1096 --vcpus=1 --disk path=/var/lib/libvirt/images/ sgserver.img,bus=virtio,size=10 --network bridge:br0 --graphics none --location /home/billyfu/rhel-server-7.3-x86_64-dvd.iso --extra-args console=ttyS0

请根据您的设置替换 VM 名称、描述,ISO 文件的位置和网桥信息。

希望本文可以帮助您快速在 Ubuntu 18.04 上安装和配置 KVM。最后提醒一下,KVM 是 Openstack 的默认管理程序。

赞(0) 赞赏

评论 2

  1. #2

    ifconfig 已经失去维护,用 ip 替代。比如 ip addr 就能显示自己的IP地址。除此之外,创建网桥也能用 ip ,如下:
    sudo ip link add br0 type bridge
    ip a
    提示你已经创建了 br0 网桥。 tun/tap 也能用 ip 创建。 ArchLinux 是个现代化发行版,更新非常激进,默认是没有 ifconfig 的。

    schwa5年前 (2018-11-01)回复
  2. #1

    很好用。不错的方案

    絮沫纷飞6年前 (2018-08-12)回复

微信赞赏