Difference between revisions of "Localyzer Installation"

From Lingoport Wiki
Jump to: navigation, search
(Next Steps)
(Lingoport Resource Manager Overview)
Line 6: Line 6:
   
 
The [[Terms_and_Definitions#LingoportDashboardClient|Dashboard Client]] typically needs to have access to the <code>lrm-cli.jar</code> files in order to generate the XML report files and subsequently push the files over to the [[Terms_and_Definitions#LingoportDashboardServer|Dashboard Server]].
 
The [[Terms_and_Definitions#LingoportDashboardClient|Dashboard Client]] typically needs to have access to the <code>lrm-cli.jar</code> files in order to generate the XML report files and subsequently push the files over to the [[Terms_and_Definitions#LingoportDashboardServer|Dashboard Server]].
  +
  +
The easiest way to install LRM on a typical system is to use the [[Terms_and_Definitions#stackinstaller|Stack Installer]]. It will install and configure LRM and its supporting components. If you cannot use the [[Terms_and_Definitions#stackinstaller|Stack Installer]], follow the instructions below.
   
 
== Install Jenkins==
 
== Install Jenkins==

Revision as of 23:09, 18 January 2017

Lingoport Resource Manager Overview

The Lingoport Resource Manager System is composed of several items that work together. (See the diagram at Components Diagram):

  1. Lingoport Resource Manager: The LRM Server keeps track of all the actions and the expected results. The server is best located on one central system. This section describes the installation of LRM. The LRM Database is created during the LRM Server installation.
  2. Jenkins: Jenkins orchestrates the execution of the commands, such as verifying files to be sent for translation via a light Java application. Jenkins needs to communicate with the Lingoport Resource Manager server and is best co-located with LRM. The Jenkins setup is the subject of another guide.
  3. Dashboard: the Lingoport Dashboard aggregates and displays data from both the Resource Manager and Globalyzer. Its installation is the subject of another guide.

The Dashboard Client typically needs to have access to the lrm-cli.jar files in order to generate the XML report files and subsequently push the files over to the Dashboard Server.

The easiest way to install LRM on a typical system is to use the Stack Installer. It will install and configure LRM and its supporting components. If you cannot use the Stack Installer, follow the instructions below.

Install Jenkins

LRM should be installed with under the Jenkins user. If you have not done so yet, install Jenkins from jenkins-ci.org, install it, and start it as a daemon.

Check that the location of the 'workspace' is ${JENKINS_HOME}/jobs/${ITEM_FULLNAME}/workspace. This location can be found by going to Jenkins -> Manage Jenkins select Configure System and click on Advanced... near the top right page. Look for Workspace Root Directory.

This is very important. A different Workspace Root Directory will cause real problems!

Check which Unix user is running the Jenkins job. Check the System Information by selecting Manage Jenkins -> System Information and search for USER.

Installing LRM

Prerequisites

Before continuing see current supported software versions. These are the versions that need to be on the LRM Server. Review the Lingoport Suite Installation, which describes how all the Lingoport applications work together and the hardware and software configuration requirements,

  1. Linux: The supported Operating system is Linux, preferably CentOS. Verify that the correct version is running on the server.
  2. Java: Install the supported version of the Java JDK on the target machine. You can check the Java version using the command line. At the command prompt enter:
    java -version
    The version of Java which you have on your system should be displayed. If you need to install Java, please refer to http://www.java.com/en/download/index.jsp or any Java download page which supplies the supported version of Java or above.
  3. MySQL: Install the supported version MySQL on a database server. If the database server is not the same machine as the LRM Server, then you will need to install the MySQL Client (only need Client) on the LRM Server so that it can access the database on the separate database server.
    • You can verify that you have a sufficiently up-to-date version of MySQL using the command prompt. In the command prompt type:
    mysql -u <user> -p<password>
    • If MySQL is installed on your system, information on the version will be displayed after entering a valid username and password. If MySQL is not the supported version or higher, please refer to a download site, such as MySQL Download and install an up-to-date version.
    • You will need to enter the MySQL credentials (host, username, password and port number) during the installation.
  4. Jenkins: The latest version should be installed. See #Install Jenkins. Complete the installation of Jenkins and identify its user before attempting to install LRM.
  5. LRM Licensing information: When your company purchased LRM you should have been sent an email containing the licensing information. The licensing information will include the following:
    • group name
    • number of licenses in the license
    • expiration date for the license
    • license key. This is a 10-digit number generated by Lingoport.
    This licensing information will be required for the server installation. If you do not have the licensing information of the jar file, please contact support@lingoport.com. Please keep it handy while you perform the install.
  6. You may have many licenses, one per group. This must have been specified during the sales process.
  7. Installer jar file: You must have the Lingoport_Resource_Manager_Server-<x.x>-Installer.jar file. Where <x.x> is the current supported version of LRM
  8. MySQL Time Zone: MySQL time zone must be non-ambiguous. An example of an ambiguous time zone is 'MST' whereas 'America/Denver' is a non-ambiguous time zone. Refer to MySQL documentation for your specific OS to set time zones appropriately. For Linux, type
    mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -u root mysql -p
    from the command line and then
    SET GLOBAL time_zone = 'America/Denver’
    at the MySQL prompt.

Installing the LRM Server

Once you have retrieved your licensing information and ensured that all requirements are met (see previous section), log into the server as the Unix user who will be running the Jenkins jobs. This is usually the Jenkins user.

  • IMPORTANT: Which Unix user will do all the installation?
    • Unix user who will be running the Jenkins jobs

There are two variations to the install.

  1. Initial LRM Installation: The LRM installer will create the LRM Database and the Lingoport_Data/L10nStreamlining directory. The path to the Lingoport_Data/LRM will be established.
  2. Upgrading LRM: Use this when upgrading your LRM Server to a newer version, this will make sure the existing LRM Database is not overwritten.


A headless installation is used to install LRM without a windowing system. An XML installation file with the correct options specified is used from the command line.

Initial LRM Installation

Verify that you are logged in as the Unix user who will be running the Jenkins jobs.

  • Double-click on the Lingoport_Resource_Manager_Server-<x.x>-Installer.jar file, or
  • From the command line, cd to the directory with the installer jar file and type:
java –jar Lingoport_Resource_Manager_Server-<x.x>-Installer.jar

The installer will prompt you for the install location, license information and database settings to create the MySQL LRM database. The installer will also prompt you for the LRM and the L10nStreamlining directory location. These will default to <home>/Lingoport_Data/LRM and <home>/Lingoport_Data/L10nStreamlining. When installation completes, the L10nStreamlining directory will have been created, but the LRM directory is created when the first LRM project is generated.

To verify the installation, from the command line:

> java -jar <install location>/lrm-cli.jar --version
> java -jar <install location>/lrm-cli.jar --help

This should show the current version of LRM and the help text. If either of these commands errors, something is incorrect and must be fixed before moving on.

Updating An Existing LRM Installation

Verify that you are logged in as the Unix user who will be running the Jenkins jobs.

If you are upgrading your LRM Server to a newer version, make sure that you do not overwrite the existing database.

  • Double-click on the Lingoport_Resource_Manager_Server-<x.x>-Installer.jar file, or
  • From the command line, cd to the directory with the installer jar file and type:
java –jar Lingoport_Resource_Manager_Server-<x.x>-Installer.jar

On the Type of Installation page, be sure to select Update Server.

To verify the installation, from the command line:

> java -jar <install location>/lrm-cli.jar --version
> java -jar <install location>/lrm-cli.jar --help

This should show the current version of LRM and the help text. If either of these commands errors, something is incorrect and must be fixed before moving on.

Headless Installation

Verify that you are logged in as the Unix user who will be running the Jenkins jobs.

To install LRM without a windowing system or from a command line, use an XML installation file. The XML installation files can be generated from a first installation or an update using a windowing system on the last page of the installer. That file can be modified to fit other installations. To run a headless installation, from the command line, cd to the directory with the installer and type:

java –jar Lingoport_Resource_Manager_Server-<x.x>-Installer.jar headlessinstaller.xml

To verify the installation, from the command line:

> java -jar <install location>/lrm-cli.jar --version
> java -jar <install location>/lrm-cli.jar --help

This should show the current version of LRM and the help text. If either of these commands errors, something is incorrect and must be fixed before moving on.

Adding or Updating the License

Depending on your licensing agreement, you will have a license for one or more groups. Each group must have a license. To update or add a new license to your current installation, open a command prompt and type:

  • Update an existing license for a group:
java -jar <LRM_INSTALLATION_PATH>lrm-cli.jar --update-license --group-name <group> --number-of-licenses <number> --date <YYYY-MM-DD> --license-key <key>
  • Add a new license for a group:
java -jar <LRM_INSTALLATION_PATH>/lrm-cli.jar --create-group <groupname> --number-of-licenses <number> --date <YYYY-MM-DD> --license-key <key>
  • Verify that the new license has been installed with the correct information:
java -jar <LRM_INSTALLATION_PATH>/lrm-cli.jar --list-groups

Group Name

The group name must be established before Lingoport can issue a license key. A group name must conform to the following specification: A set of alphanumeric characters without the following special characters:

  • < (less than)
  • > (greater than)
  •  : (colon)
  • " (double quote)
  • / (forward slash)
  • \ (backslash)
  • | (vertical bar or pipe)
  •  ? (question mark)
  • * (asterisk)
  • (space)
  •  % (percentage)

Global Email Configuration

Basic Configuration

To send notifications to email recipients, the config_email_global.xml needs to be configured under <jenkins USER>/Lingoport_Data/L10nStreamlining/config The specification need in particular to be set for the smtp-host, the smtp-auth, the email-sender, the sender-password, and the jenkins-url for your system.

         <smtp-host>smtp.gmail.com</smtp-host>
         <smtp-auth>mail.smtps.auth</smtp-auth>
         <email-sender>mailuser@company.com</email-sender>
         <sender-password>mailuserpwd</sender-password>
         <jenkins-url>http://jenkins.company.com:8080/</jenkins-url>

Encrypted Password

The <sender-password> can be configured with the encrypted attribute set to true, as in

         ...
         <email-sender>mailuser@company.com</email-sender>
         <sender-password encrypted="true">UUIasd455</sender-password>
         ...

To encrypt the password, use the encrypt command line on lrm-common.jar file. For instance:

> java -jar <LRM_INSTALLATION_PATH>/lib/lpcommon.jar --encrypt

which will prompt you for the text (here the password) to encrypt and will provide the result on the console.

Nothing to Prep Email

To notify that when executing the command to send translation, no translations were found, the send-no-files-to-prep-email defaults to be set to 1. This may become annoying if you are prepping every night for instance and no changes happen. The notification system would then send a "Nothing to Prep" email. If you would rather no mails were sent in this case, set send-no-files-to-prep-email to 0.

<send-no-files-to-prep-email>0</send-no-files-to-prep-email>

Next Steps

If this is a new installation, you will need to configure your LRM Project and start managing your application's resource files. This involves configuring Jenkins with tabs, the jobs, the users, and the authorizations. See LRM Jenkins Configure System.

LRM works with the Lingoport Dashboard. If you have the Dashboard currently installed, make sure it is configured to point to the current LRM installation. You may want to update the Dashboard installation to do so. If you are going to install the Dashboard later, then don't worry for now. This will be part of the Dashboard installation process.

Important MySQL Configuration Note If you see the following error when running LRM commands: Packet for query is too large you will need to increase the max_allowed_packet variable of your MySQL database server to either 16 or 32 megabytes in the Lingoport directory of your Server and Client installations.

Lingoport Customer Support

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