本节提供在 Tomcat 上安装新 Identity Applications 实例,然后针对群集配置该实例的逐步说明。
注:在群集中,所有群集成员的配置设置都必须相同。将主节点中的 ism-sensitive.properties、ism-configuration.properties 和 encrypt-keys.pkcs12 复制到所有 User Application 节点。
安装 Identity Manager 引擎。对于生产级别部署,建议将 Identity Manager 引擎安装在单独的服务器上。
为 Identity Applications 安装数据库。可以使用随 Identity Applications 一起安装的 PostgreSQL 数据库。不过,建议将数据库安装在单独的服务器上。
在节点 1 上,安装并配置 Identity Applications。
在配置期间,请确保:
选择新数据库选项
提供唯一的工作流程引擎 ID。例如,节点 1。
群集中的所有 User Application 节点上均有可用的数据库 jar 文件。对于 PostgreSQL,postgresql-42.6.1.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 下。
在节点 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 下。
在负载平衡器服务器中,针对所有群集节点使用 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
在单独的计算机上安装 SSPR。
完成 SSPR 安装后,起动 SSPR (https://<IP>:<端口>/sspr/private/config/editor) 并登录其中。单击配置编辑器 > 设置 > 安全性 > Web 安全性 > 重定向白名单。
单击添加值并指定以下 URL:
https://<故障转移的 DNS>/osp
保存更改。
在 SSPR 配置页面中,单击设置 > 单点登录 (SSO) 客户端 > OAuth,然后修改 OAuth 登录 URL、OAuth 代码解析服务 URL 和 OAuth 配置文件服务 URL 链接,具体做法是将 IP 地址替换为装有负载平衡器软件的服务器的 DNS 名称。
单击设置 > 应用程序 > 应用程序,然后更新转发 URL 和注销 URL,具体做法是将 IP 地址替换为装有负载平衡器软件的服务器的 DNS 名称。通过提供装有 SSPR 的服务器/系统的 IP 地址或主机名来更新站点 URL。
要在节点 1 上更新 SSPR 信息,请起动位于 /opt/netiq/idm/apps/configupdate/ 中的配置实用程序。
./configupdate.sh
注:您应只从 configupdate 目录运行 configudate.sh 文件。从自定义位置运行 configupdate.sh 将导致失败。
单击 SSO 客户端 > Self Service Password Reset,输入客户端 ID、口令和 OSP Auth 重定向 URL 参数的值。有关详细信息,请参见Self Service Password Reset。
注:校验节点 2 中是否更新了这些参数的值。
在节点 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 安装期间提供的口令相同。或者,可以使用配置更新实用程序加入密钥存储区口令来更改该口令。
(视情况而定)要校验 osp.jks 文件是否已通过这些更改更新,请运行以下命令:
/opt/netiq/common/jre/bin/keytool -list -v -keystore osp.jks -storepass changeit
备份位于 /opt/netiq/idm/apps/osp/ 中的原始 osp.jks 文件,并将新 osp.jks 文件复制到此位置。
将节点 1 上位于 /opt/netiq/idm/apps/osp/ 中的新 osp.jks 文件复制到群集中的其他 User Application 节点上。
在每个群集节点上:
导航到 /opt/netiq/idm/apps/sites 目录,然后编辑 ServiceRegistry.json 文件以添加负载平衡器细节。
{"serviceRegisteries":[{"serviceID":"IDM","restUrl":"https://<DNS of the load balancer>:8543/IDMProv"}]} 导航到 /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
在节点 1 中起动配置实用程序,并在“SSO 客户端”选项卡下将所有 URL 设置(例如登录页的 URL 链接和 OAuth 重定向 URL)更改为负载平衡器 DNS 名称。
保存配置实用程序中所做的更改。检查 ism-configuration properties 文件是否体现了相应更改,如果有任何 URL 仍指向节点 1 DNS 和端口,请予以修改。
要在群集的所有其他节点中反映此更改,请将节点 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 节点建立一个单独的群集。
指派对 osp.jks 文件的 novlua 许可权限:
chown novlua:novlua osp.jks
在位于 /TOMCAT_INSTALLED_HOME/bin/ 目录下的 setenv.sh 文件中执行以下操作:
为确保 mcast_addr 绑定成功,JGroups 要求将 preferIPv4Stack 属性设置为 true。为此,请在所有节点上的 setenv.sh 文件中添加 JVM 属性“-Djava.net.preferIPv4Stack=true”。
在节点 1 上的 setenv.sh 文件中添加 -Dcom.novell.afw.wf.engine-id="Engine1"。同样,为群集中的每个节点添加唯一的引擎名称。例如,对于节点 2,您可以添加引擎名称 Engine2。
在 User Application 中启用群集。
在节点 1 上启动 Tomcat。
不要启动任何其他服务器。
以 User Application 管理员身份登录 User Application。
单击配置 > 超速缓存和群集选项。
User Application 将显示“超速缓存管理”页面。
单击群集超速缓存配置,然后为群集已启用属性选择 True。
单击保存。
重启动 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)。
为群集启用许可权限索引。
在 IDVault 中登录到 Identity Console,然后导航到树视图。
在树视图的左侧窗格中,选择系统 > 包含 User Application 驱动程序的驱动程序集。
然后选择 AppConfig > AppDefs。
在右侧窗格中选择配置。
在值属性下选择 XMLData 属性,并将 com.netiq.idm.cis.clustered 属性设置为 true。
例如:
<property>
<key>com.netiq.idm.cis.clustered</key>
<value>true</value>
</property>
单击保存。
启用 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 中的步骤操作。
在所有节点上重启动 Tomcat。
为群集配置 User Application 驱动程序。
在群集中,必须将 User Application 驱动程序配置为使用群集负载平衡器的 DNS 名称。可以使用 Identity Console 来配置 User Application 驱动程序。
登录到用于管理 Identity Manager 引擎的 Identity Console。
单击 Identity Manager 管理。
选择包含您的 User Application 驱动程序、Role and Resource Service 驱动程序,以及数据收集服务驱动程序的驱动程序集。
单击 User Application 驱动程序图标。
转到配置选项卡。
在驱动程序参数下拉列表中,将主机更改为负载平衡器的主机名或 IP 地址。
单击保存。
重启动驱动程序。
要更改 Roles and Resource Service 驱动程序的 URL,请重复步骤 19a 到 19e,然后单击驱动程序参数下拉列表,用负载平衡器 DNS 名称更新 User Application URL。
确保针对 User Application 节点的负载平衡器软件中创建的群集启用了会话粘性。
在 Identity Manager 仪表板上配置客户端设置。有关详细信息,请参见《NetIQ Identity Manager - Administrator’s Guide to the Identity Applications》(NetIQ Identity Manager - Identity Applications 管理员指南)中的“Configuring Client Settings Mode”(配置客户端设置模式)。