Skip To Content

Join additional machines to an ArcGIS Notebook Server site

ArcGIS Notebook Server supports multiple-machine sites at 10.7.1 and later versions. In a multiple-machine site, each machine is configured the same, with identical Docker setups, and each can run ArcGIS Notebooks.

Starting at 10.9, ArcGIS Notebook Server supports multi-licensed sites, allowing all machines that participate in a site to no longer need the same level of license. For example, you can set up a three-machine site with one machine configured with an advanced license and two machines configured with standard licenses. Prior to 10.9, all machines were required to have the same level of license (either advanced or standard). This multi-license capability introduced at 10.9 will allow for scaling with a varying number of machines that have either an advanced or standard license.

Legacy:

At the 10.7 release, only single-machine sites were supported.

Multiple-machine ArcGIS Notebook Server sites allow you to support more simultaneous notebook users. If you have many active users, or if your single machine's resources are inadequate for your users' needs, expanding to a multiple-machine site could be beneficial.

Note:

If you have a few notebook users who require more machine resources, you might evaluate modifying your site's resource limits as a limited alternative to adding machines.

All machines in an ArcGIS Notebook Server site have the same software installed, with the same version. On the first machine you set up, you'll need to create the ArcGIS Notebook Server site. You can then join additional ArcGIS Notebook Server machines to the site.

Note:

Unlike other ArcGIS Server roles, ArcGIS Notebook Server does not support adding more machines to a site from the first machine. You must access each machine in turn and join them to the site, using the ArcGIS Notebook Server configuration wizard or the joinsite utility.

Before you install

When you create a site, you determine where to store the configuration store, a directory hosting the critical files and configuration information for your site. Your site also has system and workspace server directories.

When you create an ArcGIS Notebook Server site, you specify locations for the configuration store and server directories. In a multiple-machine site, you must share the configuration store and server directories so that the other machines can access them. Each machine that joins the site must be granted read and write permissions to these shared locations.

Install and configure a multiple-machine site

When you intend to set up a multiple-machine ArcGIS Notebook Server site, there are additional steps to follow in this installation guide.

  1. Review the system requirements for ArcGIS Notebook Server to verify that each machine qualifies. On each machine, adjust the firewalls to open port 11443 for communication from each machine in your ArcGIS Enterprise deployment.

    Make sure you install using the same operating system user on both machines. The user account used to install ArcGIS Notebook Server will be the account used to run the software. Group users and all others must have at least execute permissions to the ArcGIS Notebook Server installation directory. Note that installing ArcGIS Notebook Server with the root account is not supported. The user account used to install on two machines, for example, could be as follows:

    1. Install ArcGIS Notebook Server on the first machine at /data/ags as user ags, with a user ID of 58103.
    2. Install ArcGIS Notebook Server on a second machine at /data/ags with the same user name and ID (ags, user ID 58103).
  2. Ensure that you have already done the following during the installation process to this point:
    1. Install Docker on each machine. On each machine, download the Docker images provided by Esri and save them to a location the system can access.
    2. Install and authorize ArcGIS Notebook Server on each machine. You can also silently install the software.
    3. Run the command line PostInstaller utility (located at <ArcGIS Notebook Server installation directory>/tools/postInstallUtility) to load the Docker images into the local repository on each machine.
    4. Follow the steps to configure ArcGIS Notebook Server after installation.
  3. Create and share two directories on your network, specifying the installation user as the owner. One should be for the configuration store and the other for your server directories. You must grant at least 700 permissions to the folders.
    Note:

    Shared network directories that are hidden or use special characters (for example, $) are not supported by ArcGIS Notebook Server.

    For example:
    1. Create a directory named config-store. Specify the owner as ags, with the user ID of 58103. Grant at least 700 permissions to the directory.
    2. Share the config-store folder so that both machines can access the directory using the same path, for example, /net/myserver/config-store.
    3. Create a directory named arcgisnotebookserver. Specify the owner as ags, with the user ID of 58103. Grant at least 700 permissions to the directory.
    4. Share the arcgisnotebookserver folder so that both machines can access the directory using the same path, for example, /net/myserver/arcgisnotebookserver.

      Even if the directories reside on the same machine that you will use when creating the site, you must still manually create and share the directories and reference them through a network path.

  4. From one of your machines, create an ArcGIS Notebook Server site. Ensure you use the paths for your server directories and configuration store that you set up earlier.
  5. Once the previous steps have been completed, you can join each additional machine to the site you've created using a configuration wizard. If you prefer to join the site from the command line, see step 6.
    1. From the first additional machine, open the ArcGIS Notebook Server Configuration Wizard.
    2. Review and follow the instructions provided in the wizard, and click Continue.
    3. Click Join Existing Site.
    4. Enter the site URL and credentials for your ArcGIS Notebook Server site as created in step 4.
    5. Repeat steps a through d for each additional machine you want to join to the site.
  6. As an alternative to using the configuration wizard, you can join the machine to the site using a command line utility, as follows:
    1. Ensure you're signed in to the machine with the ArcGIS Notebook Server account.
    2. Open a command prompt and run the utility, which is located at <ArcGIS Notebook Server install directory>/tools/JoinSiteUtility/joinsite.sh. The following are the command line parameters for the utility:

      ParameterDescription

      -u or --username

      The user name of the primary site administrator.

      The user name cannot contain these characters: \/:*?|<>

      -p or --password

      The password for the primary site administrator.

      The password cannot contain these characters: \/:*?|<>

      -f or --file

      The configuration store connection file for the joinsite utility.

      -s or --siteUrl

      The URL of the existing ArcGIS Notebook Server site to join, in the format https://notebookserver.domain.com:11443.

      -h or --help

      Displays command line help and exits.

      An example command for the utility:

      <ArcGIS Notebook Server install directory>/tools/JoinSiteUtility/joinsite.sh -u notebookPSA -p my.Password3 -s https://notebookserver.domain.com:11443

      If the account credentials and site URL are entered correctly, the utility will join the machine to the ArcGIS Notebook Server site. Repeat this step for each additional machine.

  7. Once all machines are joined to the site, the remaining setup process is the same as for single-machine sites. Proceed to install and configure ArcGIS Web Adaptor with your site. You will then configure your site with your ArcGIS Enterprise portal.

Join a site from the command line

You can also use the joinSite command line utility to join your machine to an ArcGIS Notebook Server site. This utility requires that you specify the location of the configuration store of the existing site, rather than its URL. Because of this, the utility is advantageous for certain cases in which using the URL would clog up the network requests queue for the site. Consider using this utility if the machines in your ArcGIS Notebook Server site are already overloaded with network requests, or if you want to join a large number of machines to your site at one time.

The join-site utility is installed in \tools\JoinSiteUtility under the ArcGIS Notebook Server installation directory. Run the join-site utility from the ArcGIS Notebook Server machine you want to add to an existing site, using the Run As account for the ArcGIS Notebook Server.

  1. Grant read and write access on the configuration store folder of the existing site to the network account used to run the ArcGIS Notebook Server service on the machine or machines you want to join to the site.
  2. Create a JavaScript Object Notation (JSON) file named connection.json.
  3. Add the following line to the file, replacing <path to the configuration store> with the configuration store location of the existing ArcGIS Server site:

    {"configPersistenceType": "FILESYSTEM", "connectionString": "<path to the configuration store>"}

    In this example, the path to the configuration store of the existing site is /net/mymachine/data/arcgisnotebookserver/usr/config-store:

    {"connectionString": "/net/mymachine/data/arcgisnotebookserver/usr/config-store", " configPersistenceType": "FILESYSTEM" }

  4. Save and close the connection.json file.
  5. Place the connection.json file on the machine that will join the site or on a shared directory that you can access from the machine that will join the site.
  6. Open a command prompt and run join-site.
  7. The syntax is as follows:
    joinSite -f <The file path to the configuration store JSON file>
    In this example, the configuration store JSON file (connection.json) is assumed to be located in the same directory as the join-site tool (\tools\JoinSiteUtility).
    joinsite.bat -f connection.json

The machine is joined to the ArcGIS Notebook Server site.