24.2 安装过程

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

  1. 安装 Identity Manager 引擎。有关逐步指导,请参见安装过程。对于生产级别部署,建议将 Identity Manager 引擎安装在单独的服务器上。

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

    • 用户应用程序驱动程序

    • Roles and Resource Service 驱动程序

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

    1. User Application

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    2. 安装 OSP。

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

    3. 安装 User Application。

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

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

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

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

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

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

        注:如果您使用的是 Identity Manager 4.9 支持的任何其他数据库(例如 Oracle 或 SQL Server),请务必将安装了数据库的服务器上的相应驱动程序 jar 文件复制到群集中的所有 User Application 节点上。

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

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

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

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

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

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

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

    注:有关安装 Identity Applications 的详细信息,请参见安装过程。

  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。

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

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

    2. 安装 SSPR。

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

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

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

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

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

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

      2. 保存更改。

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

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

    4. 要在节点 1 上更新 SSPR 信息,请起动位于 C:\NetIQ\idm\apps\UserApplication\configupdate.bat 的配置实用程序。

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

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

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

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

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

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

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

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

    C:\NetIQ\Common\JRE\bin\keytool -genkey -keyalg RSA -keysize 2048 -keystore osp.jks -storepass <口令> -keypass <口令> -alias osp -validity 1800 -dname "cn=<负载平衡器 IP/DNS>"

    例如:C:\NetIQ\idm\apps\jre\bin\ -genkey -keyalg RSA -keysize 2048 -keystore osp.jks -storepass changeit -keypass changeit -alias osp -validity 1800 -dname "cn=mydnsname"

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

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

    C:\NetIQ\Common\JRE\bin\keytool -list -v -keystore osp.jks -storepass changeit

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

  11. 将节点 1 上的新 osp.jks 文件复制到群集中的其他 User Application 节点上。

  12. 在每个群集节点上:

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

      {"serviceRegisteries":[{"serviceID":"IDM","restUrl":"https://<DNS of the load balancer>:8543/IDMProv"}]} 
    2. 导航到 C:\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
  13. 在节点 1 中起动配置实用程序,并在“SSO 客户端”选项卡下将所有 URL 设置(例如登录页的 URL 链接和 OAuth 重定向 URL)更改为负载平衡器 DNS 名称。

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

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

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

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

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

  14. 在位于 /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。

  15. 在 User Application 中启用群集。

    1. 在节点 1 上启动 Tomcat。

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

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

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

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

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

    5. 单击保存。

    6. 重启动 Tomcat。

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

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

  16. 为群集启用许可权限索引。有关详细信息,请参见为群集启用许可权限索引。

  17. 启用 Tomcat 群集。

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

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

    对于高级 Tomcat 群集配置,请按照 Apache 文档网站中的步骤操作。

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

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

    在群集环境中,可以将单个 User Application 驱动程序与多个 User Application 实例搭配使用。驱动程序存储特定于应用程序的各种信息(例如工作流程配置和群集信息)。必须将驱动程序配置为使用群集的发送程序或负载平衡器的主机名或 IP 地址。

    1. 登录到用于管理身份库的 Identity Console 实例。

    2. 在“Identity Manager”磁贴下,选择 Identity Manager 管理。

    3. 选择包含您的 User Application 驱动程序的驱动程序集。

    4. 单击驱动程序图标。

    5. 转到配置。

    6. 单击驱动程序参数下拉列表。

    7. 在驱动程序设置选项卡中,将主机更改为负载平衡器的主机名或 IP 地址。

    8. 单击保存。

    9. 重启动驱动程序。

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

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

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

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