To run multiple different OpenEdge versions on the same machine
The AdminServer -port
need to be uniquely defined for each installed version.
In order to have different versions of the AdminServer running and working properly on the same server, port conflicts need to be considered. The AdminServer has two ports set aside for use, with the -port
- The port referenced by the -port parameter, is the main AdminServer Listening Port. All queries and start/stop requests are sent, for example when running: proadsv -query -port <port>, fathom -stop -port <port>, dbman -start -all -port <port>
The default AdminServer listening port is 20931 across all Progress OpenEdge versions.
- The port referenced by the -adminport parameter, is the Communication Port between the servergroup and the AdminServer used by databases to communicate with the AdminServer. For example to re-connect to the AdminServer when the AdminServer is restarted.
The default AdminServer communication port for different Progress versions are documented in Article:
To change the -adminport and -port that the AdminServer service uses:Progress versions pre OpenEdge 10.1B
are configured in the Registry. Refer to Article:
Since OpenEdge 10.1B
The unified DLC\properties\AdminServerPlugins.properties
file was introduced, which is the preferred configuration method instead of the registry as was required previously. This makes this solution portable to environments where the AdminServer runs on UNIX or Windows servers.
For each OpenEdge 10.1B and later AdminServer version running on the same machine, configure unique and available ports on which each AdminServer is listening (-port) and communicating (-adminport), in the DLC\properties\AdminServerPlugins.properties file:
1. Shutdown any instances of the AdminServer for which the changes are needed.
2. Backup and then Open DLC\properties\AdminServerPlugins.properties
file in a text editor
3. Append the port and adminport arguments at the end of the following Section:
- For each OpenEdge 10.1B to 11.6 version, in the section: [PluginPolicy.Progress.AdminServer]
- For OpenEdge 11.7, additionally in the section: [PluginPolicy.Progress.ProAdsv]
[PluginPolicy.Progress.AdminServer] | [PluginPolicy.Progress.ProAdsv]
classpath=<full classpath referencing necessary .jar files>
jvmargs=-Xmx1024m -Xrs -Djava.awt.headless=true -Xbootclasspath/a:oee/dlc/jars/pja.jar
4. Start the AdminServer. Considerations:1. Port Conflicts
The AdminServer will fail to startup if the adminport port is in use. If this port is in use already, another server socket cannot be created using this port.
- Two AdminServers running on two different listening ports (-port 20931, and -port 20932).
- A distinct -adminport is not specified.
They will both try to open the default adminport for that Progress version (eg: 7832), so one of them will fail to start. Another reason could be that the -port (20931, 20932) or -adminport (7835) is already in use by some other process.
The value of -adminport must not be the same Server port that is used for any of the OpenEdge Server products. These are two different ports, for different purposes.2. AdminServer Commandline
When using the associated command-line utilities (proadsv, nsman, dbman, asbman, wtbman) remember to use the appropriate -port
argument for the AdminServer in use, this also applies to the (retired) Progress Explorer > Properties > Advanced > Server Port Number.
Alternatively add the -port argument and port number to the ubutil.bat
file in order that the *man utilities automatically append the correct Listening Port:
set PARMS=%PARMS% -port 20951
3. OpenEdge Explorer (OEE) or OpenEdge Management (OEM)
When multiple different versions of are used the following additional default ports will need to be changed:
a. Resource configuration in the OpenEdge Console
does not require any changes when the default port and adminport are changed .b. Web server HTTP Listener Port
- In OpenEdge 10.2B and all OpenEdge 11 versions, the AdminSever connects through the Jetty WebServer HTTP Listener Port (default=9090) which will need to be changed when remote monitoring of other versions is not used.
- Since OpenEdge 12, the OEM/OEE (fathom.plugin) has been abstracted from the AdminServer and is exposed as a webapp running on a PASOE instance which uses the tomcat http(s) listener port.
- These instructions change the web server listening port are provided in Article:
c. DBAgent (-agentport), used to communicate with databases: Refer to Article 000019812
, How to change the port used by the dbagent ?
d. Remote AdminServer ports (discoveryPort) for OpenEdge versions 11.3 to 11.7: Refer to Article
000048873, How to change default ActiveMQ port?
e. OpenEdge 12 added switches to the proadsv command the use specific DBAgent (-agentport) and Remote AdminServer (-mgmtport) previously the discoveryPort):
OpenEdge Data Management: Database Administration, Other Database Administration Utilities - PROADSV utility