当前位置: 首页 > news >正文

KVM 虚拟化环境

文章目录

  • KVM 虚拟化环境
    • 虚拟化技术核心基础
      • 1. 核心术语解析
      • 2. 虚拟化的 4 个核心优势
    • VMware Workstation 网络配置
    • KVM 两种安装方式(基于 CentOS Stream 8)
      • 前置:创建 CentOS Stream 8 虚拟机(VMware Workstation 17.5.x)
      • 方式 1:系统自带方式(简单高效,适合快速部署)
        • 步骤 1:安装 CentOS Stream 8 并勾选虚拟化组件
        • 步骤 2:验证 KVM 安装成功
      • 方式 2:YUM 安装方式(灵活可控,适合自定义配置)
        • 步骤 1:安装纯净 CentOS Stream 8
        • 步骤 2:配置本地 YUM 源(依赖 ISO 镜像)
        • 步骤 3:YUM 安装 KVM 组件
    • 四、两种安装方式对比与避坑指南
      • 1. 方式对比
      • 2. 避坑指南(新手必看!)

KVM 虚拟化环境

在云计算和运维领域,虚拟化技术是提升硬件资源利用率、实现环境隔离的核心手段。KVM(Kernel-based Virtual Machine)作为 Linux 内核原生的开源虚拟化方案,凭借轻量、高效、与 Linux 系统深度融合的优势,成为企业级虚拟化的热门选择。而 VMware Workstation 则是搭建本地实验环境的常用工具 —— 今天我们就以CentOS Stream 8为基础,结合虚拟化技术原理、VMware 网络配置,详细拆解 KVM 的两种安装方式,帮你从零掌握 KVM 环境搭建。

虚拟化技术核心基础

在动手安装前,我们需要明确几个关键概念,避免后续操作 “知其然不知其所以然”(内容源自《虚拟化技术.pdf》)。

1. 核心术语解析

  • 物理机(Host Machine):我们实际操作的电脑 / 服务器,是虚拟化环境的 “载体”;
  • 虚拟机(Guest Machine):在物理机上通过软件模拟的独立计算机,拥有自己的 “虚拟硬件”(CPU、内存、磁盘等);
  • Hypervisor(虚拟机监控机):介于物理机硬件和虚拟机之间的软件层,负责资源分配与隔离,KVM 就是一种 Hypervisor;
  • 硬件辅助虚拟化:当前主流的虚拟化技术,依赖 CPU 支持(Intel 的 VT-x 指令集、AMD 的 AMD-V 指令集),无需修改虚拟机操作系统,兼顾兼容性与性能(文档明确 “目前全部使用硬件辅助虚拟化”)。

2. 虚拟化的 4 个核心优势

  • 分区:一台物理机可同时运行多台虚拟机,每个虚拟机对应独立操作系统(如 CentOS、Ubuntu),提升硬件利用率;
  • 隔离:虚拟机间互不影响 —— 哪怕一台虚拟机蓝屏或中病毒,其他虚拟机正常运行;
  • 封装:虚拟机的所有配置(硬件、系统状态)都储存在独立文件中,复制 / 迁移只需拷贝文件;
  • 硬件独立:虚拟机不依赖特定物理硬件,在不同 x86 服务器上无需修改即可运行。

VMware Workstation 网络配置

安装 KVM 前,我们需要用 VMware 创建 CentOS 虚拟机,而网络模式选择直接影响后续虚拟机联网与 KVM 子机通信(内容源自《vmware workstation 网络讲解.docx》)。

VMware 提供 3 种核心网络模式,我们安装 KVM 时选择NAT 模式(适合测试环境,无需手动分配局域网 IP),先对比清楚 3 种模式的差异:

网络模式原理适用场景关键配置(以文档推荐网段为例)
桥接模式(VMnet0)虚拟机通过虚拟网桥直接连接主机网卡,相当于 “独立物理机”,需与主机同网段需外部设备访问虚拟机(如生产环境)虚拟机 IP 与主机同网段(如主机 192.168.1.101,虚拟机 192.168.1.105)
NAT 模式(VMnet8)虚拟机通过虚拟 NAT 设备共享主机 IP 联网,外部无法直接访问虚拟机测试环境、无需独立 IP虚拟机网段 192.168.80.0,DHCP 自动分配 IP(如 192.168.80.128-254)
仅主机模式(VMnet1)虚拟机仅与主机通信,无法联网(需手动共享主机网卡才能联网)纯内网测试、无需外部联网虚拟机网段 192.168.10.0,仅主机可访问

**为什么选 NAT 模式?**无需手动配置 IP、网关,虚拟机可自动联网(方便后续安装依赖),且不会占用局域网真实 IP,适合本地实验环境 —— 这也是我们安装 KVM 时的默认选择。

KVM 两种安装方式(基于 CentOS Stream 8)

无论是哪种方式,前置步骤(创建 VMware 虚拟机)完全一致,先统一完成这部分操作,再分方式安装 KVM。

前置:创建 CentOS Stream 8 虚拟机(VMware Workstation 17.5.x)

  1. 新建虚拟机向导:选择 “自定义(高级)”(推荐高级配置,方便后续调整硬件);
  2. 硬件兼容性:默认 “Workstation 17.5.x”(兼容主流设备);
  3. 操作系统选择:勾选 “稍后安装操作系统”→客户机系统 “Linux”→版本 “CentOS 8 64 位”;
  4. 命名与存储:虚拟机名 “KVM1”,存储路径建议选非系统盘;
  5. 硬件配置
    • 处理器:“处理器数量 1”,“每个处理器的内核数量 4”(总数 4 核,满足 KVM 资源需求);
    • 内存:8192MB(8G,避免内存不足导致虚拟机卡顿);
    • 网络类型:“使用网络地址转换(NAT)”;
    • I/O 控制器:“LSI Logic(推荐)”;
    • 虚拟磁盘:“NVMe(推荐)”→“创建新虚拟磁盘”→容量 100GB→“将虚拟磁盘拆分成多个文件”(方便迁移);
  6. 启用虚拟化引擎:点击 “自定义硬件”→“处理器”→勾选 “虚拟化 Intel VT-x/EPT 或 AMD-V/RV”(硬件辅助虚拟化的关键,不勾 KVM 无法启动!);
  7. 挂载系统镜像:“新 CD/DVD(IDE)”→“使用 ISO 映像文件”→选择 CentOS Stream 8 的 ISO 文件;
  8. 点击 “完成”,虚拟机创建完成。

方式 1:系统自带方式(简单高效,适合快速部署)

核心逻辑:CentOS Stream 8 安装镜像内置了 KVM 相关软件包,安装系统时直接勾选 “虚拟化主机” 组件,无需后续手动安装。

步骤 1:安装 CentOS Stream 8 并勾选虚拟化组件
  1. 启动虚拟机,选择 “Install CentOS Stream 8”;
  2. 语言选择:默认 “English”,点击 “Continue”;
  3. 关键配置:
    • 时间与日期:时区搜索 “Shanghai”,设置正确时间;
    • 安装位置:默认选中 100GB NVMe 磁盘,选择 “自动分区”;
    • 网络与主机名:点击 “Network & Host Name”→开启网卡,系统自动获取 NAT 模式 IP;
    • 软件选择(核心!):点击 “Software Selection”→左侧 “Base Environment” 选择 “Virtualization Host”;
    • Root 密码:点击 “Root Password”→设置密码;
  4. 所有配置完成后,点击 “Begin Installation”,等待安装完成;
  5. 安装完成后,点击 “Reboot System” 重启虚拟机。
步骤 2:验证 KVM 安装成功
  1. 重启后,用 Root 账号登录;

  2. 执行验证命令:virsh version

  3. 若输出以下内容,说明安装成功:

    [root@localhost ~]# virsh version
    Compiled against library: libvirt 8.0.0
    Using library: libvirt 8.0.0
    Using API: QEMU 8.0.0
    Running hypervisor: QEMU 6.2.0
    

方式 2:YUM 安装方式(灵活可控,适合自定义配置)

核心逻辑:先安装纯净 CentOS 系统,再通过 “本地 ISO 镜像” 配置 YUM 源,手动安装 KVM 组件。

步骤 1:安装纯净 CentOS Stream 8
  1. 启动虚拟机,选择 “Install CentOS Stream 8”,语言、时区、安装位置、网络配置与 “方式 1” 一致;
  2. 关键差异:“Software Selection” 选择 “Minimal Install”(最小化安装,仅保留基础系统,不预装虚拟化组件);
  3. 设置 Root 密码,点击 “Begin Installation”,完成后重启。
步骤 2:配置本地 YUM 源(依赖 ISO 镜像)

因为是最小化安装,系统没有默认 YUM 源,需通过挂载 ISO 镜像配置本地源(避免联网依赖):

  1. 登录 Root 账号,先查看 ISO 镜像是否已挂载:执行lsblk,若看到 “sr0”(光盘设备),说明已挂载;

  2. 若未挂载,执行挂载命令:mount /dev/sr0 /mnt

  3. 备份并删除默认 YUM 源:

    cd /etc/yum.repos.d/  # 进入YUM源配置目录
    rm -rf *  # 删除所有默认repo文件
    
  4. 创建本地 YUM 源配置文件:

    vim dvd.repo
    

    (用 vim 编辑,输入以下内容);

    [AppStream]
    name=AppStream  # 源名称
    baseurl=file:///mnt/AppStream  # 源路径(ISO中的AppStream目录)
    enabled=1  # 启用该源
    gpgcheck=0  # 关闭GPG校验(本地源无需校验)[BaseOS]
    name=BaseOS  # 源名称
    baseurl=file:///mnt/BaseOS  # 源路径(ISO中的BaseOS目录)
    enabled=1  # 启用该源
    gpgcheck=0  # 关闭GPG校验
    
  5. 保存退出:按Esc,输入:wq(保存并退出 vim);

  6. 清理并生成 YUM 缓存:

    yum clean all  # 清理旧缓存
    yum makecache  # 生成新缓存(加载本地源)
    
步骤 3:YUM 安装 KVM 组件
  1. 执行安装命令(安装所有虚拟化相关组件):

    yum group install "Virtualization*" -y  # "-y"表示自动确认安装
    
  2. 安装完成后,关机并拍摄快照(可选但推荐):执行poweroff关机→在 VMware 中右键 “KVM1”→“快照”→“拍摄快照”→名称 “kvm ok”;

  3. 重启虚拟机,执行virsh version验证。

四、两种安装方式对比与避坑指南

1. 方式对比

对比维度方式 1(系统自带)方式 2(YUM 安装)
操作复杂度简单(安装系统时勾选即可)稍复杂(需配置 YUM 源、手动安装)
灵活性低(依赖系统内置包,无法自定义)高(可修改 YUM 源,选择安装组件)
适用场景快速部署、测试环境自定义配置、生产环境前置准备
依赖安装镜像内置源本地 ISO 镜像(无需联网)

2. 避坑指南(新手必看!)

  • 坑 1:忘记启用虚拟化引擎症状:KVM 无法启动,执行virsh version报错。解决:在 VMware “自定义硬件”→“处理器” 中,务必勾选 “虚拟化 Intel VT-x/EPT 或 AMD-V/RV”(需 CPU 支持,可通过 LeoMoon CPU-V 工具验证)。
  • 坑 2:YUM 源配置错误症状:方式 2 中yum makecache报错,无法安装组件。解决:检查dvd.repo中的baseurl路径是否正确(必须是file:///mnt/AppStreamfile:///mnt/BaseOS),且 ISO 已挂载到/mnt
  • 坑 3:网络模式选错导致无法联网症状:虚拟机无法获取 IP,ping baidu.com失败。解决:确认网络模式为 “NAT”,且在 CentOS 中已开启网卡(nmcli connection up ens160,ens160 为网卡名,可通过ip addr查看)。
http://www.dtcms.com/a/517438.html

相关文章:

  • 天津平台网站建设推荐公司官网怎么弄
  • 国外建设短视频网站网站开发证书
  • 视频网站建设公司网站没有备案用什么cdn
  • web开发对于svg的简单应用
  • photoshop+做网站logo有谁认识做微网站的
  • xss-labs pass-09
  • 每日两题day20
  • 第二章的时间服务
  • 台州网站建设咨询做快三网站
  • 规划网站站点需要遵循哪些原则免费qq注册入口
  • 深入浅出:详解内存模组U-DIMM与R-DIMM,并厘清与eMMC/Flash的区别
  • 网站设计内容包括明光网站
  • 免费论坛网站大全网站域名如何影响seo
  • Android Crash分析和解决方法总结
  • 常德市做公司网站的公司网络工程师证书报名
  • 上传到网站的根目录中湘潭网站建设方案案例
  • 权重网站建设八大员继续教育入口
  • html做音乐网站网站建设项目实施计划书
  • 从零学算法71
  • 河南企业网站优化外包中低端网站建设客户网
  • Windows Subsystem for Linux 2 (WSL2):Windows 10 11 完全教程(更新至2025年)
  • Python函数进阶秘籍:闭包、装饰器与作用域全解析(通俗版)
  • 软件设计师知识点总结:数据结构与算法(超级详细)
  • 企业网站带手机源码中国最贵的域名交易
  • 做代刷网站赚钱不问政烟台网站
  • 出口贸易公司网站怎么做小程序appid在哪里找
  • 来年做哪个网站能致富建设银行沈阳分行网站
  • 网络攻防技术:网络防御概述
  • 黄页88网站推广怎么样怎样建设凡科网站
  • C#:数组不能使用Const修饰符