Frequently Asked Question

How to run multiple instances of N4V on the same server
Last Updated 8 months ago

Symptom

You want to run multiple instances of N4V engines on the same server.

Prerequisite

Environment:

  • SAP BusinessObjects Business Intelligence Platform all version
  • Need4Viz : all versions

Solution

The N4V installer cannot be used to install multiple instances of N4V. 

By default, the insatller will detect the first instance already installed on the server and will update it to the latest version.

If you want to run multiple instances of N4V on the same server, you need to configure it manually. 

Follow the below steps to run multiple N4V instances :

1/ Duplicate the tomcat/webapps/N4VCustomElements folder (for instance, name it N4VCustomElementsProd)

2/ Create a new log folder (ex. Need4Viz/logsProd)

3/ Duplicate the Need4Viz/nodejs/node_modules/custom_element folder ((for instance, name it custom_elementProd)

4/ Open the config.js file in the Need4Viz/nodejs/node_modules/custom_elementProd/ce_libs folder and update the following parameters :

  • LocalCEPath => '/Need4Viz/nodejs/node_modules/custom_elementProd'
  • LogUsageFile => '/Need4Viz/logsProd/Chart_usage.csv'
  • LogFTPUsageFile => '/Need4Viz/logsProd/FTP_usage.csv'
  • PORTNode_Maps => give another rang of ports (ex. 8301)
  • URLmongoDB => use a new Mongo instance, ex. 'mongodb://localhost/Need4VizProd'
  • Update the FullURLJSServer with the new webapp name (ex. URLNodeJSServer+':'+PORTTomcat+'/N4VCustomElementsProd/res/js')
  • Update the FullURLIMGServer with the new webapp name (ex. URLNodeJSServer+':'+PORTTomcat+'/N4VCustomElementsProd/res/images')
  • Update the FullURLCSSServer with the new webapp name (ex. URLNodeJSServer+':'+PORTTomcat+'/N4VCustomElementsProd/res/css')

5/ Duplicate the \Need4Viz\nodejs\apps_need4viz.json (for instance, name it apps_need4vizProd.json) and edit it :

  • For each app, update the name (ex. "n4v_maps" -> "Prod_n4v_maps")
  • For each app, update the script (ex. "".\\node_modules\\custom_element\\ce_libs\\n4v_maps.js" -> ".\\node_modules\\custom_elementProd\\ce_libs\\n4v_maps.js")
  • For each app, update the out_file (ex. "..\\logs\\bi42\\n4v_maps_out.log" -> "..\\logProd\\bi42\\n4v_maps_out.log")
  • For each app, update the err_file (ex. "..\\logs\\bi42\\n4v_maps_err.log" -> "..\\logProd\\bi42\\n4v_maps_err.log")

Now you can start your new instance of N4V running "pm2 start apps_need4vizProd.json" in a PowerShell command.

To save both instances configuration (and make both of them restart after the server reboot), run a "pm2 save" command.

In the CMC, you can configure the 13 services on the new N4V instance ports range (8301 -> 8313).

Please Wait!

Please wait... it will take a second!