Question

Configure Multiple instances prpc - websphere - (vertical stack - single server)

We currently have multiple instances horizontally configured in a websphere cluster for prpc 7.4. We have added substantial more memory on our servers and as our cpu has low utilization we wanted to try run multiple instances on a single server to better make use of the available cpu.(ie vertical stack the instances) Initially trying to configure this - only the 1st instance starts successfully. I am looking if there is a document on what components should be configured dynamically to get these instances to start up correctly without conflict (ie port# should be different for each instance - Log file path should be different for each instance, etc... ) has anyone done this and how did they configure a websphere cluster to accommodate vertical and horizontal stacking of jvm's ? Thanks for any help

Comments

Keep up to date on this post and subscribe to comments

September 24, 2019 - 4:29pm

Are you running DSM Services? It would be potential IP/port conflicts issues you have to overcome. Otherwise, you run a logic Websphere cluster with multiple JVMs within the same physical server (only thing you need to make sure is that you ensure unique set of ports for each node in the Websphere cluster). We run this configuration extensively for our internal environments.

September 25, 2019 - 2:55pm
Response to KevinZheng_GCS

I am being asked what is DSM Service - None of the pega developers know what this is .  How do you manage the logs for each of the instances running in the vertical stack, Are these controlled by environment variables in the cluster or is there an automated process that can be configured in prpc ? 

September 26, 2019 - 5:58am

For the logs, for each JVM we've added
-Dpega.logdir=/myApp/was/var/log

Since it's at server_X level, I guess you could define different value for each server_X running on same physical

You mention that only the first server starts, what error is shown in log for the second?

 

 

October 11, 2019 - 12:35pm

Thanks for the responses - Unfortunately they do not answer what I am looking for - the cluster configuration means that I only have 1 config file - for all instances - vertical or horizontally . This means that I need to specify these variables as dynamic for each instance - Obviously if I have only a fixed path or port - then the 1st instance that loads will work, but any others will fail as port is already assigned, runtimetemp is already being written to, logs are already allocated to the first instance. I understand that this may be more WebSphere related question, was hoping that someone else had done this in websphere who could give some pointers on the config file.  - Thanks

October 14, 2019 - 2:48am

We've got websphere apps running with vertical & horizontal scaling.
This is done by our websphere team and this is common so it shouldn't be that unusual.
Each process has its own port on one server, its own log & config dir.

Then, for each PEGA JVM, you can define in its parameters, its own Log/Config/pegatemp directory.
for Hazelcast port you can also define in each prconfig.xml the range the instance can use.

so all combined, you should have a valid vertical design.