Guides

Teleport Deployment Guide

This guide provides instructions for deploying FileSpin Teleport on-premise. This guide is intended for IT/System Administrators who carry out software setup, configuration and maintenance.

Hardware & Software Pre-requisites

  • Hardware
    • x86_64 CPU, 32 Cores, 64GB RAM, 1TB Disk
    • NVIDIA GPU
  • Pre-installed Software
  • Familiarity with Linux shell, Docker, and Docker Compose
  • Shell access to the server as a user with sudo privileges
  • AWS ECR access credentials supplied by FileSpin Support
  • Internet connectivity to AWS ECR to download FileSpin Docker images

Deployment Media Structure

The FileSpin Teleport Deployment package contains the following files and directories:

.
├── teleport-addon-bgremove/
├── teleport-addon-fr/
├── teleport-addons/
├── teleport-core/
├── docker-compose.yml
├── DEPLOYMENT_GUIDE.md
├── teleport.sh
└── sample.env
└── EULA.TXT

Do not proceed if the package is missing any of the above files or directories. Contact FileSpin support for assistance.

Pre-deployment Steps

Before starting the deployment, following pre-requisites should be met.

📘

For questions on Docker, Ubuntu, AWS CLI and NVIDIA, please consult their respective documentation. FileSpin Support will not be able to provide support for pre-requisites.

Validate Docker Engine

Login into the Ubuntu server as a user with sudo access and open terminal. Change to the distribution folder.

docker run hello-world

You should see output starting with the following line:

Hello from Docker!

❗️

If above output is not seen, consult Docker documentation to install required version of Docker engine.

Validate AWS CLI

 aws --version

You should see output where the line starts with:

aws-cli/2

❗️

If above output is not seen, consult AWS CLI documentation to install required version of AWS CLI.

Validate NVIDIA GPU and Container Toolkit (required for GPU addons)

  • Confirm NVIDIA GPU and Drivers availability on the server.
   nvidia-smi

You should see the GPU details listed in the output.

❗️

If GPU is not seen, consult NVIDIA documentation to install required drivers.

Run a test container to verify that Docker can access the GPU.

docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

❗️

If GPU is not seen by the Docker Container, consult NVIDIA documentation to install NVIDIA Container Toolkit for Docker. Do not deploy Background Removal addon if no GPU is available.

Teleport Deployment - First Steps

Teleport deployment is managed by a helper script named teleport.sh. This script is used to login to AWS ECR, start, stop, update and erase Teleport services.

📘

Deployment requires internet and AWS connectivity. You will need to use AWS ECR access credentials are supplied by FileSpin Support.

  • Make teleport.sh executable
chmod +x teleport.sh
  • Login to AWS ECR Execute the following command to login to AWS ECR and provide the credentials when asked.
./teleport.sh login

You should see output similar to the following:

Login Succeeded
  • Setup .env
    Copy example.env to .env in the root directory of the installation package.
cp example.env .env
  • Update .env as instructed in the FileSpin On-Premise Software Delivery Note

Deployment

Before proceeding

  • ensure .env exists in the root directory of the installation package
  • verify Pre-deployment Steps section above is completed successfully

teleport.sh

FileSpin Teleport deployment is done using a helper script named teleport.sh. Run below command to see the deployment options.

./teleport.sh help

You should see the Usage instructions as below:

    Usage: ./teleport.sh [command] [service]
   ./teleport.sh login                                 # Log in to AWS ECR
   ./teleport.sh start   [core|app|fr|rbg|addons|all]  # Start Teleport services
   ./teleport.sh update  [core|app|fr|rbg|addons|all]  # Update Teleport services
   ./teleport.sh restart [core|app|fr|rbg|addons|all]  # Restart Teleport services
   ./teleport.sh stop    [core|app|fr|rbg|addons|all]  # Stop Teleport services
   ./teleport.sh erase   [core]                        # Erase Teleport Core services (Irreversible)
   ./teleport.sh help                                  # Display this help message

The options are as follows:-

  • all - Teleport Core Services, Teleport Main application and all the available Teleport addons
  • core - core services needed to run Teleport application. This is not the Teleport main application
  • app - Main Teleport application that watches hot-folders and uploads to cloud
  • rbg - Remove Background Addon
  • addons - Multiple Teleport addons. Please consult your enterprise documentation for details
  • fr1 - Face Recognition Addon (requires legal compliance. Please see EULA.TXT)

Deploy Teleport

You can run below to deploy all available teleport services that includes Core Teleport and all the addons. Note that Pre-deployment Steps and Teleport Deployment - First Steps must be met for this to be successful.

   ./teleport.sh start all

Troubleshooting

Please explore these steps to troubleshoot issues. If the issue persists, please contact FileSpin Support for assistance.

🚧

For questions on Docker, Ubuntu, AWS CLI and NVIDIA, please consult their respective documentation. FileSpin Support will not be able to provide support for pre-requisites.

  • Verify that all pre-requisites are met. Double check this to be certain.
  • Verify that .env exists in the root directory of the installation package.
  • Restart the services using ./teleport.sh restart [service]
  • Pull the docker images again and restart the services as below.
  ./teleport login
  ./teleport update all
  ./teleport restart all
  • Restart the Ubuntu server and then restart the services using ./teleport.sh restart all
  • If all options fail, you may try erasing volumes and restarting the services.

🚧

This resets Teleport to the original deployment state. The files in hot-folders will not be removed but ALL DATA STORED IN TELEPORT WILL BE ERASED.

   ./teleport.sh stop all
   ./teleport.sh erase core
   ./teleport.sh start all