复制式本地存储
随着虚拟化的日益普及,以及由此带来的平台级高可用解决方案的流行,对高可用存储的需求和认知已经走到了整个 IT 领域、尤其是 SMB 领域的前沿。不出所料,存储已经成为当今虚拟化中最具挑战性的环节。
大多数研究高可用存储解决方案的人都知道 SAN 或 NAS 设备之间的复制,但并不知道本地存储同样可以进行同步复制,从而在无需外部存储设备的情况下实现相同的高可用实践。事实上,复制式本地存储(即 Replicated Local Storage,或称 RLS)与 SAN 或 NAS 为实现高可用所采用的技术,是(并且从逻辑上讲必然是)同一种技术。RLS 是所有高可用存储解决方案的根基,只不过当我们把某个设备视为“本地”设备来看待时,我们才用这个名称来称呼它。如果我们使用的是 SAN 或 NAS,那么 RLS 指的就是其自身的复制技术。当我们看待一台连接到复制式 SAN 的服务器时,我们会把这种复制视为非本地的。本地与否,只是当前视角的问题。归根结底,在技术层面上,所有复制都是 RLS。
RLS 技术在某些操作系统上很受欢迎,例如 Linux,其中 DRBD 是原生支持并已被纳入内核的。近年来,FreeBSD 项目也推出了自己的原生 RLS 技术,称为 HAST。Windows 目前没有原生的 RLS 选项。在 SMB 中常用的操作系统里,Linux 和 FreeBSD 引领着 RLS 的发展方向,并通过更广泛地采用这些技术推动整个行业向前发展。
在虚拟化领域,我们看到许多其他方法被用来为虚拟化平台提供 RLS。基于 Linux 构建的 KVM,以及依赖于 Linux 的 Xen 家族(包括 Xen、XenServer 等),都借助 DRBD 来实现各自的 RLS。VMware 生态系统采用复制式 VSA 的方式,常见选项包括 VMware 自家的 VSA 产品和 HP 的 VSA 产品,两者都使用一个虚拟化的、复制式的 NAS 设备来为平台提供 RLS。在 Microsoft 的 HyperV 上,则通过使用 Starwind 的复制式 SAN 平台来达成同样的目的,其行为本质上与 VSA 相同。
RLS 正在迅速变得越来越重要,因为它在小规模虚拟化中具有良好的可扩展性,把一项长期以来仅作为小众集群技术存在的技术推向了主流。在虚拟化的高可用在 SMB 世界普及之前,这些技术几乎只用于小规模的 UNIX 高可用集群。它们是重要的技术,也经常被使用,但由于属于某些 UNIX 系统“底层”的细节,很少受到业界关注。如今,随着虚拟化高可用的快速普及,RLS 已经从一项小众技术,转变为几乎对任何希望为其虚拟化平台实现高可用的 SMB 而言都最为关键、最为合适的技术之一。
