Sun Java System Messaging Server 6.3 管理指南

Procedure为 Messaging Server 配置 Sun Cluster HAStorage 或 HAStoragePlus—一般示例

本节提供了为 Messaging Server 配置 HA 的一般步骤。在查看这些步骤后,请参见以下各节中的具体不对称或对称示例。在这些说明中,物理主机名为 marsvenus。逻辑主机名为 meadow

图 3–4 说明了您在配置 Messaging Server HA 支持时要创建的各种 HA 资源的嵌套依赖性。

  1. 成为超级用户并打开控制台。

    以下所有 Sun Cluster 命令都要求您已使用超级用户身份登录。您还需要有一个控制台或窗口来查看输出到 /dev/console 中的消息。

  2. 在所有节点上安装所需的 Messaging Sun Cluster Data Service Agents 软件包 (SUNWscims)。

  3. 在每个群集节点上,创建用于运行 Messaging Server 的 Messaging Server 运行时用户和组。

    用户 ID 和组 ID 号在所有群集节点上必须相同。运行时用户 ID 是用于运行 Messaging Server 的用户名。此名称不应该为 root。默认值为 mailsrv运行时组 ID 是用于运行 Messaging Server 的组。默认值为 mail

    虽然 configure 实用程序可以为您创建这些名称,但也可以按照本章中所述,在运行 configure 之前创建这些名称以作为每个节点的准备过程的一部分。运行时用户和组 ID 名必须位于以下文件中:

    • 在所有群集节点上,mailsrv 或您选择的名称必须位于 /etc/passwd

    • 在所有群集节点上,mail 或您选择的名称必须位于 /etc/group

    请参见1.1 创建 UNIX 系统用户和组

  4. 将所需的资源类型添加到 Sun Cluster 中。

    配置 Sun Cluster 以了解要使用的资源类型。要将 Messaging Server 注册为资源,请使用以下命令:


    # scrgadm -a -t SUNW.ims

    要将 HAStoragePlus 注册为资源类型,请使用以下命令:


    # scrgadm -a -t SUNW.HAStoragePlus

    要对 HAStorage 执行相同的操作以将其注册为资源类型,请使用此命令:


    # scrgadm -a -t SUNW.HAStorage
  5. 为 Messaging Server 创建故障转移资源组。

    如果您尚未执行此操作,请创建一个资源组并使其显示在要运行 Messaging Server 的群集节点上。以下命令将创建名为 MAIL-RG 的资源组,并使其显示在 marsvenus 群集节点上:

    # scrgadm -a -g MAIL-RG -h mars,venus

    当然,您可以按照您的意愿对资源组使用任何名称。

  6. 创建一个 HA 逻辑主机名资源并将其联机。

    如果尚未执行此操作,请为 HA 逻辑主机名创建并启用资源,将该资源置于资源组中。以下命令使用逻辑主机名 meadow 执行此操作。因为忽略了 -j 开关,所以创建的资源名称将仍旧为 meadowmeadow 是客户端用来与资源组中的服务进行通信的逻辑主机名。


    # scrgadm -a -L -g MAIL-RG -l meadow
    # scswitch -Z -g MAIL-RG
  7. 创建 HAStorage 或 HAStoragePlus 资源。

    接下来,您需要为 Messaging Server 所依据的文件系统创建 HAStorage 或 HAStoragePlus 资源类型。以下命令将创建名为 disk-rs 的 HAStoragePlus 资源,并会将文件系统 disk_sys_mount_point 置于其控制之下:


    # scrgadm -a -j disk-rs -g MAIL-RG \
    -t SUNW.HAStoragePlus \
    -x FilesystemMountPoints=disk_sys_mount_point-1, disk_sys_mount_point-2 -x AffinityOn=True

    SUNW.HAStoragePlus 表示一个或多个数据服务资源要使用的设备组、群集和本地文件系统。用户可以将 SUNW.HAStoragePlus 资源类型添加到资源组中,并在其他资源和 SUNW.HAStoragePlus 资源之间建立依赖关系。这些依赖关系可确保数据服务资源在具备以下条件后保持联机:

    • 所有指定的设备服务可用(并根据需要进行配置)

    • 在执行检查后安装所有指定的文件系统

    FilesystemMountPoints 扩展属性允许指定全局或本地文件系统。即,可以从所有群集节点或单个群集节点访问文件系统。SUNW.HAStoragePlus 资源所管理的本地文件系统安装在单个群集节点上,并要求基础设备为 Sun Cluster 全局设备。指定本地文件系统的 SUNW.HAStoragePlus 资源只能属于启用了关系切换的故障转移资源组。因此,可以将这些本地文件系统称为故障转移文件系统。可以同时指定本地和全局文件系统装入点。

    如果 /etc/vfstab 条目满足以下两个条件,则假设装入点位于 FilesystemMountPoints 扩展属性中的文件系统为本地文件系统:

    • 非全局安装选项

    • 将 mount at boot 标志设置为 no


    注 –

    SUNW.HAStoragePlus 资源类型的实例忽略全局文件系统的 mount at boot 标志。


    对于 HAStoragePlus 资源,以逗号分隔的 FilesystemMountPoints 列表是 Messaging Server 所依据的群集文件系统 (Cluster File Systems, CFS) 或故障转移文件系统 (Failover File Systems, FFS) 的装入点。在以上示例中,仅指定了两个装入点 disk_sys_mount_point-1disk_sys_mount_point-2。如果某个服务器具有其所依据的附加文件系统,则您可以创建附加的 HA 存储资源并在步骤 15 中指示该附加依赖性。

    对于 HAStorage,请使用以下命令:


    # scrgadm -a -j disk-rs -g MAIL-RG \
    -t SUNW.HAStorage
    -x ServicePaths=disk_sys_mount_point-1, disk_sys_mount_point-2 -x AffinityOn=True

    对于 HAStorage 资源,以逗号分隔的 ServicePaths 列表是 Messaging Server 所依据的群集文件系统的装入点。在以上示例中,仅指定了两个装入点 disk_sys_mount_point-1disk_sys_mount_point-2。如果某个服务器具有其所依据的附加文件系统,则您可以创建附加的 HA 存储资源并在步骤 15 中指示该附加依赖性。

  8. 在主节点上安装所需的 Messaging Server 软件包。选择稍后配置选项。

    使用 Communications Suite 安装程序安装 Messaging Server 软件包。

    对于对称部署:在 Sun Cluster 共享磁盘所安装的文件系统上安装 Messaging Server 二进制文件和配置数据。例如,对于 Messaging Server, 二进制文件可能位于 /disk_sys_mount_point-1/SUNWmsgsr,配置数据可能位于 /disk_sys_mount_point-2/config

    对于不对称部署:在每个 Sun Cluster 节点的本地文件系统上安装 Messaging Server 二进制文件。在共享磁盘上安装配置数据。例如,配置数据可能位于 /disk_sys_mount_point-2/config

  9. 配置 Messaging Server。

    请参见1.3 创建初始 Messaging Server 运行时配置

    在初始运行时配置中,系统会要求您输入全限定主机名。您必须使用 HA 逻辑主机名而不是物理主机名。

    在初始运行时配置中,您需要在1.3 创建初始 Messaging Server 运行时配置中指定配置目录。请确保使用 HAStorage 或 HAStoragePlus 资源的共享磁盘目录路径。

  10. 运行 ha_ip_config 脚本以设置 service.listenaddrservice.http.smtphost 并配置 dispatcher.cnfjob_controller.cnf 文件,从而实现高可用性。

    该脚本可确保为这些参数和文件设置逻辑 IP 地址,而非物理 IP 地址。它还启用 watcher 进程(将 local.watcher.enable 设置为 1)和自动重新启动进程(将 local.autorestart 设置为 1)。

    有关运行该脚本的说明,请参见3.4.4 在服务器上绑定 IP 地址

    只应在主节点上运行一次 ha_ip_config 脚本。

  11. 修改 imta.cnf 文件,并用群集的逻辑主机名替换所有出现的物理主机名。

  12. 将资源组从主群集节点故障转移到辅助群集节点,以确保故障转移正常工作。

    手动将资源组故障转移至其他群集节点。(请确保您对故障转移到的节点具有超级用户权限。)

    使用 scstat 命令查看资源组当前正在哪个节点上运行(“联机”)。例如,如果该资源组在 mars 上联机,则使用以下命令将其故障转移到 venus:

    # scswitch -z -g MAIL-RG -h venus

    如果您要升级第一个节点,则可以通过 Communications Suite 安装程序 安装 Messaging Server,然后对其进行配置。随后,您可以故障转移到第二个节点,在该节点上通过 Communications Suite 安装程序 安装 Messaging Server 软件包,但不必再次运行初始运行时配置程序 (configure)。您也可以使用 useconfig 实用程序。

  13. 在辅助节点上安装所需的 Messaging Server 软件包。选择稍后配置选项。

    在故障转移到第二个节点后,使用 Communications Suite 安装程序安装 Messaging Server 软件包。

    对于对称部署:不会安装 Messaging Server。

    对于不对称部署:在本地文件系统上安装 Messaging Server 二进制文件。

  14. 在第二个群集节点上运行 useconfig

    useconfig 实用程序使您可以在 HA 环境中的多个节点之间共享单一配置。无需运行初始运行时配置程序 (configure),而是使用 useconfig 实用程序(请参见3.3.3 使用 useconfig 实用程序)。

  15. 创建 HA Messaging Server 资源。

    现在应该创建 HA Messaging Server 资源并将其添加到资源组。此资源取决于 HA 逻辑主机名和 HA 磁盘资源。

    在创建 HA Messaging Server 资源时,我们需要指示指向 Messaging Server 顶层目录的路径,即 msg-svr-base 路径。如以下命令所示,这些操作可通过使用 IMS_serverroot 扩展属性来完成。


    # scrgadm -a -j mail-rs -t SUNW.ims -g MAIL-RG \
          -x IMS_serverroot=msg-svr-base \
          -y Resource_dependencies=disk-rs,meadow

    以上命令为 Messaging Server(安装在 msg-svr-base 目录的 IMS_serverroot 中)创建名为 mail-rs 的 HA Messaging Server 资源。HA Messaging Server 资源取决于 HA 磁盘资源 disk-rs 和 HA 逻辑主机名 meadow

    如果 Messaging Server 具有附加文件系统依赖性,则您可以为这些文件系统创建附加 HA 存储资源。请确保在以上命令的 Resource_dependencies 选项中包含该附加 HA 存储资源名。

  16. 启用 Messaging Server 资源。

    现在应该激活 HA Messaging Server 资源,从而使邮件服务器联机。要执行此操作,请使用命令

    # scswitch -e -j mail-rs

    以上命令将启用 MAIL-RG 资源组的 mail-rs 资源。因为 MAIL-RG 资源先前已联机,所以上述命令也会使 mail-rs 联机。

  17. 验证上述操作是否生效。

    使用 scstat -pvv 命令查看 MAIL-RG 资源组是否已联机。

    您还可能需要查看导向控制台设备的输出,以了解所有诊断信息。另外,还需查看 syslog 文件中的 /var/adm/messages。有关更多调试选项和信息,请参见3.4.3.1 如何在 Sun Cluster 上启用调试