18.3 安装过程

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

  1. 安装 Identity Manager 引擎。对于生产级别部署,建议将 Identity Manager 引擎安装在单独的服务器上。

  2. 为 Identity Applications 安装数据库。可以使用随 Identity Applications 一起安装的 PostgreSQL 数据库。不过,建议将数据库安装在单独的服务器上。

  3. 在节点 1 上,安装并配置 Identity Applications。

    在配置期间,请确保:

    • 选择新数据库选项

    • 提供唯一的工作流程引擎 ID。例如,节点 1

    • 群集中的所有 User Application 节点上均有可用的数据库 jar 文件。对于 PostgreSQL,postgresql-9.4.1212.jar 位于 /opt/netiq/idm/postgres

    Identity Applications 使用主密钥加密敏感数据。在 Identity Applications 配置期间,安装程序将创建新的主密钥。在群集中,User Application 群集要求每个 User Application 实例都使用相同的主密钥。主密钥储存在 /opt/netiq/idm/apps/tomcat/conf/ 目录中 ism-configuration.properties 文件内的属性 com.novell.idm.masterkey 下。

  4. 在节点 2 上,安装并配置 Identity Applications。

    在配置期间,请确保:

    • 选择现有数据库选项

    • 提供唯一的工作流程引擎 ID。例如,节点 2

    • 群集中的所有 User Application 节点上均有可用的数据库 jar 文件。对于 PostgreSQL,postgresql-9.4.1212.jar 位于 /opt/netiq/idm/postgres

    完成节点 2 上的 User Application 配置后,复制节点 1 的 ism-configuration.properties 中的主密钥值,并替换节点 2 的 ism-configuration.properties 中储存的相应主密钥值。主密钥储存在 ism-configuration.properties (/opt/netiq/idm/apps/tomcat/conf/) 中的属性 com.novell.idm.masterkey 下。

  5. 在负载平衡器服务器中,针对所有群集节点使用 Identity Applications 端口号启动一个负载平衡器实例,使用表单渲染器端口号启动另一个负载平衡器实例。例如,

    • ./balance 8543 apps1-au.edu.in:8543 ! apps2-au.edu.in:8543

    • ./balance 8600 apps1-au.edu.in:8600 ! apps2-au.edu.in:8600

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

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

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

      https://<故障转移的 DNS>/osp

    2. 保存更改。

    3. 在 SSPR 配置页面中,单击设置 > 单点登录 (SSO) 客户端 > OAuth,然后修改 OAuth 登录 URLOAuth 代码解析服务 URLOAuth 配置文件服务 URL 链接,具体做法是将 IP 地址替换为装有负载平衡器软件的服务器的 DNS 名称。

    4. 单击设置 > 应用程序 > 应用程序,然后更新转发 URL注销 URL,具体做法是将 IP 地址替换为装有负载平衡器软件的服务器的 DNS 名称。通过提供装有 SSPR 的服务器/系统的 IP 地址或主机名来更新站点 URL

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

      ./configupdate.sh

      注:您应只从 configupdate 目录运行 configudate.sh 文件。从自定义位置运行 configupdate.sh 将导致失败。

    6. 单击 SSO 客户端 > Self Service Password Reset,输入客户端 ID口令OSP Auth 重定向 URL 参数的值。有关详细信息,请参见Self Service Password Reset

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

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

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

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

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

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

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

  9. 备份位于 /opt/netiq/idm/apps/osp/ 中的原始 osp.jks 文件,并将新 osp.jks 文件复制到此位置。

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

  11. 在每个群集节点上:

    1. 导航到 /opt/netiq/idm/apps/sites 目录,然后编辑 ServiceRegistry.json 文件以添加负载平衡器细节。

      {"serviceRegisteries":[{"serviceID":"IDM","restUrl":"https://<DNS of the load balancer>:8543/IDMProv"}]} 
    2. 导航到 /opt/netiq/idm/apps/sites 目录,然后编辑 config.ini 文件以添加负载平衡器 DNS 和端口号。

      OSPIssuerUrl=https://<DNS of the load balancer>:8543/osp/a/idm/auth/oauth2
      OSPRedirectUrl=https://<DNS of the load balancer>:8600/forms/oauth.html
      ClientID=forms
      OSPLogoutUrl=https://<DNS of the load balancer>:8543/osp/a/idm/auth/app/logout
  12. 在节点 1 中起动配置实用程序,并在“SSO 客户端”选项卡下将所有 URL 设置(例如登录页的 URL 链接和 OAuth 重定向 URL)更改为负载平衡器 DNS 名称。

    1. 保存配置实用程序中所做的更改。检查 ism-configuration properties 文件是否体现了相应更改,如果有任何 URL 仍指向节点 1 DNS 和端口,请予以修改。

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

      注:

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

      • ism-configuration.properties 文件从一个节点复制到另一个节点后,请确保对该文件具有 novlua:novlua 许可权限。

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

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

  13. 指派对 osp.jks 文件的 novlua 许可权限:

    chown novlua:novlua osp.jks

  14. 在位于 /TOMCAT_INSTALLED_HOME/bin/ 目录下的 setenv.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

  15. 在 User Application 中启用群集。

    1. 在节点 1 上启动 Tomcat。

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

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

    3. 单击配置 > 超速缓存和群集选项。

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

    4. 单击群集超速缓存配置,然后为群集已启用属性选择 True

    5. 单击保存

    6. 重启动 Tomcat。

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

    User Application 群集使用 JGroups 在采用默认 UDP 的节点间进行超速缓存同步。如果您要更改此协议以使用 TCP,请参见《NetIQ Identity Manager - Administrator’s Guide to the Identity Applications》(NetIQ Identity Manager - Identity Applications 管理员指南)中的“Configuring User Application Caching to use TCP”(将 User Application 超速缓存配置为使用 TCP)。

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

    1. 在 IDVault 中登录 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. 单击确定

    6. 单击应用 > 确定

  17. 启用 Tomcat 群集。

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

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

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

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

  19. 为群集配置 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. 重启动驱动程序。

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

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

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