Back to QMetry All Products Help Page
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 1 | QMetry App |
Server 2 | QMetry DB |
Server 3 | QMetry 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
- 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
- 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 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 |
---|---|
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 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 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) Password | Enter QMetry user password for Admin. | - | Admin@123 |
Enter Min. Heap Memory for the webserver | Enter Heap Memory in GB(s) | 2 | 2 |
Enter Max. Heap Memory for the webserver | 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.
- 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.
- 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 y 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.
Back to QMetry All Products Help Page