HCRM博客

如何在CentOS上使用KVM设置虚拟机?

CentOS KVM 虚拟机部署与管理指南

KVM(Kernelbased Virtual Machine)是一套开源的系统虚拟化模块,自Linux 2.6.20起集成在主线内核中,它使用Linux自身的调度器进行管理,因此相对于Xen等其他虚拟化解决方案,其核心源码更少,KVM需要硬件支持,如Intel VT技术或AMDV技术,本文将详细介绍如何在CentOS环境下部署KVM并创建虚拟机,包括安装必要的软件包、配置网络以及管理虚拟机的基本操作。

如何在CentOS上使用KVM设置虚拟机?-图1
(图片来源网络,侵权删除)

实验环境

1、操作系统:CentOS 7.9

2、CPU:支持虚拟化技术(Intel VTx 或 AMDSVM)

3、内存:至少2GB(建议更多以提升性能)

4、硬盘空间:足够的空间存放虚拟机镜像文件及系统文件

5、网络:桥接模式(Bridge)或NAT模式

部署KVM

1、检查CPU是否支持虚拟化

如何在CentOS上使用KVM设置虚拟机?-图2
(图片来源网络,侵权删除)

命令grep E '(vmx|svm)' /proc/cpuinfo

结果:如果输出包含vmxsvm字样,说明CPU支持虚拟化。

2、关闭防火墙和SELinux

停止并禁用防火墙

     systemctl stop firewalld
     systemctl disable firewalld

临时关闭SELinux

     setenforce 0
     vim /etc/sysconfig/selinux
     # 修改为 SELINUX=disabled

3、查看是否加载KVM模块

如何在CentOS上使用KVM设置虚拟机?-图3
(图片来源网络,侵权删除)

命令lsmod | grep kvm

加载KVM模块(如未加载):

     modprobe kvm
     modprobe kvmintel  # 对于Intel CPU

4、清理环境

如果之前安装过kvm,先卸载旧版本:

     yum removerpm qa | egrep 'qemu|virt|kvm' y
     rm rf /var/lib/libvirt /etc/libvirt/

5、安装KVM相关软件包

命令yum install y qemukvm qeMUImg virtmanager libvirt libvirtpython virtinstall bridgeutils

解释

qemukvm:主要的KVM程序包

qemuimg:用于创建和管理磁盘镜像

virtmanager:GUI虚拟机管理工具

libvirt:C语言工具包,提供libvirt服务

virtinstall:基于libvirt服务的虚拟机创建命令

bridgeutils:创建和管理桥接设备的工具

6、启动并设置libvirtd开机自启动

命令

     systemctl start libvirtd
     systemctl enable libvirtd

创建虚拟机

1、准备ISO镜像文件

下载CentOS镜像文件到宿主机的目录,例如/home/iso,可以使用wget命令下载:

     wget http://mirrors.163.com/centos/7.5.1804/isos/x86_64/CentOS7x86_64Minimal1804.iso P /home/iso/

2、创建虚拟机存储目录

创建目录存放虚拟机镜像文件:

     mkdir p /data/kvmimages

3、使用virtinstall创建虚拟机

命令

     virtinstall \
       name centos7 \
       vcpus 2 \
       memory 2048 \
       location /home/iso/CentOS7x86_64Minimal1804.iso \
       disk path=/data/kvmimages/centos7.qcow2,size=20 \
       network bridge=virbr0 \
       graphics none \
       extraargs 'console=ttyS0' \
       force

参数解析

name:虚拟机名称

vcpus:分配的虚拟CPU数量

memory:内存大小(单位MB)

location:CentOS ISO文件路径

disk:虚拟机硬盘文件路径及大小(格式qcow2)

network:网络类型(桥接模式virbr0)

graphics none:不启用图形界面

extraargs:控制台参数

4、连接到虚拟机控制台开始安装操作系统

启动虚拟机并连接控制台:

     virsh start centos7
     virsh console centos7

按屏幕提示完成CentOS的安装过程。

管理虚拟机

1、常用virsh命令

列出所有虚拟机virsh list all

显示虚拟机信息virsh dominfo <vm_name>

显示虚拟机内存和CPU使用情况virsh top <vm_name>

关闭虚拟机virsh shutdown <vm_name>

启动虚拟机virsh start <vm_name>

设置虚拟机跟随系统自启virsh autostart <vm_name>

删除虚拟机virsh undefine <vm_name>

2、远程管理KVM虚拟机

通过virtmanager可以远程管理其他宿主机上的KVM虚拟机,只需添加其他Host连接信息并连接即可,可能需要安装额外的插件,如opensshaskpass或similar。

FAQs(常见问题解答)

1、Q: 为什么虚拟机无法启动,提示不支持嵌套虚拟化?

A: 这个问题通常是由于Windows主机开启了虚拟化驱动支持,解决方法是在“启用或关闭Windows功能”中取消勾选HyperV选项。

2、Q: 如何增加虚拟机的磁盘空间?

A: 可以通过以下步骤增加虚拟机磁盘空间:

1. 关闭虚拟机电源。

2. 使用qemuimg命令增加磁盘文件大小:

        qemuimg resize /data/kvmimages/centos7.qcow2 +10G

3. 重启虚拟机并扩展操作系统内的逻辑卷。

分享:
扫描分享到社交APP
上一篇
下一篇