Running the Environment Management Hub

This section discusses how to:

  • Run the hub on a single server.

  • Run the hub on multiple servers.

Before you run the Environment Management agent, you must first ensure that it's properly configured in the hub's configuration.properties file.

On a single server, the PSEMHUB starts within PIA, so use the command you use for your web server to start PIA.

Environment Management also supports multi-server installs. However, the Environment Management hub does not support clustering. The Environment Management hub persists metadata into the file system on the J2EE container. This is not replicated in a clustered environment. You experience erroneous behavior when you attempt to run the Environment Management hub in a clustered environment.

The Environment Management hub deals with large binary files that Change Assistant sends to the agents by using the hub as the intermediary dispatcher. This can create significant overhead to a production system that is running on a multi-server clustered environment. Therefore, PSEMHUB must always run on separate servers dedicated to the Environment Management hub requests.

Starting PSEMHUB on Multiple Servers on WebLogic

In a multiple server configuration, the PSEMHUB server listens on port 8081, by default.

Use the following steps to start the WebLogic hub:

  1. Configure the Environment Management hub to run on a server that is different from the PeopleSoft Internet Architecture servers.

  2. Configure the reverse proxy to redirect any network traffic with a uniform resource identifier (URI) of PSEMHUB to the server running the Environment Management hub.

    On the machine from which the RPS application runs, access the HttpProxyServlet folder.

    Select PSEMHUBHttpProxyServlet and click the Init Params tab. Replace WebLogicHost , WebLogicPort with the host and port from which your PSEMHUB server listens.

    Note: Save your new configuration.

Use the following commands in sequence to start the Environment Management hub in a multi-server installation:

...\StartWebLogicAdmin.cmd (start the admin server)
...\StartManagedWebLogic.cmd RPS
...\StartManagedWebLogic.cmd PSEMHUB

Then use the following URL to access PSEMHUB: http://RPS host:RPS port/PSEMHUB/hub.

Note: For a single server install using a reverse proxy, this additional step needs to be performed in order for the Environment Management hub to be able to process the PSEMHUB requests. You need to edit: PIA_HOME\webserv\domain\applications\HttpProxyServlet\WEB-INF\web.xml. In the PSEMHUBHttpProxyServlet section, change the default port from 8001 to 80.

The following is a sample configuration:

- <servlet>
  <servlet-name>PSEMHUBHttpProxyServlet</servlet-name>
  <servlet-class>weblogic.servlet.proxy.HttpProxyServlet</servlet-class> 
- <init-param>
  <param-name>WebLogicHost</param-name> 
  <param-value>localhost</param-value> 
  </init-param>
- <init-param>
  <param-name>WebLogicPort</param-name> 
  <param-value>80</param-value> 
  </init-param>
 </servlet>

Start the WebSphere Hub on Multiple Servers

If you are using multiple servers, then you need to dedicate one of them to handle PSEMHUB requests. All PSEMHUB requests should be routed to the same server instance. The following steps show the configuration changes that are required for this purpose:

  1. Edit your reverse proxy's plug-in configuration file (plugin-cfg.xml) then make sure that only one server is dedicated to PSEMHUB.

  2. Remove this line from all other servers: <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/PSEMHUB/*" />. The server you chose for PSEMHUB should only service PSEMHUB requests so that it can run independently and can be shut down without affecting the rest of the system.

  3. Restart the reverse proxy using : IBM_proxy_base_directory\bin\apachectl restart.

  4. Restart all the servers. For Windows, the directory is: WebSphere_Appserver_directory\bin\startServer.bat serverX. For UNIX, the directory is: WebSphere_Appserver_directory/bin/startServer.sh serverX.

  5. Use the following URL to access PSEMHUB http://reverse_proxy_host:reverse_proxy_port/PSEMHUB/hub.

    The reverse proxy's listen port is defined in IBM_reverse_proxy_base_directory\conf\httpd.conf.

Stopping the PSEMHUB on Multiple Servers on WebLogic

In a multiple server environment, target the server which is dedicated to PSEMHUB then execute PIA_HOME\webserv\domain\stopWebLogic.cmd PSEMHUB on Windows and PS_HOME/webserv/domain/stopWebLogic.sh PSEMHUB on UNIX. This will only stop the server servicing PSEMHUB requests. The other servers will still be up processing PIA requests.

The following is a sample XML configuration file for the WebLogic multi-server installation:

1.1 Sample XML configuration file for WebLogic Multiserver installation
<UriGroup Name="default_host_server1_st-lnx06_Cluster_URIs">
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/*" /> 
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSIGW/*" /> 
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSINTERLINKS/*" /> 
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSOL/*" /> 
</UriGroup>
- <UriGroup Name="default_host_server1_pt-lnx03_Cluster_URIs">
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/*" /> 
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSIGW/*" /> 
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSINTERLINKS/*" /> 
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSOL/*" /> 
</UriGroup>
- <UriGroup Name="default_host_server1_pt-ibm15_Cluster_URIs">
  <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" 
Name="/PSEMHUB/*" /> 
</UriGroup>

Stopping PSEMHUB on Multiple Servers on WebSphere

In a multiple server environment, target the server which is dedicated to PSEMHUB then execute WebSphere_Appserver_directory\bin\stopServer.bat serverX on Windows and WebSphere_Appserver_directory/bin/stopServer.sh serverX on UNIX. This will only stop the server servicing PSEMHUB requests. The other servers will still be up processing PIA requests.