Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Update 2 发行说明

- Previous: 测试升级
- Next: 从 4.4.1 联机升级到 4.4.2

#### 部署

- 仅将设备文件、日志文件和历史文件存储在本地磁盘中，请勿使用远程安装的文件系统。

- 如果在一台主机上存在多个节点，建议将属于每个节点的设备分别存放在不同的磁盘上。否则，磁盘争用会导致性能降低。通过在历史文件中查找此类消息“`注意 - 上次 flush/fputs 时间过长`”可以查看此问题的症状。如果一个节点拥有多个数据设备文件，建议对这些设备文件使用单独的磁盘。

- 使用本地磁盘（最好是与数据设备所用不同的磁盘）在 HADB 主机上安装 HADB 二进制。NFS 延迟或磁盘争用可能导致节点重新启动，并且历史文件中出现警告“`进程已阻塞` `nnn``，最长阻塞时间为` `nnn`”。

- 不要将 hadb 设备、历史文件、管理代理目录和代理配置文件放在 hadb 软件包路径下。因为这会导致在升级更新版本和删除旧软件包路径时出现问题。

- 正常情况下，此版 HADB 最多支持 28 个节点（24 个活动数据节点和 4 个备用节点）。

- 建议使用相同版本的 JDBC 驱动程序和 HADB 服务器。

- 不支持 IPv6，仅支持 IPv4。

- 在 Windows 上，命令行长度限制为 2048 字节。

- 必须将网络配置为可以进行 UDP 多址广播。

- 由于在 RedHat Enterprise Linux 3.0 的 Update 1 到 Update 3 上发现了过度交换，建议不要将其用作部署平台。此问题已在 RedHat Enterprise Linux 3.0 Update 4 中修复。

- 使用实时优先级运行 `NSUP` 时可能出现的情况。

  节点的监控 (`NSUP`) 进程 (`clu_nsup_srv`) 通过及时交换 "heartbeat" 消息来确保 HADB 的高可用性。如果 `NSUP` 与导致资源耗尽的其他进程位于同一位置，则会影响计时。这将导致错误的网络分区和节点重新启动（在此之前，历史文件中会记录一条警告“进程被阻塞 `n` 秒”），同时导致出现异常中止的事务和其他异常情况。

  要解决这一问题，`clu_nsup_srv`（可在 `installpath``/lib/server` 中找到）必须设置 `suid` 位且该文件必须属于超级用户。这可以通过使用以下命令手动实现：

      # chown root clu_nsup_srv
      # chmod u+s clu_nsup_srv

  这将导致 `clu_nsup_srv` 进程以`超级用户`的身份启动，而这又使该进程在启动后能够自动为其本身分配实时优先级。要通过使用 `setuid` 来避免任何安全性影响，请尽早设置实时优先级，并在更改优先级后立即将进程返回到有效的 uid。其他 HADB 进程会将其优先级降低为分时优先级。

  如果 NSUP 无法设置实时优先级，则它会发出一条警告“无法设置实时优先级”（`unix: errno 将设置为 EPERM`），该警告将记录在 `ma.log` 文件中，并且 NSUP 在没有实时优先级的情况下继续运行。

  以下是无法设置实时优先级的情况，例如：

  - 安装在 Solaris 10 非全局区域中时

  - 在 Solaris 10 中调用 `PRIV_PROC_LOCK_MEMORY`（允许进程锁定物理内存中的页）和/或 `PRIV_PROC_PRIOCNTL` 权限时

  - 用户关闭 `setuid` 权限时

  - 用户将本软件安装为 tar 文件（`App.server` 的非根安装选项）时

  `clu_nsup_srv` 进程不会大量占用 CPU，其资源占用少，并且在使用实时优先级运行时不会影响系统性能。

- 为 Solaris 的 HADB 配置 IP 网络多路径（仅在 Solaris 9 上进行过测试）。

  Sun 建议对运行 HADB 的 Solaris 主机设置网络多路径，以便尽可能确保最高的网络可用性。《IP Network Multipathing Administration Guide》中详细介绍了网络多路径设置。如果打算将多路径与 HADB 一起使用，请参阅《IP Network Multipathing Administration Guide》中的 "Administering Network Multipathing" 一节，以便先设置多路径，然后按照如下所属针对 HADB 调整多路径设置。《IP Network Multipathing Administration Guide》是 Solaris 9 System Administrator Collection 的一部分，并且可以从 `http://docs.sun.com` 下载。

  - 设置网络接口故障检测时间

    为了使 HADB 能够正确支持多路径故障转移，网络接口故障检测时间不能超过 1000 毫秒，此时间由 `/etc/default/mpathd` 中的 `FAILURE_DETECTION_TIME` 参数指定。如果此参数的原始值较高，请编辑文件并将其值更改为 `1000`：

        FAILURE_DETECTION_TIME=1000

    为了使更改生效，执行以下命令：

        pkill -HUP in.mpathd

  - 与 HADB 一起使用的 IP 地址

    如 Solaris IP Network Multipathing Administration Guide 中所述，多路径功能涉及将物理网络接口分组为多路径接口组。在此类组中，每个物理接口均包含两个与其关联的IP 地址：物理接口地址和测试地址。只有物理接口地址可用于传输数据，而测试地址仅供 Solaris 内部使用。运行 `hadbm create --hosts` 时，应该仅使用多路径组中的一个物理接口地址来指定每台主机。

  - 示例

    假设主机 1 和主机 2 分别具有两个物理网络接口。在每台主机上，均将这两个接口设置为多路径组，并且运行 `ifconfig -a` 将产生如下结果：

    主机1

        bge0: flags=1000843<mtu 1500 index 5 inet 129.159.115.10 netmask ffffff00
        broadcast 129.159.115.255 groupname mp0
        bge0:1: flags=9040843<mtu 1500 index 5 inet 129.159.115.11 netmask ffffff00
        broadcast 129.159.115.255
        bge1: flags=1000843<mtu 1500 index 6 inet 129.159.115.12 netmask ffffff00
        broadcast 129.159.115.255 groupname mp0
        bge1:1: flags=9040843<mtu 1500 index 6 inet 129.159.115.13 netmask ff000000
        broadcast 129.159.115.255

    主机 2

        bge0: flags=1000843<mtu 1500 index 3 inet 129.159.115.20 netmask ffffff00
        broadcast 129.159.115.255 groupname mp0
        bge0:1: flags=9040843<mtu 1500 index 3 inet 129.159.115.21 netmask ff000000
        broadcast 129.159.115.255
        bge1: flags=1000843<mtu 1500 index 4 inet 129.159.115.22 netmask ffffff00
        broadcast 129.159.115.255 groupname mp0
        bge1:1: flags=9040843<mtu 1500 index 4 inet 129.159.115.23 netmask ff000000
        broadcast 129.159.115.255

    在此示例中，两台主机的物理网络接口就是列出的 `bge0` 和 `bge1`。而列出的 `bge0:1` 和 `bge1:1` 是多路径测试接口（它们在 `ifconfig` 输出中标记为 DEPRECATED），如《IP Network Multipathing Administration Guide》中所述。

    要在此环境中设置 HADB，请从每个节点选择一个物理接口地址。在此示例中，我们从主机 1 选择 `129.159.115.10` 并从主机 2 选择 `129.159.115.20`。要使用每台主机的一个数据库节点创建数据库，请对 `hadbm create` 使用以下参数：

        --host 129.159.115.10,129.159.115.20

    要使用每台主机的两个数据库节点创建数据库，请使用以下参数：

        --host 129.159.115.10,129.159.115.20,129.159.115.10,129.159.115.20

    在上述两个示例中，两台主机上的 `ma.server.mainternal.interfaces` 变量应设置为 `129.159.115.0/24`。

- Previous: 测试升级
- Next: 从 4.4.1 联机升级到 4.4.2

- © 2010, Oracle Corporation and/or its affiliates