Set Up Zephyr Data Center Cluster
Starting October 11, 2024 (Zephyr Enterprise 8.2), the Zephyr Enterprise documentation moved from its current location on Atlassian to a dedicated, standalone Zephyr Enterprise documentation page. Please see: Set Up Zephyr Data Center Cluster | Zephyr Enterprise Documentation
About
Zephyr Data Center is a Zephyr Enterprise solution with horizontal scalability support for high availability, scalability, and performance. It involves deploying Zephyr Enterprise on multiple nodes, which are stateless engines where all the business logic resides, along with an external database and a shared folder as shown below:
The deployment components include the following:
Load Balancer - balances the load across the cluster nodes.
Elasticsearch – a search engine deployed on the server node as a micro service or as a separate process in the virtual private network.
Shared database – a shared database used by the nodes. Zephyr supports MySQL, MS SQL Server, and Oracle Database.
Shared directory – a shared folder where attachments are stored. In a cluster environment, this folder must be shared with write permissions. Network-attached storage (NAS) and similar devices are supported.
RabbitMQ 3.12.10 – It is a robust messaging and streaming broker that's easily deployable across cloud environments and on-premises setups. Currently, installing RabbitMQ is optional for the users. Java 17 is required for using RabbitMQ 3.12.10.
ZE-Services – Currently, installing ZE-Services is optional for the users. Java 17 is mandatory for using ZE-Services.
ZE-Webhook Service is the component responsible for accepting the incoming events from Jira and enqueues them to the message broker for further processing.
ZE-Consumer Service is the component that picks the enqueued events from the message broker and updates ZE with the incoming data.
ZE-AuditService is the component that acts as the incoming endpoint for the Audit Logs generated during the incoming webhook event processing and enqueues them to the message broker.
ZE-AuditProcessor is the component responsible for reading the enqueued audit logs from the message broker and inserting them into ZE.
It is recommended to have this clustered deployment behind a firewall.
RabbitMQ and ZE Services should be installed in a separate server as we require Java 17.
Recommended Configurations
The deployment components may vary depending on the number of concurrent users who will work with Zephyr Data Center. There are three recommended configurations:
Configuration 1: Up to 100 concurrent users
Component | Number of Nodes | vCPU | System Memory | Application Memory | Storage |
---|---|---|---|---|---|
Application |
1 (single node) |
4 |
16 GB |
8 GB |
350 GB* |
Elasticsearch | |||||
Database |
* Depending on the database size.
Configuration 2: 100 - 500 concurrent users
Component | Number of Nodes | vCPU | System Memory | Application Memory | Storage |
---|---|---|---|---|---|
Application | 2 | 4 | 16 GB | Min: 8GB | 350 GB |
Elasticsearch | 1 | 4 | 16 GB | 8 GB | 350 GB |
Database | 1 | 8 | 16 GB | 16 GB | 350 GB* |
Load Balancer | A load balancer to distribute load among the application nodes | ||||
Shared | Shared among the application nodes to store attachment files for Requirements, Test Cases, and Executions |
* Depending on the database size.
Configuration 3: 500 - 1500 concurrent users.
Recommended OS: Linux
Component | Number of Nodes | vCPU | System Memory | Application Memory | Storage |
---|---|---|---|---|---|
Application | 4 | Min: 4 | 16 GB | Min: 8 GB | 350 GB |
Elasticsearch | 3 | 4 | 16 GB | 8 GB | 350 GB |
Database | 1 | Min: 16 | 32 GB | 16 GB | 350 GB* |
Load Balancer | A load balancer to distribute load among the application nodes | ||||
Shared | Shared among the application nodes to store attachment files for Requirements, Test Cases and Executions |
* Depending on the database size.
Requirements
The same Java version must be installed on all the nodes.
The same time zone must be set on all the nodes and the current time must be synchronized (use the Network Time Protocol daemon (ntpd) or a similar service).
Installation procedure
To install Zephyr Enterprise on cluster nodes, you need to perform the following steps:
1. Connect to an external database
2. Install & configure Elasticsearch
3. Install Zephyr Enterprise on your nodes
4. Set up a shared directory
5. Configure load balancer
6. Bring up the whole system
See Also
Upgrading Zephyr Enterprise
Support and Troubleshooting
Starting Release 8.2, Zephyr Enterprise documentation is moving from its current location on Atlassian to a dedicated, standalone Zephyr Enterprise Documentation page. https://support.smartbear.com/zephyr-enterprise/docs/en/welcome-to-zephyr-enterprise.html