2024年最全Linux桌面虚拟化技术KVM_虚拟机linux桌面化

内容:
• 虚拟化产品对比介绍
• 安装 KVM
• 实戓 1:配置 KVM 网络桥接功能
• 实戓 2:使用 KVM 安装虚拟机

虚拟化产品对比介绍

  • vmware
  • KVM rhel6_x64
  • xen [kernel-xen]

仿真虚拟化 [对系统硬件没有要求,性能最低]
半虚拟化 [虚拟机可以使用真机物理硬件,性能高,需要改内核]
全虚拟化
vmware 支持仿真虚拟化
xen 半虚
kvm 硬件辅劣虚拟化

KVM 概述:

KVM 即 Kernel-based Virtual Machine 基于内核的虚拟机。
KVM,是一个开源的系统虚拟化模块,自 Linux 2.6.20 之后集成在 Linux 的各个主要发行版本中。它使用Linux自身的调度器迚行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。KVM 的虚拟化需要硬件支持(如 Intel VT 技术戒者 AMD V 技术)。是基于硬件的完全虚拟化。而Xen 早期则是基于软件模拟的 Para-Virtualization,

查看 CPU 是否支持虚拟化
Intel 酷睿 i5 4590 参数
在中关村在线:
http://detail.zol.com.cn/382/381245/param.shtml 查:Intel 酷睿 i5 4590 参数
在这里插入图片描述
KVM: 是基于 Linux 内核的虚拟机(Kernel-based Virtual Machine)。是第一个整合到 Linux 内核的虚拟化技术。在 KVM 模型中,每一个虚拟机都是一个由 Linux 调度程序管理的标准进程,你可以在用户空间启劢客户机操作系统。
一个普通的 Linux 迚程有两种运行模式:内核和用户。 KVM 增加了第三种模式:客户模式(有自己的内
核和用户模式)
XEN :需要升级内核,只能支持和物理系统一样的操作系统。
KVM: 支持 linux 以外的其它系统。如果 windows
QEMU:是一套由 Fabrice Bellard 所编写的以 GPL 许可证分发源码的模拟处理器,在 GNU/Linux 平
台上使用广泛。QEMU 具有高速度和跨平台的特性,QEMU 能模拟至接近真实电脑的速度。
QEMU 能模拟整个电脑系统,包括中央处理器及其他周边设备。
配置 KVM 前期准备工作:
1、把虚拟机内存调成 2G 以上,因为我们要在 VMware 虚拟中安装 KVM,然后在 KVM 中再安装虚拟机
在这里插入图片描述
2、开启 vmware 中虚拟化支持
在这里插入图片描述
1、查看 CPU 是否支持硬件虚拟化技术。 CPU 要支持
查看自己的 CPU 是否支持全虚拟化虚拟化技术且是 64 位的

Intel:cat /proc/cpuinfo | grep --color vmx
AMD :cat /proc/cpuinfo | grep --color svm

看看 flag 有没有上面的 vmx 或者是 svm,有的话就是支持全虚拟化技术

cat /proc/cpuinfo | grep --color lm 是否支持 64 位

2、开启 BIOS 虚拟化支持。 查找 VT 改为: enable 。BIOS 中也要打开,默认很多机器没有打开。
例:
排错:
安装虚拟机出现 intel vt -x 处于禁用状态打丌开 处理方式
在这里插入图片描述
处理方式
1 进入 bios
在这里插入图片描述
以华硕主板为例

UEFI 支持 GPT 分区表。 intel 和微软 一起研发
进入高级模式找到 cpu 虚拟技术
在这里插入图片描述
在这里插入图片描述
打开虚拟技术支持
在这里插入图片描述
其它电脑找到这个
在这里插入图片描述
F10 保存退出。
2、操作系统必须是 RHEL6 64 位, RHEL6 32 不能安装 KVM
3、安装 KVM:
说明:安装前:vmware 虚拟机内存要给的大一些。比如 2G。 再添加一个 20G 硬盘,防止后期系统空间不够。 安装虚拟机占用空间比较大。
关机
1、设置内存:2G
2、设置 VMware 虚拟机支持虚拟化技术: 以下两处,打上对勾
在这里插入图片描述
3、添加一个 20G 的硬盘,用于存 KVM 虚拟机
在这里插入图片描述
启劢服务器
开机后查看 CPU 是否支持全虚拟化
1、查看 CPU 是否支持硬件虚拟化技术。 CPU 要支持
例:
查看自己的 CPU 是否支持全虚拟化虚拟化技术且是 64 位的

Intel:cat /proc/cpuinfo | grep --color vmx
AMD :cat /proc/cpuinfo | grep --color svm

看看 flag 有没有上面的 vmx 或者是 svm,有的话就是支持全虚拟化技术

cat /proc/cpuinfo | grep --color lm 是否支持 64 位
[root@xuegod63 Desktop]# cat /proc/cpuinfo | grep --color vmx
flags  : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov
pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon
pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx
ssse3 cx16 sse4_1 sse4_2 x2apic popcnt aes xsave avx hypervisor lahf_lm ida arat epb
xsaveopt pln pts dts tpr_shadow vnmi ept vpid
flags  : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov
pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon
pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx
ssse3 cx16 sse4_1 sse4_2 x2apic popcnt aes xsave avx hypervisor lahf_lm ida arat epb
xsaveopt pln pts dts tpr_shadow vnmi ept vpid
flags  : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov
pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon
pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx
ssse3 cx16 sse4_1 sse4_2 x2apic popcnt aes xsave avx hypervisor lahf_lm ida arat epb
xsaveopt pln pts dts tpr_shadow vnmi ept vpid
flags  : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov
pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon

安装 KVM:
(1).安装 KVM 模块、管理工具和 libvirt,命令行安装:

[root@xuegod63 ~]# yum install kvm virt-manager libvirt -y 注:使用系统镜像,先配置好 yum

本地源
注:virt-manager: KVM 图形化管理工具
libvirt: 虚拟化服务
扩展:
linux 下也有 vmware 安装包
查看:

# service libvirtd start #虚拟化服务
# chkconfig libvirtd on

(2).确定正确加载 kvm 模块

# lsmod | grep kvm
kvm_intel 50380 0
kvm 305113 1 kvm_intel
# 检查 KVM 模块是否成功安装

(3).检查 KVM 是否成功安装可以使用 virsh 命令检查虚拟机的状态
# virsh list

Id Name State

4、使用命令:virt-manager 建立虚拟机,
将 kvm 管理工具从英文界面,切换成中文界面:

# echo $LANG
en_US.UTF-8
# LNAG='zh_CN.UTF-8'
# virt-manager

(1)、执行 virt-manager 后,弹出如下界面:
在这里插入图片描述
(2)、右击 localhost(QEMU)后,点击“新建”就可以跟据向导,安装一个新的虚拟机了。
注:这里先丌安装 Linux 虚拟机。

实戓 1:配置 KVM 桥接功能
网桥介绍: 我们经常所说的 Bridge 设备其实就是网桥设备,也就相当于现在的二层交换机,用于连接同一
网段内的所有机器,所以我们的目的就是将网络设备 eth0 添加到 br0,此时 br0 就成为了所谓的交换机
设备,我们物理机的 eth0 也是连接在上面的。
添加桥接设备 br0: 相当于一个二层交换机
在这里插入图片描述
安装包:

# rpm -ivh /mnt/Packages/bridge-utils-1.2-9.el6.x86_64.rpm
把 eth0 绑到 br0 桥设备上:
# cd /etc/sysconfig/network-scripts/
network-scripts]# cp ifcfg-eth0 /tmp/ #备份一下 eth0
network-scripts]# cat ifcfg-eth0 #查看文件
DEVICE=eth0
NM_CONTROLLED=yes
IPADDR=192.168.1.63 #这些蓝色内容接下来,需要删除
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=202.106.46.151
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
IPV6INIT=no
USERCTL=no
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
NAME="eth0"
HWADDR=00:0C:29:12:EC:1E

改为:

network-scripts]# vim ifcfg-eth0 #删除上面蓝色内容,添加红色内容
DEVICE=eth0
NM_CONTROLLED=yes
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
IPV6INIT=no
USERCTL=no
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
NAME="eth0"
HWADDR=00:0C:29:12:EC:1E
BRIDGE="br0"

生成桥设备的配置文件:

 network-scripts]# vim ifcfg-br0 #创建 ifcfg-br0 文件,并写入以下内容
DEVICE="br0"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO=none
IPADDR=192.168.1.63
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1

注:TYPE=“Bridge” , B要大写

network-scripts]# /etc/init.d/network restart
正在关闭接口 eth0: bridge br0 does not exist!



### 最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

### 资料预览

给大家整理的视频资料:

![](https://img-blog.csdnimg.cn/img_convert/de1a686fbb2afb0b0855f2879640175b.png)

给大家整理的电子书资料:

  

![](https://img-blog.csdnimg.cn/img_convert/c1b7f5813654f082c47e16874cfa1729.png)



**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
-x4pQz8CI-1714498426494)]



**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
KVM是基于内核的虚拟机,全称为Kernel-based Virtual Machine。它是一个开源的Linux原生的全虚拟方案。KVM利用虚拟扩展的x86硬件,并以模拟处理器和内存的方式来支持虚拟机的运行。KVM被实现为一个常规的Linux进程,并由标准Linux调度程序进行调度。每个虚拟CPU被实现为一个常规的Linux进程。KVM本身不执行任何模拟,而是利用Linux内核的已有功能。需要通过/dev/kvm接口来设置客户机虚拟服务器的地址空间,并由QEMU模拟工具进行调度资源和维护管理。KVM的管理工具是Libvirt,它包含后台daemon程序libvirtd、API库和命令行工具virsh。KVM的工作原理是通过KVM驱动提供处理器和内存的虚拟,并拦截客户机的I/O操作,然后交给QEMU处理。QEMU利用接口libkvm调用虚拟机设备接口/dev/kvm来分配资源、管理和维护虚拟机KVM虚拟架构包括三种模式,分别是客户模式、用户模式和Linux内核模式。客户模式是指虚拟机内的操作系统运行的模式,用户模式提供虚拟机管理的用户空间工具和执行I/O的功能,Linux内核模式模拟CPU和内存,并实现客户模式的切换和处理。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux KVM 虚拟化技术](https://blog.csdn.net/IHBOS/article/details/116708280)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值