Advanced Control of the Product Ports

Enable a vovserver Project for Command Line Control

The commands described in this chapter require using a "vovproject-enabled shell". This is a command shell that has been configured to work with a specific vovserver. For more information, see Enable CLI Access on UNIX or Enable CLI Access on Windows.

Change the Primary Port on a Running vovserver

The primary port cannot be changed without stopping and restarting the vovserver.

Change the Web Port on a Running vovserver

The web port can be changed dynamically with:
% vovsh -x 'VovServerConfig webport 6271'
Additional settings related to HTTPS can be set in policy.tcl:
# Example modification to policy.tcl
set config(ssl.enable)             1
set config(ssl.enableRawUrlOnHttp) 1
The vovserver must be notified of changes to policy.tcl:
% vovproject reread

Change the Read-only Port on a Running vovserver

The read-only port, also called the guest access port, can be changed dynamically with:
% vovsh -x 'VovServerConfig readonlyport 8283'
To maintain backwards compatibility, the read-only port can also be set in policy.tcl:
# Example modification to policy.tcl
set config(readonly)            8283
The vovserver must be notified of changes to policy.tcl:
% vovproject reread

Recommendations for VOV_PORT_NUMBER for Monitor

  • Set VOV_WEB_PORT_NUMBER to the well known port 5555
  • Set the VOV_PORT_NUMBER to "any"
# In licmon.swd/setup.tcl
setenv VOV_PORT_NUMBER     any

Recommendations for VOV_PORT_NUMBER for Accelerator

The following is a summary of the important recommendations when setting the VOV_PORT_NUMBER for Accelerator:
  • It is important for Accelerator to restart quickly. To do so, avoid conflicts on the port used by the Accelerator vovserver.
  • Keep the port for the web pages in the same place even if the vovserver uses a different port after a restart.
  • Ensure the web port is different from all other ports. The easiest to do this is to assign the web port the lowest number from the internal list, then increment the value for other ports that you configure.
The following settings for VOV_PORT_NUMBER are recommended:
  • Select a series of consecutive values from the internal port list, such as 6271 -6275.
  • Set VOV_WEB_PORT_NUMBER to a known port:
    For example:
    setenv VOV_WEB_PORT_NUMBER 6271
  • If you wish to have anonymous access via HTTP, set VOV_READONLY_PORT_NUMBER to some other fixed value. As mentioned above, our recommendation is +1 above the web port: 6272.
  • Set VOV_PORT_NUMBER to a list of 3 or 4 known ports. As mentioned above, select the port numbers by continuing to increment from the value used for the web port.
    For example:
    setenv VOV_PORT_NUMBER 6273, 6274, 6275
# In setup.tcl for an Accelerator project
setenv VOV_WEB_PORT_NUMBER       6271
setenv VOV_PORT_NUMBER           6273:6274:6275

Recommendations for VOV_PORT_NUMBER for FlowTracer

If you are going to have tens or hundreds of vovservers running on the same small number of machines, then it is most important to avoid conflicts on the ports, a goal that can be achieved by setting the value of VOV_PORT_NUMBER to "any" so vovserver can choose a port.
# In setup.tcl for an FlowTracer project
setenv VOV_PORT_NUMBER any

Running Multiple Product Instances on the Same Machine

Although not recommended, it is possible to run multiple instances of the same product, such as Monitor or Accelerator, on the same machine. In such cases, it is imperative that you carefully control the allocation of the ports to each instance, in order to avoid collisions (i.e. one of the instances is unable to start) and user confusion.

In particular, you have to make sure that the setup.tcl file for each instance in the NC_CONFIG_DIR directory (usually $VOVDIR/local/vncConfig/<queuename>.tcl for Accelerator) defines the following environment variables:
  • VOV_PORT_NUMBER: Required. This is the main port and it MUST be different for each instance
  • VOV_WEB_PORT_NUMBER: If you are using nginx as a front-end for the vovserver, you must assign a distinct value to each instance. Otherwise, you can set this variable to 0 to disable nginx.
  • VOV_READONLY_PORT_NUMBER: This is an optional port, which is normally activated for both Monitor and Accelerator. Set this to 0 if you do not need to activate it, or choose a unique value for each instance.