Unable to login into iPrint /ipcon after cluster failover if target node has been restarted

  • 7024445
  • 21-Feb-2020
  • 30-Apr-2020

Environment

Micro Focus iPrint for OES 2018 SP1

Situation

Unable to login into the iPrint /ipcon page after the cluster resource has been migrated to another node (if that target node was restarted since last hosting the iPrint resource).

Resolution

The fix requires three steps:

1. Apply:

iPrint OES 2018 SP1 April Patch 2020 (update 7) what will install novell-iprint-server-6.19.0-84.1

2. Rerun the iprint_nss_relocate script located at /opt/novell/iprint/bin in each node

3.Change the load/unload cluster scripts to looks like:

- Load Script:
exit_on_error systemctl start novell-idsd.service
exit_on_error systemctl start novell-ipsmd.service
exit_on_error systemctl start novell-iprint-ocs.service
exit_on_error systemctl start novell-iprint-license.service
exit_on_error systemctl start orientdb.service
exit_on_error systemctl start novell-iprint-tomcat.service
exit_on_error systemctl start cups.service

-Unload Script:
ignore_error systemctl stop cups.service
ignore_error systemctl stop novell-iprint-tomcat.service
ignore_error systemctl stop orientdb.service
ignore_error systemctl stop novell-iprint-license.service
ignore_error systemctl stop novell-iprint-ocs.service
ignore_error systemctl stop novell-ipsmd.service
ignore_error systemctl stop novell-idsd.service

  • Test: Migrate the cluster from node to node after a node has been rebooted to confirm that the above fix is effective.

Cause

iPrint requires services to be shutdown prior to loading the iPrint volume.  Once the iPrint volume loads, those services will then load.  If the services are running prior to the iPrint volume loading to the node, then they will not properly register and will not work. 

The iPrint mobiles services are enabled in systemd.  Therefore, when the server is rebooted, those iPrint services will be loaded. This creates a conflict when the iPrint resource is migrated to that node.

Additional Information

journarctl shows the iPrint services being loaded when the resource is migrated.  However, those services are already loaded, resulting in a conflict expressed in the following way:

[DATE + TIME] [ServerName] systemd[1]: Starting Novell iPrint License Server service...
[DATE + TIME] [ServerName] systemd[1]: cups.service: Main process exited, code=exited, status=1/FAILURE
[DATE + TIME] [ServerName] systemd[1]: cups.service: Unit entered failed state.
[DATE + TIME] [ServerName] systemd[1]: cups.service: Failed with result 'exit-code'.
[DATE + TIME] [ServerName] systemd[1]: orientdb.service: Main process exited, code=exited, status=217/USER
[DATE + TIME] [ServerName] systemd[1]: novell-iprint-license.service: Control process exited, code=exited status=217
[DATE + TIME] [ServerName] systemd[1]: Failed to start Novell iPrint License Server service.
[DATE + TIME] [ServerName] systemd[1]: Dependency failed for Tomcat Servlet Container for iPrint Mobility.
[DATE + TIME] [ServerName] systemd[1]: Dependency failed for Novell iPrint OCS service.
[DATE + TIME] [ServerName] systemd[1]: novell-iprint-ocs.service: Job novell-iprint-ocs.service/start failed with result 'dep
[DATE + TIME] [ServerName] systemd[1]: novell-iprint-tomcat.service: Job novell-iprint-tomcat.service/start failed with resul
[DATE + TIME] [ServerName] systemd[1]: novell-iprint-license.service: Unit entered failed state.
[DATE + TIME] [ServerName] systemd[1]: novell-iprint-license.service: Failed with result 'exit-code'.
[DATE + TIME] [ServerName] systemd[1]: Starting Novell Identity Translator(NIT)...
[DATE + TIME] [ServerName] systemd[1]: novell-iprint-license.service: Service RestartSec=3s expired, scheduling restart.
[DATE + TIME] [ServerName] systemd[1]: Stopped Novell iPrint License Server service.
[DATE + TIME] [ServerName] systemd[1]: Starting Novell iPrint License Server service...
[DATE + TIME] [ServerName] systemd[1]: Starting RealtimeKit Scheduling Policy Service...
[DATE + TIME] [ServerName] systemd[1]: Started RealtimeKit Scheduling Policy Service.
[DATE + TIME] [ServerName] systemd[1]: Started Novell iPrint License Server service.