- Docker host with CPU/RAM totalling up to the minimum requirement.
e.g. Azure, EC2, VMWare - Docker & Docker-Compose installed on the host.
- Sudo access granted to user mtedge.
- Recommended size of the local storage for the image & Language Pair models.
- Edge Controller host is deployed as a container in docker and Edge UI & API are published as a service in the docker overlay network.
- Job Engines, Translation Engines & Training Engines are deployed as containers and could be manually configured to scale up/down based on the predefine number of containers defined in the docker-compose.yml file.
- Language Pairs and the Edge configuration is saved in docker volumes.
- All containers use the same docker base image.
- Prerequisites
- Create mtedge user & group with the id 10001.
$ groupadd mtedge -g 10001
$ useradd mtedge -u 10001 -g 10001 -m -s /sbin/nologin
- Grant sudo access to user mtedge.
eg. on a Ubuntu EC2 host, edit /etc/sudoers.d/90-cloud-init-users file and add a new line as below.
$ vi /etc/sudoers.d/90-cloud-init-users
mtedge ALL=(ALL) NOPASSWD:ALL
- Install unzip, docker & docker-compose on the host.
eg. on a Ubuntu EC2 host, run.$ sudo apt update
$ sudo apt install -y docker.io docker-compose unzip
$ sudo usermod -a -G docker mtedge
- Create mtedge user & group with the id 10001.
- Installation
- Login to docker repo and pull LW Edge docker image.
$ docker login docker.edge.languageweaver.com
$ docker pull docker.edge.languageweaver.com/sdl/mtedge:8.6.4
- Copy docker-compose.yml, sdl-ets.lic & .env files provided by RWS to current users home folder.
- Download & install required language pairs. (can be uninstalled after a successful docker deployment).
$ sftp user@files.edge.languageweaver.com
$ get Language_Weaver_Edge_XxxXxx_Generic_SRV_TNM_X_X_x_1_installer.zip
$ unzip Language_Weaver_Edge_XxxXxx_Generic_SRV_TNM_X_X_x_1_installer.zip
$ sudo ./Language_Weaver_Edge_XxxXxx_Generic_SRV_TNM_X_X_x_1_installer/setup-linux-x64.run --mode unattended
- Start containers by running docker-compose up.
$ docker-compose up -d
- Copy license file sdl-ets.lic to mtedge-controller-pvc.
$
docker cp sdl-ets.lic mtedge-controller:/mnt/controller/conf/sdl-ets.lic
- Copy language pair models to mtedge-lp-pvc.
$ sudo docker cp /opt/sdl/ets/lps/. mtedge-controller:/opt/sdl/ets/lps
- Wait until all language pair models are copied & restart translation engines from UI or run a docker-compose down & up
- Login to docker repo and pull LW Edge docker image.
- Cleanup
- Delete language pair models, installation zip files & folders from the host.
$ sudo rm -rf /opt/sdl
$ sudo rm -rf /etc/opt/sdl
$ sudo rm -rf Language_Weaver_Edge_*
- Delete language pair models, installation zip files & folders from the host.
- Bootstrap Language Weaver Edge admin user.
- Install new Language Pairs.
- Increase/Decrease the size of the pool of Job Engines, Training Engines or add/modify the pool of Translation Engines for a given Language Pair.
- Auto scale the number of Translation Engines, depending on the system load.
- Controller pod.
- Job Engine pods - all pods share the same environment variables.
- Translation Engine pods - each Language Pair has its own environment variables.
- Training Engine pods - all pods share the same environment variables.