Installing QMetry on Cloud - 3-Tier Architecture

In this guide, we'll run you through installing QMetry Database, QMetry Test Management application and QMetry Reporting Tool in a 3 Tier Architecture.

Pre-requisites

For additional information on verifying pre-requisites refer this article.

  1. Three Linux Servers are required: QMetry Database, QMetry Application, and QMetry Reporting tool. These three servers should be on the same network and able to communicate with each other. Refer QMetry Deployment Document for the requirements.
  2. All the servers should have support of these commands: unzip, curl and vim.
  3. Internet access should be enabled on all 3 servers to install using docker.
  4. Ensure Proxy Servers are not blocking downloads from the Internet.
  5. 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.
  6. Docker is installed under /var/lib/ directory. We recommend allocating enough space here to ensure QMetry has enough space to save your data.
    • Data of QMetry attachments added is saved under : /var/lib/docker/volumes/qmetry85_qmetry_attachment/_data
  7. Get the following files from QMetry Support: QMetryApp.zip, QMetryReport.zip, License and docker credentials required for installation.
  8. Post installation, QMetry Application and Report tool both should be configured either on https or http.
  9. Following Ports should be open:
InstallationPorts that need to be enabled
QMetry Database Server3306
QMetry Application80/443
QMetry Reporting Tool80/443, 3000 & 56982

Setting up QMetry DB Server in AWS

For database you need to setup a RDS.

Step 1. Create a DB parameter group by following the below steps :

  1. Go to AWS Management Console and open the Amazon RDS console.
  2. In the navigation pane, select Parameter groups.
  3. Click on the Create parameter group button.
  4. Parameter group family: Select mysql5.7 as DB parameter group family.
  5. Group name: Provide name of the new DB parameter group.
  6. Description: Provide a description for the new DB parameter group.
  7. Click Create.


Step 2. Edit the DB parameter group you created above.

  1. Go to AWS Management Console and open the Amazon RDS console.
  2. In the navigation pane, select Parameter groups.
  3. In the list, select the parameter group that you want to modify.
  4. For Parameter group actions, select Edit.
  5. Change the values of the parameters below.
  6. Edit the following Parameters and Save the changes. 
  • lower_case_table_names=1
  • max_allowed_packet=536870912
  • character_set_server=utf8mb4
  • collation_server=utf8mb4_unicode_ci
  • innodb_thread_concurrency=10
  • query_cache_limit=1073741824
  • table_definition_cache =2000
  • group_concat_max_len = 1536000
  • innodb_autoinc_lock_mode=2
  • binlog_format=MIXED
  • tx_isolation=REPEATABLE-READ
  • log_bin_trust_function_creators=1
  • sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION


Step 3.

  1. Create an RDS with MySQL database version 5.7.xx
  2. Provide RDS Name, Username and Password
  3. Select Parameter Group that you have created in Step 2. 

Save the following details for QMetry Installation. 

  • RDS username
  • RDS password
  • RDS Database Schema name
  • RDS Endpoint

Installing QMetry Application

Step 1. Copy the QMetryApp.zip received from QMetry Support to your server. Navigate to the directory where this file is kept and execute the following commands.

  • sudo su
  • unzip QMetryApp.zip
  • cd QMetry85

Step 2. Modify docker-compose.yml file with the MySQL DB details:

  1. DB_HOST = Specify RDS Endpoint
  2. DB_Schema = Specify RDS database schema name
  3. DB_Port = 3306
  4. DB_User = Specify RDS Username 
  5. DB_Pass = Specify RDS Password

Execute the below commands:

  • vim docker-compose.yml, press "i" to go to insert mode and update these parameters.
  • Once updated, press Esc followed by : + wq to save the changes.

Step 3. Execute the following command.

  • sh -x QMetry.sh

Step 4. Enable Service for Docker Engine

  • systemctl start docker
  • systemctl enable docker

You will be asked for credentials. Enter docker credentials shared as a part of installation package.

The installation may take a while. Once the installation is complete, execute the following command.

  • docker ps

The following message will be displayed.



Step 5. Apply the license file 

  1. Keep the license file received along with the installation in opt directory.
  2. Copy the license file placed on your server /opt/ directory inside the docker.
    1. cd /opt
    2. docker cp /opt/license.key <docker_name>:/home/qmetry/QMetry/bin/
    3. example : docker cp /opt/license.key qmetry_app_1:/home/qmetry/QMetry/bin/
  3. Restart docker services to reflect the license.
    1. docker stop  <docker_name>
    2. example : docker stop qmetry_app_1
    3. docker start <docker_name>
    4. example : docker start qmetry_app_1

Step 6. Access QMetry application using the following details:

  • URL: http://<IP Address>:<Port No.>
  • Default QMetry login credentials.
    • Username: admin
    • Password: qmetry@123

Step 7. 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.



Step 8. 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.

Installing QMetry Reporting Tool

Step 1. Copy the QMetryReport.zip installation file received from QMetry Support to your server. Navigate to the directory where this file is kept and execute the following commands.

  • unzip QMetryReport.zip
  • cd QMetryReport

Step 2. Execute the following commands.

  • sudo su
  • sh -x qmetryreport85-install.sh

       You will be asked for credentials. Enter docker credentials provided by support team.

The installation may take a while. Once the installation is complete, execute the following command.

  • docker ps

The following message will be displayed.



Execute the following commands.

  • docker exec -it qmetryreport85_report_1 /bin/bash
  • chmod 755 change_setting_lgx_file.sh
  • sh change_setting_lgx_file.sh   


You will be asked for the below details


OptionsType Comments / example
Enter Mysql Database Host IP / DNS NameMandatoryRDS Endpoint
Enter Mysql Database PortMandatoryQMetry DB Port, example: 3306
Enter Mysql Database SchemaMandatoryRDS database schema name
Enter Mysql Database UserNameMandatoryRDS Username 
Enter Mysql Database PasswordMandatoryRDS Password
Enter SMTP HostNameOptionalSMTP Server Host IP/DNS, for sending report emails
Enter SMTP From EmailOptionalFrom email address that appears while emails are received
Enter SMTP Authentication PasswordOptionalSMTP Server Authentication Password (hit enter if no password is required)
Enter SMTP PortOptionalSMTP Server Port, example: 587
Enter Qmetry Application Service URL with Port No. (http://demo.qmetry.com)MandatoryComplete QMetry URL, example : http://demo.qmetry.com

Do you have configured Load Balancer for Report Server? Y/N

MandatoryY/N

Do you have https (SSL) configured for Report Server (Y/N) ?

In case of having Load Balancer, consider SSL of Load Balancer.

MandatoryY/N

Mention DNS/IP Address (accessible in network) of Report Server. In case of Load Balancer, specify DNS of Load Balancer.

MandatoryReport Server's DNS/IP Address, example:<ReportServerIP/DNS>

Enter IP Address of QMetry & Report Server (Add Multi IP Address separated by comma. If you have Load Balancer, then enter subnet IP range).

Mandatory

QMetry App and Report Server IP Addresses, comma separated without space.

If you have Load Balancer or range of IP, then you need to allow range. For example, to allow all addresses in the range of 172.16.*.*, specify:

172.16.0.0 0.0.255.255

  • exit

Step 3. Verify installation of QMetry Reporting tool through the following URL.

  • http://<IP Address>:3000/datahub

You should see the following login page. (There is no need for login).



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

  • Go to "Admin" Profile and Edit the Profile.
  • Update QMetry Base URL and Report Server URL



Installing Redis Caching Server

With the release of v8.5.2, QMetry is providing capability of installing Redis server. Overall performance and scalability can be improved using Redis caching. To install the Redis Server, refer to Installing Redis Caching Server.


If you are facing any issues during the installation process, write us at qtmprofessional@qmetrysupport.atlassian.net. This will automatically open a ticket with our support team and help you to follow the progress.