Deploy an ArcGIS Notebook Server site on one machine that uses windows containers - Esri/arcgis-powershell-dsc GitHub Wiki
Overview
ArcGIS Notebook Server is an ArcGIS Server role that is licensed and configured for the purpose of hosting notebooks. The server role uses containers to host and run ArcGIS Notebooks and provides a separate and secure environment for the notebooks without interfering with the host operating system.
ArcGIS Notebook Server on Windows Containers was introduced as a beta release at ArcGIS Enterprise 11.0 and was fully adopted by ArcGIS Enterprise beginning with version 11.1.
This workflow guides you through the first-time installation of ArcGIS Notebook Server using Windows Containers on a single machine.
When the PowerShell DSC for ArcGIS module is finished, your machine will have the following components installed and configured:
- One ArcGIS Notebook Server instance federated with an ArcGIS Enterprise portal that you specify
- One ArcGIS Web Adaptor registered with the ArcGIS Notebook Server
Below are the main steps for deploying ArcGIS Notebook Server on Windows Containers using the PowerShell DSC Module for ArcGIS, to help your organization manage ArcGIS Notebook Server using code:
-
Deploy ArcGIS Enterprise.
- ArcGIS Notebook Server works by federating with ArcGIS Enterprise. For this reason, it's required to have an ArcGIS Enterprise deployed at the desired version of ArcGIS Notebook Server.
-
Ensure all infrastructure that will participate in the PowerShell DSC deployment is provisioned (For example: virtual machines, load balancers, storage accounts, S3 buckets, etc.)
-
Ensure all hardware and operating system requirements are met for the nodes ArcGIS Notebook server will be deployed.
-
Install and configure the Mirantis Runtime on all of the nodes that will ArcGIS Notebook Server will be installed.
Note: If you plan to use the install.ps1 script from the Mirantis web site, after the script completes, it is required to reboot the machine that Mirantis was installed. See the Mirantis help documentation for additional information.
-
-
Ensure PowerShell DSC Module for ArcGIS system requirements are met.
-
Obtain all SSL certificates, if necessary.
-
Download installation, patches, license files, and docker container images from My Esri. If the machines that will be participating in the deployment have internet access, the JSON configuration parameters file can be configured to automatically download the ArcGIS Software setups and download ArcGIS Software patches using an ArcGIS Online credential.
-
Install the PowerShell DSC for ArcGIS Module on all nodes participating in the deployment (including the machine that will be used to run the
Invoke-ArcGISConfiguration
command-let) -
Create JSON configuration parameters file. To get started, visit the SampleConfigs page. There are resource here to help construct JSON Configuration Parameters files for ArcGIS Enterprise Base Deployment, ArcGIS Desktop/Pro, Additional ArcGIS Server Roles, etc.
-
Run
Invoke-ArcGISConfiguration
command-let toInstall
,InstallLicnese
,InstallLicenseConfigure
,Upgrade
, orUninstall
ArcGIS Software on the nodes defined in the JSON configuration file created above. Visit the PowerShell DSC for ArcGIS Module command line parameters page for a list of supported parameters.
Prerequisites
System Requirements
Important: Windows Server 2022 is the only operating system that is supported for ArcGIS Notebook Server and Windows containers.
-
Ensure the machine(s) that will be used for the deployment of ArcGIS Notebook Server meet the minimum system requirements for the desired version.
- Hardware requirements
- Firewall settings
- Operating system requirements
-
ArcGIS Notebook Server on Windows containers requires Mirantis Container Runtime to be installed. See Install Mirantis Container Runtime for ArcGIS Notebook Server (Windows containers) for more information.
-
ArcGIS Notebook Server may require the Hyper-V role to already be installed on Windows Server and Windows 10. Refer to the Microsoft documentation on how to install the Hyper-V role for Windows Server and for Windows 10.
PowerShell DSC Module For ArcGIS Pre-requisites
- Ensure the same version of the PowerShell DSC Module for ArcGIS is installed on all nodes participating in the deployment (including the orchestration node).
- Visit the Getting Started Page for options on how to install the PowerShell DSC Module for ArcGIS.
- If the PowerShell DSC Module for ArcGIS requires an upgrade to a newer version, visit the Upgrade PowerShell DSC Module for ArcGIS page for details.
Download ArcGIS Software and Additional Setup Files
Before you run the command to the module in PowerShell DSC, you’ll need to obtain the necessary files and resources for the installation, licensing, and configuration of ArcGIS Notebook Server using Windows Containers.
These may include, but may not be limited to:
- ArcGIS Notebook Server installation media
- ArcGIS Notebook Server patch files (if necessary)
- ArcGIS Notebook Server Sample Data installation media
- ArcGIS Notebook Server Windows Container (in
.tar.gz
file format) - ArcGIS Notebook Server license file
- ArcGIS Web Adaptor (for Java or IIS)
- SSL Certificate file(s)
Visit the Getting Started Page for options on how to obtain the ArcGIS software and patches for the deployment.
Deploy ArcGIS Notebook Server using Windows Containers
Edit the JSON configuration parameters file
-
Download the GISServer-Notebook.json or the GISServer-Notebook-MultiMachine.json sample configuration file from the GitHub repository, depending on the requirements of the ArcGIS Notebook Server site deployment.
-
Modify the desired JSON configuration file for the parameters of the intended deployment. Visit the variables reference page for available attributes and their definitions to help populate the JSON configuration files
-
Save this JSON configuration file on the node that will be used to run
Invoke-ArcGISConfiguration
command-let (orchestration node)
Run Invoke-ArcGISConfiguration Command-let
-
On the
orchestration node
, open a PowerShell window as an Administrator -
Change directories to a desired location for output log files. While the PowerShell DSC for ArcGIS Module is running, log files will be generated for each participating node in the deployment.
-
For example, change to a directory called deploy:
Set-Location -Path "C:\deploy"
-
-
Run the
Invoke-ArcGISConfiguration
command-let and provide the path to the configuration file as an input parameter.-Mode
and-Credential
are optional arguments. When-Mode
isn't specified it will default toInstallLicenseConfigure
. Visit the Additional PowerShell DSC for ArcGIS command line parameters page for a full list of command line parameters.Invoke-ArcGISConfiguration -ConfigurationParametersFile [Path to Configuration json File](/Esri/arcgis-powershell-dsc/wiki/Path-to-Configuration-json-File) -Mode [Install | InstallLicense | InstallLicenseConfigure | Uninstall | Upgrade] -Credential [Config RunAs - Optional]