EventQ installation requirements

TeamForge EventQ installation requires the following hardware and software services.

Hardware requirements - Single-host installation

This section outlines hardware requirements for installing TeamForge EventQ services on a single server. The single-host installation places all three TeamForge EventQ services (App server, MQ server, and DB server) on a single operating system. This configuration is designed for trials and moderate load, while the multi-host option outlined below is provided as a first step toward scaling your TeamForge EventQ instance.

Prepare for installation by setting up:
  • Host running RHEL or CentOS, release 6.8 or 7.3
  • User credentials with sudo privileges on the host
Important: EventQ services may be collocated with TeamForge on the same physical server. If you do so, compare the hardware requirements for both TeamForge and EventQ and settle for the best possible hardware resources for your setup. It's always recommended to install EventQ on its own server for optimal scalability and performance.
The following are minimum resource specification requirements:
Host CPU RAM Storage Description
App/DB/MQ server Quad-core 2.5 GHz 8 GB 74 GB Single host, all services

Hardware requirements - Multi-host installation

For high load instances or when performance is critical, install TeamForge EventQ services on separate servers or virtual machines.

Multi-host installation originates on a single server and installs core services and the TeamForge EventQ application on that first server (the App server). Then, the installer remotely installs the database service on a second server (the DB server) and the message queue service on a third server (the MQ server).

Prepare for a multi-host installation by setting up:
  • Empty hosts running RHEL or CentOS, 6.8 or 7.3
  • User credentials with sudo privileges on all three hosts
  • ssh routes from the App server host to the other two hosts
The following are minimum resource specification requirements:
Host CPU RAM Storage Bandwidth Description
App server Quad-core 2.4 GHz 4 GB 16 GB 1 Gbps to DB server Application server, initiates installation process
DB server Dual-core 2.4 GHz 4 GB 50 GB 1 Gbps to App server MongoDB database server
MQ server Dual-core 2.4 GHz 4 GB 16 GB N/A AMQP Message queue server

Software requirements and services

  • Proper TeamForge version:

    EventQ 17.1 - TeamForge 17.1

  • SSH and SFTP clients are required, i.e. openssh-client. To test for this dependency, on the target server issue the command: sftp localhost
  • createrepo package is required by the disconnected mode installation. To test for this dependency, on the target server issue the command: createrepo --version
  • EventQ has a number of other open source software dependencies, all of which are installed as part of the installation process. During the installation process you may choose to use pre-existing MongoDB or RabbitMQ services instead of installing them, so long as version requirements are satisfied. Aside from that exception, the following software services and their dependencies will be installed:

Proxy settings and ports used by TeamForge EventQ services

The EventQ service is designed to run proxied behind TeamForge's web server. The default configuration works for situations where EventQ and TeamForge are intended to run on the same machine. However, if you intend to install EventQ on a separate host, the TeamForge site-option ORC_HOSTNAME must be uncommented and changed from localhost to the desired hostname. Please read TeamForge-EventQ proxy settings for a complete list of proxy configuration options and make any needed changes in TeamForge's site-options.conf file before installation begins.

Please be aware of the following port requirements to avoid conflicts during installation. Note that the HTTP/HTTPS port listed below is EventQ's internal, non-proxied port. Once proxied, EventQ will be accessible through TeamForge's HTTP(S) hostname and port.
Port service Host
8844 HTTP / HTTPS App server
6379 Redis App server
27017 MongoDB DB server
28017 MongoDB HTTP console DB server
5672 RabbitMQ MQ server
15672 RabbitMQ management console MQ server

Firewall/Routing requirements

The following use cases detail TeamForge EventQ's firewall/routing requirements. By default, end-user web access is proxied through the primary TeamForge web server. TeamForge EventQ adapters supply data using the MQ layer and therefore need access to the MQ server (default port 5672). There are also private access requirements between the various installed services as detailed below.

Port From To Description
443/80 App server TeamForge server App communication with TeamForge server
8844 TeamForge server App server TeamForge communication with App server
5672 TeamForge EventQ Adapters MQ server Message communication between Adapters and MQ server
5672 App server MQ server App communication with MQ server
5672 TeamForge server MQ server TeamForge communication with MQ server
15672 ALL MQ server App administration of MQ server
27017 App server DB server App server communication with DB server
22 App server MQ server App ssh to MQ server, installation only
22 App server DB server App ssh to DB server, installation only

The App server also needs access to the Redis service, but since it is installed on the App server by default, it is not included in the table above.

# While RabbitMQ 3.6.2 is supported, TeamForge EventQ 17.1 is also compatible with RabbitMQ 3.3.1 (and later).