在 Windows 系统上启用对 IPv6 协议的支持

要启用对遵循 IP 版本 6 (IPv6) 协议的地址和 URL 的支持,必须定义用于指示系统仅使用 IPv6 套接字地址的环境变量。

开始之前

完成以下步骤以准备系统:
  1. 验证 ES_INSTALL_ROOT/nodeinfo/es.cfg 文件中的 LocalHostName 属性和 LocalIPAddress 属性(如果给定)的值是否包含本地机器的主机名或有效 IPv6 地址。如果更改此文件,请保存更改。
  2. 验证 ES_NODE_ROOT/master_config/database/db.properties 文件中的 server.host 属性的值是否为主机名。此值不能为 IPv4 地址或 IPv6 地址。如果更改此属性,请保存该文件。
  3. 验证主服务器上 ES_NODE_ROOT/master_config/nodes.ini 文件中的 destination 属性和 serverhost 属性的值是包含有效 IPv6 地址还是有效主机名。这些值不能为 IPv4 地址。如果更改此文件,请保存更改。

关于此任务

只有安装在 Windows 2003 或 Windows 2008 服务器上的 Watson Content Analytics 系统中才提供对 IPv6 协议的支持。启用对 IPv6 地址的支持后,系统不再使用 IPv4 地址进行任何套接字通信。

Internet Explorer 和 Mozilla Firefox 浏览器以不同方式处理 IPv6 地址:

Mozilla Firefox
要运行管理控制台、企业搜索应用程序或内容分析挖掘器,可在 URL 中指定 IPv6 地址或主机名。例如:
http://[2001::db8]/ESAdmin
http://SearchServer.com/search/
Internet Explorer
要运行管理控制台、企业搜索应用程序或内容分析挖掘器,不能在 URL 中指定 IPv6 地址。必须使用以下格式并确保主机名映射至 DNS 中的 IPv6 地址或映射至 c:\windows\system32\drivers\etc\hosts 文件:
http://SearchServer.com/ESAdmin/
http://SearchServer.com/search/

如果在 URL 中指定 IPv6 地址,那么会显示无效语法错误 (Invalid syntax error) 消息。有关此限制的其他信息,请参阅http://support.microsoft.com/kb/325414

起始 URL 格式: 缺省情况下,搜寻器支持在 IPv4 服务器上运行的数据源。配置 Web 搜寻器并以 IPv6 地址格式指定起始 URL 时,确保这些 URL 括在方括号中。例如:
http://[2001:db8:0:1:0:0:0:1]
http://[2001:db8:0:1::1]

过程

要启用对 IPv6 协议的支持,请执行以下操作:

  1. 在主服务器上以缺省 Watson Content Analytics 管理员身份登录,然后停止系统:

    esadmin system stopall

    要点: 系统停止时,用户不能查询集合。
  2. 在所有服务器上停止公共通信层 (CCL) 服务器:
    1. 启动 Windows 服务:开始 > 程序 > 管理工具 > 服务
    2. 右键单击 IBM® Watson Content Analytics,然后单击停止
  3. 在系统环境变量中定义 ES_IPV6=1。对于多服务器安装,请在搜索服务器上执行此步骤。
  4. 如果使用 WebSphere® Application Server 而不是嵌入式 Web 应用程序服务器,请在搜索服务器上执行以下步骤:
    1. WebSphere Application Server 中更新 Java™ 虚拟机 (JVM) 定制属性。
      1. 如果 ESSearchServer 应用程序服务器正在运行,请在 WebSphere Application Server 中停止该服务器。
      2. 打开 WebSphere Application Server 管理控制台并浏览至 Java 虚拟机定制属性面板。选择服务器 > 应用程序服务器 > ESSearchServer > Java 和进程管理 > 进程定义 > Java 虚拟机 > 定制属性
      3. 配置以下属性:
        java.net.preferIPv4Stack=false
        java.net.preferIPv6Addresses=true
        如果尚未列示定制属性,请创建定制属性。在名称字段中输入属性名,然后在字段中输入有效值。
      4. 如果正在运行 WebSphere Application Server V6.1,请将 LocalIPAddress 属性添加到 ES_INSTALL_ROOT/nodeinfo/es.cfg 文件以包含该搜索服务器的 IPv6 地址。
      5. 重新启动 ESSearchServer 应用程序。
  5. 在所有服务器上重新启动 CCL:
    1. 启动 Windows 服务:开始 > 程序 > 管理工具 > 服务
    2. 右键单击 IBM Watson Content Analytics,然后单击启动
  6. 重新启动 Watson Content Analytics 系统:

    esadmin system startall

  7. 检查 ES_NODE_ROOT/logs/ccl_hostname_0.log 文件并验证 CCL 服务器是否已成功启动(无任何错误)。如果正确启用了 IPv6,那么会记录类似如下的消息:
    INFO: CCL server ready for business. Now, waiting for external requests.
       CCL host name is fe80::250:56ff:feb4:27d1
       CCL host dot.ip address is fe80:0:0:0:250:56ff:feb4:27d1
       CCL server port is 6002
       Total JVM Runtime memory is 33022Kb
       Current free memory is 21346Kb
       java.net.preferIPv6Addresses=true
       java.net.preferIPv4Stack=false
    INFO: Session "TraceDaemonSession" was attached PID=4992
  8. 执行以下步骤以验证企业搜索应用程序和管理控制台是否正确运行:
    1. 对任何集合启动搜索服务器,然后打开企业搜索应用程序并提交查询。 此步骤验证查询提交处理是否工作,即使索引中没有要搜索的文档也是如此。
    2. 打开管理控制台并验证您能否登录。

禁用对 IPv6 协议的支持

过程

要禁用对 IPv6 协议的支持,请执行以下操作:

  1. 查看用于准备系统以使用 IPv6 协议的之前步骤。对于 IPv6 地址的每个实例,将该值替换为主机名或 IPv4 地址。
  2. 遵循启用对 IPv6 协议的支持的过程,但有几个不同之处:
    • 在步骤 3 中,除去 ES_IPV6 环境变量。
    • 如果使用 WebSphere Application Server,请除去步骤 4 中为 ESSearchServer 应用程序设置的定制 JVM 属性。
  3. 如果 LocalIPAddress 属性包含 IPv6 地址,请从 ES_INSTALL_ROOT/nodeinfo/es.cfg 文件中除去该属性。
  4. 重新启动 Watson Content Analytics 系统:

    esadmin system stopall
    esadmin system startall

  5. 遵循步骤 8 中的过程以验证企业搜索应用程序和管理控制台。