C.2 安装过程

本节提供在 Tomcat 上安装新 Identity Applications 实例,然后针对群集配置该实例的逐步说明。

  1. 安装 Identity Manager 4.6 引擎。有关逐步指导,请参见部分 7.0, 规划安装身份库。对于生产级别部署,建议将 Identity Manager 引擎安装在单独的服务器上。

  2. 使用便捷安装程序安装 PostgreSQL。

    Identity Manager 支持 PostgreSQL 9.4.10(SLES 11 SP4 上)、PostgreSQL 9.6.1(其他支持的平台上)。

    有关逐步指导,请参见部分 28.0, 安装 PostgreSQL 和 Tomcat。对于生产级别部署,建议将 PostgreSQL 安装在单独的服务器上。

  3. 为 Identity Applications 创建并部署以下驱动程序:

    • 用户应用程序驱动程序

    • Roles and Resource Service 驱动程序

    有关逐步指导,请参见部分 38.0, 创建和部署 Identity Applications 的驱动程序。

  4. 在节点 1 上安装以下 Identity Manager 组件:

    1. Tomcat

      使用便捷安装程序安装 Tomcat,并且在安装过程中只选择 Tomcat。有关逐步指导,请参见部分 28.0, 安装 PostgreSQL 和 Tomcat。

    2. OSP

      有关安装 OSP 的详细信息,请参见部分 32.0, 为 Identity Manager 安装口令管理。

      安装期间,请在鉴定细节页面中提供 Identity Manager 引擎 (eDirectory) 服务器的 IP 地址和端口号。

    3. User Application

      在安装过程中配置以下设置:

      1. 选择 Tomcat 作为应用程序服务器。

      2. 选择 PostgreSQL 作为数据库平台。

        注:您可以使用 Identity Manager 4.6 支持的任何数据库。

      3. 在后续页面中提供必需的数据库细节。

      4. 将 PostgreSQL 服务器中的数据库驱动程序文件 postgresql-9.4.1212jdbc42.jar 复制到群集中的所有 User Application 节点上。

        注:如果您使用的是 支持的其他数据库(例如 Oracle 或 SQL Server),请务必将安装了数据库的服务器上的相应驱动程序 jar 文件复制到群集中的所有 User Application 节点上。有关详细信息,请参见部分 35.0, 配置 Identity Applications 的数据库。

      5. 浏览并选择所复制的数据库驱动程序 jar 文件。

      6. 在新数据库或现有数据库的细节页面中,选择新数据库选项。

      7. 在 Identity Manager“配置”页面的工作流程引擎 ID 字段中提供唯一的名称。例如,您可以为节点 1 使用唯一的名称 Engine1。

      8. 要创建新的主密钥,请在“安全性 – 主密钥”页面中选择否。

        Identity Applications 使用主密钥加密敏感数据。由于这是群集中的第一个 Identity Applications 实例,因此必须选择否来指示安装程序创建新的主密钥。在群集中,User Application 群集要求每个 User Application 实例都使用相同的主密钥。为确保使用相同的主密钥,请在配置这些实例时选择是以导入现有密钥。

    注:有关安装 User Application 的详细说明和信息,请参见部分 37.0, 安装 Identity Applications。

  5. 在节点 2 上执行以下操作:

    1. 使用便捷安装程序安装 Tomcat(在安装过程中只选择 Tomcat)。

      有关逐步指导,请参见部分 28.0, 安装 PostgreSQL 和 Tomcat。

    2. 安装 OSP。

      有关安装 OSP 的详细信息,请参见部分 32.0, 为 Identity Manager 安装口令管理。

      安装期间,请在鉴定细节页面中提供 Identity Manager 引擎 (eDirectory) 服务器的 IP 地址和端口号。

    3. 安装 User Application。

      在安装过程中配置以下设置:

      1. 选择 Tomcat 作为应用程序服务器。

      2. 选择 PostgreSQL 作为数据库平台。

        注:您可以使用任意一种支持的数据库。

      3. 在安装过程的后续页面中提供必需的数据库细节。

      4. 将 PostgreSQL 服务器上的数据库驱动程序 jar 文件 postgresql-9.4.1212jdbc42.jar 复制到节点 2 上。

        注:如果您使用的是 Identity Manager 4.5.1 支持的任何其他数据库(例如 Oracle 或 SQL Server),请务必将安装了数据库的服务器上的相应驱动程序 jar 文件复制到群集中的所有 User Application 节点上。有关更多信息,请参见部分 35.0, 配置 Identity Applications 的数据库.

      5. 浏览并选择所复制的数据库驱动程序 jar 文件。

      6. 在新数据库或现有数据库的细节页面中,选择现有数据库选项。

      7. 在 Identity Manager“配置”页面的工作流程引擎 ID 字段中提供唯一的名称。例如,您可以为节点 2 使用唯一的名称 Engine2。

      8. 要在“安全性 – 主密钥”页面中创建新的主密钥,请选择是。

        User Application 群集要求每个 User Application 实例都使用相同的主密钥。为确保使用相同的主密钥,请选择是以导入现有密钥。此密钥是您在节点 1 中安装第一个 User Application 实例时创建的。

        您可以从位于节点 1 上 /TOMCAT_INSTALLED_HOME/conf/ 中的 ism-configuration 属性文件获取主密钥。包含主密钥的参数是 com.novell.idm.masterkey。

      9. 单击安装以完成安装。

    注:有关安装 User Application 的详细信息,请参见部分 37.0, 安装 Identity Applications。

  6. 在单独的计算机上安装 SSPR。

    安装前请记下以下设置并在安装过程中指定这些设置:

    1. 安装 Tomcat。有关安装说明,请参见步骤 4a。

    2. 安装 SSPR。

      在 SSPR 安装期间,请执行以下操作:

      1. 在应用程序服务器连接页面中,选择连接到外部鉴定服务器,并提供安装了负载平衡器的服务器的 DNS 名称。

      2. 在鉴定细节页面中,提供 Identity Manager 引擎服务器的 IP 地址和端口。CA 证书的口令为“changeit”。

    3. 完成 SSPR 安装后,启动 Tomcat 并起动 SSPR(http://<IP>:<端口>/sspr/private/config/ConfigEditor),然后登录其中。单击配置编辑器 > 设置 > 安全性 > 重定向白名单。

      1. 单击添加值并指定以下 URL:

        OSP:http://<故障转移的 DNS><端口>/osp

      2. 保存更改。

      3. 在 SSPR 配置页面中,单击设置 > OAuth SSO,然后修改 OSP 链接 - 用安装了负载平衡器软件的服务器的 DNS 名称替换 IP 地址。

      4. 单击设置 > 应用程序,然后更新转发和注销 URL - 用安装了负载平衡器软件的服务器的 DNS 名称替换 IP 地址。

    4. 要在节点 1 上更新 SSPR 信息,请起动位于 /opt/netiq/idm/apps/UserApplication/configupdate.sh 的配置实用程序。

      在随即打开的窗口中,单击 SSO 客户端 > Self Service Password Reset,并为客户端 ID、口令和 OSP OAuth 重定向 URL 参数输入值。

    注:校验节点 2 中是否更新了这些参数的值。

  7. 在群集节点上执行以下配置任务:

    1. 在所有群集节点上重启动 Tomcat。

    2. 要用 SSPR IP 地址更新“忘记口令”链接,请在节点 1 上登录 User Application,然后单击管理 > 忘记口令。

      有关 SSPR 配置的详细信息,请参见部分 39.6, 配置忘记口令管理。

    3. 要更改“更改我的口令”链接,请参见部分 39.6.4, 针对分布式环境或群集环境更新仪表板中的 SSPR 链接。

    4. 在节点 2 上,校验是否已用 SSPR IP 地址更新“忘记口令”链接和“更改我的口令”链接。

      注:如果已用 SSPR IP 地址更新“更改口令”链接和“忘记口令”链接,则不需要执行其他更改。

  8. 在节点 1 中,停止 Tomcat,并使用以下命令指定负载平衡器服务器的 DNS 名称以生成新的 osp.jks 文件:

    /opt/netiq/idm/jre/bin/keytool -genkey -keyalg RSA -keysize 2048 -keystore osp.jks -storepass <口令> -keypass <口令> -alias osp -validity 1800 -dname "cn=<负载平衡器 IP/DNS>"

    例如:/opt/netiq/idm/jre/bin/keytool -genkey -keyalg RSA -keysize 2048 -keystore osp.jks -storepass changeit -keypass changeit -alias osp -validity 1800 -dname "cn=mydnsname"

    注:确保密钥口令与在 OSP 安装期间提供的口令相同。或者,可以使用配置更新实用程序加入密钥存储区口令来更改该口令。

  9. (视情况而定)要校验 osp.jks 文件是否已通过这些更改更新,请运行以下命令:

    /opt/netiq/idm/jre/bin/keytool -list -v -keystore osp.jks -storepass changeit

  10. 备份位于 /opt/netiq/idm/apps/osp_sspr/osp/ 中的原始 osp.jks 文件,并将新 osp.jks 文件复制到此位置。新 osp.jks 文件是在步骤 8 中创建的。

  11. 将节点 1 上位于 /opt/netiq/idm/apps/osp_sspr/osp/ 中的新 osp.jks 文件复制到群集中的其他 User Application 节点上。

  12. 在节点 1 中起动配置实用程序,并在“SSO 客户端”选项卡下将所有 URL 设置(例如登录页的 URL 链接和 OAuth 重定向 URL)更改为负载平衡器 DNS 名称。

    1. 保存配置实用程序中所做的更改。

    2. 要在群集的所有其他节点中反映此更改,请将位于 /TOMCAT_INSTALLED_HOME/conf 中的 ism-configuration properties 文件从节点 1 复制到群集中的其他 User Application 节点上。

      注:您之前已将节点 1 上的 ism.properties 文件复制到群集中的其他节点上。如果您在 User Application 安装期间指定了自定义安装路径,请在群集节点中使用配置更新实用程序确保参照路径正确。

      在此方案中,OSP 和 User Application 安装在同一台服务器上;因此,为重定向 URL 使用了相同的 DNS 名称。

      如果 OSP 和 User Application 安装在不同的服务器上,请将 OSP URL 更改为指向负载平衡器的不同 DNS 名称。请对安装了 OSP 的所有服务器执行此操作。执行此操作可确保所有 OSP 请求均通过负载平衡器发送到 OSP 群集 DNS 名称。这涉及到为 OSP 节点建立一个单独的群集。

  13. 在位于 /TOMCAT_INSTALLED_HOME/bin/ 目录下的 setevn.sh 文件中执行以下操作:

    1. 为确保 mcast_addr 绑定成功,JGroups 要求 preferIPv4Stack 属性设置为 true。为此,请在所有节点上的 setenv.sh 文件中添加 JVM 属性“-Djava.net.preferIPv4Stack=true”。

    2. 在节点 1 上的 setenv.sh 文件中添加“-Dcom.novell.afw.wf.Engine-id=Engine1”。同样,为群集中的每个节点添加唯一的引擎名称。例如,对于节点 2,您可以添加引擎名称 Engine2。

  14. 在 User Application 中启用群集。

    1. 在节点 1 上启动 Tomcat。

      不要启动任何其他服务器。

    2. 以 User Application 管理员身份登录 User Application。

    3. 单击“管理”选项卡。

      User Application 将显示应用程序配置门户。

    4. 单击超速缓存。

      User Application 将显示“超速缓存管理”页面。

    5. 为支持群集属性选择 True。

    6. 单击保存。

    7. 重启动 Tomcat。

    注:如果您已选择“启用本地”设置,请针对群集中的每个服务器重复此过程。

    User Application 群集使用 JGroups 在采用默认 UDP 的节点间进行超速缓存同步。如果您想将此协议更改为使用 TCP,请参见“Configuring User Application to use TCP”(将 User Application 配置为使用 TCP)。

  15. 为群集启用许可权限索引。

    1. 在节点 1 中登录 iManager,然后导航到查看对象。

    2. 在系统下,导航到包含 User Application 驱动程序的驱动程序集。

    3. 选择 AppConfig > AppDefs > > 配置

    4. 选择 XMLData 属性,并将 com.netiq.idm.cis.clustered 属性设置为 true。

      例如:

      <property>

      <key>com.netiq.idm.cis.clustered</key>

      <value>true</value>

      </property>

    5. 单击确定。

  16. 启用 Tomcat 群集。

    在所有群集节点上打开 /TOMCAT_INSTALLED_HOME/conf/ 中的 Tomcat server.xml 文件,并取消注释此文件中的下面一行:

    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

    对于高级 Tomcat 群集配置,请按照 https://tomcat.apache.org/tomcat-7.0-doc/cluster-howto.html 中的步骤操作。

  17. 在所有节点上重启动 Tomcat。

  18. 为群集配置 User Application 驱动程序。

    在群集中,必须将 User Application 驱动程序配置为使用群集负载平衡器的 DNS 名称。可使用 iManager 来配置 User Application 驱动程序。

    1. 登录用于管理 Identity Manager 引擎的 iManager。

    2. 在 iManager 导航框架中,单击 Identity Manager 节点。

    3. 单击 Identity Manager 概述。

    4. 使用搜索页面显示“Identity Manager 概述”,以查找包含 User Application 驱动程序和 Roles and Resource Service 驱动程序的驱动程序集。

    5. 单击驱动程序图标右上角的圆形状态指示器:

      一个菜单即会显示,其中列出了用于启动和停止驱动程序以及编辑驱动程序属性的命令。

    6. 选择编辑属性。

    7. 在“驱动程序参数”部分,将主机更改为发送程序的主机名或 IP 地址。

    8. 单击确定。

    9. 重启动驱动程序。

  19. 要更改 Roles and Resource Service 驱动程序的 URL,请重复步骤 18a 到 18f,然后单击驱动程序配置,用负载平衡器 DNS 名称更新 User Application URL。

  20. 确保针对 User Application 节点的负载平衡器软件中创建的群集启用了会话粘性。

  21. 在 Identity Manager 仪表板上配置客户端设置。有关详细信息,请参见《NetIQ Identity Manager - Administrator’s Guide to the Identity Applications》(NetIQ Identity Manager - Identity Applications 管理员指南)中的“Configuring Client Settings Mode”(配置客户端设置模式)。

大多数负载平衡器都提供运行状况检查功能,以确定 HTTP 服务器是否已启动且正在监听。User Application 包含一个 URL,可用于配置负载平衡器上的 HTTP 运行状况检查。该 URL 为:

http://<节点 IP>:端口/IDMProv/jsps/healthcheck.jsp