Oracle® Solaris Cluster 软件安装指南

退出打印视图

更新时间: 2014 年 9 月
 
 

如何在所有节点上配置 Oracle Solaris Cluster 软件 (XML)

要使用 XML 群集配置文件来配置新全局群集,请执行以下过程。新群集可以是某个运行 Oracle Solaris Cluster 4.1 软件的现有群集的副本。

此过程将对群集中的以下组成部分进行配置:

  • 群集名称

  • 群集节点成员身份

  • 群集互连

开始之前

执行以下任务:

  • 确保已安装了 Oracle Solaris OS 来支持 Oracle Solaris Cluster 软件。

    如果节点上已安装了 Oracle Solaris 软件,必须确保 Oracle Solaris 安装满足 Oracle Solaris Cluster 软件和您打算在群集中安装的任何其他软件的要求。有关安装 Oracle Solaris 软件以满足 Oracle Solaris Cluster 软件的要求的更多信息,请参见如何安装 Oracle Solaris 软件

  • 确保已禁用 NWAM。有关说明,请参见如何安装 Oracle Solaris Cluster 软件包

  • SPARC: 如果要将 Oracle VM Server for SPARC I/O 域或来宾域配置为群集节点,请确保将 Oracle VM Server for SPARC 软件安装到每台物理计算机上,而且这些域满足 Oracle Solaris Cluster 要求。请参见如何安装 Oracle VM Server for SPARC 软件和创建域

  • 确保已配置了您希望用作已标记 VLAN 适配器的所有适配器并且您拥有其 VLAN ID。

  • 确保已在要配置的每个节点上安装了 Oracle Solaris Cluster 4.2 软件和更新。请参见如何安装 Oracle Solaris Cluster 软件包

  1. 确保每个潜在群集节点上尚未配置 Oracle Solaris Cluster 4.2 软件。
    1. 在要配置到新群集中的潜在节点上承担 root 角色。
    2. 确定潜在节点上是否已配置了 Oracle Solaris Cluster 软件。
      phys-schost# /usr/sbin/clinfo -n
      • 如果该命令返回以下消息,请继续执行步骤 c。
        clinfo: node is not configured as part of a cluster: Operation not applicable

        此消息表明潜在节点上尚未配置 Oracle Solaris Cluster 软件。

      • 如果命令返回节点 ID 号,请不要执行此过程。

        返回某个节点 ID 表明该节点上已配置了 Oracle Solaris Cluster 软件。

        如果群集中运行着旧版本的 Oracle Solaris Cluster 软件,而您希望安装 Oracle Solaris Cluster 4.2 软件,请改为执行Oracle Solaris Cluster Upgrade Guide 中所述的升级过程。

    3. 在要配置到新群集中的其余每个潜在节点上,重复执行步骤 a 和步骤 b。

      如果所有的潜在群集节点上都尚未配置 Oracle Solaris Cluster 软件,请继续执行步骤 2。

  2. 确保在群集的所有节点上禁用了针对 RPC 的 TCP 包装。

    针对 RPC 的 Oracle Solaris TCP 包装功能阻止群集配置所必需的节点间通信。

    1. 在每个节点上,显示针对 RPC 的 TCP 包装的状态。

      如果 config/enable_tcpwrappers 设置为 true,则 TCP 包装处于启用状态,如以下示例命令输出中所示。

      # svccfg -s rpc/bind listprop config/enable_tcpwrappers
      config/enable_tcpwrappers  boolean true
    2. 如果针对 RPC 的 TCP 包装在某个节点上处于启用状态,请禁用 TCP 包装并刷新 RPC 绑定设备。
      # svccfg -s rpc/bind setprop config/enable_tcpwrappers = false
      # svcadm refresh rpc/bind
      # svcadm restart rpc/bind
  3. 如果要在新群集的专用互连中使用交换机,请确保邻居发现协议 (Neighbor Discovery Protocol, NDP) 处于禁用状态。

    请按照交换机文档中的过程来确定 NDP 是否处于启用状态,如果是,则禁用 NDP。

    在配置群集期间,软件将检查专用互连中是否不存在通信流量。如果在检查专用互连通信流量时,NDP 向专用适配器发送任何软件包,则该软件将认为此互连不是专用的,并且将中断群集配置。因此,在创建群集期间,必须禁用 NDP。

    建立群集后,如果要使用该功能,可以对专用互连交换机重新启用 NDP 。

  4. 如果要复制某个运行 Oracle Solaris Cluster 4.2 软件的现有群集,请使用该群集中的某一节点创建一个群集配置 XML 文件。
    1. 在要复制的群集中的某个活动成员上,承担 root 角色。
    2. 将现有群集的配置信息导出到一个文件中。
      phys-schost# cluster export -o clconfigfile
      –o

      指定输出目标。

      clconfigfile

      群集配置 XML 文件的名称。所指定的文件名可以是一个现有文件,也可以是一个将使用上述命令创建的新文件。

      有关更多信息,请参见 cluster(1CL) 手册页。

    3. 将配置文件复制到将用来配置新群集的潜在节点上。

      您可以将该文件存储到要配置为群集节点的其他主机所能访问的任一目录下。

  5. 在要用来配置新群集的潜在节点上承担 root 角色。
  6. 根据需要修改或创建群集配置 XML 文件。

    提供或修改 XML 元素的值,以反映您要创建的群集配置。

    • 如果要复制现有群集,请打开借助于 cluster export 命令创建的文件。

    • 如果不打算复制现有群集,请创建一个新文件。

      请基于 clconfiguration(5CL) 手册页中显示的元素分层结构来编辑该文件。您可以将该文件存储到要配置为群集节点的其他主机所能访问的任一目录下。

    • 为了能建立群集,群集配置 XML 文件中的以下组成部分必须具有有效值:

      • 群集名称

      • 群集节点

      • 群集传输

    • 如果您正在修改从现有群集中导出的配置信息,则必须更改某些值(如节点名称)以反映新群集的情况,这些值会用于多个群集对象的定义中。

    有关群集配置 XML 文件在结构和内容方面的详细信息,请参见 clconfiguration(5CL) 手册页。

  7. 验证群集配置 XML 文件。
    phys-schost# /usr/share/src/xmllint --valid --noout clconfigfile

    有关更多信息,请参见 xmllint(1) 手册页。

  8. 从包含群集配置 XML 文件的潜在节点上创建群集。
    phys-schost# cluster create -i clconfigfile
    –i clconfigfile

    指定要用作输入源的群集配置 XML 文件的名称。

  9. 在每个节点上验证服务管理工具 (Service Management Facility, SMF) 的多用户服务是否处于联机状态。

    如果某个节点上的服务尚未处于联机状态,请等待直到状态变为联机后,再继续执行下一步。

    phys-schost# svcs multi-user-server node
    STATE          STIME    FMRI
    online         17:52:55 svc:/milestone/multi-user-server:default
  10. 从一个节点上,验证是否所有节点都已加入群集。
    phys-schost# clnode status

    输出类似于以下内容。

    === Cluster Nodes ===
    
    --- Node Status ---
    
    Node Name                                       Status
    ---------                                       ------
    phys-schost-1                                   Online
    phys-schost-2                                   Online
    phys-schost-3                                   Online

    有关更多信息,请参见 clnode(1CL) 手册页。

  11. 对 Oracle Solaris Cluster 软件执行必要的更新。

    有关更新软件的说明,请参见Oracle Solaris Cluster 系统管理指南 中的第 11  章 更新您的软件

  12. 如果您计划为 RPC 启用 TCP 包装,请在每个群集节点上将所有 clprivnet0 IP 地址添加到 /etc/hosts.allow 文件。

    如果未向 /etc/hosts.allow 文件执行此添加,TCP 包装将阻止群集管理实用程序通过 RPC 进行节点间通信。

    1. 在每个节点上,显示节点上的所有 clprivnet0 设备的 IP 地址。
      # /usr/sbin/ipadm show-addr
      ADDROBJ           TYPE     STATE        ADDR
      clprivnet0/N      static   ok           ip-address/netmask-length
    2. 在每个群集节点上,将群集中所有 clprivnet0 设备的 IP 地址添加到 /etc/hosts.allow 文件中。
  13. 如果您打算在高可用性本地文件系统上使用 HA for NFS 数据服务 (HA for NFS),请从自动挂载程序映射中排除属于由 HA for NFS 导出的高可用性本地文件系统一部分的所有共享。

    有关修改自动挂载程序映射的更多信息,请参见在 Oracle Solaris 11.2 中管理网络文件系统 中的涉及映射的管理任务

  14. 要从现有群集中复制法定信息,请使用群集配置 XML 文件配置法定设备。

    如果创建了双节点群集,则必须配置一个法定设备。如果您选择不使用群集配置 XML 文件来创建所需的法定设备,请转至如何配置法定设备

    1. 如果要将法定服务器用作法定设备,请确保法定服务器已经过设置并且正在运行。

      按照如何安装和配置 Oracle Solaris Cluster 法定服务器软件中的说明进行操作。

    2. 如果要将 NAS 设备用作法定设备,请确保 NAS 设备已经过设置并且正在运行。
      1. 请遵循将 NAS 设备用作法定设备方面的相关要求。

        请参见Oracle Solaris Cluster With Network-Attached Storage Device Manual

      2. 请按照设备文档中的说明来设置 NAS 设备。
    3. 确保群集配置 XML 文件中的法定配置信息反映的是所创建群集的有效值。
    4. 如果对群集配置 XML 文件进行过更改,请验证该文件。
      phys-schost# xmllint --valid --noout clconfigfile
    5. 配置法定设备。
      phys-schost# clquorum add -i clconfigfile device-name
      device-name

      指定要配置为法定设备的设备的名称。

  15. 使群集脱离安装模式。
    phys-schost# clquorum reset
  16. 停止未配置群集成员的计算机对群集配置的访问。
    phys-schost# claccess deny-all
  17. (u53ef选) 启用当所有受监视的共享磁盘路径都发生故障时的节点自动重新引导功能。

    注 -  在初始配置时,默认对搜索到的所有设备启用磁盘路径监视。
    1. 启用自动重新引导。
      phys-schost# clnode set -p reboot_on_path_failure=enabled
      -p

      指定要设置的属性

      reboot_on_path_failure=enable

      如果所有监视的共享磁盘路径发生故障,则启用自动节点重新引导。

    2. 检验是否启用了磁盘路径发生故障时的自动重新引导功能。
      phys-schost# clnode show
      === Cluster Nodes ===
      
      Node Name:                                      node
      …
      reboot_on_path_failure:                          enabled
      …
示例 3-2  使用 XML 文件在所有节点上配置 Oracle Solaris Cluster 软件

以下示例将一个现有双节点群集的群集配置和法定配置复制到了一个新的双节点群集中。新群集安装有 Solaris 11.1 OS。群集配置将从现有群集节点 phys-oldhost-1 导出到群集配置 XML 文件 clusterconf.xml 中。新群集的节点名称为 phys-newhost-1phys-newhost-2。在新群集中被配置为法定设备的设备是 d3

此示例中的提示符名称 phys-newhost-N 表示应在这两个群集节点上执行相应的命令。

phys-newhost-N# /usr/sbin/clinfo -n
clinfo: node is not configured as part of a cluster: Operation not applicable
 
phys-oldhost-1# cluster export -o clusterconf.xml
Copy clusterconf.xml to phys-newhost-1 and modify the file with valid values
 
phys-newhost-1# xmllint --valid --noout clusterconf.xml
No errors are reported
 
phys-newhost-1# cluster create -i clusterconf.xml
phys-newhost-N# svcs multi-user-server
STATE          STIME    FMRI
online         17:52:55 svc:/milestone/multi-user-server:default
phys-newhost-1# clnode status
Output shows that both nodes are online
 
phys-newhost-1# clquorum add -i clusterconf.xml d3
phys-newhost-1# clquorum reset

配置附加组件

完全建立了群集之后,您可以从现有群集中复制其他群集组成部分的配置。如果尚未这样做,请修改要复制的 XML 元素的值,以反映要将该组件添加到其中的群集配置。例如,如果要复制资源组,请确保 resourcegroupNodeList 条目包含的是对新群集而言有效的节点名称,而不是所复制的群集中的节点名称,除非这些节点名称与新群集中的节点名称相同。

要复制群集组件,请对要复制的群集组件运行面向对象命令的 export 子命令。有关面向对象命令的语法和选项的更多信息,请参见要复制的群集对象所对应的手册页。

下面介绍了在建立群集之后可以通过群集配置 XML 文件创建的群集组件的列表。此列表包括了用来复制组件的命令的手册页:

  • 设备组:Solaris Volume Manager:cldevicegroup(1CL)

    对于 Solaris Volume Manager,应首先创建您在群集配置 XML 文件中指定的磁盘集。

  • 资源组管理器组件

    使用 clresourceclressharedaddressclreslogicalhostname 命令的 –a 选项,还可以在复制资源的同时复制与之相关联的资源类型和资源组。如果不使用该选项,则在添加资源之前必须先将其资源类型和资源组添加到群集中。

  • NAS 设备:clnasdevice(1CL)

    必须首先按照 NAS 设备文档中的介绍设置此类设备。

  • SNMP 主机:clsnmphost(1CL)

    clsnmphost create -i 命令要求您用 –f 选项指定用户密码文件。

  • SNMP 用户:clsnmpuser(1CL)

  • 用来监视群集对象的系统资源的阈值:cltelemetryattribute(1CL )

故障排除

不成功的配置-如果一个或多个节点无法加入群集,或者指定了错误的配置信息,请首先尝试重新执行此过程。如果不能解决问题,请在每个配置有误的节点上执行如何取消 Oracle Solaris Cluster 软件的配置以更正安装问题过程,以将该节点从群集配置中删除。无需卸载 Oracle Solaris Cluster 软件包。然后再次执行此过程。

接下来的步骤

请转至如何检验法定配置和安装模式