GFS运行原理
GFS文件系统其实是一个网络日志文件系统,通常被用作为多台计算机共享一存储设备,而GDS文件系统本身的相关信息可以存储在服务器中或者在一个存储区域网络中。

图19.3是GFS文件系统的一个拓展图。
此图是GFS与GNBD通过SAN网络的一个构架,总共分为4个组成部分,从下到上依次为共享数据存储层、GNBD Server、GFS文件系统和应用程序层。
共享数据存储层
共享数据存储区域一般由专业的磁盘阵列设备组成,然后通过SAN网络连接到每个GNBD Server上。
GNBD是Global Netword Block Device的简称,它通过将存储的数据块导出到以太网上,进而提供了通过TCP/IP协议访问Red Hat GFS是方法。GNBD由两个主要部分组成:一个GNBD客户端,一个GNBD服务器端。GNBD服务器端运行于GNBD Server上,主要用于导出本地存储。GNBD客户端运行在使用GFS文件系统的每个节点上,主要用于导入从GNBD服务器端导出的磁盘设备。GNBD Server 可以有一个或者多个,并且多个GNBD客户端可以同时访问由一个GNBD服务器端导出的磁盘设备。
GFS文件系统运行在集群的每个节点上,通过共享GNBD Server 导出的数据,实现营业程序的访问,完成服务器集群技术存储的功能。
位于最上层的应用程序主要用于提供集群服务。集群服务运行在每个节点上,共用同一的数据文件,从而对外提供一致性的访问功能。
为了保证文件系统的完整性,GFS使用锁管理器来管理I/O。当一个节点在GFS上修改数据时,改变可以立即在其他使用此文件系统的节点上可见。GFS通过多个节点在块级别上共享存储,实现了资源的节点共享和统一管理。