存储虚拟化讲解

news2024/12/29 9:40:54

目录

存储虚拟化的分类

按照虚拟化发生的位置分类

基于主机的虚拟化

基于存储设备的虚拟化

基于网络的虚拟化

按照虚拟化实现方式分类

带内虚拟化

带外虚拟化

按照虚拟化的对象分类

虚拟机磁盘类型

按照磁盘的特性分类

按照磁盘的安全性分类


什么是虚拟化

存储虚拟化本质上是对存储硬件资源进行抽象化,通过在物理存储系统和服务器之间加入了一个虚拟层,将物理资源的逻辑映射与物理存储分开,通过该虚拟层可以管理和控制所有的逻辑映射资源,从而管理和控制所有的物理存储资源并对服务器提供存储,不需要关注底层物理存储设备的细节

对于管理员来说

通过存储虚拟化实现将多种、多个存储设备的集中化管理,并根据具体的需求把存储资源动态的分配给各个服务器或应用

对于用户来说

存储虚拟化就像是一个巨大的“资源池”,用户不关心硬件具体使用的是什么样子的硬盘,也不关心自己的数据经过哪一条路径通往哪一个具体的存储设备,只需要关心存储池中的资源够不够用

存储虚拟化注意事项

在存储虚拟化中,所有用户的存储都是以文件的形式呈现的;虚拟机的磁盘、快照、虚拟机配置等都对应一个独立的文件

通过虚拟化技术,能够存储资源整合到一起后对外提供服务,同时实现数据安全性、容量提升、性能提升等效果

存储的基本概念

异构存储:存储系统中不同类型的存储设备的集成(包含不同的存储介质、厂商等)

存储网络架构:存储网络架构——DAS、NAS、SAN、分布式组网架构-CSDN博客

机械硬盘与固态硬盘:机械硬盘(HDD)与固态硬盘(SSD)-CSDN博客

磁盘阵列RAID:存储RAID——存储基本概念与RAID级别讲解-CSDN博客


存储虚拟化的分类

存储虚拟化的实现

存储虚拟化可以在三个层次上完成(虚拟化发生的位置)

基于主机的虚拟化、基于存储设备的虚拟化、基于网络的虚拟化

具体的实现方式有两种

带内虚拟化(in-band)、带外虚拟化(out-of-band)

具体的实现结果有五种(虚拟化对象)

块虚拟化、磁盘虚拟化、磁带虚拟化、文件系统虚拟化、文件/记录虚拟化

按照虚拟化发生的位置分类

基于主机的虚拟化

工作原理(将虚拟化管理软件安装在一个或多个主机上)

在主机层通过虚拟化管理软件实现虚拟化,通过虚拟化管理软件在物理存储资源和操作系统之间建立之间建立一个虚拟层,虚拟化层能够为服务器连接到的各种存储设备(DAS、SAN等方式连接到存储设备)进行控制,一般用于单个服务器(单个集群)访问多个磁盘阵列的场景,也可用于在不同的磁盘阵列之间做数据镜像保护;

主机将获取到的物理存储资源通过虚拟化层组成逻辑磁盘或逻辑卷(即将多个不同的磁盘阵列映射为一个虚拟的逻辑磁盘),使得主机的操作系统在运行应用程序的时候就好像与一个单一的存储设备直接通信,该逻辑磁盘更够根据需要进行扩容和缩容

注意事项

在现网中这个软件通常是由操作系统下的逻辑卷管理软件实现的(例如Windows下自带的卷管理器,不同的操作系统进行逻辑卷管理的软件也不相同);也有独立的虚拟卷管理软件(例如BIM的Tivloli等)

优点

实现最容易,设备成本最低

此时的存储虚拟化通过服务器特定软件软件来完成,经过虚拟化的存储空间可以跨越多个异构的磁盘阵列,能够实现多机间的共享存储、存储资源管理、数据复制和数据迁移、远程备份、集群系统等存储管理任务

不需要硬件支持,不修改现有系统架构

缺点

控制软件是在主机的操作系统层面去运行的,会占用主机的资源

可扩展性差,实际运行的性能不是很好

基于存储设备的虚拟化

存储设备虚拟化又称为存储控制器的虚拟化

工作原理(将虚拟化管理软件安装在存储设备的主控制器上)

在物理存储资源层实现虚拟化,将虚拟化层放在存储设备上的适配器、控制器来完成(即在存储设备上的存储控制器上加入虚拟化功能),将服务器的存储虚拟化工作分离出来,直接在存储设备上实现,极大地提高了性能;存储阵列充当主存储控制器,使用虚拟化软件汇集本磁盘阵列或其它阵列的存储资源,并够以层的形式向外提供不同类型的物理存储,能够将一个阵列上的存储容量划分为多个存储空间LUN来供不同的主机系统访问,一般用于多个主机服务器要访问同一个磁盘阵列的场景,也可用于在同一存储设备内部进行数据保护和迁移;

优点

虚拟化软件运行于存储设备中专门的嵌入式系统上,不占用主机资源

数据管理功能丰富,可以提供一些存储高级业务(精简配置、快照、链接克隆等)

缺点

一般只可以实现对本设备内磁盘的虚拟化

不同厂商的存储设备之间无法互相管理,异构产品之间很难实现存储级联

多套存储设备需要配置多套数据管理软件,成本较高

基于网络的虚拟化

工作原理(在存储网络的网络设备中添加虚拟化引擎实现虚拟化)

通过在存储网络设备上添加虚拟化引擎来实现是目前的主流技术

目前有的解决方案为在存储区域网络采用智能化的路由器、交换机、元数据服务器等来实现虚拟化的工作(这些设备都内置虚拟化引擎);所有的存储设备都通过网络设备连接,然后将以单个虚拟池的形式出现在存储网络中;一般用于当多个主机服务器需要访问多个异构存储设备,也用于异构存储系统的整合和统一数据管理

优点

与主机无关,不占用主机资源

支持异构存储设备

能够统一不同存储设备的数据管理功能,构建同一的管理平台,可扩展性好

缺点

性能有损耗

部分厂商数据管理能力弱,难以达到虚拟化同一数据管理的目的

按照虚拟化实现方式分类

带内虚拟化

控制信令和数据走的是同一条线

在存储虚拟化中,可以理解为在主服务器和存储设备之间实现虚拟化,实现虚拟化的部分就是主机到存储设备的访问路径;即在在数据读写之前,在主机到存储设备的路径上已经实现了存储虚拟化

实例

带内虚拟化可以基于主机、设备、网络实现;目前的虚拟化引擎基本上都是带内虚拟化(例如 IBM的SVC、Netapp的V-series、HDS的USP系列等)

带外虚拟化

控制信令和实际数据走的不是同一条路,控制信令走单独的通路,收到优待

在存储虚拟化中,可以理解为实现虚拟化设备安装在主机和存储之间的数据通道之外,实现虚拟化的部分并不在主机到存储设备的访问路径上;即在数据读写之前,已经做好了虚拟化的工作,只不过实现虚拟化的部分并不在主机到存储设备的访问路径上

实例

带外虚拟技术只能是基于存储网络实现;例如IBM的SanFS就是带外虚拟化、使用元数据服务器实现网络虚拟化也是带外虚拟化类型

按照虚拟化的对象分类

块虚拟化

LUN虚拟化就是将多块磁盘创建RAID,然后将RAID划分成逻辑卷LUN

块虚拟化就是将硬盘切为多个逻辑块,然后再将逻辑块组成LUN,然后基于LUN做RAID组

块虚拟化和LUN虚拟化的发展为RAID1.5→RAID2.0→RAID2.0+

存储RAID——RAID2.0+技术(块虚拟化与LUN虚拟化)-CSDN博客

磁盘虚拟化

磁盘虚拟化就是将扇区地址使用逻辑块表示,屏蔽底层物理磁盘的概念(向使用者提供虚拟磁盘);使得使用者无需了解磁盘的内部结构,通过块地址就可以访问磁盘

该方式需要针对于磁盘的逻辑地址进行管理

磁带库虚拟化

通过VTL虚拟磁带库技术将磁盘阵列虚拟为磁带库,在本质上是磁盘阵列,但是在软件功能上确模拟磁带备份的形式

对于管理员来说,它就是一个磁带库,对它的管理与对物理磁带库的管理一致

特点:虚拟磁带带库采用基于RAID保护的磁盘阵列,提高了可靠性和性能

文件系统虚拟化

将多个文件系统整合成一个虚拟文件系统,用户通过虚拟文件系统访问数据对象

底层分区对用户来说是透明的

例如Linux的VFS虚拟文件系统:Linux 磁盘挂载2(文件系统格式化、磁盘挂载、VFS虚拟化文件系统)-CSDN博客


虚拟机磁盘类型

按照磁盘的特性分类

普通磁盘

为虚拟机创建普通磁盘时,创建时的磁盘空间是多少,虚拟机实际使用的磁盘空间就是多少

并且在创建后,会对该磁盘全部用0来填充(立即分配所有空间,并全部使用0填充)

创建的速度慢;性能最好,安全性最好

普通延迟置零磁盘

与普通磁盘相比,创建磁盘时不会进行填0操作;在使用的时候进行填0操作(立即分配所有空间,在写前置0)

磁盘下放速度快;性能较好

精简磁盘

为虚拟机创建精简磁盘时不进行空间分配,在虚拟机进行数据写入时才进行空间分配(写前分配空间,使用多少分配多少)

可以分配大于存储空间的大小,提高磁盘利用率,节省磁盘空间;性能较低

存储资源调优技术——智能精简配置技术-CSDN博客

差分磁盘

差分磁盘必须基于一个已有的父磁盘来创建,差分磁盘中的文件头会记录父磁盘的路径,数据区域只记录和父磁盘差异的数据;差分磁盘的大小随着数据的写入而自动增长

差分磁盘不能脱离父磁盘独立存在;差分磁盘创建后,父磁盘里面写入的所有数据都不会变

虚拟机进行数据写入操作的过程:如果虚拟机想往磁盘写入新的数据,将更改的数据写入到差分磁盘中

虚拟机进行数据读取操作的过程:当对差分磁盘进行读操作时,会先读取差分磁盘中的数据,如果不存在,则通过文件头的索引找到父磁盘,并进行数据读取

按照磁盘的安全性分类

持久化磁盘

可以做到数据永久保存

数据不受快照的影响,当还原系统状态或者回滚快照时都不会影响这个持久硬盘的数据

即当创建快照时,不对该磁盘数据进行快照;进行快照回滚时也不进行还原

非持久化磁盘

可以做到数据不永久保存,即关机就进行数据还原(适用于自动还原场景)

对于非持久化磁盘,会先创建差分磁盘,在主机运行过程中会将更改的数据全部写入差分磁盘,在关机之后将差分磁盘的数据删除,达到还原的目的

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

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

相关文章

许战海战略文库 | 从“物美价廉”到“技术出海”:中国车企新能源时代如何征服全球市场?

引言:从燃油车到新能源汽车,中国车企的海外战略正在经历一次深刻的转变。面临技术、产业链和文化等多重挑战,他们如何调整步伐,捕捉新的机遇,同时避免潜在风险,将决定其在全球市场的未来地位。 在燃油车时代,中国车企凭借“物美价廉”赢得了一…

基于SSM的“大学生艺术节”管理系统的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

Powerpoint不小心被覆盖?PPT误删文件如何恢复?

PowerPoint不小心删除了,这可能是众多学生和工作人员最头痛的事情了。PPT被覆盖或误删可能意味着几个小时的努力付之东流。那么PPT覆盖的文档要如何救回来呢?小编将会在本篇文章中为大家分享几个解决方案,使PPT文档覆盖还原操作成为可能&…

Go:如何在GoLand中引用github.com中的第三方包

本篇博客主要介绍如何在GoLand中引入github.com中的第三方包。具体步骤如下: 正文 (1) 先在GoLand中打开go的工作区目录(即环境变量$GOPATH设置的变量)。如图: 关于工作区目录中的三个子目录: bin: 保存已编译的二进制可执行程序;pkg: 保…

OpenAI首届开发者大会多项更新汇总

OpenAI Dev Day 提供了多项更新,总结如下: GPT 4-Turbo - 现在可以通过API使用GPT 4-Turbo。- 提供了更长的128k令牌上下文,之前为32k。- 相比GPT-4,成本降低了50%以上。- 知识更新至2023年4月,之前为2021年9月。- 性…

JAVA 版小程序商城免费搭建 多商家入驻 直播带货 商城系统 B2B2C 商城源码之 B2B2C产品概述

1. 涉及平台 平台管理、商家端(PC端、手机端)、买家平台(H5/公众号、小程序、APP端(IOS/Android)、微服务平台(业务服务) 2. 核心架构 Spring Cloud、Spring Boot、Mybatis、Redis 3. 前端框架…

快速搭建UmiJS4.0项目及常见问题解决方案

yarn create umi选择项目类型 ○ Pick Umi App Template │ Simple App选择创建工具 ○ Pick Npm Client │ yarn选择源 ○ Pick Npm Registry │ taobao启用 Prettier(可选) yarn umi g √ Pick generator type Enable Prettier -- Setup Pr…

Cesium 相机设置

1.setView 直接跳转到目的地 // 设置相机位置 const position Cesium.Cartesian3.fromDegrees(113, 31, 20000); // setView通过定义相机目的地(方向),直接跳转到目的地 viewer.camera.setView({ destination: position, // 位置设置 orientation: { //…

【C/PTA——循环结构3】

C/PTA——循环结构3 7-1 二分法求多项式单根1.题目要求2.代码实现 7-2 循环-十进制转化1.题目要求2.代码实现 7-3 梅森数1.题目要求2.代码实现 7-4 单词长度1.题目要求2.代码实现 7-5 21循环-求和31.题目要求2.代码实现 7-6 21循环-金字塔1.题目要求2.代码实现 7-7 循环-杨辉三…

Vue技巧大揭秘:v-show与v-if的区别及性能对比一目了然

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 ⭐ 专栏简介 📘 文章引言 一、v…

房产网小程序源码 房产中介小程序源码 房产网源码

房产网小程序源码 房产中介小程序源码 房产网源码 功能介绍: 一、付费发布信息 支持付费发布、刷新、置顶房源信息;二、个人发布信息 支持个人和房产经纪人发布房源信息;三、新房楼盘模块 支持新房楼盘功能,后台添加…

单链表(3)

现在有一个指针p,指向数据2所在的结点的地址——那么如何访问这个数据2 前面说过指针访问数据成员使用的是 指向符->。则访问这个数据2就是——p->data.因为p一开始就指向数据2的结点地址了 那么如何访问数据3,4往后等等 访问3就是——p->next->data…

MFC-TCP网络编程客户端-Socket

目录 1、客户端创建流程: 2、UI设计: 3、代码实现: (1)、ConnectSocket中重写OnReceive函数接收信息 (2)、框架类入口函数初始化 (3)、加入房间功能实现 &#xff…

新闻稿大纲怎么写框架?纯干货

新闻稿大纲在新闻报道中的重要性不言而喻,首先大纲能够提高写作效率,有了一份详细的大纲,可以帮助我们迅速组织思路,梳理采访内容,明确文章的结构和主题,避免在写作过程中出现不必要的拖延。 其次&#xf…

数据结构之AVL树

map/multimap/set/multiset这几个容器有个共同点是: 其底层都是按照二叉搜索树来实现的,但是普通的二叉搜索树有其自身的缺陷, 假如往树中插入的元素有序或者接近有序, 二叉搜索树就会退化成单支树, 时间复杂度会退化成O(N),因此map、set等关联式容器的底层结构是对二叉树进行了…

【 Docker: 数据卷挂载】

背景 Docker只提供了容器运行的必备依赖,但是一些编辑等操作的依赖是不支持的,如vi操作容器内部文件、将静态资源拷贝到容器内来等。 docker pull nginx docker run -d -p 81:80 --namemynginx -v D:/docker/nginx/www:/usr/share/nginx/www -v D:/dock…

性能测试资源监控宝藏工具:iDB Dashboard

iDB Dashboard 是 TiDB 自 4.0 版本起提供的图形化界面,可用于监控及诊断 TiDB 集群。TiDB Dashboard 内置于 TiDB 的 PD 组件中,无需独立部署: https://docs.pingcap.com/zh/tidb/v4.0/dashboard-intro

【GEE】8、Google 地球引擎中的时间序列分析【时间序列】

1简介 在本模块中,我们将讨论以下概念: 处理海洋的遥感图像。 从图像时间序列创建视频。 GEE 中的时间序列分析。 向图形用户界面添加基本元素。 2背景 深水地平线漏油事件被认为是有史以来最大的海上意外漏油事件。该井释放了超过 490 万桶石油&am…

实用知识(工作中常用)

mybatis-plus联表查询 pom.xml坐标 <!-- mybatis-plus-join --> <dependency><groupId>com.github.yulichang</groupId><artifactId>mybatis-plus-join</artifactId><version>1.2.4</version> </dependency>使用步骤&…

虚拟环境中使用的Python不是当前虚拟环境的,解决方法

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 在虚拟环境中使用的python和pip不是虚拟环境的pip安装不到当前的虚拟环境中…等 解决方法 1. 解决办法 打开配置文件 vim ~/.bashrc把如下代码注释即…