在 OpenEuler 中配置 KVM 虚拟化环境指南

本指南旨在为读者提供一个详细的步骤说明,帮助大家在 OpenEuler 系统中配置 KVM 虚拟化环境。无论您是初学者还是有一定经验的用户,这份指南都将涵盖从环境准备、安装到虚拟机管理的各个方面,确保您能够顺利地搭建并管理自己的虚拟化平台。

通过本指南,您将学习到:

  • KVM 的基本概念和优势
  • OpenEuler 的环境准备与安装
  • KVM 的配置与管理
  • 常见问题的解决方案

0x01 桥接网卡

首先我们需要先配置一个桥接网卡用于我们的电脑宿主机访问该系统里KVM虚拟化主机

#进入网络脚本路径
cd /etc/sysconfig/network-scripts/
#创建一个桥接网卡
nmcli c a con-name br0 ifname br0 type bridge
#将ens33的连接修改为从属连接
nmcli c modify 'ens33' connection.slave-type bridge master br0
然后配置需要的静态ip,对网桥网卡进行配置,配置完nmcli c r,再分别nmcli c up 本地网卡,nmcli c up br0

0x02 安装组件

最低硬件需求

在openEuler系统中安装虚拟化组件,最低硬件要求:

  • AArch64处理器架构:ARMv8以上并且支持虚拟化扩展
  • x86_64处理器架构:支持VT-x
  • 2核CPU
  • 4GB的内存
  • 16GB可用磁盘空间

这里首先需要配置好yum源

安装必要的组件

 yum install -y qemu libvirt virt-installsystemctl start libvirtdsystemctl enable libvirtd

检查是否安装成功

rpm -qi qemu
rpm -qi libvirt

注意:KVM模块已经集成在openEuler内核中,因此不需要单独安装。

传输镜像到机器上

0x03 安装虚拟机

virt-install \--name oepneuler-1 \--video vga \--memory 1024 \--vcpus 1 \--disk size=20 \--cdrom /kvm/openEuler.iso \--network bridge=br0 \--graphics vnc,listen=0.0.0.0,port=5900 \--noautoconsole#如果提示磁盘大小报错,virsh pool-list --all 检查磁盘大小没问题后使用--check disk_size=off  # 关闭磁盘大小检查 
#一键复制版
virt-install --name oepneuler-1 --video vga --memory 1024 --vcpus 1 --disk size=20 --cdrom /kvm/openEuler.iso --network bridge=br0 --graphics vnc,listen=0.0.0.0,port=5900 --noautoconsole

参数解释

● --name oepneuler-1:○ 设置虚拟机的名称为 oepneuler-1。
● --video vga:○ 指定虚拟机的显卡类型为 vga。这通常用于图形界面操作。
● --memory 1024:○ 分配 1024 MB(即 1 GB)的内存给虚拟机。
● --vcpus 1:○ 为虚拟机分配 1 个虚拟 CPU。
● --disk size=20:○ 创建一个大小为 20 GB 的虚拟磁盘。默认情况下,磁盘类型为 qcow2(可扩展的磁盘格式)。
● --cdrom /kvm/openEuler.iso:○ 指定一个 ISO 文件作为虚拟机的安装介质。在这个示例中,使用的是位于 /kvm/ 目录下的 openEuler.iso。
● --network bridge=br0:○ 让虚拟机通过 br0 网络桥接连接到主机的网络。这允许虚拟机与外部网络通信。
● --graphics vnc,listen=0.0.0.0,port=5900:○ 配置虚拟机的图形输出使用 VNC 协议。listen=0.0.0.0 表示 VNC 服务器将监听所有可用的网络接口,port=5900 指定 VNC 服务器使用的端口号。
● --noautoconsole:○ 不自动打开控制台。这意味着在虚拟机启动后,你不会被自动连接到 VNC 会话,而是需要手动连接。

ss -anltp 可以看到监听端口

通过vnc软件连接上 我这里用remmina进行连接

测试桥接网卡成功生效成功与外部机器进行连接

0x04 虚拟机管理命令

virsh是用于管理虚拟机的命令行工具,提供了一系列命令来创建、启动、停止和管理虚拟机。以下是一些常用的 virsh命令及其功能:

管理

virsh list --all # 列出所有虚拟机及其状态
virsh start vm-01 # 启动虚拟机 vm-01
virsh shutdown vm-01 # 优雅地关闭虚拟机 vm-01
virsh destroy vm-01 # 强制停止虚拟机 vm-01(相当于断电)
virsh reboot vm-01 # 重启虚拟机 vm-01
virsh dominfo vm-01 # 显示虚拟机 vm-01 的详细信息
virsh dumpxml vm-01 # 查看虚拟机 vm-01 的 XML 配置
virsh define vm-01.xml # 根据 XML 文件定义新的虚拟机
virsh undefine vm-01 # 删除虚拟机 vm-01 的定义
virsh suspend vm-01 # 暂停虚拟机 vm-01
virsh resume vm-01 # 恢复虚拟机 vm-01
virsh console vm-01 # 连接到虚拟机 vm-01 的控制台
virsh start vm-01 --autostart # 设置虚拟机 vm-01 为开机自启动
virsh list # 列出正在运行的虚拟机

快照

virsh snapshot-create vm-01 #为vm-01虚拟机创建快照
virsh snapshot-create-as vm-01 snap-test #创建快照的同时,指定快照名称snap-test
qemu-img snapshot -1 /kvm/os/vm-01.qcow2 #查看快照
virsh snapshot-list vm-01 #查看快照
virsh snapshot-revert vm-01 snap-test #恢复虚拟机至快照状态
virsh snapshot-delete vm-01 snap-test #删除指定快照
virsh snapshot-current vm-01 #删除当前快照(即最近一个快照)
virsh snapshot-delete vm-01 --current #同上

克隆

virt-clone -o vm-01 -n vm-02 -f/kvm/os/vm-02.qcow2
virsh start vm-02 #启动虚拟机后,修改hostname,ip等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1547877.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

写一个算法统计在输入字符串中各个不同字符出现的频度并将结果存入文件(字符串中的合法字符为A-Z这26个字母和0-9这十个数字)

题目分析,一共需要最多需要36个位置的数组,我们把前十个数组位置给0-9个数字字符存放空间,10-36的数组空间给到A-Z的存放 int main() {printf("请输入一串字符串内容,并且以#结束输入\n");char arr[36], ch;//26个大写字符10个数字…

重磅!2025年国自然项目指南,发布时间确定!

9月25日,基金委官网发布《《2025年度国家自然科学基金项目指南》征订通知》,据通知,《2025年度国家自然科学基金项目指南》预计于2025年1月中旬正式出版,届时将以电子和纸质两种形式同步刊出,纸质版48元\套&#xff0c…

高校实训产品:教育AI人工智能实训与科研解决方案

保持前沿、提升就业、低成本的教育AI实训全场景方案 产品概述 AIGC实训云图站解决方案为高校提供了灵活、高效的人工智能实训平台。通过弹性裸金属调度技术和GPU虚拟化,实现高性能与低成本的兼顾,为学生和教师提供不受时间和空间限制的实操机会。平台涵…

SpringBoot使用validation进行自参数校验

一:介绍 在 SpringBoot 项目开发中,很多与数据库交互的参数需要校验数据正确性。很多小伙伴会把参数判断写进代码里,但是这种写法往往会有低可读性以及多处使用的时候,需要变更验证规则时,不易于维护等缺点。今天给大家…

五秒Al绘画出图,全球最快的Stable Diffusion教程又来了!秋葉SD零基础入门到精通教程

大家好,我是强哥 今年刷爆全网的Stable Diffution 最近出了无需安装的版本,还支持中文使用! 但是很多小伙伴说不会用 所以给大家找来了中文教程 非常好上手哦! AI绘画Stable Diffusion视频教程 帮助你更好的上手SD智能绘画 …

基于Java+SQL Server2008开发的(CS界面)个人财物管理系统

一、需求分析 个人财务管理系统是智能化简单化个人管理的重要的组成部分。并且随着计算机技术的飞速发展,计算机在管理方面应用的旁及,利用计算机来实现个人财务管理势在必行。本文首先介绍了个人财务管理系统的开发目的,其次对个人财务管理…

回归预测|基于蜣螂优化长短期记忆网络的数据回归预测Matlab程序DBO-LSTM 多特征输入单输出 含基础LSTM

基于蜣螂优化长短期记忆网络的数据回归预测Matlab程序DBO-LSTM 多特征输入单输出 含基础LSTM 文章目录 一、基本原理DBO-LSTM 多特征输入单输出回归预测的原理和流程2.1 蜣螂优化(DBO)2.2 长短期记忆网络(LSTM)3.1 数据准备3.2 模…

代码随想录算法训练营第45天 动态规划part12 |题目: 115.不同的子序列 583. 两个字符串的删除操作 72. 编辑距离 编辑距离总结篇

代码随想录算法训练营第45天 动态规划part12 |题目: 115.不同的子序列 583. 两个字符串的删除操作 72. 编辑距离 编辑距离总结篇 文章来源:代码随想录 题目名称:115.不同的子序列 给定一个字符串 s 和一个字符串 t ,计算在 s 的子…

源码-基于springBoot精准扶贫管理系统

注册 功能概述 提供帮扶干部自助注册功能,注册登记个人基本信息、所在单位等,管理组织审核和帮扶配对后,注册账号即可登录使用。 使用角色:帮扶人员 贫困户档案管理 功能概述 要是建立和查看贫困户档案,包括家庭信息、…

Python(五)-函数

目录 函数的定义与调用 特点 语法格式 函数的参数 函数的返回值 函数嵌套调用 变量的作用域 局部变量 全局变量 函数的多种参数 位置参数 关键字参数 默认参数 可变参数 函数的定义与调用 python函数需要使用def关键字来定义,需要先定义,后调用 特点: 先定义…

遍历递归数结构,修改里的disabled值

返回参数中新增字段 disabled,后端给的值为1和2, disabled1时,代表该节点需要置灰,不可选中 现在需要将disabled的值,改为布尔类型; 后端给的数结构是对象类型,tree接收数组类型; 先将对象类型的数据,遍历递归,修改里面的disabled值,最后再加[ ],改为…

vue项目中的node、node-sass、sass-loader之间的版本关系

这个报错,想必大部分人都会遇到,版本不适配的问题,记录下解决方案。 版本适配问题 node 与node-sass node-sass与sass-loader sass-loader 4.1.1,node-sass 4.3.0sass-loader 7.0.3,node-sass 4.7.2sass-loader 7.3.…

负载均衡--相关面试题(六)

在负载均衡的面试中,可能会遇到一系列涉及概念、原理、实践应用以及技术细节的问题。以下是一些常见的负载均衡面试题及其详细解答: 一、什么是负载均衡? 回答:负载均衡是一种将网络请求或数据传输工作分配给多个服务器或网络资源…

RK 方案VOP 显示接口的链接关系以及DTS如何配置

这图显示各vp 支持情况 如下图VP0 支持DSI0 DSI1 EDP LVDS HDMI 显示接口,如果我们一方案需要点MIPI 屏 和HDMI out, 如果VP0 链接MIPI DSI0 那么VP0 就不能再选择了,只能VP1 链接HDMI out 了。因为VP2不至此HDMI,所有就只有选择VP1 链接HDMI…

磁盘分区与固件启动

扇区是磁盘读写的基本单位,是磁头从磁盘中读取数据的最小单位,一般是512B(现代磁盘还有4 KB),多个相邻的扇区组合在一起形成一个簇。其中磁盘的第一个扇区特别重要,它存储了磁盘分区表。 早期磁盘的第一个…

尚硅谷----智尚代驾项目----Day7(续)------预估乘客订单数据之Drools

Hello uu 们!感谢你们的收看,话不多说,今天开始我们的Drools之旅 Drools介绍 drools是一款由JBoss组织提供的基于Java语言开发的开源规则引擎,可以将复杂且多变的业务规则从硬编码中解放出来,以规则脚本的形式存放在文…

Dapper 如何确保数据的安全性和防止 SQL 注入攻击?

一、什么是SQL注入攻击 SQL注入攻击是一种常见的网络攻击手段,它利用了应用程序中安全措施不足的问题,允许攻击者插入或“注入”一个或多个SQL语句到原本的查询中。这种攻击可以用于获取、篡改或删除数据库中的数据,甚至可以执行一些数据库管…

springboot+大数据基于数据挖掘的招聘信息可视化大屏系统【内含源码+文档+部署教程】

博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ 🍅由于篇幅限制,想要获取完整文章或者源码,或者代做&am…

项目实战:构建高效可扩展的Flask Web框架:集成Flask-SQLAlchemy、Marshmallow与日志管理

前言 在Web开发中,构建一个既高效又可扩展的框架是项目成功的基石。Flask作为一个轻量级的Web应用框架,凭借其易用性和灵活性,特别适合快速开发和原型设计。结合Flask-SQLAlchemy(为Flask提供SQLAlchemy ORM支持的扩展&#xff0…

前端基础面试题·第四篇——Vue(其一)

1.v-if 和 v-show的区别 在Vue中这两个命令都用于控制元素的显示与隐藏。 (1) v-if 动态控制元素显示与隐藏,本质上是动态销毁或者重建元素,会触发浏览器重排与重绘。在切换状态时有一个局部编译/卸载的过程会适当重建或者销毁内部的事件监听、子组件。…