QMetry and Reports Offline Installation on Linux - 3 Tier

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 the 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 10.x and Open JDK 17.0.2 in a docker container.

3 Tier Install

Server 1

QMetry App

Server 2

QMetry DB

Server 3

QMetry Reports

Pre-requisites

1. The following should be installed on the serve

  • CentOS, RHEL-7 and RHEL-8, Ubuntu 24

  • Docker Version 20.10.13

  • Docker Compose Version 2.5.0

  • Yum-tools

2. Make sure that the docker service has been configured on QMetry Application, QMetry DB and Report servers to start automatically on the 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 Application and Report Servers should be able to communicate over 80/443 Ports and Database Server 3306/DB Ports. Ports 8080 and 3306 should be enabled/open on Reports Server to allow connections from the QMetry application server.

The ports 80/443 and 3306 on the respective servers should be free and should not be in use by other applications. QMetry App server should be able to communicate with the reports server on port 3306.

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

8. By default, docker is managing storage under “/var/lib/” directory on the host machine. It will also ask for the storage location of the 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 the 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, & 3306

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 the 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:appdb8 docker save -o /opt/qtm/qmetrydb.tar qmetry/qmetry:appdb8 docker images

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

docker pull qmetry/qmetry:reportdb8 docker save -o /opt/qtm/qmetryreportdb.tar qmetry/qmetry:reportdb8 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 ./qmetry.sh

 

The next question during the installation process will be as follows.

Options

Allowed Values

Default Value

Recommended Value

Options

Allowed Values

Default Value

Recommended Value

Do you want to make an online installation (Y/N)?

Y, y, N, n

Y

N

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

Options

Details

Example

Enter QMetry database password for 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 qmetryapp_db bash mysql -uroot -p;  GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; 

 

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

Note: With installation, MySQL 8.0.40 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 chmod +x qmetry.sh ./qmetry.sh

 

The next question during the installation process will be as follows.

Options

Allowed Values

Default Value

Recommended Value

Options

Allowed Values

Default Value

Recommended Value

Do you want to make an online installation (Y/N)?

Y, y, N, n

Y

N

Step 4. Next, 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

Options

Comments/Example

Please enter QMetry application directory

/opt/qmetryapp

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

Options

Details

Default Value

Example

Enter QMetry database hostname

Enter QMetry Database Host as DNS/IP Address

localhost

192.168.0.100

Enter QMetry database port

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

3306

3306

Enter QMetry database schema

QMetry Application Database schema name.

qmetry

qmetry

Enter QMetry database username

Enter Database's Username

-

root

Enter QMetry database password

Enter QMetry Application Database Password for the above mentioned username.

-

QMetry@123

Enter Email for QMetry admin user 

Enter QMetry user email address for Admin.

-

admin@qmetry.com

Enter password for QMetry admin user

Enter QMetry user password for Admin.

-

Admin@123

Enter Min. Heap Memory for the web server in GB

Enter Heap Memory in GB(s)

2

2

Enter Max. Heap Memory for the web server in GB

Enter Heap Memory in GB(s)

4

4

Enter QMetry Database Connection Pool Size

Enter Pool Size in number format

100

100

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 commerial 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 ./qmetry.sh

 

The next question during the installation process will be as follows.

Options

Allowed Values

Default Value

Recommended Value

Options

Allowed Values

Default Value

Recommended Value

Do you want to make an online installation (Y/N)?

Y, y, N, n

Y

N

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

Options

Details

Default Value

Example

Enter Report database password for 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. 

10.10.11.101

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: 3306

    • 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 a 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.