Difference between revisions of "Deployment Scenarios"

From Lingoport Wiki
Jump to: navigation, search
(External Access and Ports)
Line 10: Line 10:
 
[[Image:Deployment and Security.gif]]
 
[[Image:Deployment and Security.gif]]
   
== External Access and Ports ==
+
= External Access and Ports =
 
* Ability to install/update programs via 'yum'.
 
* Ability to install/update programs via 'yum'.
 
* [[Terms_and_Definitions#Jenkins|Jenkins]] is accessed via port 8080 within Customer's firewall for Linux system
 
* [[Terms_and_Definitions#Jenkins|Jenkins]] is accessed via port 8080 within Customer's firewall for Linux system
Line 19: Line 19:
 
* Linux system must be able to access https://globalyzer.com.
 
* Linux system must be able to access https://globalyzer.com.
   
===Optional Access===
+
==Optional Access==
 
You may want to update either Jenkins or the underlying Dashboard platform to the latest version. If so, you may want to update the continuous globalization system directly or to download the files on one system and copy them over to the continuous globalization system. The URL for updates are:
 
You may want to update either Jenkins or the underlying Dashboard platform to the latest version. If so, you may want to update the continuous globalization system directly or to download the files on one system and copy them over to the continuous globalization system. The URL for updates are:
 
* https://updates.jenkins-ci.org
 
* https://updates.jenkins-ci.org
Line 29: Line 29:
 
Furthermore, email notification emails require an SMTP account. The SMTP server access may be internal to your Company or external depending on your email services (e.g. smtp.gmail.com for Google).
 
Furthermore, email notification emails require an SMTP account. The SMTP server access may be internal to your Company or external depending on your email services (e.g. smtp.gmail.com for Google).
   
== Installation Components ==
+
= Installation Components =
=== Globalyzer===
+
== Globalyzer==
 
Scan code and detect internationalization (i18n) issues
 
Scan code and detect internationalization (i18n) issues
 
* Globalyzer Server: Store regex pattern based 'rule sets' used to detect i18n issues and filter out false positives.
 
* Globalyzer Server: Store regex pattern based 'rule sets' used to detect i18n issues and filter out false positives.
Line 38: Line 38:
 
** Run on Linux system (light-blue box at bottom of graphic) - results displayed on Lingoport Dashboard (see data path)
 
** Run on Linux system (light-blue box at bottom of graphic) - results displayed on Lingoport Dashboard (see data path)
   
===Resource Manager===
+
==Resource Manager==
 
Manages translation resource files.
 
Manages translation resource files.
 
* Detects issues in resource files (duplicate or missing keys, parameter mismatch in text for different languages, etc.)
 
* Detects issues in resource files (duplicate or missing keys, parameter mismatch in text for different languages, etc.)
Line 45: Line 45:
 
* Run on Linux system (light-blue box at bottom of graphic)
 
* Run on Linux system (light-blue box at bottom of graphic)
   
===Lingoport Dashboard===
+
==Lingoport Dashboard==
 
* Displays overview of Globalyzer and Resource Manager status
 
* Displays overview of Globalyzer and Resource Manager status
 
* Users may view Globalyzer/Resource Manager issues in context within source code
 
* Users may view Globalyzer/Resource Manager issues in context within source code
 
* Run on linux system (light-blue box at bottom of graphic)
 
* Run on linux system (light-blue box at bottom of graphic)
   
===Jenkins (not a Lingoport program)===
+
==Jenkins (not a Lingoport program)==
 
Used to automate running of Globalyzer Client, Resource Manager and updating of the Lingoport Dashboard
 
Used to automate running of Globalyzer Client, Resource Manager and updating of the Lingoport Dashboard
 
* Run on Linux system (light-blue box at bottom of graphic)
 
* Run on Linux system (light-blue box at bottom of graphic)
   
==Data Path==
+
=Data Path=
   
===Lingoport Access===
+
==Lingoport Access==
 
It's most convenient if Lingoport can have SSH access to the Linux system where Lingoport suite is configured.
 
It's most convenient if Lingoport can have SSH access to the Linux system where Lingoport suite is configured.
 
Otherwise, a Lingoport employee can guide an customer's employee through the setup using a videoconferencing program such as WebEx or GoToMeeting.
 
Otherwise, a Lingoport employee can guide an customer's employee through the setup using a videoconferencing program such as WebEx or GoToMeeting.
   
===Globalyzer===
+
==Globalyzer==
 
Rule sets (regex data) are transferred between Globalyzer Server and Globalyzer Clients; It requires username/password based login.
 
Rule sets (regex data) are transferred between Globalyzer Server and Globalyzer Clients; It requires username/password based login.
====Server at Globalyzer.com====
+
* Server at Globalyzer.com or on Customer's premises
* Generates xml reports that will be read by the Lingoport Dashboard.
+
* Generates XML reports that will be read by the Lingoport Dashboard.
 
* Clients are run on Lingoport Suite Linux system.
 
* Clients are run on Lingoport Suite Linux system.
 
* Clients are run on developer machines.
 
* Clients are run on developer machines.
Line 76: Line 76:
 
* Stores data in MySQL database
 
* Stores data in MySQL database
 
* Run on linux system (light-blue box at bottom of graphic)
 
* Run on linux system (light-blue box at bottom of graphic)
* Generates xml reports that will be read by the Lingoport Dashboard.
+
* Generates XNL reports that will be read by the Lingoport Dashboard.
   
 
===Lingoport Dashboard===
 
===Lingoport Dashboard===
Line 94: Line 94:
 
* Web application, hosted on port 8080 by default.
 
* Web application, hosted on port 8080 by default.
   
== Installation data path requirements==
 
* Ability to install/update programs via 'yum'.
 
* Ability to download installer from lingoport.net via sftp
 
* Download does not have to be directly to the target machine. It can be downloaded by another machine and then transferred.
 
* Port 8080 accessible within Customer's firewall for Linux system (Jenkins)
 
* Port 9000 accessible within Customer's firewall for Linux system (Dashboard)
 
* Linux system access to https://globalyzer.com
 
   
= Additional deployments=
+
= Additional Deployments Scenarios =
 
In the [[Additional Deployments|Additional Deployments]] section, we illustrate some possible deployments:
 
In the [[Additional Deployments|Additional Deployments]] section, we illustrate some possible deployments:
 
* Team Members
 
* Team Members

Revision as of 17:24, 15 May 2017

The Lingoport Suite is composed of a number of components. You may need some of the components for a set of users and other components for Continuous Globalization.

Typical Deployment and Ports

Setting up the Lingoport Continuous Globalization System at a customer's can be done in many ways, as shown in the different deployment scenarios. The following is meant to show the necessary access to the system.


  • The Customer's systems are shown in Light Blue; CentOS for the main system where Jenkins and Dashboard reside.
  • Access from outside the Customer's system are shown in Light Green.

Deployment and Security.gif

External Access and Ports

  • Ability to install/update programs via 'yum'.
  • Jenkins is accessed via port 8080 within Customer's firewall for Linux system
  • Lingoport Dashboard is accessed via port 9000 within Customer's firewall for Linux system
  • The Translation Vendor may be accessed by different means, for instance port 21 for FTP or port 22 for SFTP.
  • Download does not have to be directly to the target machine. It can be downloaded by another machine and then transferred.
  • Access for the Lingoport (or internal) installation team can be done in many ways, such as SSH for Telnet or Putty.
  • Linux system must be able to access https://globalyzer.com.

Optional Access

You may want to update either Jenkins or the underlying Dashboard platform to the latest version. If so, you may want to update the continuous globalization system directly or to download the files on one system and copy them over to the continuous globalization system. The URL for updates are:

Furthermore, email notification emails require an SMTP account. The SMTP server access may be internal to your Company or external depending on your email services (e.g. smtp.gmail.com for Google).

Installation Components

Globalyzer

Scan code and detect internationalization (i18n) issues

  • Globalyzer Server: Store regex pattern based 'rule sets' used to detect i18n issues and filter out false positives.

Server at Globalyzer.com

  • Globalyzer Clients: Connects to server and logs in. Downloads rule set from server. Uses rule set to scan code (no code is sent to the server!). May push rule set changes. Display i18n issues.
    • Run on developer machines
    • Run on Linux system (light-blue box at bottom of graphic) - results displayed on Lingoport Dashboard (see data path)

Resource Manager

Manages translation resource files.

  • Detects issues in resource files (duplicate or missing keys, parameter mismatch in text for different languages, etc.)
  • Detects changes to Chinese resource files. Then sends relevant changes out to the translation vendor for translation into other languages.
  • Automatically retrieves translations from translations vendors and checks those changes into source control
  • Run on Linux system (light-blue box at bottom of graphic)

Lingoport Dashboard

  • Displays overview of Globalyzer and Resource Manager status
  • Users may view Globalyzer/Resource Manager issues in context within source code
  • Run on linux system (light-blue box at bottom of graphic)

Jenkins (not a Lingoport program)

Used to automate running of Globalyzer Client, Resource Manager and updating of the Lingoport Dashboard

  • Run on Linux system (light-blue box at bottom of graphic)

Data Path

Lingoport Access

It's most convenient if Lingoport can have SSH access to the Linux system where Lingoport suite is configured. Otherwise, a Lingoport employee can guide an customer's employee through the setup using a videoconferencing program such as WebEx or GoToMeeting.

Globalyzer

Rule sets (regex data) are transferred between Globalyzer Server and Globalyzer Clients; It requires username/password based login.

  • Server at Globalyzer.com or on Customer's premises
  • Generates XML reports that will be read by the Lingoport Dashboard.
  • Clients are run on Lingoport Suite Linux system.
  • Clients are run on developer machines.

Resource Manager

Translation resource file updates sent to translation vendor, typically over SFTP. Resource file updates received from translation vendor, also typically over SFTP. Updates are checked for consistency (various in-depth checks), and then committed to source control if the checks pass.

  • Emails are sent to a list of email contacts defined in a configuration file.
  • Notifications for sent / received resource files
  • Error notifications
  • Translation status weekly email
  • Stores data in MySQL database
  • Run on linux system (light-blue box at bottom of graphic)
  • Generates XNL reports that will be read by the Lingoport Dashboard.

Lingoport Dashboard

  • Resource Manager and Globalyzer are run on a server internal to Customer's network. Each generates an XML report.
  • Dashboard Client reads source code, and these XML reports.
  • Dashboard Client processes this data, and sends it to the Dashboard Server
  • Data sent over HTTP/HTTPS.
  • Most often, the Dashboard Client and Dashboard Server are hosted on the same machine (light-blue box at bottom of graphic), so network communication is internal to this machine.
  • Requires a either a username/password or a user token, which will be stored in configuration files.
  • Stores data in MySQL database
  • Dashboard Server is a web application, hosted on port 9000 by default.

Jenkins (not a Lingoport program)

  • Used to automate running of Globalyzer Client, Resource Manager and updating of the Lingoport Dashboard
  • Various security options available, username/password is most common. LDAP is another option.
  • Run on Linux system (light-blue box at bottom of graphic)
  • Web application, hosted on port 8080 by default.


Additional Deployments Scenarios

In the Additional Deployments section, we illustrate some possible deployments:

  • Team Members
    • i18n specialists
    • Developers
  • Other Continuous Globalization Deployments