Sun ONE 徽标     上一章      目录      索引      下一章     
Sun ONE Directory Server 5.2 安装和调整指南



附录 C   安装 Sun Cluster HA for Directory Server

本附录说明如何安装和配置 Sun Cluster HA for Directory Server 数据服务和相关的 Administration Server 数据服务。请参阅 Sun Cluster 3.0 产品文档,以获取 Sun Cluster 安装说明和主要概念。

必须将数据服务配置为故障切换服务。

开始之前

请将本节与 Sun Cluster 3.0 发行说明中的工作表结合使用,作为执行安装和配置前的清单。

开始安装之前,请先考虑以下问题。

  • 是否计划在同一节点上运行多个 Directory Server 实例?
  • 如果是的话,则可选择将 cn=config 时的 nsslapd-listenhost 设置成适当的网络资源(逻辑主机名称,如 dirserv.example.com),作为每个实例的 IP 地址。Directory Server 默认行为是监听所有网络接口。

  • 是否在 Sun Cluster 配置中运行多个数据服务?
  • 您可按任何顺序安装多个数据服务,但是以下情况除外:如果使用 Sun Cluster HA for DNS,则必须先完成 Sun Cluster HA for DNS 的安装,然后才能安装 Sun Cluster HA for Directory Server。

表 C-1 概述了 Sun Cluster HA for Directory Server 的安装和配置过程。

表 C-1    安装和配置过程 

任务

应了解的内容

“安装网络资源”

可控制数据服务的群集节点的名称。

客户机访问 Directory Server 使用的逻辑主机的名称,如 ds1.example.comds2.example.com

请参阅 Sun Cluster 3.0 产品文档,以获取设置逻辑主机名称的说明。

“安装服务器”

ServerRoot 在安装 Directory Server 的全局文件系统上的位置,如 /global/ds

表 1-2 中概述了安装的详细信息。

“安装数据服务软件包”

SUNWdshaSUNWasha 软件包提供数据服务的管理界面,所以可使用与管理群集中的其他数据服务相同的工具管理 Directory Server 和 Administration Server。

“配置服务器”

用于 Directory Server 数据服务的资源类型名称 SUNW.dsldap 和用于 Administration Server 数据服务的资源类型名称 SUNW.mps

可控制数据服务的群集节点的名称。

客户机访问 Directory Server 和 Administration Server 使用的逻辑主机名称。

ServerRoot 在安装 Directory Server 的全局文件系统上的位置。

Directory Server 监听客户机请求的端口。

Administration Server 监听客户机请求的端口。

“安装网络资源”中定义的资源组的名称。

“配置扩展属性”

(请参阅本节以获取详细信息。)

安装网络资源

Sun Cluster 软件管理逻辑主机名称,此名称不同于节点名称和用于单个网络接口的主机名称。图 C-1 显示了由双节点群集管理的逻辑主机名称是如何不与这两个节点的任一节点永久关联的。

图 C-1    双节点群集
Directory Server 依赖于逻辑主机名称。

当安装 Sun Cluster HA for Directory Server 数据服务时,将 Directory Server 和 Administration Server 配置成在逻辑主机名称接口监听,使它们不会限制于群集中的任何特定节点,且 Sun Cluster 软件可管理故障切换。在图 C-1 中,节点命名为 foobar。然而,安装时使用的逻辑主机名称(如图 C-1 所示)将是 ds-1.example.comds-2.example.com,而不是 foobar。注意,使用的逻辑主机名称是完全限定域名。

请参阅 Sun Cluster 3.0 产品文档,以获取有关这些重要概念的详细信息和设置逻辑主机名称的说明。

设置了逻辑主机名称之后,请执行以下步骤:

  1. 成为群集中节点上的超级用户。
  2. 确认所有使用的网络地址已添加到名称服务数据库。
  3. 为避免名称服务查找时出现故障,请确保所有完全限定域名、完全限定的逻辑主机名称和共享的 IP 地址包含在每个群集节点的 /etc/hosts 文件中。而且,配置每个群集节点上 /etc/nsswitch.conf 中的名称服务映射,以便在试图访问其他名称服务前先检查本地文件。

  4. 创建故障切换资源组以保存网络和应用程序资源。例如:
  5. # scrgadm -a -g resource-group [-h node-list]

    此处的 resource-group 指定组的名称。

    可选的 node-list 是标识群集的潜在主节点的物理节点名称或 ID 的列表(以逗号分隔)。节点名称的顺序决定了在故障切换时节点转换为主节点的顺序。如果群集中的所有节点均为潜在主节点,则没有必要指定 node-list

  6. 将逻辑主机名称资源添加到资源组。
  7. # scrgadm -a -L -g resource-group -l logical-host-names [-n netif-list]

    此处的 logical-host-names 是用作逻辑主机名称的完全限定域名的列表(以逗号分隔)。每个 Directory Server 实例使用一个逻辑主机名称。

    可选的 netif-list 是标识每个节点上的 NAFO 组的列表(以逗号分隔)。如果未指定此选项,scrgadm(1M) 就会尝试在子网上寻找网络适配器,此子网是由第 3 步指定的 node-list 中每个节点上指定的各个逻辑主机名称所使用。

  8. 验证在第 4 步中指定为逻辑主机名称的所有完全限定域名是否已添加到名称服务数据库中。
  9. 启用资源组且使其联机。
  10. # scswitch -Z -g resource-group

资源组联机后,可安装服务器。

安装服务器

在 Sun Cluster HA for Directory Server 中,Directory Server 和 Administration Server 都在 Sun Cluster 的控制下运行。这表示提供可故障切换到不同节点的完全限定的逻辑主机名称,而不是在安装时为服务器提供物理节点的完全限定域名。

从对于目录客户机应用程序使用的逻辑主机名称联机的节点开始执行安装,然后对要用于控制 Directory Server 数据服务的其他所有群集节点重复此过程。

在活动节点上安装

对于对目录客户机应用程序使用的逻辑主机名称联机的群集节点:

  1. 要为 Directory Server 和 Administration Server 安装 Solaris 软件包,请参阅“安装 Solaris 软件包”以获取详细说明。
  2. 配置 Directory Server。有关说明,请参阅“配置 Directory Server”
  3. 当执行这一步时:

    • 将 Directory Server 实例置于全局群集文件系统上。
    • 使用逻辑主机名称,而不是节点名。

  4. 配置 Administration Server,请参阅“配置 Administration Server”以获取详细说明,并使用配置 Directory Server 时使用的同一逻辑主机名。
  5. 当仅以安全模式使用 Directory Server 时,创建名为 ServerRoot/slapd-serverID/keypass 的空文件,以便通知群集 Directory Server 实例正以安全模式运行。
  6. 同时,也创建 ServerRoot/alias/slapd-serverID-pin.txt 文件,包含自动以安全模式启动实例所需的口令。这使群集可以在没有人为干涉的情况下重新启动数据服务。

在其他节点上安装

对于要用于控制 Directory Server 数据服务的各个节点:

  1. 要为 Directory Server 和 Administration Server 安装 Solaris 软件包,请参阅“安装 Solaris 软件包”以获取详细说明。
  2. 使用与“在活动节点上安装”时所提供的相同设置配置 Directory Server。
  3. 使用与“在活动节点上安装”时所提供的相同设置配置 Administration Server。
  4. ServerRoot/alias/slapd-serverID-pin.txt 从第一个节点复制到 ServerRoot/alias/。


  5. 注意

    请不要删除或重定位任何存放在全局文件系统上的文件。



安装数据服务软件包

数据服务软件包 SUNWdshaSUNWasha 提供管理界面以管理群集内用作数据服务的服务器。

  • 在要用于支持 Directory Server 数据服务的每个群集节点上,请使用 pkgadd(1M) 公用程序以安装数据服务软件包。
  • # pkgadd -d dirContainingPackages SUNWasha SUNWdsha

配置服务器

仅在对 Directory Server 使用的逻辑主机名称联机的群集节点上执行下列步骤:

  1. 成为超级用户。
  2. 停止 Directory Server 和 Administration Server。
  3. # /usr/sbin/directoryserver stop
    # /usr/sbin/mpsadmserver stop

  4. 为两种数据服务注册资源类型。
  5. # scrgadm -a -t SUNW.dsldap -f /etc/ds/v5.2/cluster/SUNW.dsldap
    # scrgadm -a -t SUNW.mps -f /etc/mps/admin/v5.2/cluster/SUNW.mps

    此处的 SUNW.dsldapSUNW.mps 是预先定义的用于数据服务的资源类型名称。/etc/ds/v5.2/cluster/SUNW.dsldap/etc/mps/admin/v5.2/cluster/SUNW.mps 定义数据服务。

  6. 将服务器添加到在“安装网络资源”中创建的故障切换资源组中。
  7. # scrgadm -a -j resource-name-ds -g resource-group -t SUNW.dsldap \
    -y Network_resources_used=logical-host-name \
    -y Port_list=port-number/tcp \
    -x Confdir_list=ServerRoot/slapd-serverID

    # scrgadm -a -j resource-name-as -g resource-group -t SUNW.mps \
    -y Network_resources_used=logical-host-name \
    -y Port_list=port-number/tcp \
    -x Confdir_list=ServerRoot

    此处提供了新的 resource-name-ds 以标识 Directory Server 实例,以及新的 resource-name-as 以标识 Administration Server 实例。

    resource-group 参数是在“安装网络资源”中指定的组的名称。

    logical-host-name 标识用于当前 Directory Server 实例的逻辑主机名。

    port-number 是服务器实例监听客户机请求的端口号,已在“安装服务器”中详细说明。注意,每条命令的 Port_list 参数只占用一个条目。

    ServerRootServerRoot/slapd-serverID 是“安装服务器”中指定的路径。注意,每条命令的 Confdir_list 参数只占用一个条目。

  8. 启用服务器资源和监视器。
  9. # scswitch -e -j resource-name-ds
    # scswitch -e -j resource-name-as

    此处的 resource-name-dsresource-name-as 是用于标识第 4 步中的服务器的名称。



    注意

    配置服务器后,不要在群集的非活动节点上运行备份和还原命令,如 db2bakdb2ldifback2dbldif2db。相反,应在所有活动节点上执行所有备份和还原过程。



  10. 请考虑执行“同步 HA 存储和数据服务”一节中的步骤以在故障切换时提高性能。

注册和配置示例

代码示例 C-1 说明了如何为图 C-1中描述的群集注册和配置数据服务。



代码示例 C-1    注册和配置数据服务 

(在联机节点上创建故障切换资源组。)
# scrgadm -a -g ds-resource-group-1 -h foo,bar

(将逻辑主机名资源添加到资源组。)
# scrgadm -a -L -g ds-resource-group-1 -l ds-1.example.com

(使资源组联机。)
# scswitch -Z -g ds-resource-group-1

(在群集中的每个节点上安装软件包。)

(停止联机节点上的服务器。)
# /usr/sbin/directoryserver stop
# /usr/sbin/mpsadminserver stop

(注册 SUNW.dsldap 和 SUNW.mps 资源类型。)
# scrgadm -a -t SUNW.dsldap -f /etc/ds/v5.2/cluster/SUNW.dsldap
# scrgadm -a -t SUNW.mps -f /etc/mps/admin/v5.2/cluster/SUNW.mps

(为服务器创建资源,并将其添加到资源组。)
# scrgadm -a -j ds-1 -g ds-resource-group-1 \
-t SUNW.dsldap -y Network_resources_used=ds-1.example.com \
-y Port_list=389/tcp \
-x Confdir_list=/global/ds/slapd-ds-1
# scrgadm -a -j as-1 -g ds-resource-group-1 \
-t SUNW.mps -y Network_resources_used=ds-1.example.com \
-y Port_list=5201/tcp \
-x Confdir_list=/global/ds

(启用应用程序资源。)
# scswitch -e -j ds-1
# scswitch -e -j as-1


配置扩展属性

扩展属性允许配置群集软件处理应用程序软件的方式。例如,可以调整群集确定数据服务何时必须进行故障切换的方式。

配置内容

通常可以使用 Sun Management Center 中的群集模块或 scrgadm 公用程序配置资源扩展属性。可使用带 -x parameter=value 选项的 scrgadm 公用程序,更改表 C-2 中列出的扩展属性。

表 C-2    SUNW.dsldap 资源扩展属性 

属性

说明

默认

范围

Monitor_retry_count

整数值,表示处理监视工具 (PMF) 在由 Monitor_retry_interval 值指定的时间窗口期间重启故障监视器的次数

4 次

-1 至 2,147,483,641 次

-1 表示重试无数次。

Monitor_retry_interval

整数值,表示故障监视器计算故障的间隔时间(以分钟为单位)

如果故障监视器发生故障的次数超过此时间段内 Monitor_retry_count 中指定的值,则 PMF 不能重启故障监视器。

2 分钟

-1 至 2,147,483,641 分钟

-1 表示无穷重试时间间隔。

Probe_timeout

整数值,表示故障监视器探测 Directory Server 实例所使用的超时值(以秒为单位)

30 秒

0 至 2,147,483,641 秒

请参阅 Sun Cluster 3.0 产品文档,以获取有关 Sun Cluster 属性的更多信息。

故障监视器的工作原理

群集软件使用故障监视器确定数据服务是否正常。故障监视器探测数据服务,然后确定服务是正常,还是基于探测结果必须重启。

表 C-3    故障监视器解释探测的方式 

Directory Server 正在运行...

使用的探测

算法

一般模式

ldapsearch

  1. 尝试进行搜索。
  2. 如果搜索操作导致:
  3. LDAP_SUCCESS,则认为服务正常。
  4. 一个 LDAP 错误,则必须重启服务。
  5. 超时以外的错误,则故障监视器根据 Monitor_retry_countMonitor_retry_interval 进行再次探测。
  6. 超出了 Probe_timeout 持续时间,则故障监视器根据 Monitor_retry_countMonitor_retry_interval 进行再次探测。

超时的潜在原因包括系统、网络或 Directory Server 实例上的高负载。超时也可能表明对于被监视的 Directory Server 实例的数目来说,Probe_timeout 值设置过低。

安全模式 (SSL)

TCP 连接

  1. 尝试进行连接。
  2. 如果连接操作:
  3. 成功,则认为服务正常。
  4. 失败,则必须重启服务。
  5. 超出了 Probe_timeout,则必须重启服务。

故障监视器使用“配置服务器”时指定的 IP 地址和端口号以执行探测操作。如果将 Directory Server 配置为使用两个端口进行监听(一个用于 SSL 通信量,另一个用于一般通信量),则故障监视器按照用于安全模式端口的故障监视算法,使用 TCP 连接探测这两个端口。

同步 HA 存储和数据服务

SUNW.HAStorage 资源类型使 HA 存储和数据服务之间的操作同步,当磁盘密集型数据服务(如 Directory Server)进行故障切换时提供较高性能。

要使 Directory Server 数据服务与 HA 存储同步,请在对数据服务使用的逻辑主机名称联机的节点上完成以下步骤:

  1. 注册 HA 存储资源类型。
  2. # scrgadm -a -t SUNW.HAStorage

  3. 配置存储资源以保持同步状态。
  4. # scrgadm -a -j HAStorage-resource-name -g HAStorage-resource-group \
    -t SUNW.HAStorage -x ServicePaths=volume-mount-point \
    -x AffinityOn=True

    此处,volume-mount-point 标识 Directory Server 存储数据的磁盘容量。

  5. 启用存储资源和监视器。
  6. # scswitch -e -j HAStorage-resource-name

  7. 在现有的 Directory Server 资源上添加依存关系。
  8. # scrgadm -c -j resource-name-ds \
    -y Resource_Dependencies=HAStorage-resource-name

请参阅 SUNW.HAStorage(5) 以获取背景信息,以及参阅 Sun Cluster 3.0 产品文档以获取为新资源安装 SUNW.HAStorage 资源类型的说明。

创建其他的 Directory Server 实例

执行以下步骤:

  1. 使用 Sun ONE Server Console 创建其他的 Directory Server 实例。
  2. 有关说明,请参阅 Sun ONE Server Console Server 管理指南

  3. 在对数据服务使用的逻辑主机名称联机的节点上停止新的 Directory Server 实例。
  4. # /usr/sbin/directoryserver -server serverID stop

  5. 将 Directory Server 添加到在“安装网络资源”中创建的故障切换资源组。
  6. # scrgadm -a -j resource-name-ds -g resource-group -t SUNW.dsldap \
    -y Network_resources_used=logical-host-name \
    -y Port_list=port-number/tcp \
    -x Confdir_list=ServerRoot/slapd-serverID

    此处提供了新的 resource-name-ds 以标识 Directory Server 实例。

    resource-group 参数是在“安装网络资源”中指定的组的名称。

    logical-host-name 标识用于实例的逻辑主机名。

    port-number 是实例监听客户机请求所用的端口号,已在“安装服务器”中详细说明。注意,Port_list 参数仅占一个条目。

    ServerRootServerRoot/slapd-serverID 是“安装服务器”中指定的路径。注意,Confdir_list 参数仅占一个条目。

  7. 启用服务器资源和监视器。
  8. # scswitch -e -j resource-name-ds

    此处的 resource-name-ds 是用于在第 3 步中标识 Directory Server 的名称。

卸载

若要从群集中删除 Sun Cluster HA for Directory Server 和关联的 Administration Server,请执行以下步骤:

  1. 停止服务器实例。
  2. # scswitch -n -j resource-name-ds
    # scswitch -n -j resource-name-as

  3. 删除资源。
  4. # scrgadm -r -j resource-name-ds
    # scrgadm -r -j resource-name-as

  5. 从群集数据库中删除资源类型。
  6. # scrgadm -r -t SUNW.dsldap
    # scrgadm -r -t SUNW.mps

  7. 删除服务器配置。
  8. # /usr/sbin/mpsadmserver unconfigure
    # /usr/sbin/directoryserver unconfigure

  9. 使用 pkgrm(1M) 公用程序从每个节点删除安装的软件包,包括 SUNWdshaSUNWasha

上一章      目录      索引      下一章     
版权所有 2003 Sun Microsystems, Inc. 保留所有权利。