25q64存储多个数据_一篇文章看懂,存储虚拟化在不同用例中的实践与优势

存储虚拟化是一种对物理存储资源进行抽象的技术,使其看起来像是一个集中的资源。虚拟化掩盖了管理内存、网络、服务器和存储中资源的复杂性。

存储虚拟化运行在多个存储设备上,使它们看起来就像一个单一的存储池。这些池化的存储设备可以来自不同的供应商和网络。存储虚拟化引擎可识别来自多个阵列和存储媒介的可用存储容量,对其进行聚合、管理并将其呈现给应用程序。

虚拟化软件的工作原理是将存储系统的I/O请求拦截到服务器。引擎将物理请求映射到虚拟存储池,并从物理位置访问请求的数据,而不是由CPU处理请求以及将数据返回到存储器。一旦计算机进程完成,虚拟化引擎将I/O从CPU发送到它的物理地址,并更新其虚拟映射。

该引擎将存储管理集中到一个基于浏览器的控制台,该控制台允许存储管理员将多个不同供应商的阵列作为单个存储系统进行有效管理。

存储虚拟化的剖析

91e756265a9705551485f1b81e01583d.png

存储虚拟化可以出现在各种不同的场景中

数据级别:块或文件

基于块

基于块的存储虚拟化是最常见的存储虚拟化类型。它将存储系统的逻辑存储从其物理组件中抽象出来。物理组件包括内存块和存储媒介,而逻辑组件包括驱动器分区。

存储虚拟化引擎在可以多个阵列和单个媒介上发现所有可用块,而不考虑存储系统的物理位置、逻辑分区或制造商。引擎将数据留在物理位置,并将地址映射到虚拟存储池。这使引擎能够将多个供应商的存储系统的容量呈现给服务器,就好像整个存储系统是单个阵列。

文件级别

文件级的虚拟化工作在NAS设备上,以此对独立的NAS设备进行池化和管理。虽然管理单个NAS并不特别困难,但是管理多个设备既耗时又昂贵。NAS设备在物理上和逻辑上相互独立,这需要单独的管理、优化和供应。这增加了复杂性,并要求用户知道访问文件的物理路径名。

使用多个NAS设备最耗时的操作之一是在它们之间迁移数据。当组织的规模超过了之前的NAS设备时,它们通常会购买一个新的、更大的设备,这往往需要从接近容量阈值的旧设备中迁移数据。反过来又需要大量停机时间来配置新设备、从遗留设备迁移数据,以及在启用之前测试迁移的数据。但是停机时间会影响用户和项目,而且数据迁移的停机时间延长也会在财务上为企业带来不良影响。

文件级存储虚拟化掩盖了管理多个NAS设备的复杂性,并使管理员能够共享存储资源,而不是将它们限制在特定的应用程序或工作组中。虚拟化NAS设备也使数据迁移过程中不需要停机。虚拟化引擎维护正确的物理地址,并将更改的地址重新映射到虚拟池。用户可以从旧设备访问文件并保存到新设备,而无需知道发生了迁移。

组件:主机,网络与阵列

虚拟化引擎可能位于不同的计算组件中,最常见的三种是主机、网络和数组,服务于不同的存储虚拟化用例。

基于主机

主要用例:为VM环境和在线应用程序提供虚拟化存储。

有些服务器提供操作系统级的虚拟化。操作系统的存储虚拟化可用以优化容量和自动化分层存储计划。

更常见的基于主机的存储虚拟化池存储在虚拟环境中,并将池呈现给客户操作系统。一种常见的实现方法是用动态扩展的VM充当存储池。由于VM希望看到硬盘驱动器,所以虚拟化引擎将底层存储作为硬盘驱动器呈现给VM。实际上,“硬盘驱动器”是由基于磁盘和阵列的存储资产创建的逻辑存储池。

这种虚拟化方法在云存储和超融合存储中最常见,单个主机或超融合系统将可用的存储池存储到虚拟驱动器中,并将这些驱动器呈现给客户机。

基于网络

主要用例:SAN存储虚拟化

基于网络的存储虚拟化是SAN存储最常见的一种类型,组织一般会使用它来添加更多的存储。存储虚拟化从服务器或交换机上,跨光纤通道或iSCSI网络运行。

基于网络的设备抽象了跨存储网络运行的存储I/O,并且可以跨所有连接的存储设备复制数据。它还使用针对所有池化存储的单一管理接口简化了SAN管理。

基于阵列

主要用例:存储分层。

基于阵列的存储虚拟化并不新鲜。某些RAID级别本质上就是虚拟化的,因为它们将存储从多个物理磁盘抽象为一个逻辑数组。

如今,基于阵列的虚拟化通常指的是一种专门的存储控制器,它拦截来自二级存储控制器的I/O请求,并在连接的存储系统中自动对数据进行分层。该设备允许管理员将媒体分配给不同的存储层,通常是将SSD分配给高性能层,将HDD分配给近线或二级存储层。虚拟化还允许管理员在同一存储层中采用混合介质。

这种虚拟化方法比基于主机或网络的虚拟化更加有限,因为虚拟化只发生在连接的控制器上。二级控制器需要与虚拟化存储控制器相同的带宽,而这会影响性能。

但是,如果企业在高级混合阵列上投入了大量资金,那么阵列的存储智能可能会超过存储虚拟化所能提供的能力。在这种情况下,基于阵列的虚拟化允许企业保留阵列的本机功能,并添加虚拟化层以提高效率。

6368690b294d0ddea927e283748bb0bc.png

带(Band):带内带外

带内

当虚拟化引擎在主机和存储之间进行操作时,就会发生带内存储虚拟化。I/O请求和数据都通过虚拟化层,这允许引擎提供高级功能,如数据缓存、复制和数据迁移。

带内占用更少的主机服务器资源,因为它不需要查找和附加多个存储设备。服务器只在其数据路径中看到虚拟池存储。但是,池增长得越大,它对数据路径吞吐量产生影响的风险就越大。

带外

带外存储虚拟化将路径分为控制(元数据)和数据路径。只有控制路径通过虚拟化设备运行,它拦截来自主机的I/O请求,查找并映射物理内存位置上的元数据,并向存储器发出更新的I/O请求。数据不通过设备,这使得缓存不可能实现。

带外虚拟化在各个服务器上安装代理,将它们的存储I/O定向到虚拟化设备。尽管这在一定程度上增加了单个服务器的负载,但带外虚拟化不会像带内虚拟化那样造成数据瓶颈。不过,最佳的实践办法是通过添加额外的冗余带外设备来避免虚拟化中断。

存储虚拟化的优势

·支持动态存储使用以及附加存储资源(包括块和文件)的虚拟可伸缩性。

·避免在数据迁移期间停机。虚拟化在后台操作,可维护数据的逻辑地址以保留访问权限。

·集中一个管理台来管理多个供应商的存储设备,节省了管理开销和成本。

·通过将可用存储扩展到主机或SAN来保护现有的投资。

·可以在多供应商环境中添加存储智能,如分层、缓存、复制和集中管理接口。

原文作者:Christine Taylor

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

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

相关文章

android代码画出波浪球,Android绘制波浪曲线,效果很赞的。

github地址:https://github.com/sddyljsx/Android-SurfView-WaveViewpackage neal.canvas;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Path;import and…

Java命令行界面(第14部分):google-options

google-options的GitHub页面指出google-options是“来自Google(java)的人们的命令行参数解析库。” 该页面继续说:“这是Bazel Project中的命令行参数解析器。 com.google.devtools.common.options程序包已拆分为一个单独的jar,用…

python自动化工具哪个好用_10款好用的自动化测试工具推荐

当我们功能测试干的时间比较久了,或者想要学习更多的技术,提升自己的时候,基本上第一时间就会想到的是自动化测试。而在自动化测试领域,自动化工具的核心地位毋庸置疑,下面为大家推荐10款常见常用的自动化测试工具:1、SeleniumWEB自动化测试S…

android 输入法文本选择功能,Android的文本和输入---创建输入法(一)

输入法编辑器(IME)是让用户输入文本的控件。Android提供了一个可扩展的的输入法的框架,它允许应用程序给用户提供另外的输入法,如软键盘或语音输入。这些输入法一旦安装,用户就可以从系统的设置中选择他们想要使用的IME,并且这个设…

python基础list_python基础操作---list

1 #coding:utf-82 list1 [physics, chemistry, 1997, 2000];3 list2 [1, 2, 3, 4, 5 ];4 list3 ["a", "b", "c", "d"];56 #切片功能跟str一样7 print "list1[0]: ", list1[0]8 print "list2[1:5]: ", list2[1:…

华为mate40RS能升级鸿蒙,mate40Pro和40RS能用上鸿蒙系统吗

[分享交流]mate40Pro和40RS能用上鸿蒙系统吗8886电梯直达huafen210861086新学乍练发表于 2020-12-18 12:30:08来自:HUAWEI Mate 40 Pro最新回复 2020-12-19 09:50:21如题好多人都说不能用上鸿蒙系统林泽徐独步江湖发表于 2020-12-18 12:30:52来自:HUAWEI…

在JShell中尝试Java9 HTTP客户端和Process API

这篇文章继续了My My Java 9 Features博客文章中对Java9功能的探索。 在这里,我们用在Java9 HTTP / 2客户端和进程API试验JShell HTTP / 2客户端 HTTP / 2客户端是Java9中的孵化器项目。 这意味着该API尚未最终确定,因此在将来的版本中仍有一定的更改范…

python怎么读取pdf文件_Python解析并读取PDF文件内容的方法

本文实例讲述了Python解析并读取PDF文件内容的方法。分享给大家供大家参考,具体如下:一、问题描述利用python,去读取pdf文本内容。二、效果三、运行环境python2.7四、需要安装的库pip install pdfminer五、实现源代码代码1(win64)# codingutf…

android记事本添加图片功能,安卓手机上有什么便签app既可以写日记又可以添加照片?...

原标题:安卓手机上有什么便签app既可以写日记又可以添加照片?当前,有很多人一直保持着写日记的习惯,因为这样可以及时记录自己的成长轨迹,使得自己可以追寻到时光的记忆,但是我们记录日记的工具&#xff0c…

python每行输出14个数_python – 计算pandas中每行的一些值的列数

需要更改isnull到notnull:#if first columns is not index, set itdata data.set_index(Site code)data[Count] data.notnull().sum(axis1)data data.set_index(Site code)data[Count] data.count(axis1)print (data)Col1 Col2 Col3 CountSite codeA5252 24.0 5…

Java命令行界面(第20部分):JSAP

JSAP ( Java Simple Argument Parser )2.1是本系列文章的第二十篇,重点是处理Java的命令行参数。 JSAP页面描述了该库存在的原因:“我在Internet上找到了几个解析器,所有解析器都处理了开关,但是在解析返回…

小米平板4android软件兼容吗,小米平板4有NFC功能吗 小米平板4支持NFC吗

小米平板4有NFC吗?小米平板4终于在诸多期待之下发布了,总的来说,小米平板4是一款性价比非常高的产品。所以没有带来太多惊喜的地方,但整体表现还是不错的。可以说是目前最便宜的骁龙660智能产品,性能中端。加上小米MIU…

监视器java_Java监视器绑定的超人

监视器java这是超人生活中的黑暗时期。 乔尔艾尔(Jor-El)希望他继续航行,为他的最终命运做好准备。 然而,地球面临着世界末日,正义联盟需要他们的钢铁侠行动来拯救世界。 但是,由于我们只有一个超人&#x…

坚果pro2s android 8,锤子坚果Pro2S 安卓8.1 稳定版 超级流畅 火力全开 智能调频 省电稳定 优化简约...

、该ROM本人已经测试通过,如因操作不当造成的后果,本人以及论坛一概不承担任何责任;2、刷机前请保证电池有60%以上的电量,并保证刷机过程中手机及电脑无任何异常;3、刷机有风险,第一次刷机者&am…

代码分析工具python_Python代码分析工具:PyChecker、Pylint

1 概述PyChecker是Python代码的静态分析工具,它能够帮助查找Python代码的bug,而且能够对代码的复杂度和格式等提出警告。PyChecker可以工作在多种方式之下。首先,PyChecker会导入所检查文件中包含的模块,检查导入是否正确&#xf…

flatMap()与concatMap()与concatMapEager()– RxJava常见问题解答

RxJava 2.x中共有三个无缝相似的运算符&#xff1a; flatMap() &#xff0c; concatMap()和concatMapEager() 。 它们都接受相同的参数-从原始流的单个项目到任意类型的&#xff08;子&#xff09;流的函数。 换句话说&#xff0c;如果您有Flowable<T>则可以为任意R类型提…

android的padding属性,以编程方式获取android:padding属性

从一个角度来看&#xff0c;如何以编程方式获取android&#xff1a;padding属性的值&#xff1f; 我目前正在使用&#xff1a;private static final String ANDROID_NAMESPACE "http://schemas.android.com/apk/res/android"; private static final String ATTRIBUT…

Java命令行界面(第25部分):JCommando

JCommando 网站 上将JCommando描述为“命令行参数的Java参数解析器”。 JCommando读取XML配置以生成一个Java类&#xff0c;该类处理Java应用程序中的解析。 在提供XML配置的 Java命令行解析库的本系列文章中&#xff0c;以前涵盖的唯一基于Java的库是JSAP &#xff0c;但这是该…

xss 全编码两次_XSS进阶

原标题&#xff1a;XSS进阶1、XSS常用语句及编码绕过XSS常用的测试语句有&#xff1a;●<>alert(1)>●●●常见的XSS的绕过编码有JS编码、HTML实体编码和URL编码。(1)JS编码JS提供了四种字符编码的策略&#xff0c;如下所示。●三个八进制数字&#xff0c;如果个数不够…

鸿蒙系统6月可升级,华为鸿蒙2.0系统大规模升级从6月开始?

你现在使用的智能手机是什么&#xff0c;苹果的iPhone手机&#xff0c;华为智能手机&#xff0c;小米手机还是其他智能手机。从操作系统来看目前的智能手机基本上可以分成iPhone手机跟安卓智能手机&#xff0c;其中iPhone手机使用的是iOS系统&#xff0c;而其他智能手机操作系统…