QMetry and Reports Offline Installation on Linux - 3 Tier


In this guide, we'll run you through the installation of QMetry Database, QMetry Test Management application and QMetry Reporting tool on a server without an internet connection. This document contains detailed steps regarding how to download QMetry application’s docker image and Report application’s docker image from the docker repository and how to move them to another machine for installation.

This installation installs QMetry Test Management Application over Apache Tomcat 9.x and Open JDK 11.0.11 in a docker container.

3 Tier Install

Server 1QMetry App
Server 2QMetry DB
Server 3QMetry Reports

Pre-requisites

1. Following should be installed on the serve

  • CentOS, RHEL-7 and RHEL-8
  • Docker Version 20.10.4
  • Docker Compose Version 1.22.0
  • Yum-tools

2. Make sure that the docker service has been configured on both QMetry, QMetry DB and Report servers to start automatically on reboot of servers.

3. Three Linux Servers are required: QMetry Database, QMetry Application, and QMetry Reporting tool. These three servers should be on the same network and should be able to communicate with each other. Refer QMetry Deployment Document for the hardware requirements. 

4. All the servers should have the support of these commands: unzip, wget, curl, vim and docker.

5. The Internet-enabled machine on which the docker images are downloaded should support the docker command.

6. QMetry and Report Servers should be able to communicate over 80/443 Ports and Database Server 3306/DB Ports. Ports 8080 and 33061 should be enabled/open on Reports Server to allow connections from QMetry application server.

7. Docker installation requires root user access. To install using a non-root user, follow the steps specified here before starting the install on both QMetry and Report servers.

8. By default, docker is managing storage under “/var/lib/” directory on the host machine. It will also ask for storage location of QMetry application’s file related data during the installation of QMetry. Hence, make sure that both the directories have required disk space available as per usage requirement of QMetry application.

9. Get these files from QMetry Support for installation: QMetryApp.zip, QMetryRDS.zip and QMetryReport.zip for installation.

10. Post installation, QMetry Application and QMetry Report both should be configured either on https or http.

11. If you are planning Jira integration with QMetry and Jira is running on https, make sure your QMetry is also running over https protocol. QMetry and Jira should run on the same protocol.

12. The following Ports should be open:

Installation

Ports that need to be enabled

QMetry Database Server

3306

QMetry Application

80/443

QMetry Reporting Tool

80/443, 8080, & 33061

Download Docker Images of QMetry and Report

Follow these steps on the Internet-enabled machine on which the docker images of QMetry and Report are to be downloaded.

Step 1. Execute the following command. Next, it will ask for docker's credentials. Enter the required credentials. Please contact QMetry Support, if you do not have the credentials.

  • docker login

       After entering docker credentials, it will show the success message as shown below.

            

Step 2. Execute the following commands to pull QMetry application’s docker image from the docker repository.

  • docker pull qmetry/qmetry:latest

       The download process is started. Wait till the time it gets finished.

      

After the process gets finished, it will display the message as shown below.

        Execute the following command to verify that docker image has been downloaded successfully.

  • docker images                 

Step 3. Execute the following command to save QMetry application’s docker image as .tar file. You can change the path of .tar file in the following command.

  • docker save -o /opt/qtm/qmetryapp.tar qmetry/qmetry:latest

Step 4. Execute the following commands to download and save report’s docker image.

  • docker pull qmetry/qmetry:reports_latest
  • docker save -o /opt/qtm/qmetryreport.tar qmetry/qmetry:reports_latest
  • docker images        

Step 5. Execute the following commands to download and save QMetry Database docker image.

  • docker pull qmetry/qmetry:rds
  • docker save -o /opt/qtm/qmetrydb.tar qmetry/qmetry:rds
  • docker images

Step 6. Execute the following commands to download and save Report Database docker image.

  • docker pull qmetry/qmetry:qmetry-reports-db
  • docker save -o /opt/qtm/qmetryreportdb.tar qmetry/qmetry:qmetry-reports-db
  • docker images

Step 7. Transfer the qmetrydb.tar file to QMetry DB server, qmetryapp.tar file to the QMetry application server, qmetryreport.tar and qmetryreportdb.tar files to the Report server.


Install QMetry DB

Follow the steps mentioned below.

Step 1. Download and place QMetryRDS.zip file on QMetry DB server in the same directory of qmetrydb.tar file.

Step 2. On DB server, navigate to the directory where .tar file has been placed and execute the following command.

  • sudo docker load -i qmetrydb.tar
Execute the following command to check whether the docker images have been restored correctly or not.
  • sudo docker images

Step 3. Execute following command to unzip the QMetryRDS.zip file.

  • sudo su
  • unzip QMetryRDS.zip
  • cd QMetryRDS 
  • chmod +x qmetry.sh
  • sh qmetry.sh

Step 4. Once the script finishes executing, it will prompt to enter the following parameters:

Options

Details

Example

Enter QMetry Database Password (root user)

Enter QMetry Application Database Password for the root user.

QMetry@123


After successful installation of QMetry DB, you will see the message "QMetry RDS Installation is complete".

Step 5. Execute the following commands. 

  • docker exec -it qmetry_rds_1 bash
  • mysql -uroot -p; 
  • GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; 

Once the script finishes executing, check if MySQL docker is available with the name: qmetry_rds_1 - when you run the docker ps command.


Note: With installation, MySQL 5.7.29 will be installed on port 3306. Below are the details.

  • Username : root
  • Password : <user specified password in Step#4>

Install QMetry Application

Follow the steps mentioned below.

Step 1. Download and place QMetryApp.zip file on QMetry application server in the same directory of qmetryapp.tar file.

Step 2. On QMetry application server, navigate to the directory where .tar file has been placed and execute the following command.

  • sudo docker load -i qmetryapp.tar
Execute the following command to check whether the docker images have been restored correctly or not.
  • sudo docker images

Step 3. Execute following command to unzip the QMetryApp.zip file.

  • unzip QMetryApp.zip
  • cd QMetryApp
  • sudo su
  • sh +x qmetry.sh

Step 4Next, the installation process will prompt for directory path on the host machine to store QMetry application’s file related data like attachments, license, import, export files etc. You can enter any path of the host machine to store QMetry application’s file related data. If the mentioned directory does not exist on the given path, it will get created automatically during the installation process.

Options

Comments/Example
Please enter QMetry application directory/opt/qmetryapp

Note: It is highly recommended to take periodic backup of the directory which is specified as a location to store QMetry application’s file related data to prevent any data loss in case of any disaster.

Step 5. Users are required to enter value of required configuration parameters.

Options
Details
Default Value
Example
Enter QMetry Database HostnameEnter QMetry Database Host as DNS/IP Addresslocalhost192.168.0.100
Enter QMetry Database PortEnter QMetry Database Port. If it is unchanged, use "3306" as the Database port.33063306
Enter QMetry Database SchemaQMetry Application Database schema name.
qmetryqmetry
Enter QMetry Database Password (root user)

Enter QMetry Application Database Password for the root user.

-QMetry@123
Enter QMetry User (admin) Email (admin user)Enter QMetry user email address for Admin.-admin@qmetry.com
Enter QMetry User (admin) PasswordEnter QMetry user password for Admin.
-Admin@123
Enter Min. Heap Memory for the webserverEnter Heap Memory in GB(s)22
Enter Max. Heap Memory for the webserverEnter Heap Memory in GB(s)44
Enter QMetry Database Connection Pool SizeEnter Pool Size in number format100100

The installation may take a while.

After successful installation of QMetry application, you will see the message "QMetry Application Installation is complete".

Once the installation is complete, execute the following command.

  • docker ps

The docker containers installed will be shown along with their container IDs and names.

Step 6. Getting your QMetry License and Installing it.

  1. For users evaluating QMetry
    • You should have received an evaluation license valid for 30 days along with the installation.
    •  Follow the Steps to Apply License file.
  2. For users requiring commercial license
    • Server's domain name and mac address are required to generate your QMetry License. Follow the below steps to get your server mac address and send this information along with the domain name to QMetry Support to get your QMetry License generated. Send an email to qtmprofessional@qmetrysupport.atlassian.net to reach QMetry Support.
      • Execute the below command to get your server mac address. Then send the MAC address to QMetry Support to receive the license file.
        • ifconfig (MAC address of Ethernet card e.g. eth0/eth1)
      • Once you receive license.key from QMetry Support, you can follow the Steps to Apply License file.

Step 7. Access QMetry application using the following address.

http://<your IP Address OR Domain Name>

Default QMetry login credentials.

  • Username: admin
  • Password: <user specified password in Step # 5>

Step 8. After the above steps are completed, log into QMetry application.

  • Go to Admin Profile and edit the Profile.
  • Update Email of Admin in the Email field.
  • Enter the Base URL as your QMetry URL.

Step 9. Additional Tomcat Configuration: QMetry is installed with a default configuration of minimum and maximum heap memory utilization. You can modify these settings depending on your hardware configuration. Refer Additional Configuration for more details.

Install QMetry Reports

Follow the steps mentioned below.

Step 1. Download and place QMetryReport.zip file on Report server in the same directory of qmetryreport.tar and qmetryreportdb.tar files.

Step 2. On Report server, navigate to the directory where .tar file has been placed and execute the following command.

  • sudo docker load -i qmetryreportdb.tar
  • sudo docker load -i qmetryreport.tar 

Execute the following command to check whether the docker images have been restored correctly or not.

  • sudo docker images

Step 3. Execute following command to unzip the QMetryReport.zip file.

  • unzip QMetryReport.zip
  • cd QMetryReport
  • sudo su
  • sh +x qmetry.sh

Step 4. Users are required to enter value of required configuration parameters.

Options

Details

Default Value

Example

Enter Report Database Password (root user)

Enter password for QMetry Reports Database.

-

QMetryreports@!Nf0#

Enter Report Database Schema

Enter Database schema name for QMetry Reports Database.

qtmanalytics

qtmanalytics

Enter Number of CPU's to allocate

Allocate 3/4th of the available CPUs. For example, if CPU has 8 cores, enter 6

To check total CPUs, run the command : lscpu

4

6

Enter Memory to allocate in GB(s)

Entered memory would be used by the sync job while running full sync of data. Enter 3/4th of total memory available on the server. For example, if the memory on the server is 24 GB, enter 18

4

18

Wait for the script file to finish executing.

Once the script finishes executing it will prompt to enter the following parameters.

Options

Details

Example

Enter Mysql Database Host IP / DNS Name (Qmetry)

Enter Database Host Public IP/DNS of QMetry application.

10.10.11.100

Enter Mysql Database Port (Qmetry)

Enter Database Port of QMetry application. If it is unchanged, use "3306" as Database port.

3306

Enter Mysql Database Schema (Qmetry)

Enter Database schema name of QMetry application.

qmetry

Enter Mysql Database Username (Qmetry)

Enter Database username of QMetry application. If it is unchanged, use "root" as username.

root

Enter Mysql Database Password (Qmetry)

Enter Database password of QMetry application.

QMetry@123

Enter Mysql Database Host IP / DNS Name (Reports)

Enter Database Host Public IP/DNS of QMetry Report. If it is unchanged, enter 'qmetry-reports-db' as Database Host.

qmetry-reports-db

Enter Mysql Database Port (Reports)

Enter Database Port of QMetry Report Database. If it is unchanged, enter "3306" as Database Port.

3306

Enter Mysql Database Schema (Reports)

Enter Database schema name of QMetry Reports Database. 

qtmanalytics

Enter Mysql Database Username (Reports)

Enter Database username of QMetry Reports Database. If it is unchanged, use "root" as username.

root

Enter Mysql Database Password (Reports)

Enter Database password of QMetry Reports Database.

QMetryreports@!Nf0#

Enter Port To Start SyncJob (Reports)

Reports Sync Job runs from this port - 8080

8080

Do you want to Run Force Sync Now? (y/n)

Enter to sync all the QMetry data to Reports Database with the current script.

→ Always enter y at the time of fresh reports install

Y

Enter Memory to allocate in GB(s) to Spark

Entered memory would be used by the sync job while running full sync of data. Enter 3/4th of total memory available on the server. For example, if the memory on the server is 24 GB, enter 18

18

After successful installation of QMetry Report, you will see the message "QMetry Report Installation is complete".

Wait for about 2 minutes - docker ps command should give output as shown below.

Step 5. Login to QMetry with 'admin' user login, and configure the reports server URL in the configuration menu.

Go to QMetry > Customization > Insight Configuration

  • Under Database Configuration tab
    • Enter Host: Reports Server Host Public IP/DNS
    • Enter Port: 33061
    • Enter Username: root
    • Enter Password :<user specified password in Step#4>
    • Enter Database Name: <user specified Database name in Step#4>

Click Test to ensure successful connection, and then click Test & Save.

  • Under Sync Data tab, set up the Report Data Sync from your reports server to QMetry Reporting. 
    • Report Server URL : This should be set to your report server domain URL followed by port 8080 as shown below. Ensure port 8080 is open on the reports server.
    • Click Test to ensure successful connection, and then click Test & Save.
    • Click Sync Data to start Reports Data Sync.

Note: "Sync Data" is required the first time after reports installation. Time taken to sync depends on the amount of data in QMetry. Sync Progress and Status can be monitored as shown in the below screenshot. QMetry custom reports remain inaccessible during sync and It is recommended to be run only during off-peak hours.

Users can start using QMetry Reports when the sync is completed. QMetry remains available during this time.



If you are facing any issues during the installation process, kindly generate a support ticket on Support Portal for assistance.