集群组件
集群管理器、集群数据库目录、集群数据库目录管理器、集群管理员和集群复制器等多个组件一起使用可正确执行集群功能。此外,因特网集群管理器将运行因特网协议的 HCL Domino®服务器集群化。
集群管理器
集群管理器运行在集群中的每台服务器上,并跟踪集群中其他所有服务器的状态。它保存集群中当前可用服务器的列表,并维护每台服务器的工作负载信息。
向集群添加服务器时,Domino® 会自动启动该服务器上的集群管理器。只要服务器是集群的一部分,那么每次启动服务器时都会启动集群管理器。
每个集群管理器通过与集群中其他服务器交换消息(称为探测信号)来监控集群。通过这些探测信号,集群管理器可以确定其他集群服务器的工作负载和可用性。当有必要将用户请求重定向至其他副本时,集群管理器将搜索集群数据库目录以确定哪些集群服务器包含所请求数据库的副本。然后,集群管理器将把包含副本的服务器以及这些服务器的可用性告知客户机。此操作促使客户机将请求重定向至包含副本的最可用的服务器。
集群管理器的任务包括:
- 确定属于集群的服务器。它通过定期监控 Domino® 目录查看服务器文档中集群名称字段和集群成员列表的更改来做到这一点。
- 监控集群中服务器的可用性和工作负载。
- 将服务器可用性的更改告知其他集群管理器。
- 将可用的副本和集群服务器的可用性告知客户机,以便客户机可以基于集群服务器可用性重定向数据库请求(故障转移)。
- 根据集群服务器的可用性均衡集群中服务器的工作负载。
- 在服务器日志文件中记录故障转移和工作负载均衡事件。
集群管理器在启动时会检查 Domino® 目录以确定属于此集群的服务器。它在内存内服务器的集群名称高速缓存中维护此信息。集群管理器使用此信息与其他集群管理器交换探测信号。另外,集群管理器还使用集群名称高速缓存来存储从这些探测信号中收到的可用性信息。这些信息有助于集群管理器执行上面列出的功能,如故障转移和工作负载均衡。
要查看集群名称高速高速缓存中的信息,请在服务器控制台上输入 show cluster。
集群数据库目录
集群数据库目录 (cldbdir.nsf) 的副本位于集群中每一台服务器上。集群数据库目录包含一个关于集群中每个数据库及其副本的文档。此文档包含数据库名称、服务器名称、路径、副本标识以及其他复制和访问信息。集组件使用此信息执行其功能,如确定故障转移的路径、控制对数据库的访问、确定要复制的事件以及将其复制到何处。
集群数据库目录管理器
每台服务器上的集群数据库目录管理器都会创建集群数据库目录,并用最新的数据库信息随时对其进行更新。第一次向集群添加服务器时,集群数据库目录管理器会在该服务器上创建集群数据库目录。向集群服务器添加数据库时,集群数据库目录管理器将在集群数据库目录中创建包含有关新数据库信息的文档。从集群服务器中删除数据库时,集群数据库目录管理器将从集群数据库目录中删除此文档。另外,集群数据库目录管理器还会跟踪每个数据库的状态,如集群中被标记暂停服务(用户不可访问)或待删除的数据库。
当集群数据库目录发生更改时,集群复制器立即将此更改复制到集群中每台服务器上的集群数据库目录。这样就可以确保每个集群成员都有关于集群中数据库的最新信息。
集群管理员
集群管理员执行许多与集群相关联的内务任务。例如,向集群添加服务器时,集群管理员将启动集群数据库目录管理器和集群复制器。另外,集群管理员还启动管理进程(如果尚未运行)。从集群中删除服务器时,集群管理员会使集群数据库目录管理器和集群复制器停止运行。另外,它还会删除该服务器上的集群数据库目录,并清除其他服务器的集群数据库目录中有关该服务器的记录。
集群复制器
集群复制器随时使集群中各副本的数据保持同步。只要集群中的数据库发生了更改,集群复制器就向集群中的其他副本立即推出此更改。这样可以确保用户每次访问数据库时看到的都是最新版本。另外,集群复制器还复制存储在数据库中的个人文件夹的更改。尽管如果集群中有多种活动,用户可以运行多个集群复制器,但缺省情况下,集群中的每台服务器运行一个集群复制器。
集群复制器搜索集群数据库目录,以确定其他集群成员上哪些数据库有副本。集群复制器将此信息存储在内存中,并使用它将更改复制到其他服务器。集群复制器定期(缺省情况下每 15 秒钟一次)检查集群数据库目录中的更改。当集群复制器检测到集群数据库目录中的更改时(例如,已添加的或已删除的数据库或现在由集群复制禁用的数据库),它将更新存储在内存中的信息。
集群复制器只向集群中的服务器推出更改。标准复制器任务 (REPLICA) 将把更改复制到集群外的服务器并从集群外的服务器复制更改。