KVM安装虚拟机


一、安装宿主机

  1. 创建虚拟机
  2. KVM安装虚拟机

  3. 配置网络:vim /etc/sysconfig/network-scripts/ifcfg-ens33
    内容如下:
  4. KVM安装虚拟机

  5. ping通百度:
    二、安装KVM
    1、关闭防火墙
    [root@localhost ~]# systemctl stopfirewalld
    [root@localhost ~]# systemctl disable firewalld
  1. 关闭selinuxSetenforce 0
  2. 查看宿主机是否支持虚拟化
    [root@localhost ~]# grep vmx /proc/cpuinfo
    4、通过yum安装wget下载工具
    [root@localhost ~]# yum install -y wget
    5、将系统默认的yum源备份
    mv/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    6、通过wget下载aliyun的yum源
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo7、通过aliyun的yum源安装epel源
    yum install -y epel-release
    8、清除yum
    yum clean all
    9、创建yum缓存
    yum makecache
    10、通过yum进行KVM及其KVM套件的下载和安装
    yum install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install virt-manager python-virtinst libvirt-client virt-viewer –y
    11、测试kvm是否安装成功
    [root@localhost ~]# stat /dev/kvm
    File: ‘/dev/kvm’
    Size: 0 Blocks: 0 IO Block: 4096 character special file
    Device: 5h/5d Inode: 17314 Links: 1 Device type: a,e8
    Access: (0666/crw-rw-rw-) Uid: ( 0/ root) Gid: ( 36/ kvm)
    Context: system_u:object_r:kvm_device_t:s0
    Access: 2020-05-03 00:43:13.392460746 -0400
    Modify: 2020-05-03 00:43:13.392460746 -0400
    Change: 2020-05-03 00:44:57.538645393 -0400
    Birth: -
    12、测试libvirt是否可以正常启动
    [root@localhost ~]# systemctl restart libvirtd
    [root@localhost ~]# systemctl enable libvirtd

    三、桥接网卡的制作
    进行桥接网卡的制作,因为系统并不会自动生成一个桥接网卡。所以必须由我们自己动手创建一个桥接虚拟的网卡。查看宿主机的网卡,将宿主机的网卡进行虚拟机桥接网卡的绑定。我的宿主机的网卡名字是ens33,将ifcfg-ens33复制现有网卡的配置文件,改名为ifcfg-br0.
    1、[root@localhost ~]#
    cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-br0

  1. 修改ifcfg-br0网卡

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0

3、修改ifcfg-ens33。

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

4、重启network服务

[root@localhost ~]# systemctl restart network

#如果在终端工具上重启网卡,连接会断开,要去桌面系统重新启动一次network。

5、重启成功后,查看网卡

[root@localhost ~]# brctl show

四、安装qemu

1、下载安装包

wget https://download.qemu.org/qemu­4.1.0.tar.xz

2、安装依赖包

yum -y install gcc gcc-c++ automake libtool zlib-devel glib2-devel bzip2-devel libuuid-devel spice-protocol spice-server-devel usbredir-devel libaio-devel

3、编译安装

tar xvJf qemu­4.1.0.tar.xz

cd qemu-4.1.0

(1)看编译qemu时是否支持SDL

进入qemu目录

./configure |grep SDL

若显示为no则需进行SDL安装

安装命令

若报冲突错误继续通过

继续通过./configure |grep SDL进行验证是否支持。

./configure

make && make install

默认安装在/usr/local/bin/

4、编译完成后 做软链接

ln -s /usr/local/bin/qemu-system-x86_64 /usr/bin/qemu-kvm

ln -s /usr/local/bin/qemu-system-x86_64 /usr/libexec/qemu-kvm

ln -s /usr/local/bin/qemu-img /usr/bin/qemu-img

5、查看当前qemu版本

qemu-img --version

qemu-kvm --version

五、vncserver的部署

1、准备环境

vnc是远程连接工具,所以需要图形化页面,如果你的宿主机系统的最小化安装的话,请下载图形化工具,

yum groups install "X Window System"或者yum groups install GNOME Desktop

2、下载并安装vnc-server

[root@localhost ~]# yum install tigervnc-server tigervnc vnc vnc-server

3、拷贝vncserver的配置文件到系统配置文件目录中

[root@localhost ~]#

cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

  1. 启动vncserver

[root@localhost ~]# vncserver

password:设置vnc登录的密码

Verify: 再次确认密码

Would you like to enter a view-only password (y/n)? n

6、修改vncserver的配置文件

[root@localhost ~]# vi /etc/systemd/system/vncserver@:1.service

找到[Service]

将<User>改为root用户

7、启动配置文件

[root@localhost ~]# systemctl daemon-reload

[root@localhost ~]# systemctl enable vncserver@:1.service

8、设置登录密码,在设置完一遍时,提示设置第二遍,选择n。

[root@localhost ~]# vncpasswd

Password:

Verify:

Would you like to enter a view-only password (y/n)? n #注意表示"是否输入一个只能查看的密码,选择否",否则连接vnc会出现黑屏

A view-only password is not used

9、启动vncserver

[root@localhost ~]# systemctl start vncserver@:1.service

10、查看端口状态

netstat -lnt | grep 590*

安装完成。

六、开始创建虚拟机

创建虚拟机之前先查看一下是否将足够的磁盘空间交给KVM使用。

1、检查是否加载KVM模块

[root@localhost ~]# lsmod |grep kvm

kvm_intel 183621 0

kvm 586948 1 kvm_intel

irqbypass 13503 1 kvm

2、创建用于存放虚拟机的目录

[root@localhost ~]# mkdir /kvm

[root@localhost ~]# cd /kvm/

然后将需要安装的iso镜像上传到/kvm目录下这里我用的Xshell 7和Xftp 7来完成镜像传输。

3、给虚拟机划分硬盘空间作为虚拟机的硬盘,这里我给了20G空间

[root@localhost kvm]#virt-install --name=kvm-centos7 --ram=1024 --vcpus=2 --disk path=/kvm/kvm-centos7.qcow2,size=10,format=qcow2 --accelerate --cdrom /kvm/CentOS-7-x86_64-DVD-1810.iso --vnc --vnclisten=0.0.0.0 --network bridge=br0,model=virtio --noautoconsole

4、出现如下内容即为成功:

KVM安装虚拟机

5、登录并为虚拟机安装系统

使用vnc viewer, 输入宿主机ip地址,进行安装。

完成安装后点击重启,等待重启完成后,vnc-viewer的连接界面会自动退出。’

6、使用virsh命令查看虚拟机运行状态:

查看到此时虚拟机处于安装后的关机状态

使用启动命令virsh start kvm-centos7

再次输入virsh list --all

7、Vnc viewer中输入宿主机ip 192.168.239.16再次连接进入虚拟机中, 输入用户名和密码登录。

8、登录成功之后查看虚拟机系统磁盘等信息,其中输入 ip addr可以发现当前系统没有配置网络环境,接下来需要进行网络配置。

9、为虚拟机配置网络:

ip addr查看网络名称

ls /etc/sysconfig/network-scripts/

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

网络配置文件中增加如下内容

重启网络

systemctl restart network

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

此时在虚拟机内ping宿主机192.168.111.15依旧能够畅通,网络基础配置完成

10、检测网络配置是否成功以及启动ssh服务

通过vnc连接比较麻烦接下来我们可以尝试在虚拟机上启动一下ssh服务端,这样既能检测上一步的网络配置是否可行也能将我们从vncviewer中解放出来。

vi /etc/ssh/sshd_config

查看该sshd配置文件中有无PermitRootLogin yes配置,无的话添加一行保存退出vi

输入命令 service sshd restart, 显示如下说明重启成功

在kvm宿主机机器或者网内其他联通机器上输入连接命令

ssh root@192.168.239.26

显示如下说明虚拟机上的sshd服务配置重启成功

七、启动客户机

1、在宿主机用命令virsh start kvm-centos7开启客户机。

看到kvm-centos7已经启动。

2、进入客户机进行相关操作:

方法一:可在终端(pc端cmd窗口,xhell7,宿主机终端窗口等)输入ssh root@192.168.239.26

方法二:用软件vnc-viewer进行连接,只需输入宿主机ip地址即可进入桌面化操作界面。

  1. 关闭客户机:

方法一:可在图形化界面点击关机键进行关机操作。

方法二:可在宿主机终端界面使用命令virsh shutdown kvm-centos7

KVM安装虚拟机

如下所示,已经正常关机

KVM安装虚拟机

总结:至此基于kvm创建虚拟机项目已完成,网络使用的为桥接模式,在宿主机上搭建一个名为br0的网桥来实现此功能,之后在客户机上进入相关网卡进行静态配置即可连接网络。

kvm创建虚拟机的制作过程中有以下重要的几点:

  1. 首先查看cpu是否支持虚拟化有vt-x就可以在vmware中选择虚拟化选项,若选择后仍不能开机,则在BIOS中开启VT-d,硬件和BIOS对虚拟化的支持是KVM运行的先行条件。 以我的电脑(华硕)为例,开启VT步骤如下:开机时按F2进入BIOS设置,进去Advanced(高级菜单),进入CPU Configuration(处理器设置),将Intel虚拟化技术改为Enabled,按F10保存设置,然后按Esc退出BIOS设置即可。
    若以上方法仍不管用,有可能是windows的虚拟机与Linux的虚拟机发生冲突,在控制面板/windows功能处关闭即可。
  2. 安装qemu,强烈建议采用源码编译安装,先通过wget命令从官网下载压缩包,然后解压,进入解压目录进行检查,看是否支持SDL,如果不支持采用yum方式下载安装SDL,最后进行编译安装。(安装的默认目录在/usr/local/bin下)。
  3. 编译和传输镜像文件时可采用Xshell 7和Xftp 7.
  4. 强烈建议用vncviewer进行虚拟机的安装,否则安装速度非常慢
  5. 对安装好的客户机进行基础的网络配置,能ping通宿主机就可以。然后再进行ssh配置,这样会方便操作。
发表评论

相关文章