部署KVM虚拟化平台笔记

KVM(Kernel-based Virtual Machine)是一种基于Linux内核的虚拟化技术,自Linux 2.6.20版本后就被直接整合到Linux内核中。KVM依托CPU虚拟化指令集(如Intel-VT、AMD-V)实现高性能的虚拟化支持。由于与Linux内核高度整合,KVM在性能、安全性、兼容性、稳定性上都有很好的表现。本文将详细记录部署KVM虚拟化平台的过程。

一、环境准备

1. 虚拟机设置

在BIOS或UEFI中开启CPU虚拟化功能。

修改主机名:

hostnamectl set-hostname kvm

su

2. 系统环境设置

关闭防火墙和SELinux:

systemctl stop firewalld

setenforce 0

将镜像光盘设为自动/永久挂载:

mkdir /mnt

vim /etc/fstab

添加以下行

/dev/cdrom /mnt iso9660 defaults 0 0

mount -a

df -hT

二、安装KVM

1. 安装KVM基本组件

使用YUM安装KVM及相关工具:

yum -y install qemu-kvm

yum -y install qemu-kvm-tools

yum -y install virt-install

yum -y install qemu-img

yum -y install bridge-utils

yum -y install libvirt

yum -y install virt-manager

如果系统没有图形界面,可以安装GNOME桌面环境:

yum groupinstall -y "GNOME Desktop"

ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

2. 检测CPU是否支持虚拟化

通过以下命令检测CPU是否支持虚拟化:

cat /proc/cpuinfo | grep vmx # Intel

cat /proc/cpuinfo | grep smv # AMD

3. 开启libvirtd服务

systemctl start libvirtd

systemctl enable libvirtd

三、设置KVM网络

KVM支持两种网络模式:NAT和Bridge。默认是NAT模式,但这里我们使用Bridge模式以允许虚拟机像独立主机一样拥有网络。

1.修改网络接口配置文件,将网络接口设置为桥接模式:

vim /etc/sysconfig/network-scripts/ifcfg-ens33

将DEVICE改为桥接模式

TYPE=Ethernet

BOOTPROTO=none

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

NAME=ens33

DEVICE=ens33

ONBOOT=yes

BRIDGE=br0

创建桥接网卡配置文件

vim /etc/sysconfig/network-scripts/ifcfg-br0

TYPE=Bridge

BOOTPROTO=static

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

NAME=br0

DEVICE=br0

ONBOOT=yes

IPADDR=192.168.23.201 # 根据实际情况设置

NETMASK=255.255.255.0

GATEWAY=192.168.23.1 # 根据实际情况设置

DNS1=8.8.8.8

DNS2=8.8.4.4

2.重启网络服务:

systemctl restart network

四、部署与管理KVM虚拟机

1. 创建存储池和镜像数据目录

mkdir -p /var/lib/libvirt/images

2. 上传CentOS镜像文件

使用FTP、SCP等工具将CentOS的ISO镜像文件上传到服务器上的某个目录,例如/lrz

3. 制作本地YUM仓库

cd /etc/yum.repos.d/

mkdir bak

mv *.repo bak

vim local.repo

添加以下内容

相关推荐
lichenyang4533 小时前
让 VK 小程序调用 HarmonyOS 原生能力:一次跨端 Bridge SDK 的设计与实践
前端
阳光宅男@李光熠3 小时前
【电子通识】一起学习TDK的EMC基础——电池兼容设计方法概述
java·前端·数据库
南雨北斗3 小时前
vue3项目中的env.d.ts文件
前端
烈风逍遥3 小时前
第五篇:通用 LLM 流式对话:前后端联接的完整实现
前端·后端·架构
江湖人称菠萝包3 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter10-Data Visualization
笔记·qt·qt5
aixingpan3 小时前
aixingpan.cn API开发文档:api_docs_trichart_natal_progression_sec_transit2接口指南
前端·php
江华森4 小时前
Web 安全实战:验证机制、会话管理、SQL 注入、XSS 与 CSRF
前端
江华森4 小时前
HTTPS 实战:TLS 握手成本、自制 CA 与证书、三大常见故障
前端
江华森4 小时前
HTTP 再邂逅:报文结构、请求方法、状态码与 Cookie/Session
前端