优选主流主机商
任何主机均需规范使用

如何在Ubuntu 18.04 LTS系统上详细安装与配置KVM虚拟机:一步步教程指南

本文介绍了ubuntu 18.04 lts安装kvm虚拟机的方法步骤,分享给大家,具体如下:

前一阵使用在最新的ubuntu 18.04上安装了kvm来虚拟一个小的vm集群,将主要过程和其中遇到的一些问题记录下来。

准备工作

首先需要检查一下cpu是否支持虚拟化,执行一下命令来检查/proc/cpuinfo文件中是否又虚拟化相关的字眼,如果有的话表明cpu支持虚拟化技术。

?

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

上面命令执行结果如果返回0,表示cpu不支持虚拟化技术。当然主板bios中的虚拟化技术也可能不是默认开启的,如果没有开启需要手动开启一下。

安装kvm

执行以下命令安装kvm

?

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

将libvirtd添加自启动

?

1 2 sudo systemctl start libvirtd.service sudo systemctl enable libvirtd.service

网络模式

kvm安装完成后,首先需要进行网络设定,kvm支持四种网络模式:

  1. 桥接模式
  2. nat模式
  3. 用户网络模式
  4. 直接分配设备模式

主要讲一下前两种

桥接(bridge)模式

在桥接模式下,宿主机和虚拟机共享同一个物理网络设备,虚拟机中的网卡和物理机中的网卡是平行关系,所以虚拟机可以直接接入外部网络,虚拟机和宿主机有平级的ip。

原本宿主机是通过网卡eth0连接外部网络的,网桥模式会新创建一个网桥br0,接管eth0来连接外部网络,然后将宿主机和虚拟机的网卡eth0都绑定到网桥上。

使用桥接模式需要进行以下操作:

编辑/etc/network/interfaces,增加如下内容

?

1 2 3 4 5 auto br0 iface br0 inet dhcp # 网桥使用dhcp模式,从dhcp服务器获取ip bridge_ports enp3s0 # 网卡名称,网桥创建前连接外部的网卡,可通过ifconfig命令查看,有ip地址的就是 bridge_stp on # 避免数据链路出现死循环 bridge_fd 0 # 将转发延迟设置为0

接下来需要重启networking服务(如果是通过ssh连接到宿主机上的,这一步会导致网络中断,如果出现问题可能导致连不上宿主机,最好在宿主机上直接操作)

?

1 systemctl restart networking.service

使用ifconfig命令查看ip是否从enp3s0(网桥创建前的网卡)变到了br0上,如果没有变化则需要重启。如果宿主机ip已经成功变到网桥上,并且宿主机能正常上网而虚拟机获取不到ip,可能是ufw没有允许ip转发导致的,编辑/etc/default/ufw允许ip转发。

?

1 default_forward_policy="accept"

重启ufw服务让设置生效

?

1 systemctl restart ufw.service

nat(network address translation)模式

nat模式是kvm默认的网络模式,kvm会创建一个名为virbr0的虚拟网桥,但是宿主机和虚拟机对于网桥来说不是平等的了,网桥会把虚拟机藏在背后,虚拟机会被分配一个内网ip,而从外网访问不到虚拟机。

安装linux虚拟机

使用如下命令安装安装linux虚拟机

?

1 2 3 4 5 6 7 8 sudo virt- install -n ubuntu_3   --description "ubuntu_3"   --os- type =linux --os-variant=ubuntu17.10 -- ram =1024 --vcpus=1   --disk path= /var/lib/libvirt/images/ubuntu_3 .img,bus=virtio,size=50 # 磁盘位置,大小50g   --network bridge:br0 # 这里网络选择了桥接模式   --accelerate   --graphics vnc,listen=0.0.0.0,keymap=en-us # vnc监听端口,注意要选择en-us作为key-map,否则键位布局可能会乱   --cdrom /home/zzy/downloads/ubuntu-18 .04-live-server-amd64.iso # 安装iso路径

安装windows 10虚拟机

安装windows 10虚拟机会出现没有virtio驱动的问题,导致安装程序找不到硬盘,需要先下载virtio驱动。

https://fedoraproject.org/wiki/windows_virtio_drivers

创建虚拟机时,将其加入到cd-rom中

?

1 2 3 4 5 6 7 8 9 10 sudo virt-install -n win10   --description "win10"   --os-type=win --os-variant=win10   --ram=4096 --vcpus=2   --disk path=/var/lib/libvirt/images/win_10.img,bus=virtio,size=100   --network bridge:br0   --accelerate   --graphics vnc,listen=0.0.0.0,keymap=en-us   --cdrom =/home/zzy/downloads/cn_windows_10_consumer_editions_version_1803_updated_march_2018_x64_dvd_12063766.iso --cdrom=/home/zzy/downloads/virtio-win.iso

使用vnc客户端连接虚拟机

执行以下命令查看虚拟机的列表

?

1 sudo virus list

通过上一步查处的虚拟机列表,查看单台机器的vnc端口

?

1 sudo virsh vncdisplay ubuntu_3 # ubuntu_3是虚拟机名称

知道了vnc端口号,就可以使用vnc客户端连接到虚拟机完成安装了。

未经允许不得转载:搬瓦工中文网 » 如何在Ubuntu 18.04 LTS系统上详细安装与配置KVM虚拟机:一步步教程指南