存储 频道

实战:构建高可用、高性能的GPFS集群

  GPFS可靠性分析和设计思路

  GPFS的数据完整性一方面是由以上提到的数据安全机制来保证,另外也通过一套可用性判断机制来完全保证数据完整性与系统安全。GPFS提供三套不同的 quorum 机制来判断系统当前的状态,其中 File Descriptor Quorum 是系统内置的,不能做配置,另外两种 node quorum 和 tiebreaker quorum 方式只能二者选其一,使用那种方式要基于我们的系统环境与可靠性分析。

  File system Descriptor Quorum:File system Descriptor 顾名思义即描述文件系统信息的数据。我们在几个不同的 failure-group 的磁盘上创建GPFS文件系统时,会把文件系统的配置信息(简写为 FD)的拷贝写到多个磁盘上,以实现冗余备份。FD quorum 的机制即通过判断含有 FD 磁盘的在线情况来判断当前系统是否正常,当超过半数的含有 FD 的磁盘掉线时,就判断为系统故障,将会自动关闭文件系统。

  Node Quorum:是通过主机状态的来判断系统可用性的机制。GPFS文件系统集群中,可以设置多个主机节点为 Quorum node。Node Quorum 的机制是通过判断 Quorum node 的状态来判断系统是否正常,当超过半数的 Quorum node 在线时,判断系统为正常,反之,将关闭文件系统。

  Tiebreaker quorum:是通过磁盘的状态来判断系统的可用性。我们可以设置系统通过监视指定的一些磁盘作为 Tiebreaker Disk。当超过半数的 Tiebreaker Disk 掉线时,则判断系统故障,将自动关闭文件系统。Tiebreaker 最多只能配置两个用来监控磁盘状态的 quorum 主机,当 2 台 quorum 主机都宕机的话,GPFS系统也将会关闭。其优势在于节点数较少时可用性较高,但节点数较多的情况建议采用 Node quorum 模式。

  根据以上三种判断机制,GPFS自动判断系统的状态,当异常发生时自动关闭系统以保护系统和数据的完整性。

  基于上面阐述的GPFS可用性机制,我们可以看出GPFS是通过上述的三种 quorum 机制来检查资源是否超过半数状态正常来判断系统状态好坏。我们在设计GPFS文件系统集群的时候需要注意最好保证各种资源数都为 2N+1 个(N 是指数量),也即数量为奇数,来获得系统最大的可用性。

  • Filesystem Descriptor (FD)Quorum 的设计。我们在一般的生产系统中都会使用两组不同的 failure group 的磁盘来创建一个文件系统,以实现数据的冗余保护,但是丢失一个 failure group 的磁盘实际不影响数据的完整性,但是由于 FD quorum 2N+1 的机制,文件系统仍将会关闭,所以我们在创建一个GPFS文件系统时,可以通过增加一个很小的本地的磁盘作为第三个 failure group。以实现 2N+1 的冗余设计。本地的磁盘可以设置为只保存GPFS文件系统信息(FD),实际不参与数据读写。(同一个 failure group 的磁盘是指有可能同时坏掉的磁盘,比如来自同一个存储的磁盘或连在同一个适配器上的磁盘)

  • Node Quorum 如果采用了 2N+1 个 Quorum Node,那么这个系统就能容忍 N 个主机节点的离线,所以如果主机节点小于 5 个采用此种方法都不是很经济,此时建议采用 Tiebreaker quorum 机制。

  • Tiebreaker quorum 只能配置两个 quorum 主机,但是只要 tiebreaker 磁盘在线,只有一个 quorum 主机状态正常,系统也能正常工作,同时也意味着必须有一台 quorum 主机在线。如果是主机节点数较多的情况,采用此种机制其可靠性不如 Node quorum。

1
相关文章