Bootstrap

Ubuntu20.4系统下安装kvm并创建虚拟机

一.安装Ubuntu20.4系统

安装Ubuntu系统

二.在Ubuntu20.4系统下安装KVM

(以下的命令都是root命令,如果不是请切换至root,或者每个命令前加$ sudo),比如:# apt install bridge-utils(root账号) $sudo apt install bridge-utils(普通账号)

①:su root 切换到root账号下,如果不行,看②
②:sudo passwd root 输入密码并确定密码,然后执行①

1.安装环境可行性检测

① 验证CPU是否支持硬件虚拟化

# grep -Eoc '(vmx|svm)' /proc/cpuinfo //数字大于0,则代表CPU支持硬件虚拟化,反之则不支持

② 检查 VT 是否在 BIOS 中启用

# apt install cpu-checker //检查 VT 是否在 BIOS 中启用
# kvm-ok //如果处理器虚拟化能力没有在 BIOS 中被禁用,命令将会打印出,否则,这个命令将会打印一个失败信息,和打印的消息
		INFO: /dev/kvm exists
		KVM acceleration can be used

2.在 Ubuntu 20.04 上安装 KVM

① 安装KVM

# apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager
# systemctl is-active libvirtd

② 是否安装成功

# lsmod | grep kvm

在这里插入图片描述

③ 启动虚拟化和设置开机自启

# systemctl start libvirtd 
# systemctl enable libvirtd
# systemctl list-unit-files |grep libvirtd.service //打印启动虚拟化和设置开机自启情况

在这里插入图片描述

3.网络环境配置(我这里配置的是网卡)

① 配置网卡桥接模式

# apt install bridge-utils

② 使用命令ifconfig查看自己的ip等

③ 修改01-network-manager-all.yaml文件:

# gedit /etc/netplan/01-network-manager-all.yaml //找到打开文件

文件内容如下:

network:
    version: 2
    ethernets:
        enp3s0:(改为你的网卡名字)
            dhcp4: false
            dhcp6: false
    bridges:
        br0:
            addresses: [192.168.16.231/24](你的ip)
            gateway4: 192.168.16.1 (你的网关)
            nameservers:
                addresses: [202.101.172.35, 8.8.8.8](这是DNS1,DNS2)
                search: [msnode]
            interfaces: [enp3s0(改为你的网卡名字)]

内容说明:enp3s0是网卡名。新增网桥br0,IPv4固定为192.168.16.231/24。nameservers是指DNS服务,网桥br0绑定到网卡enp3s0。这些内容用户可自行配置

④ 启用配置,并重启网络

# netplan apply
# systemctl restart network-manager.service

⑤ 重启网络服务

# systemctl restart network	

三.kvm虚拟机及其磁盘映像文件(CentOS 7.9)制作

1.操作系统镜像准备

① 上传准备好的系统镜像安装文件,本文中使用的是Centos7(最好去阿里找一个你需要的镜像版本)

阿里镜像库

② 存放在/root/isolib目录下,并创建后面用户存储虚拟机实体磁盘映像文件的目录

# mkdir -p /root/kvmraw/tmp //如果报kvm创建虚拟机报权限不够,创建失败,就换个文件夹,不要放在root文件夹下

2.创建虚拟机(把我加的括号删掉,在执行下面的命令)

# virt-install --name=kvm-centos7 --ram=2048 --vcpus=2 --disk path=/root/kvmraw/centos7v1(虚拟机名称和位置).qcow2,size=10,format=qcow2 --accelerate --cdrom /root/isolib/CentOS-7-x86_64-DVD-1611.iso(你的镜像名称和位置) --vnc  --vnclisten=0.0.0.0 --network bridge=br0,model=virtio(执行完会创建虚拟机,并且弹出页面)

3.安装CentOS 7.9

① 第一页的语言选择中文 -> 简体中文 中国

② 第二页 点击一下安装位置, 然后直接点击完成(自动配置)
点击开始安装

在这里插入图片描述

③ 选择自动分区,你要想手动分区也可以

在这里插入图片描述

④ 安装过程界面如下,此时我们需要点击用户设置 -> ROOT密码

在这里插入图片描述

⑤ 在这里需要设置ROOT用户密码,随后点击完成

在这里插入图片描述

⑥ 完成之后界面如下, 等待安装进度条完成

在这里插入图片描述

⑦ 点击重启,等待重启完成

# virsh list --all

 Id    Name                           State
----------------------------------------------------    
 -     kvm-centos7                    running

⑧ 使用启动命令virsh start kvm-centos7进行登录

在这里插入图片描述

⑨ 登录成功之后查看虚拟机系统磁盘等信息,其中输入 == # ip addr == 可以发现当前系统没有配置网络环境,接下来需要进行网络配置
在这里插入图片描述

4. 为虚拟机配置网络

①# ip addr查看网络名称

在这里插入图片描述

② 查看eth0文件

# ls /etc/sysconfig/network-scripts/

在这里插入图片描述

③ 编辑网络配置文件

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

④ 网络配置文件中增加如下内容(只是增加属性,但是属性的值不对)

在这里插入图片描述
⑤ 通过# gedit /etc/netplan/01-network-manager-all.yaml(宿主机执行的命令)和 ifconfig(可以查看子网掩码)命令查看宿主机的一些属性,根据相关属性去修改虚拟机的 vi /etc/sysconfig/network-scripts/ifcfg-eth0文件(这步就是第④你新加属性的值)

network:
    version: 2
    ethernets:
        enp3s0:(改为宿主机的网卡名称)
            dhcp4: false
            dhcp6: false
    bridges:
        br0:
            addresses: [192.168.16.231/24](你的ip)
            gateway4: 192.168.16.1(网关)
            nameservers:
                addresses: [202.101.172.35, 8.8.8.8](DNS1,DNS2)
                search: [msnode]
            interfaces: [enp3s0(改为宿主机的网卡名称)]

⑥ 重启网络

# systemctl restart network

⑦ 输入 ip addr 如下图所示说明配置成功

在这里插入图片描述

⑧ 使用虚拟机ping 宿主机,然后设置虚拟机开机自启(在宿主机执行以下命令,设置虚拟机的一些属性)

在这里插入图片描述

;