RedHat9 KVM虚拟技术

以下有使用RedHat9单独的虚拟机也有使用RHEL9学员练习机和RHEL7学员练习机

KVM虚拟技术介绍

Linux的KVM(Kernel-based Virtual Machine)虚拟技术是一种基于Linux内核的虚拟化解决方案。它允许在单个物理服务器上创建和运行多个隔离的虚拟机,每个虚拟机都有自己的操作系统和应用程序,就像运行在独立的物理服务器上一样。

KVM虚拟技术的核心特点包括:

  1. 硬件虚拟化支持:KVM利用CPU的虚拟化扩展技术,如Intel VT-x或AMD SVM,将物理主机的处理能力划分给虚拟机,提供高效的硬件资源管理。
  2. 完全虚拟化:KVM支持完全虚拟化,这意味着它可以在虚拟机中运行未经修改的操作系统,实现对多种操作系统和应用程序的支持。
  3. 性能优化:KVM的硬件虚拟化技术允许虚拟机直接访问物理硬件资源,降低了虚拟化的性能消耗,提供了接近原生性能的运行效果。
  4. 弹性和可伸缩性:KVM支持动态添加、删除、调整虚拟机的资源,可以根据需求灵活配置虚拟机的CPU、内存和存储等资源。
  5. 安全性:KVM采用严格的隔离机制,保护不同虚拟机之间的安全,防止一台虚拟机的故障对其他虚拟机造成影响。
  6. 社区支持:KVM是一个开源项目,拥有庞大的社区支持,提供了丰富的文档和资源,可以帮助用户更好地理解和使用该技术。

KVM的实现基于宿主机模型(Host-based),它集成在Linux内核中,因此可以自然地使用Linux内核提供的内存管理、多处理器支持等功能。这使得KVM易于实现,并且能够随着Linux内核的发展而不断进步。此外,KVM的I/O虚拟化工作通常借助Qemu等工具完成,进一步降低了实现的工作量。

libvirt库

libvirt库是一个实现Linux虚拟化功能的Linux API,它支持各种虚拟机监控程序,包括Xen、KVM以及QEMU等,同时还支持其他操作系统的一些虚拟产品。libvirt库为虚拟机管理提供了一个通用稳定的抽象层,能够安全地操作物理机上的虚拟机。它的主要功能包括虚拟机管理、虚拟设备管理和远程控制。

在虚拟机管理方面,libvirt库提供了定义、删除、启动、关闭、暂停、恢复、保存、回滚和迁移等各种功能。在虚拟设备管理方面,它能够管理各种虚拟外设,如虚拟磁盘、虚拟网卡、内存和虚拟CPU,并且支持多种设备类型的热插拔操作。此外,libvirt库还提供了远程连接功能,通过virsh程序或API,可以远程连接其他物理机的Hypervisor。

libvirt库主要由Libvirt API、Libvirtd进程和virsh工具集三个部分组成。Libvirt API提供了一套与多种操作系统虚拟化能力进行交互的接口,可以在hypervisor支持的范围内创建、修改、监控、迁移和停止虚拟机。Libvirtd进程是libvirt守护进程,负责处理虚拟机的各种请求。virsh工具集则是一组命令行工具,用于管理虚拟机和其他虚拟化资源。

libvirt库是一个强大的虚拟化管理工具,广泛应用于各种IaaS方案中,如OpenStack、OpenNebula和Nimbus等。通过使用libvirt库,用户可以方便地对虚拟机进行管理和操作,提高虚拟化环境的稳定性和灵活性。

在已安装KVM的虚拟机上查看libvirtd命令所在位置

whereis libvirtd

在这里插入图片描述

已安装KVM的虚拟机上查看libvirtd配置文件

vim /etc/libvirt/libvirtd.conf		# 一共有536行,其中大部分都是注释行

查看服务状态

# libvirtd是libvirt守护进程,负责处理与虚拟化相关的请求,并提供对虚拟机的管理功能
systemctl status libvirtd

在这里插入图片描述

安装KVM软件组

标识Server
主机root@Server
IP地址192.168.110.1/24
软件组Virtualization Host

列出所有软件组

dnf grouplist

在这里插入图片描述

安装KVM软件组

dnf groups install -y Virtualization*		# 此处需要安装114个软件包

在这里插入图片描述

查看已经安装的软件组

dnf grouplist --installed

在这里插入图片描述

启动服务

systemctl enable --now libvirtd.service

可以通过virt-manager打开控制台

virt-manager

在这里插入图片描述

或者通过菜单栏打开控制台
在这里插入图片描述

新建连接

  1. 选择连接类型
    在“Add Connection”对话框中,你会看到几种不同类型的连接可供选择,比如QEMU/KVM、Xen、LXC等。根据你的环境和需求,选择适当的连接类型。对于大多数基于QEMU/KVM的虚拟化环境,应该选择“QEMU/KVM”连接类型。
  2. 填写连接详情
    对于选定的连接类型,你需要填写相关的连接详情。对于QEMU/KVM连接,你通常只需要保留默认设置,除非你有特殊的需求,比如使用非默认的URI或需要配置SSH隧道。
    • Name:为你的连接起一个名字,这样你就可以在virt-manager中轻松识别它。
    • Host:如果你的虚拟化环境运行在本机上,通常可以留空。如果是远程主机,则输入远程主机的地址。
    • Port:通常使用默认的端口号,除非你的虚拟化环境使用了不同的端口。
    • Connect via:对于本地连接,选择“Local (TCP/IP)”。对于SSH隧道,选择“SSH”并填写SSH的详情。
    • Authentication:如果需要的话,填写用于身份验证的用户名和密码。

以下保持默认即可

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

软件网桥

网桥是数据链路层设备,根据MAC地址在网络中转发数据包,在Linux系统可以通过软件网桥模拟实现网桥。在KVM虚拟环境中,可以将多张虚拟网卡共享物理网卡。

网桥的类型

  • 类型1:通过NAT,是内部网络和外界通信
  • 类型2:使虚拟机可以直连外界物理网络
    在这里插入图片描述

新建软件网桥br10

nmcli connection add type bridge con-name br10 ifname br10		# 先创建软件网桥
nmcli connection add type bridge-slave con-name br10-port1 ifname ens160 master br10 	# 将ens160网卡与软件网桥连接
nmcli connection up br10		# 启动连接

新建KVM虚拟机–图形界面

打开Virtual Machine Manager控制台
在这里插入图片描述

选择安装操作系统的方式

  • Localinstall media (lSO image or CDROM)【本地安装介质(ISO映像或CDROM)】
  • NetworkInstall (HTTP, HTTPS, Or FTP)【网络安装(HTTP/HTTPS/FTP)】
  • Import existing disk image【导入现有磁盘映像】
  • Manual install【手动安装】

以下选择本地安装介质
在这里插入图片描述

选择安装介质的位置,我们提前将需要将iso镜像移动到qemu用户能访问的目录下

  • 可以移动到默认目录下:/var/lib/libvirt/images
  • 或者是我们下面所使用的目录:/tmp
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

选择CPU和内存,这里默认即可

在这里插入图片描述

选择硬盘

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

启动appium服务的2种方法(python脚本cmd窗口)

1.通过cmd窗口命令来启动 2.通过python代码启动 2.1启动单个appium服务 2.2启动多个appium服务 3.端口说明 一.端口号设置Appium服务器端口:4723 bp端口:4724 Appium服务器端口:4725 bp端口:4726可以看到appium服务器端口和bp端…

Redis快速入门操作

启动Redis 进入命令行客户端 字符串命令常用操作(redis默认使用字符串来存储数据) 列表(Lists)常用操作 集合(Sets)常用操作 (无序集合且元素不可重复) 有序集合(So…

YOLOv9最新改进系列:YOLOv9改进加入新型高效的多尺度注意力(EMA)模块保留每个通道的信息并减少计算成本!助力v9检测性能遥遥领先!

YOLOv9最新改进系列:YOLOv9改进加入新型高效的多尺度注意力(EMA)模块保留每个通道的信息并减少计算成本!助力v9检测性能遥遥领先! YOLOv9原文链接戳这里,原文全文翻译请关注B站Ai学术叫叫首er 详细的改进…

PCL SAC_IA配准高阶用法——统计每次迭代的配准误差并可视化

目录 一、概述二、代码实现三、可视化代码四、结果展示本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、概述 在进行论文写作时,需要做对比实验,来分析改进算法的性能,期间用到了迭代误差分布统计的比较分析,为直…

Java web应用性能分析之服务端慢和优化概叙

前面已经分析了客户端慢、前端页面慢、入口Nginx慢,按照上图接下来就是我们服务端重点的接口慢分析优化、服务器资源性能瓶颈分析、服务器带宽性能瓶颈分析。 性能优化的目的 性能优化的目标是提高应用的性能,使其更加高效、稳定和可靠。性能优化包括服…

CSS 格式化上下文 + CSS兼容处理

个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 ✍CSS 格式化上下文🔥1 格式化上下文🌷1.1 块级格式化…

Kubernetes Pod的配置管理 ConfigMap和Secret

目录 前言 一、为什么需要配置管理 二、使用ConfigMap管理Pod的配置信息 2.1 创建ConfigMap(4种方式) 2.1.1 指定ConfigMap的参数创建 2.1.2 指定配置文件创建ConfigMap 2.1.3 通过一个文件内的多个键值对创建ConfigMap 2.1.4 yaml文件创建Config…

环境多介质逸度模型实践技术与典型案例【代码】

随着污染物在各种环境中的迁移和转化,多介质污染物模型日益受到关注。在各类多介质模型中,基于逸度概念的逸度模型由于运用范围广,建模数据要求较低而广受欢迎。 专题一:基本理论 1.逸度的定义 2.逸度模型的基本原理 3.各介质…

Golang | Leetcode Golang题解之第36题有效的数独

题目: 题解: func isValidSudoku(board [][]byte) bool {var rows, columns [9][9]intvar subboxes [3][3][9]intfor i, row : range board {for j, c : range row {if c . {continue}index : c - 1rows[i][index]columns[j][index]subboxes[i/3][j/3]…

爆炸之linux-nacos2.0系列集群安装部署

一、环境配置 1、新建磁盘分区 fdisk /dev/vdb 2、创建文件系统 mkfs.xfs /dev/vdb13、创建挂载点: 在 / 目录下创建一个新的目录作为挂载点。/afc 目录 mkdir /afc4、挂载磁盘: 使用 mount 命令将磁盘挂载到新创建的目录。 mount /dev/vdb /afc5、…

用html写一个搜索页面

<!DOCTYPE html> <html lang"en" > <head><meta charset"UTF-8"><title>搜索框设计</title><link rel"stylesheet" href"./style.css"> </head> <body> <div class"se…

pytorch-手写数字识别之全连接层实现

目录 1. 背景2. nn.Linear线性层2. 实现MLP网络3. train4. 完整代码 1. 背景 上一篇https://blog.csdn.net/wyw0000/article/details/137622977?spm1001.2014.3001.5502中实现手撸代码的方式实现了手写数字识别&#xff0c;本文将使用pytorch的API实现。 2. nn.Linear线性层…

开发一个农场小游戏需要多少钱

开发一个农场小游戏的费用因多个因素而异&#xff0c;包括但不限于游戏的规模、复杂性、功能需求、设计复杂度、开发团队的规模和经验&#xff0c;以及项目的时间周期等。因此&#xff0c;无法给出确切的费用数字。 具体来说&#xff0c;游戏的复杂程度和包含的功能特性数量会直…

企业文档知识库建设,数据安全如何保障?

随着现代市场经济的高速发展&#xff0c;企业的竞争优势越来越多体现在人才和科技的优势。而随着员工流动率的提升&#xff0c;随之流失的则是员工积累多年的宝贵工作经验&#xff0c;如果缺乏有效的内部知识库的建设和管理&#xff0c;企业的竞争优势将难以维系。「企业网盘」…

Claude和chatgpt的区别

ChatGPT是OpenAI开发的人工智能的聊天机器人&#xff0c;它可以生成文章、代码并执行各种任务。是Open AI发布的第一款大语言模型&#xff0c;GPT4效果相比chatgpt大幅提升。尤其是最新版的模型&#xff0c;OpenAI几天前刚刚发布的GPT-4-Turbo-2024-04-09版本&#xff0c;大幅超…

架构设计-流程引擎的架构设计

1、什么是流程引擎 流程引擎是一个底层支撑平台&#xff0c;是为提供流程处理而开发设计的。流程引擎和流程应用&#xff0c;以及应用程序的关系如下图所示。 常见的支撑场景有&#xff1a;Workflow、BPM、流程编排等。本次分享&#xff0c;主要从 BPM 流程引擎切入&#xff0…

【前端】3. CSS【万字长文】

CSS 是什么 层叠样式表 (Cascading Style Sheets). CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果. 能够做到页面的样式和结构分离. CSS 就是 “东方四大邪术” 之化妆术. 基本语法规范 选择器 {一条/N条声明} 选择器决定针对谁修改 (找谁)声明决…

钉钉直播回放怎么下载到本地

钉钉直播回放如何下载到本地,本文就给大家解密如何下载到本地 工具我已经给大家打包好了 钉钉直播回放下载软件链接&#xff1a;https://pan.baidu.com/s/1_4NZLfENDxswI2ANsQVvpw?pwd1234 提取码&#xff1a;1234 --来自百度网盘超级会员V10的分享 1.首先解压好我给大家…

【Qt】Qt Hello World 程序

文章目录 1、Qt Hello World 程序1.1 使用按钮实现1.1.1 使用可视化方式实现 1.1.2 纯代码方式实现 label创建堆&#xff08;内存泄漏&#xff09;或者栈问题Qt基础类&#xff08;Qstring、Qvector、Qlist&#xff09;乱码问题零散知识 1、Qt Hello World 程序 1.1 使用按钮实…

Swin Transformer 浅析

Swin Transformer 浅析 文章目录 Swin Transformer 浅析引言Swin Transformer 的网络结构W-MSA 窗口多头注意力机制SW-MSA 滑动窗口多头注意力机制Patch Merging 图块合并 引言 因为ViT无法实现CNN中的层次化构建以及局部信息&#xff0c;由此微软团队提出了Swin Transformer来…