Lingoport Suite Installation

From Lingoport Wiki
Jump to: navigation, search

Supported Versions

Lingoport supports the current version, Latvia (Command Center 1.1.24).


Version Command Center Command Center
Globalyzer
Command Center
Localyzer
LocalyzerQA InContext Server LingoBot
Latvia
2024-01-17
1.1.35 6.8.0 10.0.14 1.3 1.2.0 2.2
Latvia
2023-12-14
1.1.32 6.8.0 10.0.10 1.3 1.2.0 2.2

Note:

Previous Versions

Version Command Center Command Center
Globalyzer
Command Center
Localyzer
LocalyzerQA InContext Server LingoBot
Latvia
2023-11-15
1.1.24 6.8.0 10.0.07 1.3 1.2.0 2.2
Latvia
2023-10-25
1.1.11 6.8.0 10.0.05 1.3 1.2.0 2.2

Command Center Installation

Please refer to Command Center Installation

[Deprecated] Suite Versions

Note: LocalyzerQA works with Localyzer and Localyzer Express.

Version Suite Globalyzer Localyzer InContext
for QA
InContext Server
for Translation
Dashboard LingoBot LingoBot CLI
Japan
2022-07-15
Installer Japan.004
Updater Japan.005
6.7.0-Server
6.7.0-Client
9.0 1.0 1.2.0 9.4.1 2.2 1.1.0
Ireland
2021-12-28
Installer Ireland.008
Updater Ireland.009
6.6.0-Server
6.6.0-Client
8.0 1.0 1.0 7.8.3 2.2 1.1.0
Honduras
2021-07-23
Installer Honduras.000
Updater Honduras.000
6.5.0-Server
6.5.0-Client
7.1 1.0 1.0 7.8.2 2.2 1.1.0
Greece
2021-03-23
Installer Greece.000
Updater Greece.000
6.4.0-Server
6.4.0-Client
7.0 1.0 1.0 7.8.1 2.2 1.1.0
Fiji
2020-07-30
Installer Fiji.044
Updater Fiji.049
6.4.0-Server
6.4.0-Client
6.0 1.0 1.0 7.8.1 2.2 1.1.0
Egypt
2019-12-06
Installer 1.31.22
Updater 1.32.06
6.3.0-Server
6.3.1-Client
5.1 1.0 1.0 7.8.1 2.2 1.1.0
Denmark
2019-05-10
Installer 1.27.24
Updater 1.26.11
6.2.0-Server
6.2.1-Client
5.0 1.0 1.0 5.6.7-Server
5.6.8-Client
2.2 1.1.0
Cyprus
2018-12-18
1.23.24 6.2 4.1 1.0 N/A 5.6.7 2.2 1.1.0
Belize
2018-08-08
1.21.14 6.1.1 4.0 1.0 N/A 5.6.6 2.1 1.0.1

Requisite software products and versions

Version JDK MySQL Linux Jenkins Tomcat*
Japan
2022-07-15
11.0 5.7 CentOS 7 & RHEL 7 2.310+ 8.5.x
Ireland
2021-12-28
1.8** 5.7 CentOS 7 & RHEL 7 2.310+ 8.5.x
Honduras
2021-07-30
1.8** 5.7 CentOS 7 & RHEL 7 2.277+ 8.5.x

Historical Versions

Date Suite Globalyzer Localyzer InContext QA Dashboard LingoBot LingoBot CLI JDK MySQL Linux Jenkins Tomcat*
2018-05-17 1.17.25 6.1 3.4.1 N/A 5.6.5 2.0 1.0.1 1.8** 5.6 CentOS 7 2.73 8.5.x
2017-12-12 1.15.4 6.0 3.4 N/A 5.6.4 1.2 N/A 1.8** 5.6 CentOS 7 2.73 7.x
2017-09-22 1.14 6.0 3.3 N/A 5.6.3 1.0 N/A 1.8 5.6 CentOS 7 2.73 7.x
2017-05-01 1.8 5.3 3.2 N/A 5.6.2 N/A N/A 1.8 5.6 CentOS 7 2.19 7.x
2017-02-01 1.8 5.3 3.1 N/A 5.6.1 N/A N/A 1.8 5.6 CentOS 7 2.19 7.x
2016-12-15 1.7 5.2 3.1 N/A 5.6.1 N/A N/A 1.8 5.6 CentOS 7 2.19 7.x

Updated August 2022


If your Continuous Globalization System is installed using the Stack Installer, these products and applications will be installed via that method. These are minimum versions and anything higher is acceptable.

Quick Link to the Stack Updater upgrade

In case you are knowledgeable about the system and its installation and need to update it using the Stack Updater, following this link: #Updating_with_the_Stack_Updater


*Tomcat is required only for the Globalyzer Server. If a customer chooses to use Lingoport's hosted Globalyzer Server for user administration and rule set creation, the Tomcat requirement is not applicable.

**At this time only Java 1.8 is supported for these versions. Java 11 is supported in the Japan release.

Systems Configuration

The components of the Lingoport Suite are covered in the Lingoport Introduction section. That section should be reviewed before installation.

The Lingoport Products can be configured in a variety of ways. The following describes our recommended configuration for a Continuous Globalization System, where both internationalization and localization progress is tracked, managed and displayed in an automated and reliable process.


Important Note : The Dashboard System and the Continuous Globalization system can be the same machine. This is the most frequent deployment scenario. It is recommended that this configuration be installed with the Stack Installer. The same machine can also host the Globalyzer Server.


To see more deployment scenarios, please refer to Deployment Scenarios . Make sure to choose a deployment scenarios with the IT department before starting the installation.

On Site: IT Participation

The customer IT group is very important to the successful deployment of the Lingoport applications when installing the suite on site. In particular, the IT group that sets up the Linux system must understand the usage model for the system. Lingoport requires a meeting with the parties responsible for setting up and maintaining the host system before installation can properly begin. The hope is that once the system is setup for installation, minimal IT interaction is necessary.

Stack Installer and Stack Updater

The Lingoport Suite server components can be installed using the Stack Installer (or updated using the Stack Updater) which automates the installation and configuration of the central system.

Preparations must be made with the IT team to ensure that all prerequisites are met before installation. For new installations, this is the recommended method to use to verify that all the various actors work together well.

Hardware & Software Requirements

The following sections describe the hardware and software requirements for each piece of the Lingoport Suite applications.

Globalyzer Server

The Globalyzer Server is where all your Globalyzer account information and rule sets are stored. Lingoport's hosted server is at www.globalyzer.com

The following table lists the system specifications for installing the Globalyzer Server on a dedicated Linux machine. The disk size assumes that the database is also installed on the machine; it could be less if the database is on a separate server. If the server machine is running more than the Globalyzer Server, we recommend increasing CPU and memory.

Hardware requirements

Element Minimum Recommended
CPU 2 4
Memory 8 GB 16 GB
Disk 160 GB 500 GB

Software requirements

The current versions of these software products can be found at: Current versions of Lingoport products and supporting applications

Software Recommended
Operating System Linux, CentOS (7) or RedHat (7)
Java Standard Edition Java JDK
MySQL Database MySQL
Web Server Tomcat

Lingoport Continuous G11n Server

Continuous Globalization System Hardware Requirements

Many of the Lingoport Suite components are installed on the Continuous Globalization System. This includes Localyzer, Dashboard Server and Dashboard Client, Jenkins, MySQL, and Globalyzer Client.

Element Minimum Recommended
CPU 2 4
Memory 16 GB 16 GB
Disk 160 GB 500 GB

The Globalyzer Server may be hosted by Lingoport, reside on another server, or be installed on the same system. Other Linux and Windows machines may have Globalyzer clients installed. The current versions of these software products can be found at: Current versions of Lingoport products and supporting applications.

Access and Ports

Jenkins need to be accessible by Lingoport and customer personnel to configure jobs, check the console if any problem arise, run jobs if necessary. The Dashboard needs to be accessible by many actors, including customer development teams, management, and QA, Lingoport, Translation Vendors.

Please see External Access and Ports for all the details.

Installation and Upgrade Order

Acquiring the Stack Installer / Stack Updater from Lingoport

Please contact Lingoport for credentials to retrieve the Stack Installer and Stack Updater.

There are 2 download options: Retrieval via SFTP, and retrieval from an AWS S3 bucket.

SFTP

Lingoport will provide your corporation with an SFTP account upon request.

Retrieve the latest content from our SFTP server using the following config:

Server URL: lingoport.net
SFTP ports: 22 (default), 2022 (alternate)
Username: To be provided by Lingoport
Password: To be provided by Lingoport (or you may also provide Lingoport with a public key to authorize).

Locations:

install/stackinstaller
install/stackupdater

Use an SFTP client, such as WinSCP or from the system where the installation will take place, a command like:

  sftp user@lingoport.net:install/stackinstaller/stack-installer-<release>.<number>.zip
  sftp user@lingoport.net:install/stackupdater/stack-updater-<release>.<number>.zip

AWS S3

You will need to install the AWS S3 client, and use credentials provided by Lingoport.


Install AWS CLI:

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

Configure AWS CLI:

mkdir ~/.aws

cat <<EOF >> ~/.aws/config
[default]
region=us-east-1
output=json
EOF
cat <<EOF >> ~/.aws/credentials
[default]
aws_access_key_id=<Access Key ID provided by Lingoport>
aws_secret_access_key=<Access Key Secret provided by Lingoport>
notes="Minimal access: stack installer / stack updater s3 bucket"
EOF

Locations:

s3://lingoport-suite-setup/stack-installer/
s3://lingoport-suite-setup/stack-updater/

Usage

Example commands:

aws s3 ls s3://lingoport-suite-setup/stack-installer/
aws s3 cp s3://lingoport-suite-setup/stack-updater/stack-updater-Honduras.004.zip .


Installing with the Stack Installer

For a new system, Lingoport recommends installing using the Stack Installer which will configure the pieces of the Continuous Globalization System and Dashboard System to work together seamlessly.

Here are the installation steps.

  1. Get the Stack Installer zip file and put it on the new server in the home directory of a user with root (sudo) access.
  2. Login to the console on the system as the user with root access.
  3. Unzip the Stack Installer zip file.
    A new machine might not have the unzip command installed. To get the unzip command:
    > sudo yum install unzip
    > unzip stack-installer.zip
    > cd stack-installer
  4. Edit the configuration files to automate the process.
    Edit login-info.conf. Here is an example:
    # Globalyzer Login details
    GLOBALYZER_USER="name@acmeco.com"
    GLOBALYZER_PASS="abcdef"
    GLOBALYZER_SERVER_URL="https://www.globalyzer.com/gzserver/"
    
    # Server Address or IP - the server this is being installed on
    SERVER_URL_OR_IP="https://some.domain.com" 
    
    # Lingoport/Localyzer MySQL user - probably doesn't need to be changed
    LINGOPORT_MYSQL_USER="lingoport"
    LINGOPORT_MYSQL_PASS="lingopwd"
    
    # Lingoport Dashboard MySQL user - probably doesn't need to be changed
    DASHBOARD_SONAR_USER="lingodashuser"
    DASHBOARD_SONAR_PASS="lingodashpass"
    
    Edit lrm-license.conf. This information should be supplied by Lingoport prior to installation. If you bought a license that includes InContext QA, enter the expiration date. If not, enter the information as below. If the LRM_INCONTEXT_QA_EXPIRATION_DATE is removed, an error will occur.
    COMPANY_NAME='ACME'                # e.g. DemoCo
    LRM_MAX_PROJECTS='1000'            # e.g. 5
    LRM_LICENSE_EXPIRATION_DATE='2019-01-15'  # e.g. 2018-01-01
    LRM_INCONTEXT_QA_EXPIRATION_DATE=
    LRM_LICENSE_KEY='123456789'
    
  5. Run ./full-install.sh. You may be prompted for some passwords.
  6. At this point, Jenkins and the Dashboard should be up and running. Go to Jenkins in a browser at https://some.domain.com/jenkins (some.domain.com is an example of the IP or URL supplied in login-info.conf). All the scripts should be installed and the tabs created.
  7. Go to Dashboard in a browser https://some.domain.com/.
    Login to the Dashboard with the Administrator user (admin). Initially the password is also 'admin'.
  8. To change your password after logging in, look for 'Administrator' on the top right. Click it then 'My Account'. There will be a 'Security' tab in the mid left of the page. This will open a page that allows you to change your password.
  9. To add additional Dashboard users, click on 'Administration' on the top middle of the page (this is different than 'Administrator', which is on the right). Look for a 'Security' tab with a dropdown, then open the 'Users' page.
  10. DashboardAdministrationUsers.png

After installation

Once the installation is complete, there are a few more steps to make sure that everything is working correctly.

Verifying the installation

At this point, you can bring up Jenkins and the Dashboard in the browser and verify that they look correct.

Use the SERVER_URL_OR_IP value from the login-info.conf file. Browse to Jenkins: https://some.domain.com/jenkins

Jenkins after install.jpg

Jenkins has been set up with a number of jobs which will automate many of the Lingoport Suite tasks. A job called <group>.LicenseExpiration should have been created at install. If your group name was set as Acme, this would be Acme.LicenseExpiration. Select the job and then Build Now to run the job. When the job is complete, select the number under Build History and Console Output. This job will give information about your Lingoport Suite Installation, including all the licensing.

Browse to the Lingoport Dashboard: https://some.domain.com/. Login at the top right as user admin and password admin. Or the password that was changed. Simply verify that you can log in. There should be no projects at this time.

Set up the Administrator user for Jenkins

Go to your Jenkins URL: https://some.domain.com/jenkins. You should be able to login without a username.

  • At the left side, select Manage Jenkins
  • Select Configure Global Security

ConfigureGlobalSecurity.jpg

Under Security Realm, select Jenkins' own user database. Under Authorization, select Matrix-based security. Anonymous users will have Administer checked. Leave this as it is until you create an administration user. At the bottom of the page, select Save. At this point, Jenkins will ask you to create an administrator id. You can use admin for the username, select your own password and Administrator for the name.

Log in to Jenkins as the administrator and select Manage Jenkins and Configure Global Security again. The Administrator user should have an entry in Matrix-based security. Unselect Administer credentials from Anonymous Users. Under Agent --> Master Security, make sure that the box Enable Agent → Master Access Control is checked. Save.

Set up a CLI user for Jenkins

Jenkins CLI is used primarily by the Dashboard and Lingobot, but it should be set up at installation time.

Follow the instructions at Set Up Jenkins CLI User

After completing the setup, the $JENKINS_HOME/lingoport/bin/jenkins_cli_config.sh should have the following values populated:

  export JENKINS_USER=jenkins_cli
  export JENKINS_TOKEN=<a token value>
  export JENKINS_URL=<JENKINS_URL>

JENKINS_URL depends on your system. For instance, it could be in the form http://localhost:8080/jenkins, https://lingoport.company.com/jenkins etc.

Set up the Lingoport Dashboard to work with Jenkins

The Lingoport Dashboard needs to be configured to work with Jenkins.

Log in as the administrator. At the top of the window, select Administrator, then select the Security tab and Users.

DashboardAddUser.jpg

  • Select Create User
  • The Login will be your group name (Acme). Use this for the Name as well.
  • For the password, use <group>:123. For group name Acme, this is Acme:123.
  • All other entries are optional
  • Create


Installation is complete! To work with projects refer to On-Boarding New Projects

Scaling the system

The Lingoport Jenkins jobs can be distributed onto other nodes or agents for processes. This improves performance on the main (master) Jenkins system. The Node Installer sets up the master and agent systems in preparation for the Jenkins configuration. The Node Installer does not have to be installed at the time of Stack Installer. It can be added later as systems and jobs expand.

Installing the Node Installer

Updating with the Stack Updater

If the Lingoport Suite is already installed, use the Stack Updater to get to the most current versions.

Note: The Stack Updater requires that the suite has been installed through the Stack Installer previously. If this is not the case, you may be able to run the Stack Installer's 'stack-configurer.sh' to perform most pre-installation steps and then attempt the update. Please note that you may still run into issues if doing so.

Supported operating systems are CentOS 7 and RHEL 7. To see your operating system, try cat /etc/os-release (most common), cat /etc/centos-release, or lsb_release -dr

Disk space requirements are at least 160GB total with at least 60GB free at time of upgrade. If the disk is split into multiple partitions, then this disk requirement applies specifically to the /var partition(The space is mostly used by /var/lib/jenkins and /var/lib/mysql). However, /tmp should also contain at least 10GB as it's used as a temporary holding area by mysql. Finally, the location where the stack updater is placed on the system must have enough space to take a backup of the existing databases, with a minimum requirement of 3G for the updater itself and the database size (which will vary from less than 1G to up to 20GB). It's fine to place the stack updater under '/var' if that's required to meet the space requirements.

To validate, see disk space with the command sudo df -h. Example:

> sudo df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        7.6G     0  7.6G   0% /dev
tmpfs           7.7G     0  7.7G   0% /dev/shm
tmpfs           7.7G   57M  7.6G   1% /run
tmpfs           7.7G     0  7.7G   0% /sys/fs/cgroup
/dev/nvme0n1p1  162G  7.9G  155G   5% /
tmpfs           1.6G     0  1.6G   0% /run/user/1000

See database size with the command sudo du -h --summarize /var/lib/mysql. Example:

> sudo du -h --summarize /var/lib/mysql
3G	/var/lib/mysql

In the above example, there is no '/var' partition, so all content will be placed on the '/' partition (Filesystem: /dev/nvme0n1p1). '/' has 162GB with 155G free which is more than the 60GB required. The database is also 3GB in size, which leaves plenty of room. As long as the stack updater was not placed under /dev or /run there would be no issue (Note: please avoid placing the stack updater under these locations even if they are large enough - as they are meant to contain important system and configuration files).


The stack updater requires an recent version of ansible for compatibility. If updating a system for the first time, then ansible is most likely not installed. You can install it with the './install-ansible-and-collections.sh' script bundled inside the stack updater.

If you have updated before, or if you system comes preconfigured with ansible, then ansible may already be installed, but might be at an old version that is out of date. The ansible version must be at least 2.8. To check the version, run ansible --version.

If ansible is already installed but is out of date, you'll need to update it. Otherwise skip this step and continue to the installation steps. To update to a recent version, first ensure that you are getting ansible from the 'epel' repository via: sudo yum info ansible. (Look for 'Repo' and 'From repo' in the output). If the 'From repo' or 'Repo' is epel, just run 'sudo yum update ansible', then confirm the version again ansible --version. If you are not getting ansible from epel, you can setup epel via the ./install-ansible-and-collections.sh script. You must then re-install with epel: sudo yum remove ansible, then sudo yum install --disablerepo=<repo previously listed> --enablerepo=epel ansible. If installing directly, you must also manually install the required collections via: ansible-galaxy collection install -r requirements.yml (don't use sudo unless you will be running the stack installer as root).

Here are the installation steps.

  1. Get the Stack Updater zip file and put it on the server in the home directory of a user with root (sudo) access.
  2. Login to the console on the system as the user with root access.
  3. Unzip the Stack Updater zip file.
    > unzip stack_updater_x.y.z.zip
    > cd stack-updater
  4. You will need to install ansible before you can run the installer. You can do so by running install-ansible-and-collections.sh. This script will retrieve ansible from the 'epel-release' software repository.
    > ./install-ansible-and-collections.sh
  5. > ansible --version (Should be '2.8' or higher, otherwise see paragraphs above for upgrade steps).
  6. You will also need to configure some variables. See the files <HOME>/stack-updater/vars/logins.yml and <HOME>/stack-updater/vars/mysql.yml
    > vi <HOME>/stack-updater/vars/logins.yml
    > vi <HOME>/stack-updater/vars/mysql.yml
    Tip With mysql -u <username> --password='<password>' , verify the username/password combinations for the logins.yml and mysql.yml.
  7. Run ansible-playbook with the file './stack-updater.yml'. You must have sudo privileges to run the installer.
    ansible-playbook ./stack-updater.yml
    Note: Alternately, if you are the root user but sudo is not enabled for the system, you may try:
    ansible-playbook ./stack-updater.yml --become-method=su
    Depending on your system, you may need to enter the MySQL root password interactively as part of the upgrade.

Note: By default, the Lingoport Stack Updater will automatically configure java to the current supported version. If using a custom java version, you may disable this by editing <HOME>/stack-updater/vars/settings.yml. Change the variable `autoupdate_java` to 'no'.

Post Installation

  • Make sure Jenkins and Dashboard are up and running with the new versions; Versions are at the bottom of most Web pages
  • Run an Automate job from Jenkins and check that the Dashboard project is properly updated
  • Update the Jenkins plugins if necessary
  • Use the Dashboard extensions/plugins if any are necessary, such as the LDAP one

Note: Dashboard update from version 7.* to version 9.* need to do database migration, please check this page Dashboard database migration for details.

Manual installation and upgrade

Manual installation is not recommended. If there is a need to install manually, please contact Lingoport (support@lingoport.com) and we can work with you for the best possible outcome.

Lingoport Customer Support

If you experience difficulties during the installation of the Lingoport Suite, please contact support@lingoport.com.

Work in Progress

Docker Installation