DB2 10.5 for Linux, UNIX, and Windows

DB2 pureScale 功能部件 的组件

IBM® DB2® pureScale® Feature 在高可用性数据库解决方案中组合了若干紧密集成的软件组件。当部署 DB2 pureScale 功能部件 时,会自动安装并配置这些软件组件。

图 1. DB2 pureScale 环境 中主要组件(与已连接至数据服务器的 DB2 客户机一起显示)的视图。DB2 成员是处理数据库请求,并且集群高速缓存设施 (CF) 提供必需的基础结构服务。数据存储在共享磁盘存储器上,该存储器可由所有成员访问。
该图形显示 DB2 pureScale 环境
中主要组件(与已连接至数据服务器的 DB2 客户机一起显示)的视图。DB2
成员是处理数据库请求,并且集群高速缓存设施
(CF)
提供必需的基础结构服务。数据存储在共享磁盘存储器上,该存储器可由所有成员访问。

下列各节提供了 DB2 pureScale 环境 的主要组件的概述。

DB2 成员

当 DB2 客户机连接至数据库时,系统会将该连接路由至成员,接着后者会处理请求。成员的工作负载会自动均衡,方式是将请求从 DB2 客户机引导至具有最低工作负载的成员。对各个请求进行工作负载均衡的方式取决于您是使用较不频繁的连接级别工作负载均衡,还是使用较频繁的事务级别工作负载均衡。所有成员会对共享磁盘上的同一数据库进行读取和写入;在它们之间共享整组数据。每个成员都会运行它自己的 db2sysc 进程和线程,并且每个成员都包含其自己的缓冲池、内存区域和日志文件。

建议的配置是每台主机一个成员。主机可以是计算机,也可以是逻辑分区 (LPAR)。要利用连续可用的环境的设计以及帮助提供最佳性能,请至少创建两个 DB2 成员,每个在其各自的计算机上。DB2 pureScale 功能部件 最多可支持 128 个成员。虽然所有 DB2 成员最初可能使用相同硬件规范,但是不需要硬件同质性。测量实例时添加的主机计算可以具有不同规范。

不应该将 DB2 成员主机用于任何其他目的。

集群高速缓存设施 (CF )

DB2 pureScale 功能部件 包含集群高速缓存设施,在 DB2 pureScale 环境中也称为 CF 组件。此设施用来通过全局锁定管理器协调锁定,以防止不同成员对同一表数据访问而发生冲突。集群高速缓存设施还用来通过共享组缓冲池在所有成员上使页面高速缓存保持一致。组缓冲池会协调在成员的(本地)缓冲池上可能存在的页面副本。

集群高速缓存设施还会提供共享通信区域 (SCA)。成员可使用此共享通信区域仿真集群范围的共享内存。

在 DB2 成员处于联机时,至少一个集群高速缓存设施必须处于联机状态,数据库才可用。要利用连续可用的环境的设计,请使用多个集群高速缓存设施。将元数据和数据库数据转接至辅助集群高速缓存设施会确保在它处于活动状态时,它仍与主CF保持对等状态。如果主CF发生故障,那么辅助CF可进行接管以维持数据库可用性。

CF 可在其自己的计算机上运行,它们也可通过在其自己的逻辑分区 (LPAR) 上运行来与成员共享主机。不应该将集群高速缓存设施主机用于除了 DB2 pureScale 功能部件 之外的任何内容。如果必须在集群高速缓存设施主机上运行其他软件,那么可能需要对数据库配置进行其他手动调整。

DB2 集群服务

DB2 集群服务是提供自动脉动信号故障检测并在检测到故障后自动启动所需恢复操作的软件。它还提供集群文件系统(该文件系统在 DB2 pureScale 实例 对公共文件系统的访问中提供每个主机)。DB2 集群服务包括来自 IBM Tivoli® System Automation for Multiplatforms (Tivoli SA MP) 软件、IBM Reliable Scalable Clustering Technology (RSCT) 软件及 IBM General Parallel File System (GPFS™) 软件的技术。此技术作为 DB2 pureScale 功能部件 的集成部件打包。

如果 DB2 pureScale 环境 中的组件未能对脉动信号检测协议进行响应,那么DB2 集群服务会向成员集群高速缓存设施发出警报,从共享存储器隔离发生故障的组件(必要时)并触发组件重新启动。此重新启动过程设计为自动进行,不需要您的干预。当恢复已发生故障的组件时,实例的其余部分仍然可用,并且可继续处理入局数据库请求。通过自动 DB2 客户机重新路由支持,那些已连接至发生故障的成员的应用程序将自动重新路由至其他成员

DB2 pureScale 功能部件 的安装过程使用集成 IBM General Parallel File System 软件在共享磁盘上创建 DB2 集群文件系统

共享磁盘存储器

用来设置实例的磁盘存储器在 DB2 pureScale 环境中所有组件之间共享。该磁盘存储器用于下列目的:
  • 存储数据库数据本身。
  • 存储实例配置以及其他数据库信息,例如日志、元数据、日志归档和备份。
  • 存储来自成员集群高速缓存设施的问题确定信息,例如 db2diag 日志文件以及首次出现数据捕获 (FODC) 信息。
  • 帮助 DB2 集群服务仲裁在严重通信故障阻止一半主机与另一半主机进行通信的情况下,哪些成员集群高速缓存设施将仍然保持运行。此仲裁过程会阻止主机集合相互独立地处理数据库请求。在发生严重通信故障的情况(此时,一个主机集合无法与另一个主机集合通信)下,DB2 集群服务将自动允许较大的集合保持运行。如果这些集合大小相等,那么系统会使用仲裁共享磁盘仲裁哪个集合保持运行。

网络连接

DB2 pureScale 环境中,使用了下列类型的网络:
  • 用于访问共享磁盘的存储区域网络 (SAN),由成员集群高速缓存设施使用。DB2 pureScale 功能部件 利用某些增值功能(例如“基于光纤通道的存储区域网络 SCSI-3 持久性预留”支持),这些功能构建到 IBM Power Systems™ 计算机上运行的 AIX® 操作系统中。此支持允许快速检测发生故障的成员并从共享磁盘隔离这些成员,以便保持数据一致性,并且会缩短成员恢复时间。
  • 低等待时间的高速互连,用于 DB2 成员集群高速缓存设施之间的通信。此网络的性能很关键,因为它用来在集群上传递锁定和高速缓存信息。实例中的所有主机都必须使用同一类型的互连,并且 DB2 pureScale 功能部件 需要使用:
    • 基于 InfiniBand (IB) 的远程直接存储器存取 (RDMA) 协议网络。
    • 基于融合以太网的 RDMA 协议 (RoCE) 网络,或
    • 基于以太网的 TCP/IP 协议 (TCP/IP) 网络。
    InfiniBand 是业界标准通信链路,提供服务质量和故障转移支持,并且设计为实现可伸缩性。使用 RDMA 允许直接在成员主机内存中更新,而不需要成员处理器时间。DB2 Cancun Release 10.5.0.4 和更高版本的修订包开始,可在基于以太网的 TCP/IP 网络上运行 DB2 pureScale 功能部件,而不需要支持 RDMA 的特殊适配器。
  • 允许 DB2 客户机与 DB2 pureScale 实例连接的公司网络(例如 EtherChannel 或“网络接口备份”技术)。DB2 pureScale 功能部件 会自动将连接请求路由至具有最低工作负载的成员。或者,可指定 DB2 客户机将连接至 DB2 pureScale 实例中的特定活动成员。在建立与成员的第一条连接之后,会将可用成员的列表及其 IP 地址和当前工作负载发送回 DB2 客户机。DB2 客户机可接着通过使用 IP 地址连接至其中任何成员