Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Announcement: Try the Ask AI chatbot for answers to your technical questions about Juniper products and solutions.

close
header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Using a Remote Server for NorthStar Planner

date_range 29-Aug-23

You can install NorthStar Controller with a remote Planner server (a server separate from the NorthStar application server), to distribute the NorthStar Operator and NorthStar Planner server loads. This also helps ensure that the processes of each do not interfere with the processes of the other. The desktop Planner application then runs from the remote server. Be aware that to work in NorthStar Planner, you must still log in from the NorthStar Controller web UI login page.

Note:

Using a remote server for NorthStar Planner does not make NorthStar Planner independent of NorthStar Controller. As of now, there is no standalone Planner.

We recommend using a remote Planner server if any of the following are true:

  • Your network has more than 250 nodes

  • You typically run multiple concurrent Planner users and/or multiple concurrent Planner sessions

  • You work extensively with Planner simulations

In NorthStar HA cluster setups, there is one remote Planner server for the whole cluster. It is configured to communicate with the virtual IP of the cluster.

Process Overview: Installing and Configuring Remote Planner Server

Figure 1 shows the high level process you would follow to install NorthStar Controller with a remote Planner server. Installing and configuring NorthStar comes first. If you want a NorthStar HA cluster, you would set that up next. Finally, you would install and configure the remote Planner server. The text in italics indicates the topics in the NorthStar Getting Started Guide that cover the steps.

Figure 1: High Level Process Flow for Installing a Remote Planner ServerHigh Level Process Flow for Installing a Remote Planner Server

Setting up the remote Planner server is a two-step process that you perform on the remote server:

  1. Run the remote Planner server installation script.

    This script prepares the remote server for the tasks that will be performed by the setup utility.

  2. Run the remote Planner server setup utility.

    This utility copies your NorthStar license file from the NorthStar Controller to the remote Planner, and restarts the necessary NorthStar processes on the Controller. It disables Planner components on the NorthStar Controller application server so they can be run from the remote server instead. It also ensures that communication between the application server and the remote Planner server works. In an HA scenario, you run the setup utility once for each application server in the cluster, ending with the active node.

The setup utility requires you to provide the IP addresses of the NorthStar application server (physical IP or in the case of HA deployment, both the physical and virtual IP addresses) and the remote Planner server. Also, you must enter your server root password for access to the application server.

Download the Software to the Remote Planner Server

The NorthStar Controller software download page is available at https://www.juniper.net/support/downloads/?p=northstar#sw.

  1. From the Version drop-down list, select the version number.

  2. Click the NorthStar Application (which includes the RPM bundle) to download it. You do not need to download the Junos VM to the remote Planner server.

Install the Remote Planner Server

On the remote Planner server, execute the following commands:

content_copy zoom_out_map
[root@remote-server~]# yum install <rpm-filename>
[root@remote-server~]# cd /opt/northstar/northstar_bundle_x.x.x/
[root@remote-server~]# ./install-remote_planner.sh

Run the Remote Planner Server Setup Utility

This utility (setup_remote_planner.py) configures the NorthStar application server and the remote Planner server so the processes are distributed correctly between the two and so the servers can communicate with each other.

Three scenarios are described here. The effects on certain NorthStar components on the NorthStar Controller (application server) are as follows:

Effect on Cassandra Database

Effect on Web Processes

Non-HA Setup

Use this procedure if you do not have a NorthStar HA cluster configured.

modified and restarted

modified and restarted

HA Active Node Setup

Use this procedure to configure the active node in your NorthStar HA cluster.

not modified and not restarted

modified and restarted

HA Standby Node Setup

Use this procedure to configure the standby nodes in your NorthStar HA cluster.

not modified and not restarted

modified, but not restarted

Non-HA Setup Procedure

The following procedure guides you through using the setup utility in interactive mode. As an alternative to interactive mode, you can launch the utility and enter the two required IP addresses directly in the CLI. The setup utility is located in /opt/northstar/utils/. To launch the utility:

content_copy zoom_out_map
[root@hostname~]# ./setup_remote_planner.py remote-planner-ip controller-ip

You will be required to enter your server root password to continue.

If you use interactive mode:

  1. On the remote Planner server, launch the remote Planner server setup utility:

    content_copy zoom_out_map
    [root@hostname~]# ./setup_remote_planner.py
    Remote Planner requires Controller to have port 6379 and 9042 opened.
    
  2. Respond to the prompts. You’ll need to provide the IP addresses for the NorthStar application server and the remote Planner server, and your server root password. For example:

    content_copy zoom_out_map
    Is Controller running in HA setup? (Y/N) N
    Controller IP Address for Remote Planner to connect to: 10.53.65.245
    Remote Planner IP Address for Controller to connect to: 10.53.65.244
    
    Cassandra on Controller will be restarted. Are you sure you want to proceed? (Y/N) Y
    
    Controller 10.53.65.245 root password:
    Configuring Controller...
  3. The setup utility proceeds to configure the NorthStar Controller application server, configure the remote Planner server, test the Cassandra database connection, and check the Redis connection. The following sample output shows the progress you would see and indicates which processes end up on the application server and which on the remote Planner server. All processes should be RUNNING when the setup is complete.

    content_copy zoom_out_map
    Configuring Controller...
    bmp:bmpMonitor                   RUNNING   pid 20150, uptime 12 days, 20:30:10
    collector:worker1                RUNNING   pid 21794, uptime 12 days, 20:28:25
    collector:worker2                RUNNING   pid 21796, uptime 12 days, 20:28:25
    collector:worker3                RUNNING   pid 21795, uptime 12 days, 20:28:25
    collector:worker4                RUNNING   pid 21797, uptime 12 days, 20:28:25
    collector_main:beat_scheduler    RUNNING   pid 22721, uptime 12 days, 20:26:39
    collector_main:es_publisher      RUNNING   pid 22722, uptime 12 days, 20:26:39
    collector_main:task_scheduler    RUNNING   pid 22723, uptime 12 days, 20:26:39
    config:cmgd                      RUNNING   pid 22087, uptime 12 days, 20:28:08
    config:cmgd-rest                 RUNNING   pid 22088, uptime 12 days, 20:28:08
    docker:dockerd                   RUNNING   pid 20167, uptime 12 days, 20:30:10
    epe:epeplanner                   RUNNING   pid 20151, uptime 12 days, 20:30:10
    infra:cassandra                  RUNNING   pid 26573, uptime 0:00:25
    infra:ha_agent                   RUNNING   pid 20160, uptime 12 days, 20:30:10
    infra:healthmonitor              RUNNING   pid 21760, uptime 12 days, 20:28:40
    infra:license_monitor            RUNNING   pid 20161, uptime 12 days, 20:30:10
    infra:prunedb                    RUNNING   pid 20157, uptime 12 days, 20:30:10
    infra:rabbitmq                   RUNNING   pid 20159, uptime 12 days, 20:30:10
    infra:redis_server               RUNNING   pid 20163, uptime 12 days, 20:30:10
    infra:zookeeper                  RUNNING   pid 20158, uptime 12 days, 20:30:10
    ipe:ipe_app                      RUNNING   pid 22720, uptime 12 days, 20:26:39
    listener1:listener1_00           RUNNING   pid 21788, uptime 12 days, 20:28:29
    netconf:netconfd_00              RUNNING   pid 22719, uptime 12 days, 20:26:39
    northstar:anycastGrouper         RUNNING   pid 22714, uptime 12 days, 20:26:40
    northstar:configServer           RUNNING   pid 22718, uptime 12 days, 20:26:39
    northstar:mladapter              RUNNING   pid 22716, uptime 12 days, 20:26:40
    northstar:npat                   RUNNING   pid 22717, uptime 12 days, 20:26:39
    northstar:pceserver              RUNNING   pid 22566, uptime 12 days, 20:27:56
    northstar:privatetlvproxy        RUNNING   pid 22582, uptime 12 days, 20:27:46
    northstar:prpdclient             RUNNING   pid 22713, uptime 12 days, 20:26:40
    northstar:scheduler              RUNNING   pid 22715, uptime 12 days, 20:26:40
    northstar:topologyfilter         RUNNING   pid 22711, uptime 12 days, 20:26:40
    northstar:toposerver             RUNNING   pid 22712, uptime 12 days, 20:26:40
    northstar_pcs:PCServer           RUNNING   pid 22602, uptime 12 days, 20:27:35
    northstar_pcs:PCViewer           RUNNING   pid 22601, uptime 12 days, 20:27:35
    northstar_pcs:SRPCServer         RUNNING   pid 22603, uptime 12 days, 20:27:35
    web:app                          RUNNING   pid 26877, uptime 0:00:12
    web:gui                          RUNNING   pid 26878, uptime 0:00:12
    web:notification                 RUNNING   pid 26876, uptime 0:00:12
    web:proxy                        RUNNING   pid 26879, uptime 0:00:12
    web:restconf                     RUNNING   pid 19271, uptime 0:00:28
    web:resthandler                  RUNNING   pid 19275, uptime 0:00:12
    
    Controller configuration completed!
    
    Configuring Remote Planner...
    infra:rabbitmq                   RUNNING   pid 3587, uptime 3 days, 2:53:21
    northstar:npat                   RUNNING   pid 3585, uptime 3 days, 2:53:21
    web:planner                      RUNNING   pid 6557, uptime 0:00:11
    Remote Planner configuration completed!
    
    Testing Cassandra connection...
    Connected to Test Cluster at 10.49.128.199:9042.
    Cassandra connection OK.
    
    Checking Redis connection...
    Redis port is listening.
    

HA Standby Node Setup

As in the non-HA scenario, you don’t have to use interactive mode for the setup script. You can launch the utility and enter the required IP addresses directly in the CLI as follows (three IP addresses in the case of cluster nodes):

content_copy zoom_out_map
[root@hostname~]# ./setup_remote_planner.py remote-planner-ip controller-physical-ip controller-vip
Note:

This is the same for both active and standby nodes. The setup utility automatically distinguishes between the two.

You will be required to enter your server root password to continue.

Whether you use interactive or direct CLI mode, you run the utility once for each standby node in the HA cluster, using the appropriate IP addresses for each node.

If you use interactive mode:

  1. On the remote Planner server, launch the remote Planner server setup utility:

    content_copy zoom_out_map
    [root@hostname~]# ./setup_remote_planner.py
    Remote Planner requires Controller to have port 6379 and 9042 opened.
    
  2. Respond to the prompts. You’ll need to provide both the virtual IP and physical IP addresses for the standby application node, the IP address for the remote Planner server, and your server root password. For example:

    content_copy zoom_out_map
    Remote Planner requires Controller to have port 6379 and 9042 opened.
    
    Is Controller running in HA setup? (Y/N) Y
    Controller Cluster Virtual IP Address for Remote Planner to connect to: 10.51.132.196
    Controller Cluster Physical IP Address for Remote Planner to connect to: 10.51.132.206
    Remote Planner IP Address for Controller to connect to: 10.51.132.206
    
    Controller 10.49.237.69 root password:
  3. The setup utility proceeds to configure the NorthStar Controller application server, configure the remote Planner server, test the Cassandra database connection, and check the Redis connection. The following sample output shows the progress you would see and indicates which processes end up on the application server and which on the remote Planner server. Because this is a standby node in an HA cluster configuration, it is normal and expected for some processes to be STOPPED when the setup is complete.

    content_copy zoom_out_map
    Configuring Controller...
    analytics:elasticsearch          RUNNING   pid 7942, uptime 2:27:50
    analytics:esauthproxy            RUNNING   pid 7946, uptime 2:27:50
    analytics:logstash               RUNNING   pid 7945, uptime 2:27:50
    analytics:netflowd               RUNNING   pid 7944, uptime 2:27:50
    analytics:pipeline               RUNNING   pid 7943, uptime 2:27:50
    bmp:bmpMonitor                   RUNNING   pid 14342, uptime 3:48:40
    collector:worker1                RUNNING   pid 7172, uptime 2:32:31
    collector:worker2                RUNNING   pid 7174, uptime 2:32:31
    collector:worker3                RUNNING   pid 7173, uptime 2:32:31
    collector:worker4                RUNNING   pid 7175, uptime 2:32:31
    collector_main:beat_scheduler    STOPPED   Sep 28 01:43 PM
    collector_main:es_publisher      STOPPED   Sep 28 01:43 PM
    collector_main:task_scheduler    STOPPED   Sep 28 01:42 PM
    config:cmgd                      STOPPED   Sep 28 01:43 PM
    config:cmgd-rest                 STOPPED   Sep 28 01:43 PM
    config:ns_config_monitor         STOPPED   Sep 28 01:43 PM
    docker:dockerd                   RUNNING   pid 15181, uptime 3:48:22
    epe:epeplanner                   RUNNING   pid 18685, uptime 3:38:46
    infra:cassandra                  RUNNING   pid 3919, uptime 2:55:54
    infra:ha_agent                   RUNNING   pid 6972, uptime 2:33:50
    infra:healthmonitor              RUNNING   pid 7131, uptime 2:32:45
    infra:license_monitor            RUNNING   pid 3916, uptime 2:55:54
    infra:prunedb                    STOPPED   Sep 28 02:20 PM
    infra:rabbitmq                   RUNNING   pid 3914, uptime 2:55:54
    infra:redis_server               RUNNING   pid 3918, uptime 2:55:54
    infra:zookeeper                  RUNNING   pid 3907, uptime 2:55:54
    ipe:ipe_app                      STOPPED   Sep 28 01:43 PM
    listener1:listener1_00           RUNNING   pid 7166, uptime 2:32:35
    netconf:netconfd_00              STOPPED   Sep 28 01:42 PM
    northstar:anycastGrouper         STOPPED   Sep 28 01:43 PM
    northstar:configServer           STOPPED   Sep 28 01:36 PM
    northstar:mladapter              STOPPED   Sep 28 01:36 PM
    northstar:npat                   STOPPED   Sep 28 01:36 PM
    northstar:pceserver              STOPPED   Sep 28 01:42 PM
    northstar:prpdclient             STOPPED   Sep 28 01:36 PM
    northstar:scheduler              STOPPED   Sep 28 01:36 PM
    northstar:toposerver             STOPPED   Sep 28 01:36 PM
    northstar_pcs:PCServer           STOPPED   Sep 28 01:36 PM
    northstar_pcs:PCViewer           STOPPED   Sep 28 01:36 PM
    web:app                          STOPPED   Not started
    web:gui                          STOPPED   Not started
    web:notification                 STOPPED   Not started
    web:proxy                        STOPPED   Not started
    web:resthandler                  STOPPED   Not started
    Controller configuration completed!
    
    Configuring Remote Planner...
    infra:rabbitmq                   RUNNING   pid 3587, uptime 3 days, 3:03:30
    northstar:npat                   RUNNING   pid 3585, uptime 3 days, 3:03:30
    web:planner                      RUNNING   pid 6650, uptime 0:00:10
    Remote Planner configuration completed!
    
    Testing Cassandra connection...
    Connected to NorthStar Cluster at 10.49.237.68:9042.
    Cassandra connection OK.
    
    Checking Redis connection...
    Redis port is listening.
    

HA Active Node Setup

After you have completed the remote server setup for all the standby nodes, you are ready to run setup_remote_planner.py for the active node in the cluster.

If you launch the utility and enter the three required IP addresses directly in the CLI, it looks like this:

content_copy zoom_out_map
[root@hostname~]# ./setup_remote_planner.py remote-planner-ip controller-physical-ip controller-vip
Note:

This is the same for both active and standby nodes. The setup utility automatically distinguishes between the two.

You will be required to enter your server root password to continue.

If you use interactive mode:

  1. On the remote Planner server, launch the remote Planner server setup utility:

    content_copy zoom_out_map
    [root@hostname~]# ./setup_remote_planner.py
    Remote Planner requires Controller to have port 6379 and 9042 opened.
    
  2. Respond to the prompts. You’ll need to provide both the virtual IP and physical IP addresses for the active application node, the IP address for the remote Planner server, and your server root password. For example:

    content_copy zoom_out_map
    Controller Cluster Virtual IP Address for Remote Planner to connect to: 10.49.237.68
    Controller Cluster Physical IP Address for Remote Planner to connect to: 10.49.237.70
    Remote Planner IP Address for Controller to connect to: 10.49.128.198
    
    Controller 10.49.237.70 root password:
  3. The setup utility proceeds to configure the NorthStar Controller application server, configure the remote Planner server, test the Cassandra database connection, and check the Redis connection. The following sample output shows the progress you would see and highlights which processes end up on the application server and which on the remote Planner server. Because this is the active node in an HA cluster configuration, all processes should be RUNNING when the setup is complete.

    content_copy zoom_out_map
    Configuring Controller...
    analytics:elasticsearch          RUNNING   pid 28516, uptime 2:38:47
    analytics:esauthproxy            RUNNING   pid 28520, uptime 2:38:47
    analytics:logstash               RUNNING   pid 28519, uptime 2:38:47
    analytics:netflowd               RUNNING   pid 28518, uptime 2:38:47
    analytics:pipeline               RUNNING   pid 28517, uptime 2:38:47
    bmp:bmpMonitor                   RUNNING   pid 14360, uptime 3:57:22
    collector:worker1                RUNNING   pid 27521, uptime 2:40:34
    collector:worker2                RUNNING   pid 27523, uptime 2:40:34
    collector:worker3                RUNNING   pid 27522, uptime 2:40:34
    collector:worker4                RUNNING   pid 27525, uptime 2:40:34
    collector_main:es_publisher      RUNNING   pid 27388, uptime 2:40:48
    collector_main:task_scheduler    RUNNING   pid 27389, uptime 2:40:48
    config:cmgd                      RUNNING   pid 26496, uptime 2:42:18
    config:cmgd-rest                 RUNNING   pid 26498, uptime 2:42:18
    config:ns_config_monitor         RUNNING   pid 26497, uptime 2:42:18
    docker:dockerd                   RUNNING   pid 15199, uptime 3:57:02
    epe:epeplanner                   RUNNING   pid 6764, uptime 3:47:03
    infra:cassandra                  RUNNING   pid 27016, uptime 3:10:43
    infra:ha_agent                   RUNNING   pid 26101, uptime 2:43:27
    infra:healthmonitor              RUNNING   pid 26074, uptime 2:43:38
    infra:license_monitor            RUNNING   pid 27010, uptime 3:10:43
    infra:prunedb                    RUNNING   pid 26059, uptime 2:43:49
    infra:rabbitmq                   RUNNING   pid 27007, uptime 3:10:43
    infra:redis_server               RUNNING   pid 27012, uptime 3:10:43
    infra:zookeeper                  RUNNING   pid 27006, uptime 3:10:43
    ipe:ipe_app                      RUNNING   pid 27387, uptime 2:40:48
    listener1:listener1_00           RUNNING   pid 29161, uptime 3:01:56
    netconf:netconfd_00              RUNNING   pid 27386, uptime 2:40:48
    northstar:anycastGrouper         RUNNING   pid 19762, uptime 0:01:53
    northstar:configServer           RUNNING   pid 27385, uptime 2:40:48
    northstar:mladapter              RUNNING   pid 27383, uptime 2:40:48
    northstar:npat                   RUNNING   pid 27384, uptime 2:40:48
    northstar:pceserver              RUNNING   pid 27154, uptime 2:41:54
    northstar:prpdclient             RUNNING   pid 27381, uptime 2:40:48
    northstar:scheduler              RUNNING   pid 27382, uptime 2:40:48
    northstar:toposerver             RUNNING   pid 27380, uptime 2:40:48
    northstar_pcs:PCServer           RUNNING   pid 27192, uptime 2:41:44
    northstar_pcs:PCViewer           RUNNING   pid 27191, uptime 2:41:44
    web:app                          RUNNING   pid 16817, uptime 0:00:11
    web:gui                          RUNNING   pid 16818, uptime 0:00:11
    web:notification                 RUNNING   pid 16816, uptime 0:00:11
    web:proxy                        RUNNING   pid 16819, uptime 0:00:11
    web:resthandler                  RUNNING   pid 16820, uptime 0:00:11
    Controller configuration completed!
    
    Configuring Remote Planner...
    infra:rabbitmq                   RUNNING   pid 3587, uptime 3 days, 3:12:12
    northstar:npat                   RUNNING   pid 3585, uptime 3 days, 3:12:12
    web:planner                      RUNNING   pid 6777, uptime 0:00:10
    Remote Planner configuration completed!
    
    Testing Cassandra connection...
    Connected to NorthStar Cluster at 10.49.237.68:9042.
    Cassandra connection OK.
    
    Checking Redis connection...
    Redis port is listening.
    

Installing Remote Planner Server at a Later Time

An alternative to installing and setting up the remote Planner server when you initially install or upgrade NorthStar, is to add the remote Planner server later. In this case, be aware that because running setup_remote_planner.py in a non-HA scenario includes a restart of the Cassandra database, all existing Planner sessions should be saved and closed before starting the process. We recommend performing the setup during a maintenance window. In the case of a NorthStar cluster, the Cassandra database is not restarted.

In a network where remote Planner server is already installed and functioning, you might need to switch from one NorthStar Controller application server to another, such as if the server should go down. It’s also possible for the IP address of the application server to change, which would interrupt communication between the application server and the remote Planner server. In those situations, you need only run the setup_remote_planner.py utility again from the remote Planner server, entering the new IP address of the application server.

footer-navigation