Lingoport Suite Installation - Obsolete

From Lingoport Wiki
Revision as of 16:21, 1 February 2018 by Rdaly (talk | contribs) (Installing the Node Installer)
Jump to: navigation, search


Systems Configuration

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

The Lingoport Suite 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.

IT Participation

The customer IT group is very important to the successful deployment of the Lingoport applications. 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

The Lingoport Suite server components can be installed using the Stack Installer 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 Recommended Up to
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
Java Standard Edition Java JDK
MySQL Database MySQL
Web Server Tomcat

Lingoport Continuous G11n Server

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.

The following describes what needs to be open and accessible on the deployed system.

Ports

  • Jenkins is accessed via port 8080
  • Lingoport Dashboard is accessed via port 9000
  • The Translation Vendor may be accessed by different means, for instance port 21 for FTP or port 22 for SFTP.
  • Access for the Lingoport (or internal) installation team can be done in many ways, such as SSH for Telnet or Putty.
  • The system must be able to access https://globalyzer.com.
  • The system must be able to access the code repository, such as http://github.com for instance.

Other aspects

Installation and Upgrade Order

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 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="12.34.56.78" # Alternately "http://some.domain.com"
    
    # Lingoport/LRM 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
    COMPANY_NAME="Acme"                # e.g. DemoCo
    LRM_MAX_PROJECTS="10"            # e.g. 5
    LRM_LICENSE_EXPIRATION_DATE="2020-10-10"  # e.g. 2018-01-01
    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 http://12.34.56.78:8080. All the scripts should be installed and the tabs created.
  7. Go to Dashboard in a browser http://12.34.56.78:9000 (This is the IP or URL supplied in login-info.conf).
    It might redirect to http://12.34.56.78:9000/maintenance. In the URL, replace 'maintenance' with 'setup' and hit enter. There will be an 'Upgrade' button in the new page. Click on it, then select 'Go Home' when it completes. This should bring up the Dashboard with the javademo job.
    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 'Aministrator', which is on the right). Look for a 'Security' tab with a dropdown, then open the 'Users' page. DashboardAdministrationUsers.png

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

Installing the Node Installer

The Node Installer does not have to be installed at the time of Stack Installer. The Lingoport Jenkins jobs can be distributed onto other nodes or agents for processes. This improves performance on the main (master) Jenkins system.

Installing the Node Installer

This can be added later as systems and jobs expand. To install the Jenkins Master/Agent system, you must have a CentOS (RedHat is not supported) Master system that has been installed from the Stack Installer and has Jenkins and the Lingoport Dashboard up and running. Then one or more agent machines with the CentOS operating system needs to be created. Prior to installation all the machines need to be able to ping one another.

  1. Get the node-installer-<version>.zip file from Lingoport and put it onto the Master system in the centos user or another user with sudo privileges.
    > unzip node-installer-<version>.zip
    > cd node-installer
    
  2. On Master, in the node-installer directory, update the login_info.yml and the hosts files.
    login_info.yml:
    
    github_url: "https://www.github.com"
    github_api_endpoint: "https://api.github.com"
    github_login: "myGitLogin"
    github_oauth_token: "<long token>"
    dashboard_login: "admin"
    dashboard_password: "admin"
    dashboard_server_url: "http://one.two.three.com:9000/"
    gz_server_username: "bob@acme.com"
    gz_server_password: "xxxxxx"
    gz_server_url: "https://www.globalyzer.com/gzserver"
    

    This will show you how to create the githut oauth token.

    hosts:
    
    [master]
    one.two.three.com
    
    [agents]
    agent1.two.three.com
    agent2.two.three.com
    
  3. Set up the Master and Agents to talk to each other using ssh.
    On master:
    > cd ~/.ssh
    > ssh-keygen
    (don't enter anything for passphase)
    

    This will create a /home/centos/.ssh/id_rsa.pub file for master. Append the contents of this file to the contents of the /home/centos/.ssh/authorized_keys file on each agent machine. If the .ssh directory or authorized_keys file does not exist, create them, but make sure that the permissions look like:

    > ls -al .ssh
    total 8
    drwx------. 2 centos centos   28 Jan 25 22:44 .
    drwx------. 4 centos centos 4096 Jan 25 22:27 ..
    -rw-------. 1 centos centos  810 Jan 25 22:04 authorized_keys
    

    Also append the contents of /home/centos/.ssh/id_rsa.pub to the authorized_keys file for centos id on the master.

    Repeat the process for the jenkins user on master and the centos user on the agents. There should not be a jenkins user on the agents yet.

    Verify that the master (as either centos or jenkins) can ssh to the agent machines successfully.

  4. Run the setup script on the Master. This will configure the In order to run the script, make sure that you have 'ansible' installed.
    > ansible-playbook --version
    

    If not found, then install:

    > cd ~centos/node-installer/
    > ./install-ansible.sh
    

    Run the setup 'playbook':

    > ansible-playbook -i hosts setup-agents.yml
    
  5. Verify the setup. Check that the following ssh commands work.
    • Master/centos user to Agent/jenkins user
    • Master/centos user to Agent/centos user
    • Master/jenkins user to Agent/jenkins user

Manual installation and upgrade

The following is the manual method to install the Lingoport Suite.

The customer IT group needs to have decided on which deployment scenario to follow.

The Deployment Scenarios define and use several components

  1. The Globalyzer Server is where your Account and Rule Set information are stored. Lingoport provides the Globalyzer Server at www.globalyzer.com. However, depending on licensing, you may install the server on your own system.
  2. The Dashboard System is where you view internationalization and localization status of your projects in a sonar-powered dashboard. It contains the MySQL database for Dashboard as well as the scripts to start the Dashboard Server process.
  3. The Continuous Globalization system is where you install many of the Lingoport Suite applications. It is the heart of the installation, since this is where the automation occurs that keeps globalization status up-to-date. It needs to run the Dashboard client, Globalyzer client, and LRM scripts on the latest source code. The Dashboard scripts will call the Globalyzer Client to scan the source code for internationalization issues and will call LRM to check for localization status, and then it will push those results to the Dashboard Server. Jenkins is used to automate many of the operations.
  4. The individual Developer Machine is where you install Globalyzer Clients so that internationalization and localization issues can be addressed.

When you have decided on one of the Deployment Scenarios, be sure to follow this order:

  1. Install/Upgrade the Globalyzer Server if not using Lingoport's Globalyzer Server. Need link
  2. Install/Upgrade the Globalyzer Client and/or Workbench on the Continuous Globalization system Need link
  3. Install/Upgrade the Globalyzer Client and/or Workbench on the Developer Machine. Different clients may be installed on development machines depending on project responsibilities. Need link
  4. Install/Upgrade the LRM Server on the Continuous Globalization system
  5. Install/Upgrade the Dashboard Server on the Dashboard System.
  6. Install/Upgrade the Dashboard Client on the Continuous Globalization system.


Lingoport Customer Support

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