-
Notifications
You must be signed in to change notification settings - Fork 76
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #793 from reportportal/develop
Release
- Loading branch information
Showing
19 changed files
with
169 additions
and
130 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
41 changes: 41 additions & 0 deletions
41
docs/installation-steps-advanced/ScalingReportPortalServices.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
--- | ||
sidebar_position: 13 | ||
sidebar_label: Scaling ReportPortal services | ||
--- | ||
|
||
# Scaling ReportPortal services | ||
|
||
ReportPortal supports dynamic scaling of its API service during runtime to efficiently manage varying loads. This guide provides instructions on how to scale the API service up or down and discusses the implications of asynchronous reporting and queue management in RabbitMQ while scaling. | ||
|
||
ReportPortal also supports the scaling of UAT and UI services. However, it's not recommended to scale the Jobs service due to potential conflicts with cleaning cron jobs, which may lead to database locking issues. | ||
|
||
To effectively scale ReportPortal, you need to follow these steps: | ||
|
||
1. **Additional resources**: Increase capacity by deploying more instances or by enhancing the resources (CPU and memory) of existing ones. | ||
2. **Load Balancing**: The Traefik (for Docker) and Ingress Controller (for Kubernetes) are already set up to automatically distribute incoming requests among all active services. | ||
3. **AMQP settings:** Performance improvements can be achieved by increasing the queue count and adjusting the prefetch count per consumer. These adjustments allow for more efficient processing and resolution of messages within the queues. For more detailed information, refer to the article [Asynchronous Reporting](/developers-guides/AsynchronousReporting/#exchanges-and-queues-for-reporting). | ||
|
||
## Kubernetes Configuration | ||
|
||
1. **Scaling Services**: To scale your [ReportPortal services in Kubernetes](https://github.com/reportportal/kubernetes), you need to increase the replica count parameter in the `values.yaml` file for the required services. For example, to scale the API service, adjust the `replicaCount` as shown below: | ||
|
||
```yaml | ||
serviceapi: | ||
replicaCount: 2 | ||
``` | ||
2. **Load Balancing**: The Ingress Controller is already set up to automatically distribute incoming requests among all active services. However, to enhance control over idle TCP connections adjust the IDLE Timeout value to `300`. | ||
|
||
## Docker Configuration | ||
|
||
1. **Scaling Services**: To scale your [ReportPortal services in Docker](https://github.com/reportportal/reportportal/blob/master/docker-compose.yml), you need to add a replica parameter in the `docker-compose.yml` file for the required services. For example, to scale the API service, adjust the `replicas` as shown below: | ||
|
||
```yaml | ||
services: | ||
api: | ||
deploy: | ||
replicas: 2 | ||
``` | ||
|
||
2. **Load Balancing**: The Teafik is already set up to automatically distribute incoming requests among all active services. |
106 changes: 0 additions & 106 deletions
106
docs/installation-steps-advanced/ScalingUpReportPortalAPIService.md
This file was deleted.
Oops, something went wrong.
64 changes: 64 additions & 0 deletions
64
.../installation-steps-advanced/UpgradingPostgreSQLForReportPortalV24.2AndLater.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# Upgrading PostgreSQL for ReportPortal v24.2 and later | ||
|
||
:::important | ||
This guide is intended for users planning to upgrade from Postgres 12 to a newer version, starting with ReportPortal version 24.2. | ||
::: | ||
|
||
This guide will walk you through backing up your current PostgreSQL database, removing existing containers and volumes, downloading the latest release, and restoring the PostgreSQL dump. | ||
|
||
## Step 0: Backup Postgres and Storage | ||
Before proceeding, ensure you have a complete Postgres database and Storage backup. | ||
|
||
## Step 1: Create a Dump of Database | ||
Run the following command to create a dump of your current PostgreSQL database: | ||
|
||
```bash | ||
docker exec -t postgres pg_dump -U rpuser -d reportportal > reportportal24_1_postgres12_dump.sql | ||
``` | ||
|
||
## Step 2: Remove All Containers | ||
Shut down and remove all containers: | ||
|
||
```bash | ||
docker compose -p reportportal down | ||
``` | ||
|
||
## Step 3: Remove Postgres Volume | ||
Remove the Postgres volume to ensure a clean state for the new database: | ||
|
||
```bash | ||
docker volume rm reportportal_postgres | ||
``` | ||
|
||
## Step 4: Download Latest Release | ||
Fetch the latest `docker-compose.yml` file to get the most recent version of ReportPortal: | ||
|
||
```bash | ||
curl -LO https://raw.githubusercontent.com/reportportal/reportportal/refs/heads/master/docker-compose.yml | ||
``` | ||
|
||
## Step 5: Run Postgres Container | ||
Start only the Postgres container to prepare for database restoration: | ||
|
||
```bash | ||
docker compose -p reportportal up -d postgres | ||
``` | ||
|
||
## Step 6: Restore Postgres Dump | ||
Restore the database dump into the new Postgres container: | ||
|
||
```bash | ||
docker exec -i -e PGPASSWORD=rppass postgres psql -U rpuser -d reportportal < reportportal24_1_postgres12_dump.sql > upgrade_db.log 2>&1 | ||
``` | ||
|
||
## Step 7: Run ReportPortal | ||
Bring up all the services for ReportPortal: | ||
|
||
```bash | ||
docker compose -p reportportal up -d | ||
``` | ||
|
||
## Final Notes | ||
- Verify that all services are running correctly using `docker ps` or checking the logs. | ||
- Keep the log file `upgrade_db.log` for any potential troubleshooting. | ||
- Regular backups are essential. Make sure to have a reliable strategy in place. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters