虚拟化学习笔记

1.虚拟化技术概述

1.虚拟化概述

1.定义

在计算机领域,虚拟化指创建某事物的虚拟(而非实际)版本,包括虚拟的计算机硬件平台、存储设备,以及计算机网络资源)可见,虚拟化是一种资源管理技术,它将计算机的各种实体资源(CPU、内存、存储、网络等)予以抽象和转化出来,并提供分割、重新组合,以达到最大化利用物理资源的目的。

2.作用

简单说,虚拟化技术能将物理资源虚拟化。在传统架构当中,一个物理的主机只能支持一个操作系统及上层应用;有了虚拟化技术,一个物理主机可以被分割成多个虚拟的主机,向上支撑多个操作系统及其应用程序。

传统模式:

虚拟化: VMM为了达到虚拟化引入的软件层

2.虚拟化执行层面分类

从实现的方式上划分
  • 硬件虚拟化
  • 软件虚拟化
从虚拟化的程度上划分
  • 半虚拟化
  • 全虚拟化

3.虚拟化技术层面分类

虚拟化是云计算的入门技术,从云计算资源的角度,可以将虚拟化分为:计算虚拟化、存储虚拟化、网络虚拟化。

计算虚拟化

计算虚拟化主要包括CPU虚拟化、内存虚拟化、1/O虚拟化。

存储虚拟化

存储虚拟化主要涉及RAID、分布式存储、分布式文件系统。

网络虚拟化

网络虚拟化主要包含了网络虚拟化和软件定义网络。

4.虚拟化管理工具

虚拟机监控器:VMM

VMM,虚拟机监控器,也称为Hypervisor,为了达到虚拟化而引入的一个软件层。VMM向下能够掌握实际的各种物理资源,向上可以给虚拟机划分逻辑资源,实现了虚拟机独享物理资源的假象。

5.虚拟化技术优势

  1. 性价比高

虚拟化技术减少了数据中心里服务器和相关硬件的数量,降低IT成本

  1. 灵活性强

动态迁移技术有效减少迁移成本,服务不中断

  1. 稳定性强

强大的安全和故障隔离机制,实现同一主机上运行多个应用程序

  1. 利用率高

避免了服务器使用的浪费,充分利用现有的服务器资源

2.虚拟化技术产品介绍

1.KVM虚拟化解决方案

1.KVM概述

KVM全称是Kernel-based Virtual Machine,基于内核的虚拟机,KVM是采用硬件虚拟化技术的全虚拟化解决方案。

  • 它由Quramnet开发,该公司于2008年被RedHat收购。
  • 它支持x86 (32 and 64位), s390, Powerpc 等CPU.
  • 它从Linux2.6.20起就作为一模块被包含在Linux内核中。
  • 它需要支持虚拟化扩展的CPU。
  • 它是完全开源的。
2.发展

KVM全称是基于内核的虚拟机(Kernel-based Virtual Machine),它是一个Linux的一个内核模块,该内核模块使得Linux变成了一个Hypervisor:它由Quramnet开发,该公司于2008年被 Red Hat收购。

2.KVM功能概述

KVM从诞生开始就定位于基于硬件虚拟化支持的全虚拟化实现。它以内核模块的形式加载之后,就将Linux内核变成了一个Hypervisor,但硬件管理等还是通过Linux kernel来完成的,所以它是一个典型的Type 2Hypervisor。

KVM的功能特性
  1. 内存管理

Linux内存管理的机制,如大页、KSM、NUMA、通过mmap的进程间共享内存,可以应用到客户机内存管理上。

影子页表

  1. 存储和客户机镜像格式

KVM能够使用Linux支持的任何存储来存储虚拟机镜像,包括具有IDE、SCSI和SATA的本地磁盘,网络附加存储,或者支持iSCSI和光线通道的SAN。

  1. 实时迁移

KVM支持实时迁移,在宿主机之间转移正在运行的客户机而不中断服务。

  1. 性能

KVM在CPU、内存、网络、磁盘等虚拟化性能上表现出色,大多都在原生系统

的95%以上

3.KVM发展现状及未来趋势

KVM已经成为Openstack用户主流的Hypervisor选择。

经过10年的不断发展和演变,KVM已经非常成熟。KVM未来会怎样进一步发展?

4.其他虚拟化解决方案

Xen
架构

Xen是英国剑桥大学计算机实验室开发的一个开源新项目。它是可以直接运行在计算机硬件上而不是操作系统里的软件层,还可以在计算机硬件上同时运行多个客户操作系统(Guest OS)。在开源社区获得了非常大的推广。Xen支持x86、x86-64、安腾、Power PC和ARM处理器,因而它能够在很多计算设备中运行。现阶段Xen支持Linux、NetBSD、FreeBSD、Solaris、Windows等常见操作系统。Xen在架构上是一个典型的Type1 Hypervisor,与KVM不同。没有宿主机的概念,而是由XenHypervisor(VMM)管理硬件

虚拟化类型---半虚拟化

半虚拟化(Paravirtualization)被称作"超虚拟化"(通称PV),是一种以Xen为主导虚拟化技术。此项技术使虚拟机操作系统可以辨别在Xen虚拟机管理程序上运行,而不是在硬件运行的虚拟机,并鉴别在同样环境里运行的多个虚拟机。

虚拟化类型---全虚拟化

完全虚拟化,又称"硬件虚拟化"(HVM),运行在虚拟环境里的虚拟机总是感觉自己运行在硬件上,并且感知不到在相同硬件环境下运行着其他虚拟机的虚拟技术。

VMware
发展
代表性产品

VMware产品线非常全,既有PaaS产品,也有laaS产品;既有运行于Linux平台上的产品,也有Windows和Mac平台上的产品。

HyperV

Hyper-V是微软公司的服务器虚拟化商品,微软公司初次采用了虚拟机管着微软公司将更直接的和市场先峰VMware市场竞争,但仍然有所不同。

Hyper-V是微软公司明确提出的hypervisor虚拟化技术,能够实现桌面虚拟化。Hyper-V最早开始计划在2008年第一季度与Windows Server 2008与此同时发布。Hyper-V Server 2012已完成RTM版本的发布。

架构

HyperV在架构上与Xen类似,也是Type1HypervisorHyper-V采用微内核的架构,兼顾了安全性和性能的要求。Hyper-V 底层的Hypervisor 运行在最高的特权级别下,微软将其称为ring-1(而Intel则将其称为root mode),而虚拟机的OS 内核和驱动运行在ring0,应用程序运行在ring3下,这种架构就不需要采用复杂的BT(二进制特权指令翻译)技术,可以进一步提高安全性。

Container

容器严格来说与虚拟化软件并不是一个大类,容器不是某个虚拟化软件,而是某类软件的统称,包括Docker和LXC等。另外,容器不是硬件平台级的虚拟化技术,而是软件运行环境的虚拟化,是一种操作系统级的虚拟化技术。

LinuxContainer容器技术的诞生(2008年)就解决了IT世界里"集装箱运输"的问题。Linux Container(简称LXC)它是一种内核轻量级的操作系统层虚拟化技术。Linux Container主要由Namespace和Cgroup两大机制来保证实现。

技术

Container技术利用了Linux kernel提供的cgroup、namespace等机制,将应用之间隔离起来。

技术特点

与硬件配置抽象层虚拟化hypervisor技术对比,容器的特性非常明显。传统虚拟化(虚拟机)技术不但部署环境与布署应用很麻烦,针对APP运用的可移植性也非常麻烦。例如把vmware中的vm虚拟机迁移到KVM就比较繁琐。但是,拥有容器技术就很简单,容器技术主要有如下的特性:

总结:KVM的优势

相关推荐
2601_9622989316 分钟前
阿里云计算巢部署 OpenClaw 保姆级图文攻略|Slack集成+千问Qwen3.6-Plus配置+新手避坑教程
阿里云·新手教程·openclaw·slack集成·千问qwen3.6-plus
翼龙云_cloud24 分钟前
阿里云国际代理商:2026零基础如何使用轻量应用服务器搭建独立站?
运维·服务器·阿里云·云计算
SDWAN_Cheap1 小时前
MPLS专线在云计算时代的角色:与云专线、SD-WAN的协同
云计算·mpls专线
2501_930472441 天前
05_数据库迁移腾讯云_DTS评估与预检回滚清单
数据库·云计算·腾讯云
liyuanchao_blog1 天前
OVN/OVS场景下虚拟机新网卡通过 DHCP 获取 IP 地址的完整过程
网络·网络协议·tcp/ip·云计算
论文复现现场2 天前
MiniMaxH3 生成视频速度慢、电脑带不动怎么办?用 RTX 5090 云端镜像快速运行
云计算·电脑·音视频·gpu算力
2501_930472442 天前
03_AWS迁移腾讯云_组件差异风险清单与工作量WBS
云计算·腾讯云·aws
sbjdhjd2 天前
PHP RCE 多层绕过实战:关键字过滤、空格替换与 php://filter 伪协议 | 02
网络·安全·web安全·网络安全·云计算·安全架构·rce
Alwayswinnn2 天前
27届秋招实录:从手动填表到自动化辅助的效率跃升
阿里云·自动化·秋招·大学生找工作·应届生就业·ai求职工具·一键投简历
论文复现现场3 天前
RTX 4090 24GB 能跑 Qwen3.8-27B 吗?单卡显存计算与云端部署指南
人工智能·python·云计算·llama·gpu算力