3 Tier AWS - QMetry Reports Installation for Existing Users v8.6

QMetry v8.6 introduces a brand new reporting module. In this guide we will run you through installing QMetry Test Management Reports in your environment.

Pre-requisites

  1. QMetry Reports Installation is supported only on Linux  - Cent OS 7 and 8, and RHEL 7 and 8. No other OS is certified.
  2. This installation needs to be done on a server separate from QMetry Application Server. Refer QMetry Deployment Document for server configuration details.

     Server Configs

    Small Teams 

    < 50 Users

    Medium Teams

    < 500 Users

    Large Teams

    500+ Users

     Min Max

    Min

    Recommended

    Min

    Recommended

    Min

    Recommended

     

    Stand Alone Server

    CPU

    4 Cores

    4 Core

    8 Core

    16 Core

    16 Core

    24 - 32 Core

    Memory

    8 GB

    16 GB

    16 GB

    24 GB

    32 GB

    32 - 64 GB

    HDD (Free Space)

    100 GB

    250 GB

    50 GB

    100 GB

    50 GB

    500 GB

  3. Server should have support of commands : unzip, curl, yum, etc.
  4. Internet access should be enabled on the server to install using docker.
  5. Firewall and selinux must be disabled on the server while installing QMetry Reports.
  6. Ensure Proxy Servers are not blocking downloads from the Internet.
  7. The Reports Server should be on the same network as the QMetry Application Server. Report server should be able to communicate with the App Server over ports 80/443 and Database port 3306.
  8. Ports 80/443, 33061 and 8000 should be open and free on the server and not in use by other applications.
  9. Docker install requires root user access.
  10. Get the files : Spark_Report_Install.zip by reaching out to QMetry Support by sending an email at qtmprofessional@qmetrysupport.atlassian.net , if you have not received the install files.

Steps to Install QMetry Reports

Step 1 - MySQL Parameters Configuration in AWS RDS (QMetry App DB)

  • Login to AWS Management Console and open the Amazon RDS console.
  • RDS > Databases > Actions > Stop RDS Service.
  • Go to Configurations tab > Parameter Group.
  • Search and then add / edit the following parameters.
ParametersValues

binlog_error_action

ABORT_SERVER
binlog_formatROW
binlog_group_commit_sync_delay0
binlog_group_commit_sync_no_delay_count0
binlog_gtid_simple_recovery 1
binlog_max_flush_queue_time0
binlog_order_commits1
binlog_row_imageFULL
binlog_rows_query_log_events 0
binlog_stmt_cache_size32768
max_binlog_stmt_cache_size18446744073709547520
log_bin_trust_function_creators1
log_bin_use_v1_row_events0
  • RDS > Databases > Actions > Start RDS Service.
  • Connect to the RDS DB, and execute the below query - which ensures whenever RDS restarts, mysql bin logs are not deleted - which is essential for dependable reports data sync.
    • call mysql.rds_set_configuration('binlog retention hours', 24);

Step 2 - Connect to QMetry Repors Server and Stop Existing QMetry Reports and Visual Analysis Services

Connect to your existing reports server and run the following commands.

  • sudo su -
  • Run command : docker ps to view existing report dockers container names and stop them using below commands
  • docker stop qmetryreport8X_report_1 qmetryreport8X_discovery_1 (replace X with the actual number seen in container name)
  • Run command : docker logout and then docker login. 
  • Login with the new docker credentials provided with the install.

Step 3 - Download and unzip the Reports install files 

Upload the Spark_Report_Install.zip to the /opt directory of the existing report server and unzip it.

  • cd /opt
  • unzip Spark_Report_Install.zip
  • cd Spark_Report_Install/

Step 4 - Run the reports installer file

  • chmod +x spark-install.sh
  • sh spark-install.sh
  • The install script prompts the following options
OptionsDetailsExample
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

6
Memory to allocate in GB(s)

Allocate 3/4th of total memory on server. For example for 24GB, enter 18

To check total memory, run the command : free -h

18

Wait for the script file to finish executing.

Step 5 - Add reports configuration to the apps file by executing it

  • cd /var/lib/docker/volumes/spark_report_spark-apps/_data
  • sh ConfigureSyncApp.sh 

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

OptionsDetailsExample
qmetry-hostQMetry DB Host Public IP/DNS10.10.11.100
qmetry-portQMetry App MySQL DB Port. Enter 3306, unless QMetry DB port is different3306
qmetry-schemaQMetry App DB schema name. Enter : qmetryqmetry
qmetry-usernameQMetry App DB username. Enter : rootroot
qmetry-passwordQMetry App DB password. If it is unchanged from default, enter : qmetryqmetry
Reports-hostEnter the static docker IP : 10.5.0.7 as the IP address of QMetry Reports server10.5.0.7
Reports-portEnter the port where reports DB is running. Enter : 3306

3306

Reports-schemaEnter the database schema name of QMetry Reports DB - qtmanalytics
Reports-usernameEnter username of QMetry Reports DBroot
Reports-passwordEnter password of QMetry Reports DB - qmetryreports@!Nf0#qmetryreports@!Nf0#
server-portReports Sync Job runs from this port - recommended : 80008000
forceSyncEnter to sync all the QMetry data to Reports DB with the current script. Always enter y at the time of fresh reports installType : y
Enter Memory to allocate in GB(s) to SparkEntered memory would be used by the sync job while running a full sync of data. Enter 3/4th of total memory available on server. For example, if memory on server is 24 GB, enter 1818

Note: In cases when you need to force sync to re-sync any missing data, just repeat step 3, and skip qll parameter details (by hitting enter) and just enter when prompted for a force sync.

Wait for the script to finish executing. 

After about 2 minutes run command : docker ps which should give output as follows :

Step 6 - Restart Reports Services

  • docker restart qmetry-reports qmetry-reports-db

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

  • Go to QMetry > Customization > Insight Configuration
  • Enter Host : Reports Server Host Public IP/DNS
  • Enter Port : 33061
  • Enter Username : root
  • Enter Password : qmetryreports@!Nf0#
  • Enter Database Name : qtmanalytics

Test to ensure successful connection and then hit "Test and Save"


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.