在Linux上安装KVM虚拟机

一、搭建KVM环境

KVM(Kernel-based Virtual Machine)是一个基于内核的系统虚拟化模块,从Linux内核版本2.6.20开始,各大Linux发行版就已经将其集成于发行版中。KVM与Xen等虚拟化相比,需要硬件支持的完全虚拟化。KVM由内核加载,并使用Linux系统的调试器进行管理,因此KVM对资源的管理效率相对较高。以下是KVM的安装和使用过程。

1.检查模块

lsmod | grep kvm		# 检查是否已装

在这里插入图片描述

如果缺少模块,就先安装 -->

yum -y install qemu-kvm libvirt virt-install bridge-utils

kvm 虚拟化中 libvirt 是目前使用最为广泛的对 kvm 虚拟机进行管理的工具和应用程序接口,而且一些常用的虚拟机管理工具(virsh、virt-install、virt-manager等)和云计算框架平台都在底层使用libvirt的应用程序接口。

virsh 是用于管理 虚拟化环境中的客户机和 Hypervisor 的命令行工具,与 virt-manager 等工具类似,它也是通过 libvirt API 来实现虚拟化的管理。virsh 是完全在命令行文本模式下运行的用户态工具,它是系统管理员通过脚本程序实现虚拟化自动部署和管理的理想工具之一。

virt-manager 是虚拟机管理器(Virtual Machine Manager) 这个应用程序的缩写,也是管理工具的软件包名称。virt-manager 是用于管理虚拟机的图形化的桌面用户接口。

2.启动虚拟化和开机自启

systemctl start libvirtd
systemctl enable libvirtd
systemctl list-unit-files | grep libvirtd.service

在这里插入图片描述

3.配置网桥

虚拟机的网络连接中,使用最多的当属桥接网络,即将物理网络连接到虚拟机中。新装的KVM需要手动添加一下。

cd /etc/sysconfig/network-scripts
# 然后对目标网卡ens11f0的配置文件ifcfg-ens11f0复制1份,命名为ifcfg-br0,对两个文件作修改

在这里插入图片描述

# 重启网络,然后验证测试
systemctl restart network
ping -c 4 10.0.10.10

二、KVM虚拟机的管理

通常有两种方式:用Linux系统图形界面下的虚拟系统管理器;命令行。

可以通过yum安装virt-manager来提供虚拟系统管理器服务,能很方便地完成虚拟机的创建、删除、电源管理等多种功能 ->

在这里插入图片描述

常见的KVM管理命令:

命令作用
virst-install创建虚拟机
virsh list --all查看所有虚拟机
virsh start v1启动名称叫v1的虚拟机
virsh destroy v1停止v1
virsh undefine v1删除v1
virsh console v1连接v1的控制台

1.安装文件准备

上传镜像放到了某个目录下,可能有其他需要用到的工具此时也安装好放到该目录下。

2.创建虚拟机

在/home下建了虚拟机存放的目录vm

在这里插入图片描述

# 使用该命令创建一个虚拟机10.0.1.1,用法可 virt-instal --help 查看详情
# ram是内存1024MB*32,即32GB。tfa_root.img为自主命名的虚拟ssd,不能重名。tfa_data.img为虚拟hdd,大小1024G。vcpu是虚拟CPU核数。bridge=br0表示连# 的桥接网络。vnc端口用于电脑端连接安装系统界面。
virt-install --name 10.0.1.1 --virt-type kvm --ram 32768 --cdrom=/opt/CenOS-7-x86_64-Minimal-2003-1.iso --disk path=/home/vm/10.0.1.1/tfa_root.img,size=100,bus=scsi  --disk path=//home/vm/10.0.1.1/tfa_data.img,size=500,bus=scsi --vcpu 16 --cpu host-passthrough --network bridge=br0 --graphics vnc,listen=0.0.0.0,port=5991

执行该命令时,如果报“host does not support any virtualization options”的错,要注意是不是物理机的BIOS没开启虚拟化。

3.连接vnc

在自己PC上安装好vnc viewer,建立连接:物理机IP+vnc端口,如10.0.0.108:5991,成功后进入安装系统界面。

然后就是安装系统,分区可根据自己的需要来划分。安装完成后,reboot。

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

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

相关文章

百度人工智能培训第二天笔记

参加了百度人工智能初步培训,主要是了解一下现在人工智能的基本情况,以便后续看可以参与一些啥? 下面就继续前一天的内容记录。 一、先做电动自行车的电梯里检测 先进行图片资料的上传与标注,这个昨天的最好也说了一下。 训练完后…

手摸手Element-ui组件化开发

前端环境准备 编码工具: VSCode 依赖管理:NPM 项目构建: Vuecli NPM的全称是Node Package Manager,是一个NodeJS包管理和分发工具,已经成为了非官方的发布Node模块(包)的标准。2020年3月17日,Github宣布收购npm&am…

WebGL/threeJS面试题扫描与总结

什么是 WebGL?什么是 Three.js?请解释three.js中的WebGL和Canvas的区别? WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个…

龙芯loongarch64服务器编译安装pyarrow

1、简介 pyarrow是一个高效的Python库,用于在Python应用程序和Apache Arrow之间进行交互。Arrow是一种跨语言的内存格式,可以快速高效地转移大型数据集合。它提供了一种通用的数据格式,将数据在内存中表示为表格,并支持诸如序列化和分布式读取等功能。 龙芯的Python仓库安…

【教程】 一文部署配置并入门 Redis

综述 什么是Redis Redis官网——Redis.io Redis, 作为一个高性能的键值对数据库,主要应用于以下场景: 缓存系统:由于其高速读写能力,Redis 非常适合用作缓存系统,减少数据库负载。 会话存储(Session St…

构建未来:云计算 生成式 AI 诞生科技新局面

目录 引言生成式 AI:开发者新伙伴云计算与生成式 AI 的无缝融合亚马逊云与生成式 AI 结合的展望/总结我用亚马逊云科技生成式 AI 产品打造了什么,解决了什么问题未来科技发展趋势:开发者的机遇与挑战结合实践看未来结语开源项目 引言 2023年…

基于SpringBoot母婴商城

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本母婴商城系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

04.里氏替换原则(Liskov Substitution Principle)

暴论:一般的,如果一个富二代不想着证明自己,那么他一辈子都会衣食无忧。 一言 里氏替换原则想告诉我们在继承过程中会遇到什么问题,以及继承有哪些注意事项。 概述 这是流传较广的一个段子: “一个坐拥万贯家财的富二…

DBS note6:Hashing(哈希存储)

目录 一、一般策略 二、算法简述 三、哈希缺点(Drawbacks of Hashing) 四、举例 五、外部哈希的分析 一、一般策略 由于我们无法一次性将所有数据放入内存中,我们需要构建多个不同的哈希表并将它们连接在一起。然而,这个想法…

第20 章 多线程

20.1线程简介. 20.2创建线程 2.1继承Thread类 Thread 类是java.lang包中的一个类,从这个类中实例化的对象代表线程,程序员启动一个新线程需要建立Thread 实例。Thread类中常用的两个构造方法如下: public Thread():创建一个新的线程对象。 public Threa…

如何提高3D建模技能?

无论是制作影视动画还是视频游戏,提高3D建模技能对于你的工作都至关重要的。那么如何能创建出精美的3D模型呢?本文给大家一些3D建模技能方面的建议。 3D建模通过专门的软件完成,涉及制作三维对象。这项技能在视频游戏开发、建筑、动画和产品…

18、串口通信

串口介绍 串口是一种应用十分广泛的通讯接口,串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信。 单片机的串口可以使单片机与单片机,单片机与电脑、单片机与各式各样的模块互相通信,极大的扩展了单片机的应用范围&…

大模型能否生成搜索引擎的未来?

文|郝 鑫 编|刘雨琦 ChatGPT火爆之前,水面下,也有中国公司也在朝着智能助手的方向努力。夸克便是其中之一。在GPT风靡科技圈后,国内就开始陆续冒出一些大模型厂商。对当时夸克而言,做大模型毋庸置疑&am…

Python list列表添加元素的3种方法及删除元素的3种方法

Python list列表添加元素的3种方法 Python list 列表增加元素可调用列表的 append() 方法,该方法会把传入的参数追加到列表的最后面。 append() 方法既可接收单个值,也可接收元组、列表等,但该方法只是把元组、列表当成单个元素,这…

“逆风飞翔·事实孤儿同行计划”成长陪伴主题区域陪伴培训会

为推进各机构更好地开展事实孤儿成长陪伴工作,促进事实孤儿成长陪伴实施成效,搭建各机构间事实孤儿成长陪伴方式方法交流平台。11月26日,在中国乡村发展基金会、中国民生银行的支持下,由湖南省大爱无疆青少年公益发展中心主办&…

ZZULIOJ 2466: 楼上瞎说,楼下才是,Java

2466: 楼上瞎说,楼下才是 题目描述 《九章算术》的内容十分丰富,全书采用问题集的形式,收有246个与生产、生活实践有联系的应用问题,其中每道题有问(题目)、答(答案)、术&#xff…

MySQL事务详解

MySQL事务详解 数据库事务概述事务是如何实现的事务的ACID特性事务的状态 事务的使用显式事务隐式事务示例自动提交回滚回滚到保存点 事务的隔离级别数据并发问题MySQL 支持的四种隔离级别注意示例 设置隔离级别 事务的常见分类 数据库事务概述 数据库事务是数据库管理系统&am…

【Linux】:信号(一)产生

信号 一.前台进程和后台进程1.前台进程2。后台进程3.总结 二.自定义信号动作接口三.信号的产生1.键盘组合键2.kill信号进程pid3.系统调用1.kill函数2.raise函数3.abort函数 四.异常五.软件条件六.core文件 一.前台进程和后台进程 1.前台进程 一个简单的代码演示 像这种程序在…

华为云之云桌面Workspace的使用体验

华为云之云桌面Workspace的使用体验 一、云桌面Workspace介绍1.云桌面简介2.云桌面特点3. 云桌面应用场景①远程移动办公②协同办公③安全办公④公用终端⑤图形制作渲染 二、本次实践介绍1. 本次实践目的2. 本次实践环境 三、购买云桌面1. 进入华为云的云桌面购买界面2. 选择购…

Linux下删除当前目录下的所有目录

Linux下删除当前目录下的所有目录 Linux下删除当前目录下的所有目录,可以使用命令:rm -rf ./* rm -rf ./*可以得知rm -rf ./命令是删除当前目录下的所有文件和文件夹,但不会删除根目录下的文件。其中,".“代表当前目录&…