Creating Sandbox
The configuration options for creating a sandbox can be accessed using the plus icon from the Sandbox listing page.
User has options to create either non-container-based sandbox or container-based sandbox. The basic configuration required for creating and launching both types of sandbox are explained below.
Creating Non-Container-Based Sandbox
The configuration details for creation of a non-container-based sandbox are described in the table given below:
Configuration parameters for the New Sandbox tab:
Field | Description |
---|---|
Name | Unique name of the sandbox to be created. |
Container-Based Deployment | This option will only be visible if the containerEnabled property is enabled in the configuration settings. Option to choose between non-container-based or container-based environment creation. Check the box to opt for container-based sandbox configuration options. |
Sandbox IDE | The IDEs that are supported by Gathr for non-container-based sandbox are: - JupyterLab - RStudio - VS Code Any of the above can be selected from the drop-down list as a preferred development environment. As per the IDE selected, the option to select kernel will get displayed. |
Kernel | Below are the options that can be selected as kernels for JupyterLab: - PySpark - Scala - Python Upon selecting Python as kernel, preferred version should be selected out of the options given below: - Python 2.7 - Python 3.7 For Python kernel, an additional tab will appear for selecting Sandbox Python Packages as described later in the table. |
If RStudio is the preferred IDE then the kernel that can be selected is R and an additional field i.e., Version is also displayed to select the R version for the environment. |
Configuration parameters for setting the email alerts:
If you prefer to receive email notifications about the long-running or idle Sandbox the below configuration can be utilized.
Field | Description |
---|---|
Enable Email Alerts | Option to get email notifications in case if the Sandbox remains idle or long-running for a defined time. This field can only be set during the Sandbox creation. |
Email ID | An email ID, comma separated multiple email IDs or a distribution list email address should be provided to get sandbox alerts via email. |
Long Run Alert | An email alert will be sent if the Sandbox is running for more than the selected number of days. |
Idle Time Alert | An email alert will be sent if the Sandbox is idle for more than the selected number of hours. |
Configuration parameters for the Sandbox Python Packages tab:
Option to select the desired package manager for adding python package(s).
User can select multiple options from nfs, conda and pip to provide python packages.
The python packages can be provided in two ways:
The user can either provide the packages by mentioning the package names as newline separated entires in the Packages parameter.
The user can also provide packages with the help of a text file using the UPLOAD option.
The template for the text file can be downloaded from the DOWNLOAD option for conda and pip.
The Package Management options are further described as follows:
Field | Description |
---|---|
nfs | The user needs to provide complete location for the desired python package(s) that are available in the NFS directory. |
conda | This option is disabled in the current version. The user can provide package names for the desired python package(s) that are available in the global anaconda repository. |
pip | The user needs to provide package names for the desired python package(s) that are available in the Global Python repository. |
Once all the configuration values are specified, user can Save and Launch the sandbox.
Creating Container-Based Sandbox
The configuration parameters for a container-based sandbox span across three tabs.
Each tab is described below as it falls in the configuration sequence.
New Sandbox
Field | Description |
---|---|
Name | Unique name of the sandbox to be created. |
Container-Based Deployment | This option will only be visible if the containerEnabled property is enabled in the configuration settings. Option to choose between non-container-based or container-based environment creation. Check the box to opt for container-based sandbox configuration options. |
Sandbox Environment | Container image (the set of tools, packages, libraries, and other dependencies) registered on Gathr that is to be used for sandbox deployment must be selected. Drop-down options will consist of all the container images registered on Gathr (registered on superuser as well as workspace level), depending on the Container Cluster that is selected. |
Sandbox IDE | IDE for this sandbox will be default as it was specified during the Container Image registration. |
Container Cluster | Cluster registered on Gathr that is to be used for sandbox deployment must be selected. Drop-down options will consist of all the clusters registered on Gathr. |
Hardware Tier | The hardware tier (i.e., Small, Medium, Large or Custom) has to be specified. Based on the user input, the number of cores and memory will be allocated to the sandbox. The possible values for hardware tier option are as follows: Small: 4 cores and 4 GB memory Medium: 8 cores and 16 GB memory Large: 16 cores and 64 GB memory Custom: If user selects custom option, the hardware tier values can be specified in the custom fields for memory and cores. Minimum 1 GB memory and 1 core is supported for custom configuration. |
Sandbox Packages
Option to select the desired package manager for adding python package(s).
User can select multiple options from nfs, conda, pip and artifactory to provide python packages.
The python packages can be provided in two ways:
The user can either provide the packages by mentioning the package names as newline separated entires in the Packages parameter.
The user can also provide packages with the help of a text file using the UPLOAD option.
The template for the text file can be downloaded from the DOWNLOAD option for conda, pip and artifactory.
The Package Management options are further described as follows:
Field | Description |
---|---|
nfs | The user needs to provide complete location for the desired python package(s) that are available in the NFS directory. Also, the user needs to provide valid YAML configuration for PersistentVolumeClaim(PVC) and/or PersistentVolume (PV) to mount NFS packages within container. |
conda | The user needs to provide package names for the desired python package(s) that are available in the global anaconda repository. |
pip | The user needs to provide package names for the desired python package(s) that are available in the Global Python repository. |
artifactory | The user needs to provide package names for the desired python package(s) that are available in artifactory repository. The artifactory configuration can be provided at multiple levels in Gathr application. Gathr follows the precedence given below while uploading the python packages when artifactory option is used: - The first priority is given to an artifcatory configuration that is set in Manage Users option within a Workspace in a non-superuser login. - The second priority is given to an artifcatory configuration that is set within a Workspace in a superuser login. - The least priority is given to an artifcatory configuration that is set using Configuration>Others>Artifactory option in a superuser login. |
Sandbox Configuration
The custom expressions that were used in the YAML files (uploaded while registering container image) will get displayed here as required parameters.
Once all the configuration values are specified, user can Save and Launch the sandbox.
The launch status for a container-based sandbox will be displayed as shown in the image given below:
Once the sandbox is launched successfully, the user will be redirected to the Jupyter Lab or any other default IDE.
If you have any feedback on Gathr documentation, please email us!