进行安装之前,请通读本文档和您拥有的其他发行说明或自述文件。
与
ServiceGuard 各版本的兼容性 |
 |
下表解释了哪些 ServiceGuard 版本应与所支持的 QS 版本一起使用。请注意,IA64
版本与 PA RISC 版本在功能上是相同的,没有提供适用于 PA RISC 的 Quorum
Server A.01.01 版。
表 1-1 Quorum Server 与 ServiceGuard 的兼容性
Quorum Server 版本 | 发行版的主要功能 | 兼容的 OS 发行版 | ServiceGuard 版本 |
|---|
A.01.00 Linux | 第一个可用作仲裁器的版本 | Linux Red Hat | 适用于 Linux 的 A.11.13 和 A.11.13.01 |
A.01.00 | 第一次提供对 HP-UX 的支持 | HP-UX (PA) | 11.13 和 11.14 |
A.01.01.00 | 第一次提供对 HP-UX IA64 的支持 | HP-UX (IA64) | 11.14.01 |
A.02.00(最新 版本) | HP-UX 和 Linux 的通用功能与互操作性 | HP-UX 11.0、11i(PA RISC 和 IPF) 内核版本为 2.4.2(或更高版本)的 Red Hat Linux 7.1
或更高版本 SuSE Linux,SLES (Linux Enterprise Server) 第 8
版,内核版本为 2.4.19-64GB-SMP 的 United Linux 1.0 版。
| 11.14.02 及更高版本 |
 |
 |  |
 |
 | 注释:Quorum Server 的早期版本(1.0 和 1.1 版)与 ServiceGuard
11.14.02 或更高版本不兼容。对于 ServiceGuard 11.14.02 或更高版本,请使用
Quorum Server A.02.00 版(即本版本)。 |
 |
 |  |
 |
系统要求 |
 |
运行 Quorum Server 进程的 HP-UX 或 Linux 服务器位于 Quorum
Server 为其提供定额服务的群集之外。Quorum Server 在端口
# 1238 上监听从 ServiceGuard 节点发出的连接请求。服务器在内存中为每个群集保留一个特定区域,当某个节点获得群集锁时,此区域将会加上相应标记,从而告诉其他节点此锁表明此区域已被“占用”。它可以为多个节点提供定额服务。有关所支持平台的其他信息,请查询《《HP
9000 Servers Configuration Guide》》(可从 HP 代表处获得)。
内存和磁盘要求 |
 |
内存:7.0 MB
磁盘空间:1 MB
安装
Quorum Server |
 |
必须在一个系统上安装群集配置期间需要运行的 QS 软件,而不是在群集运行的节点上安装此软件。上述系统可以是单个的
Linux 或 HP-UX 系统,也可以是单个群集。
如果从早期版本的 Quorum Server 进行更新,请参考下列有关更新的详细说明。
如果您正在更新 Quorum Server 并且正在将 ServiceGuard 更新到
11.14.02,更新顺序是非常重要的。必须在更新 ServiceGuard 之前,首先更新
Quorum Server。请参阅下面的迁移说明。
执行 swinstall 命令将 Quorum Server(产品号 B8467BA)安装到将要运行此
Quorum Server 的系统上。可以在 Quorum Server 提供服务的一个或多个群集之外的节点上安装
Quorum Server。在使用 Quorum Server 锁的群集上只要求安装
ServiceGuard 本身。
如果正在从早期版本的 Quorum Server 进行更新,请转至下面的升级说明。
可以通过以下任意一种方式进行安装:
要从
HP ServiceGuard 安装组件光盘进行安装,请执行下列步骤:
安装 CD ROM,使用
/SD-CDROM 作为安装目录。
运行 swinstall命令。
窗口打开后,将 Source Depot
Type 设置为 Local CDROM。
在 Source Depot Path 中填写相应版本的产品:
/SD-CDROM/QuorumServer/HP-UX/11.00/quorumserver.depot
/SD-CDROM/QuorumServer/HP-UX/11.11/quorumserver.depot
/SD-CDROM/QuorumServer/HP-UX/11.22/quorumserver.depot
此时将会打开一个窗口并突出显示下列内容:
B8467BA A.02.00.00 Quorum Server。选中此项,然后开始进行安装。
要从网站进行安装,请访问 http://software.hp.com。单击“High Availability”,然后选择“HP ServiceGuard
Quorum Server for HP-UX”。
下载 B8467BA A.02.00版,并将其存储在磁盘中。(可以在安装完毕后将软件仓库从磁盘中删除。)
对此软件仓库运行 swinstall
命令。选择 B8467BA A.02.00.00 Quorum Server。
QS 可执行文件 (qs) 安装在 /usr/lbin 目录中。安装完毕时,需要在运行 QS 的服务器上创建授权文件,以使特定主机系统可以获取定额服务。该文件要求的路径名为 /etc/cmcluster/qs_authfile。将所有从此 Quorum Server 访问定额服务的群集节点的名称写入该文件中。每个节点占用一行,如下例所示:
ftsys9.localdomain.com ftsys10.localdomain.com
|
如果要允许所有节点进行访问,请输入一个加号 (+)。
为 QS 日志文件创建一个目录。建议路径名为 /var/adm/qs/qs.log。(可能需要创建 /var/adm/qs 目录。)
要在 Red Hat Linux 或 SuSE Linux 上安装软件,请将安装光盘放入
CD ROM 驱动器,进入 Quorum Server 目录,并运行 rpm 命令,如下所示:
# cd /mnt/cdrom/QuorumServer
(Red Hat) # rpm -i qs-A.02.00.00-0.product.redhat.i386.rpm
(SuSE) # rpm -i qs-A.02.00.00-0.product.suse.i386.rpm
在 Red Hat 上,Quorum Server 可执行文件 (qs) 安装在 /usr/local/qs/bin 目录中;而在 SuSE 上,则安装在 /opt/qs/bin 目录中。安装完毕时,需要在运行 QS 的服务器上创建一个授权文件,以使特定主机系统获得定额服务。该文件要求的路径名为 /usr/local/qs/conf/qs_authfile。将所有从此 Quorum Server 访问群集服务的群集节点的名称写入该文件中。每个节点占用一行,如下例所示:
ftsys9.localdomain.com ftsys10.localdomain.com |
如果要允许所有节点进行访问,请输入一个加号 (+)。
为 QS 日志文件创建一个目录。建议路径名为 /var/log/qs/qs.log。(可能需要创建 /var/log/qs 目录。)
为
Quorum Server 创建程序包 |
 |
可以在另一群集上将 Quorum Server 作为程序包运行。实际上,在一个群集上运行的
QS 程序包可以为若干个其他群集提供定额服务。通过创建一个程序包并将
QS 作为受监控的服务,从而将 Quorum Server 添加到现有的群集中。请执行下列步骤:
在所有节点上安装 Quorum Server
软件,如上所述。
在配置目录 ($SGCONF) 中为 QS 程序包创建一个子目录,然后转至该子目录:
# mkdir qs-pkg
# cd qs-pkg
使用 cmmakepkg 命令创建程序包 ASCII 文件:
# cmmakepkg -P qs-pkg.config
使用下表中的参数编辑该文件。
表 1-2 qs-pkg 程序包 ASCII 文件参数
| 参数 | 值 |
|---|
| PACKAGE_NAME | qs-pkg |
| PACKAGE_TYPE | FAILOVER |
| FAILOVER_POLICY | CONFIGURED_NODE |
| FAILBACK_POLICY | MANUAL |
| NODE_NAME | * |
| AUTO_RUN | YES |
| LOCAL_LAN_FAILOVER_ALLOWED | YES |
| NODE_FAIL_FAST_ENABLED | NO |
| RUN_SCRIPT | $SGCONF/qs-pkg/qs-pkg.ctl |
| RUN_SCRIPT_TIMEOUT | NO_TIMEOUT |
| HALT_SCRIPT | $SGCONF/qs-pkg/qs-pkg.ctl |
| HALT_SCRIPT_TIMEOUT | NO_TIMEOUT |
| SERVICE_NAME | qs |
| SERVICE_FAIL_FAST_ENABLED | NO |
| SERVICE_HALT_TIMEOUT | 10 |
| SUBNET | 在此处指定子网。 |
在同一目录中创建控制脚本:
# cmmakepkg -s qs-pkg.ctl
使用下表中的参数编辑该文件。
表 1-3 qs-pkg 程序包控制脚本参数
| 参数 | 值 |
|---|
| IP[0] | 访问 Quorum Server 时使用的 IP 地址 |
| SUBNET[0] | 在此处指定子网 |
| SERVICE_NAME[0] | “qs” |
| SERVICE_CMD[0] | HP-UX:“/usr/lbin/qs >> /var/adm/qs/qs.log 2>&1” Linux:“/usr/local/qs/bin/qs >> /var/log/qs/qs.log 2>&1” |
| SERVICE_RESTART | “-R” |
运行群集并启动 Quorum Server 程序包。
运行
Quorum Server 并指定日志文件 |
 |
执行下列群集操作时,Quorum Server 必须处于运行状态:
缺省情况下,Quorum Server 实时消息输出到 stdout 和 stderr 文件。建议创建 /var/adm/qs 目录,然后将 stdout 和 stderr 重定义到此目录中的文件,例如:/var/adm/qs/qs.log。
必须具有超级用户权限才能执行 Quorum Server。在单个系统上,可以将 Quorum
Server 配置为当其所在的系统重新启动或重新引导时启动。可以在 /etc/inittab 文件中创建如下命令来实现此功能:
对于 HP-UX:
qs:345:respawn:/usr/lbin/qs >> /var/adm/qs/qs.log 2>&1
对于 Red Hat Linux(所有命令选项都在一行):
qs:345:respawn:/usr/local/qs/bin/qs >> /var/log/qs/qs.log 2>&1
qs:345:respawn:/opt/qs/bin/qs >> /var/log/qs/qs.log 2>&1
如下所示启动 Quorum Server:
# init q
当命令完成时,将出现提示信息:
通过检查 qs.log 文件验证 Quorum Server 是否正在运行。
对于 HP-UX,输入:# cat /var/adm/qs/qs.log
对于 Linux,输入:# cat /var/*/qs/qs.log
日志中应包含如下信息表明 Quorum Server 已经启动:
Oct 04 12:25:06:0:main:Starting Quorum Server Oct 04 12:25:09:0:main:Server is up and waiting for connections at port 1238
|
群集配置中的
Quorum Server 参数 |
 |
需要在群集配置 ASCII 文件中配置 Quorum Server。请执行如下命令获得包含 Quorum
Server 参数的群集 ASCII 文件:
# cmquerycl -q <QS_Host> -n <Node1> -n <Node2> -C <ClusterName>.config
将在群集配置 ASCII 文件中包含 QS_HOST、QS_POLLING_INTERVAL 和 QS_TIMEOUT_EXTENSION 参数。系统基于 ServiceGuard 参数,包括 NODE_TIMEOUT 和 HEARTBEAT_INTERVAL,来计算缺省 QS 的超时值。如果出现 Quorum Server
超时,您可以增加这些参数,也可以使用群集配置 ASCII 文件中的 QS_TIMEOUT_EXTENSION 来增加 Quorum Server 超时值。这样,将延长 SG 允许访问
QS 节点的时间。
有关在群集配置期间识别 Quorum Server 的更多信息,请参考“安装
Quorum Server”。
更新授权文件 |
 |
Quorum Server 在启动时读取授权文件。HP-UX 中的授权文件是 /etc/cmcluster/qs_authfile。Linux 中的授权文件是 /usr/local/qs/conf/qs_authfile。如果修改此文件,则需要运行下列命令强制重新读取此文件。
对于 HP-UX:# /usr/lbin/qs -update
对于 Linux:# /usr/local/qs/bin/qs -update
卸载
Quorum Server (HP-UX) |
 |
要卸载软件,请运行 HP-UX 的 swremove 命令,如下所示:
# swremove B8467BA
卸载
Quorum Server (Linux) |
 |
要卸载软件,请运行 Linux 的 rpm -e 命令,如下所示:
# rpm -e qs-A.02.00
(HP-UX)
从 A.01.00 或 A.01.01.00 更新 Quorum Server |
 |
可以在群集运行时完成从早期版本的 Quorum Server 到 A.02.00.00
的更新。
在将 ServiceGuard 更新到 11.14.02 或更高版本之前,必须完成
Quorum Server 的更新。
在 /etc/inittab 中注释掉 QS 项,并运行下列命令:
# /sbin/init q
卸载现有的 Quorum Server:
# swremove B8467BA
安装 Quorum Server A.02.00.00:
# swinstall B8467BA
将 /etc/inittab 文件中注释掉的 Quorum Server 项恢复。
启动 Quorum Server:
# /sbin/init q
(Red
Hat Linux) 从 A.01.00 更新 Quorum Server |
 |
删除 /etc/inittab 中的 Quorum Server
项,并运行下列命令:
# init q
卸载现有的 Quorum Server:
# rpm -e qs-A.01.00
此命令将删除 /var/log/qs/qs.log 文件。如果该文件是日志文件,需要在运行此命令之前保存该文件。
安装 Quorum Server A.02.00.00:
# rpm -i qs-A.02.00.00-0.product.redhat.i386.rpm
卸载 A.02.00.00 并不会删除 /var/log/qs/qs.log 文件
将如下所示的项添加到 /etc/inittab 文件中(所有命令选项的都在一行):
qs:2345:respawn:/usr/local/qs/bin/qs>>/usr/local/qs/log/qs.log 2>&1
(因为 Quorum Server 现在是一个实时进程,所以不再需要使用“nice”选项)
重新启动 Quorum Server:
# init q
更换发生故障的
Quorum Server 系统 |
 |
执行下列步骤更换出现故障的 Quorum Server 系统。如果执行这些步骤,则无需更改任何群集节点的配置。
从网络中删除旧的 Quorum Server 系统。
安装新系统,并用旧 Quorum Server 的 IP 地址和主机名配置新系统。
在新系统上安装并配置 Quorum Server 软件。确保所有为旧
Quorum Server 配置的节点上都包含新的 QS 授权文件。HP-UX 中的授权文件是 /etc/cmcluster/qs_authfile。Linux 中的授权文件是 /usr/local/qs/conf/qs_authfile。有关配置
QS 授权文件的详细信息,请参考 qs(1) 联机帮助页。
执行下列命令启动 Quorum Server:
有关更多详细信息,请参考
qs(1) 联机帮助页。
使用旧 Quorum Server 的所有群集中的所有节点都将连接到新的
Quorum Server。从使用 Quorum Server 的任何一个群集执行 cmviewcl
-v 命令可以验证此群集中的节点是否已连接到 QS。
在新 Quorum Server 上的 Quorum Server 日志文件中将为每个使用
Quorum Server 的群集显示如下信息:
Request for lock /sg/<ClusterName> succeeded.New lock owners:N1, N2 |
要检查 Quorum Server 是否已正确配置并验证节点到
Quorum Server 的连接性,可以从群集节点执行下列命令:
# cmquerycl -q <QSHostName> -n <Node1> -n <Node2> ...
如果指定的节点不能与 Quorum Server 进行通信,此命令将输出一条错误消息。