现代数据中心的共享磁盘(SAN,虚拟化等)

Modified on: Mon, 08 Jul 2019 06:00:02 +0800

我是一名开发人员......在国外地形上跋涉。请原谅任何天真的人。

我处理的是一个在数据库和文件系统中存储数据的应用程序。

上下文:群集和网络共享

过去当我们运行应用程序集群(即多个应用程序服务器面向数据)时,我们按如下方式处理了文件系统:

  • 节点A:共享“数据目录”(通过samba或nfs)
  • 节点B,C,D等:安装“网络共享”并在其“数据目录”中使用

节点B,C,D的“磁盘速度”降低不是最理想的,但不是一个大问题。

还要注意:应用程序使用自己的文件锁定机制。并发写入不是问题。

问题

  • 因此,在现代数据中心光纤通道将服务器连接到SANS,在多个服务器之间共享“大块磁盘”的最佳方式是什么?

  • 广泛使用这种'磁盘共享'吗?

  • 任何特定于操作系统的问题(“适用于Linux,但不适用于Windows”)

  • 有任何警告吗?难以配置,不可靠等?

我从我们的系统管理员那里听到了很多“我们做不到”的事情......最后当我问到更多细节时,他们说“好吧,从技术上说这是可能的,但这不是我们在这里做的事情”/ p>

提前感谢,

更新:感谢您的回答。 (他们都很好:我必须选择一个。抱歉,如果不是你的话)正如我(有点)预期的那样:我希望你可以简单地将NTFS或XFS或任何“常规”文件系统附加到同一个'大块“磁盘”被证明是天真的。集群文件系统就是票证。并且花哨的文件系统不在我们托管团队的首要任务中。)

作者:,user50460

最佳答案

  

“嗯,从技术上讲,这是可能的,但这不是我们在这里做的事情”

这听起来很像我经常告诉开发人员的事情;)

从企业运营的角度来看,您希望应用程序尽可能使用标准的可重复解决方案。如果您的申请不需要/需要特殊待遇,您将无法获得。非标准解决方案需要专业技能,更昂贵或更简单的设备,如果它是“最先进的”故障通常也是灾难性的。

对于许多应用程序,(高可用性)文件共享仍然是非常合适且常用的解决方案。

使用文件共享的常见HA备用解决方案是:

  • 不要将文件存储在文件系统上,而是使用高可用性数据库并将其存储为BLOB。一种非常常见的方法。通常你已经需要一个数据库,这使得应用程序服务器几乎无状态,通过将它们转移到数据库层来解决许多锁定,复制,HA,一致性和访问问题,其中很多问题都是旧的新闻,很好理解和解决了。一旦达到PB级别(相当大的一小部分),维护起来可能会很昂贵。

  • 一个正确的集群文件系统,允许通过光纤通道或iSCSI对共享存储进行并发读写块级访问。企业存储阵列往往是非常昂贵,但这可以很好地扩展。群集文件系统通常需要(昂贵)许可群集FS软件的每个节点。在专业应用程序的企业环境中也很常见。

  • 使用分布式对象库。这是一种更开源的解决方案,具有低端商用硬件,可在软件中创建冗余和可扩展性。这是一种常见的“云”方法。

作者:Community,HBruijn

相关问答

添加新评论