从KVM虚拟化到Openstack云化架构综述

openstack 开启嵌套虚拟化 嵌套式虚拟nested是一个可通过内核参数来启用的功能。它能够使一台虚拟机具有物理机CPU特性,支持vmx或者svm(AMD)硬件虚拟化。该特性需要内核升级到Linux 3.X版本 ,所以在centos6下是需要先升级内核的,而在centos7下已默认支持该特性,不过默认是不开启的,需要通过修改参数支持。工作中,有时用户想在虚拟机里面运行kvm或者kata等虚拟化功能的应用,所以需要让vm支持vt,所以需要支持嵌套虚拟化功能。cpu模式需要是passthrough模式,透传cpu feature给vm。 阅读详情

目录

摘要

OpenStack的虚拟化技术

OpenStack架构介绍

Nova

Swift

KeyStone

Neutron

Glance

Cinder

Ceilometer

Heat


摘要

这两年的工作中,接触到公有云和私有云的项目还不少。起初对于Openstack的了解,仅停留在其几大组件的交互上,如Nova、Neutron、Glance等,以及对各大云厂商功能点上。随着项目的深入,慢慢发觉了解组件的交互,虽然对于做项目来说基本够用,但做为一名负责人的售前同学,总觉得需要进一步理清楚,Openstack使用到的相关虚拟层技术,如KVM、QEMU、SDN等。本篇文章,已经在要总结的任务中delay了很久,今天下定决心,集网上多篇文章,整理从KVM虚拟化到Openstack的云化架构综述,希望各位同学多提建议。(下一篇文档,估计要写写AI相关的语音、视觉、NLP和知识图谱相关的了)


Openstack是一个云管平台,不是一项技术,这可能是一名非计算机专业的小白容易搞混的问题。计算、存储和网络的虚拟化,由底层hypervisor,如KVM、Qemu、Xen等提供。其实所谓的管理平台,主要是为了方便大家使用。如果没有OpenStack,同样可以通过virsh、virt-manager来创建虚拟机,只不过敲命令行的方式,就像windows之前的doc命令输入一样,需要一定的学习成本,对于普通用户的操作不是很便利。说到虚拟化,我们简单看一下虚拟化的分类,以及常见的Hypervisor,KVM和Xen的区别。

OpenStack的虚拟化技术

在OS中加入一个虚拟化层(VMM),虚拟化层可以对下层(HostOS)硬件资源(物理CPU、内存、磁盘、网卡、显卡等)进行封装、隔离,抽象为另一种形式的逻辑资源,再提供给上层(GuestOS)使用。所以你可以理解VMM其实就是联系HostOS和GuestOS的一个中间件,当然虚拟化可以将一份资源抽象为多份,也可以将多份资源抽象为一份。通过虚拟化技术实现的虚拟机一般被称之为GuestOS(客户),而作为GuestOS载体的物理主机称之为HostOS(宿主)。

现在市场上最常见的虚拟化软件有VMWare workstation(VMWare)、VirtualBox(Oracle)、Hyper-V(Microsoft)、KVM(Redhat)、Xen等,这些软件统称之为VMM(Virtual Machine Monitor),使用不同的虚拟化实现。而这些虚拟化实现的方式可以分为: 

  • 全虚拟化:也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在guest操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(VMM 虚拟机管理程序)来捕获处理。既VMM会为GuestOS抽象模拟出它所需要的包括CPU、磁盘、内存、网卡、显卡等抽象硬件资源,所以全虚拟化的GuestOS并不会知道自己其实是一台虚拟机。全虚拟化的运行速度要快于硬件模拟,但是性能方面不如裸机,因为Hypervisor需要占用一些资源。典型的全虚拟化软件有:VMWare、Hyper-V、KVM-x86(复杂指令集)。

全虚拟化的两种实现方式:

 1、基于二进制翻译的全虚拟化;2、基于扫描和修补的全虚拟化。

  • 半虚拟化:是另一种类似于全虚拟化的技术,它使用Hypervisor分享存取底层的硬件,但是它的guest操作系统集成了虚拟化方面的代码。该方法无需重新编译或引起陷阱,因为操作系统自身能够与虚拟进程进行很好的协作。典型的半虚拟化软件有:Xen、KVM-PowerPC(简易指令集)半虚拟化除了修改内核外还有另外一种实现方法–在每一个GuestOS中安装半虚拟化软件:VMTools、RHEVTools。

接下来,看下常见的KVM和Xen的区别,也从另外一种说法,来旁观下虚拟化技术分类。

虚拟化是通过Hypervisor程序实现的,Hypervisor的作用是将硬件虚拟化提供给多个操作系统使用,是虚拟化技术的核心。
虚拟化分为两种:1型虚拟化和2型虚拟化。

  1. 型虚拟化是将Hypervisor直接安装在物理机上,然后虚拟机直接运行在Hypervisor上,Xen就是属于1型虚拟化。
  2. 型虚拟化是先在硬件上安装操作系统,然后将Hypervisor作为系统的一个程序运行在系统上从而实现对虚拟机的管理,KVM就是属于2型虚拟化。

六种主流虚拟化技术全解析:OpenStack、KVM、Hyper-V、VMware、Xen及Docker Hyper-V采用基于VMBUS(Virtual Machine Bus)的高速内存总线架构,所有来自虚拟机的硬件请求,都可以直接经虚拟化服务客户机(Virtualization Service Consumer,VSC),通过VMBUS总线发送到根分区的虚拟化服务提供者(Virtualization Service Provider,VSP),VSP则调用对应的设备驱动直接访问硬件,中间不再需要通过Hypervisor的管理。因为虚拟机的特性,所以不管是什么类型的应用程序都是可以运行的。 阅读详情

相关推荐

【openstack系列】虚拟化技术

OpenStack 是一个开源的云计算管理平台,它本身并不直接提供虚拟化技术,而是通过集成不同的虚拟化解决方案来管理和编排计算、存储和网络资源。OpenStack 的核心优势在于其灵活性和可扩展性,支持多种虚拟化技术(Hypervisor),使企业可以根据需求选择合适的底层虚拟化方案。

yunqi1215的博客 1560

浅析openstack虚拟化技术

OpenStack Openstack:OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives

程序员面试精选【codeoffer】 1万+

KVM虚拟化解决方案系列之KVM架构篇

KVM虚拟化解决方案系列之KVM架构篇

鵬城大聖的博客 3357

KVM openstack 之间的区别与联系

首先介绍一下虚拟化的类型 1.全虚拟化(Full Virtualization) 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在guest操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(虚拟机管理程序)来捕获处理。全虚拟化的运行速度要快于硬件模拟,但是性能方面不如裸机。 2.半虚拟化(Para Virtuali

daguaishou007的博客 1万+

虚拟化 - 每天5分钟玩转 OpenStack(2)

本篇开始介绍 OpenStack 的基础 - 虚拟化

CloudMan6的博客 7072

KVM虚拟化,云平台

KVM  介绍 virtualization 资源管理 一台物理机虚拟出多台虚拟机 多个物理机虚拟出一台虚拟机(看应用在哪的情况下) 完全虚拟化 部分虚拟化 硬件辅助(CPU) 系列 PC/服务器版代表 VMware VMware Workstation、vSphere Microsoft VirtualPC、Hyper-V RedHat ...

tongzhuo1220的博客 3075

OpenStack所支持的虚拟化技术和KVM、Xen、Hyer-V、QEMU、Libvirt说明

OpenStack所支持的虚拟化技术和KVM、Xen、Hyer-V、QEMU、Libvirt说明

没刮胡子的程序员专栏 2686

RK3588S开发板实战:手把手教你搞定IMX415摄像头驱动配置(附调试日志分析)

本文提供了一份详细的RK3588S开发板配置IMX415摄像头驱动的实战指南。内容涵盖从环境准备、内核驱动编译、设备树节点编写到调试日志分析的完整流程,并重点解析了摄像头调试过程中的常见问题与解决方案,帮助开发者快速完成驱动配置与功能验证。

weixin_28285943的博客 200

ConnectionResetError 10054 根因分析与全链路防御指南

ConnectionResetError(错误码10054)是TCP协议中服务端主动发送RST包导致的强制断连,本质并非网络连接失败,而是服务端基于空闲超时、连接满载、TLS协商失败等策略做出的确定性终止决策。理解其底层原理有助于跳出‘重试’误区,转向连接生命周期管理。该错误高频出现在HTTP长连接、WebSocket、第三方API对接等场景,尤其在Nginx反向代理、负载均衡器(如AWS ALB)、WAF设备及内核conntrack机制下极易触发。本文结合Wireshark抓包分析、客户端心跳保鲜、协议指

weixin_30225755的博客 634

STM32实战:5分钟搞定MXL90614红外测温模块的I2C驱动(附完整代码)

本文提供了一份快速集成MLX90614红外测温模块的STM32实战指南。通过详细的软件I2C驱动代码,重点解析了SMBus通信协议、CRC校验及温度数据转换,帮助开发者避开常见陷阱,实现5分钟内完成模块驱动并读取准确温度值。

wasm7browser的博客 348

Loupe Browser实战指南:解锁10xGenomics单细胞数据的可视化奥秘

本文提供了Loupe Browser的实战指南,帮助用户无需编程即可探索和可视化10xGenomics单细胞数据。文章详细介绍了从数据导入、界面导航到细胞亚群鉴定、差异基因分析的核心操作流程,并分享了高级技巧与避坑指南,是快速上手这一强大可视化工具的必备参考。

weixin_29313423的博客 204

如何更好的理解PFC(功率因数校正)

此电路虽然简单,可以在前期设计的无PFC功能的设备上,简单的增加一个合适的电感(适当的选取L和C的值),从而达到具有PFC的作用,但是这种简单的、低成本的无源PFC输出纹波较大,滤波电容两端的直流电压也较低,电流畸变的校正及功率因数补偿的能力都很差,而且L的绕制及铁芯的质量控制不好,会对图像及伴音产生严重的干扰,只能是对于前期无PFC设备使之能进入市场的临时措施。)在t4~t5期间尽管二极管左边电压在逐步上升,但是由于二极管右边的Uc放电缓慢右边的电压Uc仍旧大于左边,二极管仍旧反偏截止。

U_YAO的博客 944

Qwen-Image-2.1本地图像生成整合包:8G显存一键部署指南

文生图模型是AI视觉创作的核心技术,其本地化部署需兼顾模型能力、硬件适配与工程易用性。Qwen-Image-2.1作为支持文本生成、图像编辑与多图参考的统一架构模型,突破了传统Diffusion模型在消费级显卡上的运行瓶颈。通过AWQ量化、vLLM推理优化与ComfyUI节点重构,实现8G显存稳定运行,显著降低CUDA环境配置复杂度。该方案面向设计师、教师与普通用户,提供开箱即用的本地AI图像工作流,适用于电商主图迭代、教学配图生成与IP角色延展等真实场景,让高质量图像生成真正走出云端,落地桌面。

weixin_29082143的博客 389

C语言获取硬件信息(CPU序列号,硬盘序列号,网卡IP、MAC地址、是否插入网线)

本文主要介绍Linux和Windows下使用C语言获取各种硬件信息,包括CPU序列号、硬盘序列号、网卡信息(包括网卡名字、IP地址、MAC地址、网卡是否插入网线等)。

叶落花枯的博客 9370

【深度学习新浪潮】2025年末AI产业动态:泡沫争议、技术突破与2026投资机会解析

2025年末的AI产业在波动中完成了阶段性调整,技术突破与政策支持构筑了长期成长基石,而结构性分化与风险隐患则要求投资者更加精准地把握机会。2026年作为“风险资产的黄金年”,AI全产业链将持续成为资本聚焦的核心,无论是算力国产化的技术突破,还是应用场景的规模化落地,都有望催生一批优质企业。投资者需立足产业阶段特征,理性看待短期波动,聚焦核心技术与政策红利,方能在AI产业的成长浪潮中把握确定性机会。

专注:太空算力、AI infra、异构调度、大模型成本工程 1805

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

上一篇: 大数据架构之端到端方案综述(3)数据仓储&Hive
小事儿Phil
博客等级 码龄8年 16粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值