何时存储被认为是高度可用的?

我读过几个地方的人描述以下configuration为高可用性

2台服务器(有时带有多个HBA),每台服务器通过多根SAS电缆连接到一个支持多pathI / O的RAID机柜。

当然RAIDarrays本身就有一定的冗余级别,但是shell呢? 难道这不是失败,还是这是上述设置中的单点失败?

对不起,如果这是一个菜鸟问题。

在“高度可用”和“没有单点故障”之间,IMO有一个区别。 另外,你必须考虑HA的范围,你可以有一些HA存储,但不是应用程序(单个服务器。愚蠢,我知道,但我已经看到它发生)。

计算正常运行时间要求可能更有用,然后反向工作来解决不同的组件。 另外,对于我来说,医pipe局覆盖单一地点的可用性。 业务连续性/灾难恢复解决了多站点部分。 因此,您可以在两个位置组合HA,在每个位置DR都是最昂贵的。 RTO / RPO要求再一次影响devise和决策过程。

哆啦A梦,是否有关部分失败的问题。

shell中的部件可能会在某些时候失效。 但是根据数组,arrays中可能会有冗余部分。 所以这就离开了机箱本身,国际海事组织并不是什么大不了的事情。 如果您有第二个arrays,典型的DC布局趋向于将存储arrays集中在一起,所以如果有人说,这可能会影响到其他人。

一个好的工作定义为您的网站

“高可用性”对不同的人来说意味着很多不同的东西当我为电信级的电信系统编写软件时,我们有几个冗余的要求:

  • networking:通过以太网的两条path,通过两个不同的交换机
  • 磁盘:搜查等
  • 电源:冗余电源,通过两个不同的电源子系统(这是我们的柜子处理)

标准来源于这个问题:

有任何维修操作会导致停机吗?

  • 提升力量
  • 升级以太网交换机
  • 换出磁盘

弄清楚这些问题和类似的问题如何适用于您的情况,并且您的网站会有一个良好的工作定义。

“高可用”的最佳定义可能是你可以通过一些math来估计你的正常运行时间。 (99.8%,99.999%,通常是在一个月或一年内测量的),这是对客户服务可用性的度量。 任何“服务器本身已经启动,这不是我的networking故障”的测量不计算在内。

这几乎肯定意味着你没有任何需要维护的组件,当它得到一个固件更新或类似的东西时,它会降低服务。 一旦你通过了大约3个9的话,那么你的服务器可能会比networking,你的能力等等更好(似乎互联网的大部分问题每隔几年就会出现几个小时的问题,所以你可能会如果客户通过互联网到达你的话,那么现实就不可能超过4个9)

至于你所描述的:这是一个好的开始,这取决于。

容易失败的东西,大概是可能性的顺序是:

  1. 人类(“这个button做什么?”)
  2. 软件( 叹气
  3. 任何与移动部分(硬盘驱动器,风扇)
  4. 芯片(主要是因为他们有其他电子产品的非常小的版本,他们有软件的固件)
  5. (不断听到这些不良批次)
  6. 晶体pipe,电阻器,其他电子产品,特别是如果有任何热循环的话

如果RAID机箱中的机箱,背板等非常简单,那么它们可能具有足够的弹性,以确保99.99%的正常运行时间(比如4小时的维修时间和一年内发生故障的概率为1/5)等等。 这可能比您的networking或电源可用性更好,即使通过您的网站的一对networkingpath和一个合理的UPS基础设施。

有可能RAID机箱是真正的电子两个单独的单元,每个驱动器都有一个单独的path(双连接器驱动器现在已经足够普遍了),它们之间有一种心跳,两个系统连接到两个控制器。 如果非冗余部分仅仅是一个金属盒子,而且布线非常简单,那么在大多数标准中,这种部件就具有“高度可用”的特性,因为金属盒通常不会失效,而且如果没有做得不好,简单的布线就不会失败。

换句话说:我们不知道。 每个部件的MTBF等级和平均修理时间是多less?

在业界已经有相当一段时间被用作“高可用性”,并且是存储营销层面的一步。 下一步是“业务连续性”,当他们试图向您推销其两个磁盘arrays之间的块级复制技术时。 有些产品也有升级function,允许主机操作系统在两者之间无缝切换。

在我看来,以上是不是很好,因为有问题的磁盘arrays似乎最多只支持两个主机。 “真正的”HA将涉及到某种types的存储区域networking上的磁盘arrays,无论是光纤通道还是iSCSI。

就像所有东西都有不同程度的高可用性一样。 您所描述types的高可用性直接连接存储能够承受大多数单点故障,但是如果某些事情杀死了arrays,显然它会失败。

在arrays级别,为提高可用性而添加的function包括冗余电源,冗余控制器(具有caching\状态镜像),冗余风扇和冗余IO接口等。 所有这些应该是理想的热插拔,所以你可以承受失败\执行积极的维修,而不closures它。

在冗余电源前端,高端系统具有独立的备用电源系统,作为标准configuration的一部分,对于真正的偏执狂,您可以从具有独立备用发电机选项的独立交stream电网中供电。 电池支持的caching\caching降级用于确保一致性,即使您为保持运行所做的一切仍不能防止失败。

另外,您可能(应该)考虑复制到不同的服务器机房\ datacenter \ city中的单独arrays。 复制是棘手的,因为故障转移到副本始终是一个复杂的过程,但即使在最基本的情况下,也会比重build/恢复快得多。

值得注意的是,单个最大的问题往往是人为错误 – devise存储以使其能够承受人为错误是相当困难的。 SAN在一定程度上通过推荐双(或更多)完全独立的光纤networking来解决这个问题,以便隔离物理和configuration错误,但在arrays级别上,这种弹性水平并不是我所见过的。