SAN 技术的重点是什么?

Mat*_*hid -1 storage-area-network

我不确定这是否是要问的正确论坛,但这里是...

我的雇主决定安装 SAN。由于各种不相关的原因,这从未真正发生过。但是我做了一些研究以找出什么是“SAN”,并且……我很困惑。这看起来是一个荒谬的坏主意,我只能得出结论,我误解了它的工作原理。

据我所知,SAN 代表存储区域网络,它基本上意味着您使用普通 IP 网络将服务器连接到磁盘。我完全惊呆了,任何一个理智的人都会认为这是一个好主意。

所以我用 Ultra-320 SCSI 链接将我的服务器连接到它的磁盘。那是该服务器上所有磁盘之间共享的 320 MB/s 带宽。然后我将它们从 SCSI 链路上撕下来,并将它们插入一个 100 Mbit/s 的以太网网络,理论带宽仅为 12.5 MB/s。那是您考虑任何路由延迟、IP 开销以及可能的数据包冲突之前。(后者通常可以避免。)

320 MB/s 对比 12.5 MB/s。让我看看,这大约慢了 25 倍。在纸上。在我们添加 IP 开销之前。(大概 SCSI 有自己的命令开销,但我猜测SAN 可能只是通过 IP 隧道传输 SCSI 命令,而不是通过 IP 实现全新的磁盘协议。)

现在,每个服务器都有一个专用的 SCSI 链接,这意味着每次我添加另一个服务器时,我都会增加更多的带宽(和更多的磁盘)。但是对于共享 SAN,每次添加服务器时,我都会从现有服务器上占用带宽。随着我添加更多硬件,事情现在变得更慢,而不是更快

此外,SAN 技术显然极其昂贵。假设建立整个 IP 网络比将几个驱动器插入电缆要复杂得多,这似乎是合理的。

因此,这些是使用 SAN 的缺点 - 成本大幅增加、性能大幅下降、可扩展性损失、复杂性增加以及系统出现故障的更多可能点。那么有哪些优势呢?

我一直听到的一个说法是,添加磁盘或将磁盘从一台服务器移动到另一台服务器变得更加容易。这听起来很合乎逻辑 - 大概对于 SAN,您只需按几个按钮,驱动器现在就属于不同的服务器。这比物理移动驱动器要简单得多(具体取决于驱动器的连接方式)。

另一方面,在这里工作了 10 年,我需要更换磁盘……让我数……两次。所以这是一个大约每 5 年发生一次的事件。所以你是说每 5 年一次,SAN 将为我节省 5 分钟的工作时间?每天的每一秒都会让事情变慢 25 倍?这是一个很好的权衡?

我想如果我负责一个拥有数千台服务器的大型数据中心,跟踪这么多磁盘可能会很困难,而拥有 SAN 可能是有意义的。哎呀,如果服务器都是虚拟化的,无论如何它们都会像地狱一样慢,所以也许 SAN 甚至无关紧要。

然而,这完全不符合我的情况。我有两台服务器,每台服务器有三个磁盘。管理所有这些东西并不“困难”。

总之,不管我怎么看,这看起来都非常愚蠢。事实上,它看起来很明显很愚蠢,以至于没有人会花时间在研发上做出如此愚蠢的事情。正如我上面所说,这只能意味着我在某处误解了某些东西——因为没有人会做这么愚蠢的事情。

谁能向我解释我在这里没有看到的内容?

Mas*_*imo 12

您在这里没有看到的主要是,虽然没有头脑清醒的人会使用 100 Mbit 以太网来处理 SAN 流量,但还有许多其他选项不仅速度更快,而且比直连存储快得多(像标准 SCSI)。

企业级SAN通常使用光纤通道技术连接到服务器,其速度范围从1 Gbit到20 Gbit,最常用的适配器在4-8 Gbit范围内;这不仅实现了一些令人印象深刻的带宽,而且还可以利用多路径 I/O,允许不同适配器、FC 交换机和存储控制器之间的带宽聚合和故障转移,以实现最大可用性。

服务器访问 SAN 存储的另一种方式是使用iSCSI,它是基于 IP 传输的 SCSI 协议的实现;这可能就是您在问题中所指的内容。这实际上通常被认为是一种不太理想的解决方案(最佳解决方案是 FC),但仍然没有人会在 100 Mbit 以太网上运行它,并且在千兆位(或 10 Gbit)以太网链路上运行时情况会发生巨大变化。

说到速度,您听到的有关 SAN 的所有其他内容都适用:您可以按需创建和调整卷(称为LUN)的大小,将它们呈现给不同的服务器(甚至可以同时提供多个服务器,这通常是集群的要求),并且还有一些不错的附加优势,例如 SAN 到 SAN 复制和 SAN 级备份,当您必须处理大型(如许多 TB)数据大小的高可用性和灾难恢复时,这确实可以改变事情。

像往常一样,您可以从这里开始进一步挖掘:http : //en.wikipedia.org/wiki/Storage_area_network


当然,这对于中/大型环境通常是有意义的。即使在较小的 SAN 中,也可能存在小型 SAN 的情况。但是在有两台服务器的地方,任何类型的 SAN 都可能是矫枉过正。


Cho*_*er3 12

我可以向你保证,我们远非疯狂,让我们来看看你的一些想法。

它基本上意味着您使用普通 IP 网络将服务器连接到磁盘

可以这样做,但许多人不这样做,为了获得更好的性能和可靠性,许多人拥有仅用于数据中心以太网(用于 FCoE)、IP(用于 iSCSI)或基于光纤通道 (FC) 的与阵列通信的专用网络.

Ultra-320 SCSI 实际上只有 2.560Gbps,而 1Gbps 以太网(通常用于 iSCSI)因此整体慢 2.56 倍,许多人乐于应对这一限制,因为他们的带宽要求符合该配置文件。但是 SAN 经常处理速度更快的协议,FCoE 和 iSCSI 都使用 10Gbps、40Gbps 和 100Gbps 以太网链路,并且在 FC 世界中,大多数链路速度是 4Gbps、8Gbps 和 16Gbps - 最好的是 FC 和 FCoE 协议专门设计用于处理存储数据并在高并发负载下比常规以太网或 SCSI/SAS 更优雅地降级。顺便说一句,没有人会在生产环境中真正将 100Mbps 以太网用于 iSCSI,如今谁将 100Mbps 以太网用于任何事情?

因此 SAN 通常比本地附加存储快得多,但人们使用 SAN 的主要原因是为了确保他们的服务保持正常运行。他们使用块级共享和集群感知文件系统来做到这一点,多个服务器可以同时访问单个数据块,而不是像使用 NAS 时那样访问文件。这就是我们专业人士如何拥有诸如多节点数据库集群和容错虚拟机之类的东西。

正如您所建议的那样,添加、更改和删除磁盘要容易得多 - 如果我必须使用本地磁盘,我需要订购物理磁盘,安装它并将其呈现给机器。使用 SAN,我只需准备好一大块磁盘,然后根据需要分割我需要的内容,根据需要在几秒钟内将其呈现给服务器,当不需要时,空间会返回到池中。故障磁盘的处理也更加顺畅。

我认为你的问题在于你缺乏处理规模的经验,我负责数万个磁盘,它们每天都在死亡,但我们有一个非常顺利的过程,涉及根据需要跳到位的全球在线备件,这意味着我们可以在正常工作时间更换物理磁盘 - 无需午夜呼叫。如果我只是照看几个独立的机器,那么我也不会理解,但对于具有重要可用性要求、不断变化的需求和大量数据需要可靠存储的企业,恐怕只有 SAN 才有意义.


mul*_*laz 7

好的,首先,通常您在网络上使用 san 的速度超过 100mbps。1gig、10gig 或(最常见的)FibreChannel。

为了达到可用性部分,现在大多数服务器都已虚拟化。您有(例如)10 台主机,这些主机上托管着 100 台虚拟机。如果一台主机上的机器开始使用过多的 CPU,你打算怎么办?...迁移他们?你如何想象用本地磁盘做这件事?将所有数据(假设每台机器 100gigs)复制到另一台主机,然后返回?这就是为什么您将所有主机连接到一个大型 SAN,并将所有数据保存在那里,然后只发送机器的运行状态。

还有一种更好的存储使用情况——例如,DNS 服务器通常需要很少的磁盘空间(如果日志被发送到其他地方),但其他服务(文件服务器)需要很多。如果将它们全部组合在一个大型 SAN 上,则可以通过使用那里的所有驱动器来节省空间(甚至驱动器上的可用空间,否则这些空间将位于 DNS 服务器中)。

关于数据安全 - 您有多少个驱动器?驱动器失败......很多!如果您想保持服务运行,您至少需要某种级别的 RAID(通常是 raid1 或 5,或任何其他组合)。因此,您是之前示例中的 DNS 服务器,需要 2 个 400gig 驱动器(如果您要购买新服务器,通常情况下您无法获得更少,除非您购买的是 ssd)。所以每台服务器都需要 x2 个驱动器(或者对于 raid5 需要 n+1 个)。

在 SOHO 环境中,SAN 完全是矫枉过正。在企业环境中,您真的非常希望拥有集中式存储,至少是虚拟机,并为它们提供集中式硬件管理。


jwb*_*ley 5

你的帖子太长了,老实说我不会全部读完(抱歉),但是是的,你错过了一些要点;

所以我用 Ultra-320 SCSI 链接将我的服务器连接到它的磁盘。那是该服务器上所有磁盘之间共享的 320 MB/s 带宽。然后我将它们从 SCSI 链接上撕下来,并将它们插入一个 100 Mbit/s 的以太网网络,理论带宽仅为 12.5 MB/s。

是的,然后使用 10Gbps 网络结构。添加多个 10Gig 接口并绑定它们,如果您愿意,可以使用 40Gbps。这是一个简单的答案。如果您需要超过 100Mbps 的传输吞吐量,请不要使用 100Mbps 的网络设备。

现在,每个服务器都有一个专用的 SCSI 链接,这意味着每次我添加另一个服务器时,我都会增加更多的带宽(和更多的磁盘)。

专用 SCSI 链接到什么,一个存储单元?还是 RAID 控制器?

但是对于共享 SAN,每次添加服务器时,我都会从现有服务器上占用带宽。随着我添加更多硬件,事情现在变得更慢,而不是更快。

不,再次为您的存储卷添加更多接口,并添加更多存储卷。如果您的磁盘阵列带有到服务器的专用 SCSI 链接,并且您将另一台带有专用 SCSI 链接的服务器添加到磁盘阵列,则您现在已将每个服务器的带宽分成两半(除非存储单元可以使用两倍的带宽)像 SCSI 通道一样快!)。

人们日夜以 100% 负载运行设备是非常罕见的,与寻道时间和延迟相比,带宽问题要小得多。您似乎陷入了仅仅可以轻松克服的架构问题中。

然而,这完全不符合我的情况。我有两台服务器,每台服务器有三个磁盘。管理所有这些东西并不“困难”。

是的,SAN 不适合您。

如果您有 10 台服务器,每台服务器运行 10 台虚拟机,您就会希望它们存储在 SAN 上。如果所有数据都保存在本地服务器上,当该服务器出现故障时,数据现在处于离线状态。SAN 通过复制到其他存储节点来提高数据可用性。它们还通过集中快照、备份和校验和提高完整性。

一旦您获得大量服务器,本地存储很快就会成为大量管理开销和风险。

我并不是说它们是最好的东西,因为切片面包适用于各种情况,尤其是考虑到潜在成本。你真的需要读一本书,我认为像这样的SAN ,它会让事情变得清晰。