QMetry and Reports Installation on AWS Cloud Linux - 3 Tier (RHEL8, RHEL9 and RHEL10)
This topic describes how to install the QMetry database on Amazon Web Services (AWS), the QMetry Test Management application, and QMetry Reports in a three-tier architecture on Red Hat Enterprise Linux (RHEL).
The installation requires MySQL 8.4.8 on Amazon Relational Database Service (RDS). The installer deploys QMetry in a Podman container that runs Apache Tomcat 11.0.5 and OpenJDK 17.0.2.
Deployment Architecture
3 Tiers | Installations |
|---|---|
Server 1 | QMetry Application |
Server 2 | QMetry Reports |
AWS RDS 1 | QMetry Database |
AWS RDS 2 | QMetry Reports Database |
Prerequisites
Confirm that you meet all of the following requirements before you begin. For details, refer to
Pre-requisites for QMetry Application and Report Server Installation document.
For hardware requirements, refer to QMetry deployment document.
Prerequisite | What to confirm |
|---|---|
Operating System | Linux - RHEL 8, RHEL 9 or RHEL 10 |
Servers | You have four servers:
|
Required commands | unzip, wget, curl, and vim commands are supported. |
Internet access | Both servers can access the internet to download Podman and the QMetry installation images. |
Firewall and SELinux | Both are disabled on every server during installation. |
Proxy Servers | No proxy blocks downloads from the internet. |
Server communication | The application and report servers can reach each other on the required ports. |
Root access | Podman installation requires root user access. |
Disk space | The Podman and data directories have enough free space. |
Installation files | Get the |
Security protocol | QMetry application and QMetryReports use the same protocol. If you integrate with Jira over Hypertext Transfer Protocol Secure (HTTPS), run QMetry on HTTPS too. |
Note
Podman stores data in `/var/lib/` by default, and the installer also asks for a QMetry data directory. Make sure both locations have enough disk space for your QMetry usage.
Ports to open for inbound traffic
Open the following ports in the security group for each component.
Installation | Ports that need to be enabled and should be available for use |
|---|---|
AWS RDS - QMetry Application Database and QMetry Reports Databases | 3306 for both RDS |
QMetry Application | 80/443 |
QMetry Report | 80/443, 8081 & 3306 |
AWS EFS | 2049 |
AWS ElastiCache (if enabling the optional Redis Cache Cluster) | 6379 |
Create and Configure the two RDS instances
Create two Amazon RDS instances that use the same parameter group family. One instance hosts the QMetry application database, and the other hosts the QMetry Reports database.
Step 1. Create the DB parameter groups
To create a DB parameter group, do the following:
Go to AWS Management Console and open the Amazon RDS console.
On the navigation pane, select Parameter groups.
Select Create parameter group.
In the Parameter group family list Select mysql8.4.
In the Group name box, enter the name of the new DB parameter group.
In the Description box, enter a description for the new DB parameter group.
Click Create.
Repeat these steps to create a second parameter group for the Reports RDS instance.
Step 2. Edit the DB parameter groups
To edit the parameter groups, do the following:
Open the parameter group that you created for the application database.
Set the following parameters, and then save your changes.
Parameter
Value
binlog_format
ROW
character_set_client
utf8mb4
character-set-client-handshake
0
character_set_server
utf8mb4
collation_server
utf8mb4_unicode_ci
group_concat_max_len
500000000
innodb_autoinc_lock_mode
2
innodb_thread_concurrency
10
log_bin_trust_function_creators
1
lower_case_table_names
1
max_allowed_packet
536870912
sql_mode
NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO
thread_cache_size
200
innodb_log_buffer_size
536870912
innodb_log_file_size
1073741824
Open the parameter group that you created for the Reports database.
Set the following parameters, and then save your changes.
Parameter
Value
character-set-client-handshake
0
group_concat_max_len
500000000
innodb_autoinc_lock_mode
2
innodb_strict_mode
0
lower_case_table_names
1
max_allowed_packet
536870912
thread_cache_size
200
Step 3. Create the Application Database RDS instances
To create the RDS instance for the QMetry application database, do the following:
Create an RDS instance that uses MySQL version 8.4.8.
Enter the RDS instance name, user name, and password.
Select the application DB parameter group that you configured in the previous procedure.
Start the service: RDS → Databases → Actions → Start.
Connect to the application RDS instance and run the following so MySQL bin logs survive restarts (required for dependable report sync).
call mysql.rds_set_configuration('binlog retention hours', 24);
Note
Save the Application RDS username, password, schema name, and endpoint. You will need them during installation.
Step 4. Create the Reports Database RDS
To create the RDS instance for the QMetry Reports database, do the following:
Create an RDS with MySQL database version 8.4.8.
Enter the RDS instance name, user name, and password.
Select the Reports DB parameter group that you configured in the previous procedure.
Connect to the Reports RDS and create the analytics schema:
CREATE SCHEMA `qtmanalytics` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Note
Save the Reports RDS username, password, schema name, and endpoint.
Install QMetry Application
To install QMetry Application, perform the following steps:
Note
Recommended: Back up the application data directory on a regular schedule. Periodic backups help prevent data loss if a disaster occurs.
The installation may take a while.
Copy
QMetry_RHEL_Installer_ECR.zipinstallation file received from QMetry Support to your server. Go to the directory where this file is kept and unzip the file.unzip QMetry_RHEL_Installer_ECR.zip
Run the following commands to start the installer.
cd QMetry_RHEL_Installer_ECR.zip sudo su chmod +x install.sh ./install.sh
Enter your response to the online prompt.
Options
Allowed Values
Default Value
Recommended Value
Do you want to make an online installation (Y/N)?
Y, y, N, n
Y
Y
Enter the podman credentials shared as a part of the installation package.
At the main installation menu, type 2 to install the QMetry application.

Enter a directory path on the host machine to store QMetry data such as attachments, licenses, imports, and exports. You can specify any valid path, and the installer creates the directory automatically if it does not exist.
Options
Description
Example
Please enter QMetry application directory
Enter the EFS file system directory mounted for QMetry installation from the pre-requisites section above step 1.
/opt/qmetryapp
Configure the following paramenters.
Options
Details
Default Value
Example
Enter QMetry Database Hostname
Enter QMetryDatabase Host as DNS/IP Address
<RDS DB Endpoint>
Enter RDS DB Endpoint
Enter QMetryDatabase Port
Enter QMetryDatabase Port. If it is unchanged, use "3306" as the Database port.
3306
3306
Enter QMetryDatabase Schema
QMetry Application Database schema name.
qmetry
qmetry
Enter QMetryDatabase Username
QMetry Application Database root user name
-
dbadmin
Enter QMetry Database Password (root user)
Enter QMetryApplication Database Password for the root user.
-
QMetry@123
Enter QMetry User (admin) Email (admin user)
Enter QMetry user email address for Admin.
-
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
Verify the podman.
podman ps
Get QMetry License and install it
Evaluation: Use the evaluation license, valid for 30 days, that you received with the installation.
Commercial: You must generate a license using the server MAC address and domain name.
Get MAC address
ifconfig (MAC address of Ethernet card e.g. eth0/eth1)
Send the domain name and MAC address to QMetry Support at [email protected] to request your license.
Open the QMetry application in a browser at the following address, where you substitute your own value. http://<your IP address OR domain name>. Log in with the default QMetry credentials.
Username: admin
Password: <user specified password in Step # 7 >
The MySQL database is installed on port 3306 with the following details.
Username: root
Password: <user specified password in Step # 7 >
Log in to the QMetry application and update the administrator profile.

Go to Admin Profile and Edit the Profile.
Update the administrator email address in the Email field.
In the Base URL field, enter your QMetry URL.
Select Update.
Configure additional Tomcat settings. QMetry installs with a default configuration for minimum and maximum heap memory. You can adjust these settings to match your hardware configuration. For more information, refer to Additional Configuration.
Install QMetry Reports
Note
If you have purchased Advanced Reporting, then you will need a separate server for installing QMetry Reports.
Steps to Follow for QMetry Report Installation
To install QMetry Reports on the second server, perform the following steps:
Wait for the script file to finish executing.
Options | Details | Example |
|---|---|---|
Enter Mysql Database Host IP / DNS Name (Qmetry) | Enter Database Host Public IP/DNS of QMetry application. | Specify QMetry App RDS DB Endpoint |
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. | Specify QMetry Reports RDS DB Endpoint |
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 as “qtmanalytics“ for 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. 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 |

Connect to the report server. Upload the
QMetry_RHEL_Installer_ECR.zipto the /opt directory of the Report server and extract it with the following commands.sudo su - cd /opt unzip QMetry_RHEL_Installer_ECR.zip cd QMetry_RHEL_Installer_ECR/
Run the reports installer.
chmod +x install.sh ./install.sh
Enter your response to the online prompt.
Options
Allowed Values
Default Value
Recommended Value
Do you want to make an online installation (Y/N)?
Y, y, N, n
Y
Y
Enter the podman credentials that you received from QMetry Support.
At the main installation menu, type 3 to install QMetry Reports.

Configure the parameters when prompted.
Options
Details
Default Value
Example
Enter Number of CPUs 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
After successful installation of QMetry Report, you will see the message " QMetry Report Installation is complete".
Note
In cases when you need to force sync to re-sync any missing data, just repeat Step 4, and skip all parameter details (by hitting enter) and just enter y when prompted for a force sync.
Verify the podman.
podman ps
Restart report services.
systemctl restart qmetry-reports
Wait for about 2 minutes before proceeding with the next step.
Log in to QMetry with 'admin' user login, and configure the reports server URL in the configuration menu.
Login to QMetry with administrator credentials and go to Customizations.
Select Insight Configuration and open Database Configuration tab.
Under Database Configuration tab, enter the following details:
Host: Reports Server Host Public IP/DNS
Port: 3306
Username: root
Password : <Enter Report database password>
Database Name: <Report DB schema specified during installation>
Select Test to confirm a successful connection, and then select Test & Save.

On the Sync Data tab, set up the Report Data Sync from your reports server to QMetry Reporting.
Report Server URL: Enter your report server domain URL followed by port 8080. Confirm that port 8080 is open on the report server.
Select Test to confirm a successful connection and then select Test & Save.
Note
Run Sync Data the first time after you install QMetry reports installation. The time that the sync takes depends on the amount of data in QMetry. You can monitor sync progress and status in the interface. QMetry custom reports are not accessible while the sync runs. Run the sync only during off-peak hours.
Users can start using QMetry Reports when the sync is completed. QMetry remains available during this time.
Enabling Redis Caching Cluster (optional)
QMetry provides a capability for improving the overall performance and scalability even more by setting up Redis Caching Cluster. This step is optional. Follow the below steps to configure Redis Cache.
Create a Redis cluster using AWS ElastiCache service for the Redis v7.0.7
AWS ElastiCache Redis Cluster should be accessible to all the EC2 servers of QMetry application for caching related communication and configuration.
Ensure port #6379 is opened for incoming connections in the security group to allow connections from AWS EC2.
Port #6379 should be free and not in use by other applications.
Configure Redis connection details in QMetry.

Login to QMetry Application using “admin“ account, and go to the top right corner admin > Profile section. Edit the Profile.
Enter the Redis URL and Test. In case, the test fails, check and ensure connectivity between ElastiCache Redis Cluster and AWS EC2.
Upon successful Test, update the details.
Install Automation API Features
Installing the Automation API with your on-premise QMetry installations will enable several automation API related features including faster automation result file imports into QMetry. If you plan to use Automation APIs to import test results into QMetry, refer to Install Automation API Feature for Offline Installation.
Get Support
If you encounter any issues during installation, create a ticket on the Support Portal .