Command Center Installation

From Lingoport Wiki
Revision as of 15:46, 27 January 2023 by Olibouban (talk | contribs) (Hardware)
Jump to: navigation, search

Pre-Requisites

Before installing or updating Command Center, please verify this section is complete.

Intro

Diagram

Docker Deployment Diagram.png

Hardware

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


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.

Docker Pre-Requisite

Docker is a platform that allows you to easily develop, test, and deploy applications as containers. This section will walk you through the process of installing Docker on a Linux system.

On the system (most likely a VM) dedicated to Command Center, make sure you have the latest version of docker up and running. The following steps may help.

A user with sudo privileges is required to run most commands.

Uninstall old docker versions

This is an optional step in case your docker version is out of date:

   sudo yum remove docker \
                 docker-client \
                 docker-client-latest \
                 docker-common \
                 docker-latest \
                 docker-latest-logrotate \
                 docker-logrotate \
                 docker-engine

Install docker using the repository

   sudo yum install -y yum-utils
   sudo yum-config-manager \
     --add-repo \
     https://download.docker.com/linux/centos/docker-ce.repo

   sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

Start Docker.

Start docker using the following command:

   $ sudo systemctl start docker

Enable the Docker service to start automatically on system boot by running the following command:

   $ sudo systemctl enable docker

Verify that Docker Engine is installed correctly

Run the hello-world image.

   $ sudo docker run hello-world

This command will run a test container and display a message indicating that the installation is working properly.

Firewall

Credentials

(internal, LDAP, SSO)

Installation

Create the database conf file

The following is provided for a CentOS system:

Uses the centos user as default user for docker

  • /home/centos/mysql/conf.d/mysql.cnf
   [client]
   default-character-set = utf8mb4
   [mysql]
   default-character-set = utf8mb4

Install Command Center

New Installation

[TEMPORARY-TO BE REWRITTEN ]

Install git

  sudo yum install git

You can find files at https://github.com/Lingoport/Command-Center/tree/liliDev/docker

   git clone  https://github.com/Lingoport/Command-Center/
   git checkout liliDev
   cd Command-Center/docker

Copy install/update/uninstall and install.conf file to your home directory (/home/centos or /home/ec2-user)

   install.conf
   InstallCommmandCenter.sh
   UninstallCommmandCenter.sh
   UpdateCommmandCenter.sh

Set up install.conf

You need to provide your serverURL, your Docker Hub username and token, and MYSQL root password you want to use. Also make sure the version is the one that is wanted.

 #!/bin/bash
 #
 # Provide the Docker network name you want to create
 #
 database_network=mysqlnetscommand
 #
 # Provide the MYSQL root password you want to create for the MySQL database container
 #
 database_root_password=mySQL!c0mma9d
 #
 # Provide your Docker Hub username
 #
 docker_username=xxxlingoport
 #
 # Provide your Docker Hub account token
 #
 docker_account_token=dckr_xxx_bMjvwehHwO7svVHuIExj3i346eM
 #
 # Provide the Command Center version
 #
 command_center_image_version=69
 #
 # The Server URL: '"http://yourserver:8081/command-center"'
 #
 serverURL='"http://<yourserver>:8081/command-center"'
 #
 # The company name on your Localyzer license
 #
 company_name=Lingoport

Run InstallCommmandCenter.sh

    chmod +x InstallCommmandCenter.sh
    sudo ./InstallCommmandCenter.sh

To check the running container status

   sudo docker ps

If you need to re-run the InstallCommmandCenter.sh, make sure to run UninstallCommmandCenter.sh first to clean your environment.

Note: Docker image version is not the Command Center version, check latest docker image version at https://hub.docker.com/repository/docker/lingoport/command-center_dev/general

You should see at least an MySQL and a Command Center container running.

Log in to the URL based on the command-center-config.sh settings, so something like:

   https://commandcenter.mycompany.io/
   or
   http://server.mycompany.io:8081/command-center

You should now be able to install the licenses and create projects.

Update

Update install.conf

Change the version number

Run UpdateCommmandCenter.sh

    chmod +x UpdateCommmandCenter.sh
    sudo ./UpdateCommmandCenter.sh

To check the running container status

   sudo docker ps

Licenses

Start and Stop System

Verify Installation

Installation / Update (Docker)

Uninstall

 sudo ./UninstallCommmandCenter.sh
 Uninstalling the Command Center Servers ...
 sudo docker ps
 CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES