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 multilicensed 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 multilicense 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.
Shared drives and replication for use with Docker Desktop
In multiple-machine ArcGIS Notebook Server sites, most server directories and the site configuration store are hosted on shared locations accessible to each machine. The exception is the workspace directory, which is mounted to each user's Docker containers. Docker does not support mounting shared drives to containers in Windows systems, so the workspace directory must remain local on each machine. Because users can launch containers and open notebooks on any machine in a multiple-machine site, you must synchronize the content in the workspace directory across machines.
Windows offers a native replication solution: Distributed File System (DFS) data replication, which synchronizes data across machines efficiently by only synchronizing any data packets that have changed, rather than entire items. When using DFS, the folder to be replicated is kept in an identical location on each machine.
DFS replication is not the only way to synchronize the contents of your ArcGIS Notebook Server site's workspace directory. But because it is a frequently used method native to Windows, the steps to set it up are detailed in Configure DFS replication for ArcGIS Notebook Server. You can discuss with your IT administrator whether DFS or another replication system is best for your organization.
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.
- Review the system requirements for ArcGIS Notebook Server to verify that each machine qualifies. On each machine, adjust the firewalls to open port 43 for communication from each machine in your ArcGIS Enterprise deployment.
The installed version of ArcGIS Notebook Server and its license file must be the same on each machine. Enter the same ArcGIS Notebook Server account during each installation. It's recommended that you use a domain or Active Directory account, but if you choose a local account, it needs to exist on each machine with an identical name and password combination. Keep in mind that the account you specify does not have to be part of the Administrators group.
- Ensure that you have already done the following during the installation process to this point:
- Install Docker Desktop on each machine. On each machine, download the Docker images provided by Esri and save them to a location the system can access.
- Install and authorize ArcGIS Notebook Server on each machine. You can also silently install the software.
- ArcGIS Notebook Server supports Linux containers with Docker Desktop on Windows. Download the container images that correspond to your installation from My Esri and run the command line post installer utility (located at <ArcGIS Notebook Server installation directory>\tools\postInstallUtility) to install the Docker container images for ArcGIS Notebook Server. Repeat this step on all ArcGIS Notebook Server machines. Follow the steps to configure ArcGIS Notebook Server after installation.
- Create and share two directories on your network. One should be for the configuration store and the other for some of the server directories. The workspace directory should remain on a local path when using Docker Desktop. Grant read and write permissions for these two directories to the ArcGIS Notebook Server account on each machine (make sure to do this on both the Sharing tab and the Security tab of Microsoft File Explorer).
Note:
Shared network directories that are hidden or use special characters (such as $) are not supported by ArcGIS Notebook Server.
- 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 (UNC) path.
- If the ArcGIS Notebook Server account does not exist on the machine (such as when you put the configuration store and server directories on a file server), you need to create the ArcGIS Notebook Server account using the same name and password that you used in all the other machines in your deployment.
- If you are using a group managed service account (gMSA) for the ArcGIS Notebook Server account, you must allow service accounts to have full control permissions on the Sharing and Security tabs. From the Permissions editor, click Add, and open the Object Types. dialog box. Check the box for Service Accounts.
- 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.
- 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.
- From the first additional machine, open the ArcGIS Notebook Server Configuration Wizard.
- Review and follow the instructions provided in the wizard, and click Continue.
- Click Join Existing Site.
- Enter the site URL and credentials for your ArcGIS Notebook Server site as created in step 4.
- Repeat substeps a through d for each additional machine you want to join to the site.
- As an alternative to using the configuration wizard, you can join the machine to the site using a command line utility, as follows:
- Ensure you're signed in to the machine with the ArcGIS Notebook Server account.
- Open a command prompt and run the utility, which is located at <ArcGIS Notebook Server install directory>\tools\JoinSiteUtility\joinsite.bat. The following are the command line parameters for the utility:
Parameter Description -u or --username
The username of the primary site administrator.
The username 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.bat -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.
At this point, you can set up a replication system for the workspace directory across your ArcGIS Notebook Server machines. The steps to set up one option for replication are detailed in Configure DFS replication for ArcGIS Notebook Server. You can set up a replication system at any point during the installation process.
Once all the 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.
- 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.
- Create a JavaScript Object Notation (JSON) file named connection.json.
- 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 \\\\myshare\\arcgisserver\\config-store
{" configPersistenceType": "FILESYSTEM", "connectionString": "\\\\myshare\\arcgisserver\\config-store"}
- Save and close the connection.json file.
- 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.
- Open a command prompt and run join-site.
The machine is joined to the ArcGIS Notebook Server site.