专家博客:Linux 集群文件系统简介
博客 Sheryl Calish 发表于:12年05月16日 14:26 [转载] DOIT.com.cn
集群文件系统在多个方面完善了 Oracle RAC 的数据库集群功能。以下是它们的对比情况。(外文翻译有的不够准确)
通常,集群只是一组作为单一系统运行的服务器(PC 或者工作站)。但是,这个定义的外延不断显著扩大;集群技术现在不但是一个动态领域,而且其各种应用程序正不断吸收新的特性。此外,集群文件系统技术(无论是开放源代码的还是专有的)在其功能方面正在迅速趋同。
很多人谈到集群应用程序和其中所使用的文件系统软件时,就象它们完全是一回事似的。更准确地说,大多数集群包含两个主要组件:通过快速网络连接共享存储介质的服务器和充当软件“粘合剂”使集群节点保持协作的文件系统。
在“Linux 文件系统精通指南”一文中,我解释了文件系统方法和数据结构如何提供硬盘分区物理结构的用户级视角。虽然各项目之间有所不同,但集群文件系统为集群的多个节点所做的工作是相同的:它们使所有节点看上去都象是单一系统的一部分,同时允许集群的所有节点进行并发的读写操作。
在本篇后续文章中,我们将从较高角度来介绍集群文件系统之间的总体差别以及 Oracle 真正应用集群 (RAC) 环境的某些特性。刚接触集群、Linux 文件系统或 Oracle RAC 的数据库管理员或系统管理员会发该文很有教育意义。
集群应用程序简介
集群应用程序具有各种级别的成熟度和功能。它们包括:
高性能 集群也称为并行集群或计算集群,通常用于那些支持大量计算处理的系统。在这些集群中,并行文件系统在节点间分配处理资源,因而允许每个节点通过并发的读写同时访问同一文件。NASA 在二十世纪九十年代初期开发的 Beowulf Linux 集群就是最常见的示例。
高可用性 (HA) 集群专门为容错或冗余而设计。因为这些集群通常使用一个或多个服务器进行处理,所以当一个或多个服务器停机时,这些服务器能够承担其他服务器的处理职责。
负载平衡 或负载均衡 集群在多个服务器(通常是 web 服务器)间尽可能平均地分配负载。
存储 集群用于 SAN 和具有不同操作系统的服务器之间,提供对通用存储介质上的数据块的共享访问。
数据库 集群将 Oracle RAC 作为平台,把许多集群文件系统特性引入到应用程序本身中。
这些集群应用程序具有重叠的特性,其中一个或多个特性通常可在单个集群应用程序中找到 — 尤其是在 HA 和负载均衡集群中。例如,Oracle RAC 可以安装在 HA 集群文件系统上,从而将数据库集群的优点引入 HA 集群应用程序,如:
共享资源 — 包括数据、存储器、硬盘和元数据 — 从而使多个节点看上去就像单一文件系统。它们允许集群的所有成员同时读写文件系统。
将存储设备集合到单个磁盘卷中,从而因无需进行数据复制而提高了性能
可伸缩的容量、带宽和连接性
单个系统映像,为所有节点提供相同的数据视图。
现在让我们来看一些可以选用的支持 Oracle RAC 并具有集群感知的 Linux 文件系统,以及它们如何完善 Oracle RAC 的功能。