【KVM虚拟化】· 图形化KVM安装linux

news2024/11/27 20:30:50

目录

🍁虚拟化技术

🍂KVM的整体结构

🍂KVM 的功能列表

🍂KVM 工具集合

🍁安装kvm虚拟化功能

🍁创建虚拟机


   🦐博客主页:大虾好吃吗的博客

   🦐专栏地址:KVM虚拟化专栏

虚拟化技术

  1. 全虚拟化

  2. 半虚拟化

  3. 硬件辅助的虚拟化

KVM的整体结构

从GUI到Linux内核,包括以下五个组件:

  1. virt-manager一个用来管理VM的GUI/CUI用户接口;它使用libvirt api 调用VM的各种功能。

  2. libvirt一个工具及接口,作为较通用的服务器虚拟化软件,它支持Xen,VMware ESXi/GSX,当然,还有QEMU/KVM。

  3. QEMU一个和KVM内核模块交互的模拟器,处理多种客户机系统请求如I/O;一个QEMU进程对应一个客户机系统。

  4. KVM内核模块从狭义上来说,KVM是一个Linux内核模块,处理客户机系统的VM Exits和执行VM Entry指令。

  5. Linux内核既然QEMU作为一个普通的用户进程运行,相应客户机系统的调度就由Linux内核自己来处理。所有的组件都是开放源码软件(OSS)。

KVM 的功能列表

KVM 所支持的功能包括:

  1. 支持CPU 和 memory 超分(Overcommit)

  2. 支持半虚拟化I/O (virtio)

  3. 支持热插拔(cpu,块设备、网络设备等)

  4. 支持对称多处理(Symmetric Multi-Processing,缩写为 SMP )

  5. 支持实时迁移(Live Migration)

  6. 支持 PCI 设备直接分配和单根I/O虚拟化(SR-IOV)

  7. 支持内核同页合并(KSM )

  8. 支持NUMA (Non-Uniform Memory Access,非一致存储访问结构 )

KVM 工具集合

libvirt:操作和管理KVM虚机的虚拟化API,使用 C 语言编写,可以由 Python,Ruby,Perl, PHP, Java 等语言调用。可以操作包括 KVM,vmware,XEN,Hyper-v, LXC 等Hypervisor。

Virsh:基于libvirt 的命令行工具(CLI)

Virt-Manager:基于libvirt的GUI工具

virt-v2v:虚机格式迁移工具

virt-* 工具:包括Virt-install (创建KVM虚机的命令行工具),Virt-viewer (连接到虚机屏幕的工具),Virt-clone(虚机克隆工具),virt-top 等

sVirt:安全工具和selinux相关

安装kvm虚拟化功能

        这里使用VMware安装虚拟机,主要安装centos7.9,在之后我们主要用的是最小化安装,图形化安装了解一下即可。也可以直接跳过本章,如果可以的话还是了解一下图形化的原理,这样对最小化安装更加理解。

        打开VMware,创建新的虚拟机、典型、稍后安装操作系统、选择Linux centos7 64位、根据需求填写虚拟机名称、存储路径、磁盘保持默认20G即可。点击内存修改为8G(越大越好),处理器2个,最重要的是勾选虚拟化功能。最后点击CD/DVD挂载centos7.9镜像,安装虚拟机。

开启此虚拟机,选择install centos 7后回车安装,等待安装完成后,修改时区等信息。

默认保持英文,下一步后修改 SOFTWARE SELECTION

​ 勾选虚拟化客户端等应用,按Done保存退出。

选择INSTALLATION DESTINATION 保持默认选择Done保存退出,随后点击开始安装

​ 点ROOT PASSWORD输入密码,如果密码没有符合密码复杂性,点两次Done强制保存退出,随后等待时间安装完成。

勾选好许可证继续下一步操作,随后就是时区,普通用户等信息输入即可创建成功。

​ 注销普通用户登录root用户,输入密码即可。

创建虚拟机

后面就是创建虚拟机了,可以点击Applications进一步操作,也可以在终端下输入virt-manager也会弹出创建虚拟机界面。

 

下面就是虚拟机的创建界面了,双击QEMU/KVM  

 

在这里为了区分,创建两个磁盘空间,一个用来安装操作系统,一个用来存放系统镜像。

​ 创建一个虚拟机存放磁盘空间,大小我这里给了10G。

        打开终端,导入镜像。需要注意的是,我修改了iso和vm的存放路径,放在了根目录,主要是为了好理解,但是这里就需要打开终端查看两个目录是否存在,并且并centos7的镜像拷贝到iso中。

勾选并选择centos7的镜像。使用dd命令把镜像文件转换为系统镜像并保存在iso目录下。

​ 

[root@localhost /]# dd if=/dev/sr0 of=/iso/centos.iso

根据下图,点击安装虚拟机

选择系统镜像,这里存放的位置是根下的ISO目录

​ 

 安装位置选择刚创建的vm目录下的centos7磁盘空间

        后面给虚拟机创建一个名称,然后下一步,就会到centos7安装界面,根据安装界面,可以图形化安装,也可以最小化安装,甚至可以继续虚拟化安装,只要硬件支持,里面可以套多个虚拟机。

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

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

相关文章

FreeRTOS 信号量(二) ------ 计数型信号量

文章目录 一、计数型信号量1. 计数型信号量简介2. 创建计数型信号量①函数 xSemaphoreCreateCounting()②函数 xSemaphoreCreateCountingStatic() 3. 计数型信号量创建过程分析4. 释放和获取计数信号量 二、计数型信号量操作实验 一、计数型信号量 1. 计数型信号量简介 有些资…

数据结构与算法(小议递归)

文章目录 前言一、递归是什么?二、在什么时候适用递归1.测试一下 总结 前言 递归是一种常用的算法设计,递归就是一种循环推理。简单来说就是调用原算法本身的算法。 这里主要探讨递归的使用, 一、递归是什么? 用一个简单的例子来…

嵌入式代码查看分析利器---Understand

平时在开发嵌入式程序的时候大多数使用的都是keil软件,一般小的工程使用keil没感觉到有什么问题,但是当工程比较大的时候,比如移植了FreeRTOS系统或者LWIP网络系统时,代码全部编译一次就要花费很长世间,特别是开启了点…

CIKM论文解读 | 淘宝内容化推荐场景下对多场景全域表征的思考与应用

我们结合逛逛推荐场景中的具体问题,从多场景全域表征的视角进行了一系列的探索与内容推荐场景的应用,从全域表征的范围、信息迁移方式以及模型框架的应用等维度展开我们的优化工作,取得了阶段性的优化经验和业务效果。 背景介绍 淘宝逛逛自20…

鸿蒙混合打包。在现有安卓应用的基础上扩展鸿蒙的特性,以最快的速度布局鸿蒙生态!

鸿蒙混合打包 介绍 鸿蒙混合打包。在现有安卓应用的基础上扩展鸿蒙的特性,以最快的速度布局鸿蒙生态! 参考:京东APP鸿蒙版上架实践。本项目只是这篇文章的一个验证,让更多的兄弟们可以少走弯路。 我尽可能把每一步的改动作为一…

【HarmonyOS】【JS】Tabs如何设置区分TabBar和TabContent的分割线不显示

【关键字】 Tabs,分割线 【问题描述】 使用JS开发HarmonyOS应用时,使用Tabs组件,默认自带TabBar和TabContent的蓝色分割线,由于蓝色分割线样式不可设置,若不想要此蓝色分割线,如何去除蓝色分割线&#xf…

搭建外网minecraft服务器方案

很多minecraft服务器主都想自己搭建一个外网可以访问的minecraft服务器,在没有外网IP的情况下,一般都是使用Logmein Hamachi方案。这种方案有它的弊端,需要客户机安装Hamachi,十分不方便。另外,免费版只支持5人&#x…

C++三大特性—继承 “基类与派生类之间的类型转换与赋值转换”

理解基类与派生类之间的类型转换是理解C语言面向对象编程的关键所在 继承 通过继承联系在一起的类构成一种层次关系,层次关系的根部有一个基类,其他直接或间接从基类继承而来,称为派生类。    继承(inheritance)机制是面向对象程序设计使代…

Spring RabbitMQ 实现消息队列延迟

1.概述 要实现RabbitMQ的消息队列延迟功能,一般采用官方提供的 rabbitmq_delayed_message_exchange插件。但RabbitMQ版本必须是3.5.8以上才支持该插件,否则得用其死信队列功能。 2.安装RabbitMQ延迟插件 检查插件 使用rabbitmq-plugins list命令用于查看…

C++引用进阶篇:让你的程序更加高效、安全、简洁

文章目录 前言1. 引用和临时数据🍑 什么样的临时数据会放到寄存器中🍑 关于常量表达式🍑 引用也不能指代临时数据🍑 引用作为函数参数 2. 为const引用创建临时变量3. const引用与转换类型🍑 引用类型的函数形参请尽可能…

SPFA 算法:实现原理及其应用

文章目录 一、前言二、SPFA 算法1、SPFA算法的基本流程2、代码详解 三、SPFA 算法已死 ? 一、前言 SPFA算法,全称为Shortest Path Faster Algorithm,是求解单源最短路径问题的一种常用算法,它可以处理有向图或者无向图&#xff0…

PySide2 QWebEngine与Web js交互

文章目录 单向交互双向传值案例 单向交互 QWebEngineView加载web页面&#xff0c;web页面中点击按钮&#xff0c;执行js代码&#xff0c;js的返回值传给QWebEnginePage&#xff0c;使用python进行保存结果。 单向&#xff0c;js向python(PySide2)端传输数据。 前端实现 <…

前端web3入门脚本三:一键完成与dex的交互,羊毛党必备

前言 该脚本用途&#xff1a;一键可以完成与dex的所有交互&#xff0c;包括2次swap&#xff0c;添加/移除流动性&#xff0c;以及farm和提取LP。一次运行可以有6条交易记录。 无论是个人单刷还是羊毛党批量地址刷交互都完美适配。当然反女巫方案不在这次文章的讨论范围内。 一、…

javascript中find(), filter(), some(), every(), map()等方法介绍

1、find() find() 用于找出第一个符合条件的数组成员。它的参数是一个回调函数&#xff0c;所有数组成员依次执行该回调函数&#xff0c;直到找出第一个返回值为true的成员&#xff0c;然后返回该成员。如果没有符合条件的成员&#xff0c;则返回undefined。 find()方法的回调…

利用Matab进行覆盖计算----战术计算

在 contour函数中添加如下代码 %------- 计算畅通区面积和占比例 --------% Spi*maxrange*maxrange/1e6; S0 nnz(isInRange)*reslons*reslats/1e6;isnn ~isnan(cdata); cdata0 cdata(isnn); S1numel(cdata0)*reslons*reslats/1e6;AS1/S0; % 畅通区所占比例; fprintf("…

CLion开发工具 | 06 - 使用CLion开发STM32(无需Cmake)

专栏介绍 文章目录 专栏介绍一、准备工作1. 工具准备2. 裸机工程准备二、使用CLion打开工程三、基于CLion写代码1. LED blink代码2. printf重定位代码四、编译工程1. 编译配置2. 选择编译目标3. 编译五、烧录1. OpenOCD基础知识(了解)2. 设置CLion路径3. 新建CLion配置文件4.…

面试总结,4年经验

小伙伴你好&#xff0c;我是田哥。 本文内容是一位星球朋友昨天面试遇到的问题&#xff0c;我把核心的问题整理出来了。 1&#xff1a;Java 层面的锁有用过吗&#xff1f;除了分布式锁以外 是的&#xff0c;Java中提供了多种锁机制来保证并发访问数据的安全性和一致性。常见的J…

分析GC日志解读

目录 GC分类 GC日志分类 GC日志结构剖析 透过日志看垃圾收集器 透过日志看GC原因 GC日志分析工具 GC分类 针对HotSpot VM的实现&#xff0c;它里面的GC按照回收区域又分为两大种类型&#xff1a;一种是部分收集&#xff08;Partial GC&#xff09;&#xff0c;一种是整堆…

VPN 虚拟专用网络隧道

1 什么是VPN VPN(全称&#xff1a;Virtual Private Network)虚拟专用网络&#xff0c;是依靠ISP和其他的NSP&#xff0c;在公共网络中建立专用的数据通信的网络技术&#xff0c;可以为企业之间或者个人与企业之间提供安全的数据传输隧道服务。在VPN中任意两点之间的链接并没有…

从零开始学习Linux运维,成为IT领域翘楚(二)

文章目录 &#x1f525;Linux系统目录结构&#x1f525;Linux用户和用户组&#x1f525;Linux用户管理 &#x1f525;Linux系统目录结构 文件系统组织结构 ⭐ /lib 系统开机所需要最基本的动态链接共享库&#xff0c;其作用类似于Windows里的DLL文件。 几乎所有的应用程序都需…