Requirements

Server requirements

For detailed information please refer to sizing guide

  • Operating system: one of the following operating systems running Java:
OSRelease
UbuntuBionic
UbuntuXenial
UbuntuTrusty
Fedora28
CentOS7
DebianStretch
Red Hat7.5
Amazon Linux2
  • Java:
    • OpenJDK 8 patch level 121 or later

NOTE: StackState does not work with JDK versions 9 or higher at this time.

NOTE: The StackState Agent StackPack has more specific requirements.

Minimal server requirements

To run StackState in a trial setup, use the following guidelines:

  • Servers: A single server running all components of StackState

  • RAM: At least 16 GB of RAM available for StackState and StackGraph combined (8GB for each when they are deployed separately)

  • Hard disk space: At least 150GB of hard disk space available for StackState and StackGraph combined (100GB for StackState and 50GB for StackGraph when they are deployed separately). The actual disk space requirements depend on the amount of data StackState will process

To run StackState in a production setup, use the following guidelines:

  • Servers: Two servers running StackState and StackGraph separately, with 4 cores per machine

  • RAM: At least 32 GB of RAM per server

  • Hard disk space: At least 500GB of hard disk space available

AWS requirements

To meet StackState minimal requirements AWS instance type needs to have at least 4 CPU cores and 16GB of memory, e.g., m5.xlarge.

The AWS CLI has to be installed on the EC2 instance that is running StackState.

Networking requirements

Listed ports are TCP ports.

Single node deployment

StackState has to be reachable on port 7070 by any supported browser. StackState port 7077 must be reachable from any system that is pushing data to StackState

The following ports can be opened for monitoring, but are also useful when troubleshooting: 9001, 9002, 9003, 9004, 9005, 9006, 9010, 9011, 9020, 9021, 9022, 9023, 9024, 9025, 9026, 16010, 16030, 50070, 50075

Two node deployment

A two node deployment separates StackState and StackState’s database processes; StackGraph.

StackState has to be reachable on port 7070 by any supported browser. StackState port 7077 must be reachable from any system that is pushing data to StackState

StackGraph should be reachable by StackState on ports 2181, 8020, 15165, 16000, 16020, 50010.

The following ports can be opened for monitoring, but are also useful when troubleshooting:

  • StackSate: 9010, 9011, 9020, 9021, 9022, 9023, 9024, 9025, 9026
  • StackGraph: 9001, 9002, 9003, 9004, 9005, 9006, 16010, 16030, 50070, 50075

Port list per process

Detailed information about ports per process.

StackState
  • 7070: HTTP api & user interface
  • 7071: Admin API for health checks and admin operations. Typically you want to use this only from localhost
  • 9020: JMX port for monitoring Java process
Receiver
  • 7077: HTTP agent API (aka receiver API). When using an agent telemetry is reported to this endpoint.
  • 9024: JMX port for monitoring Java process
Kafka*ES
  • 9021: JMX port for monitoring Java process (metrics to es)
  • 9022: JMX port for monitoring Java process (events to es)
  • 9023: JMX port for monitoring Java process (multi metrics to es)
  • 9025: JMX port for monitoring Java process (stsEvents to es)
Correlate
  • 9026: JMX port for monitoring Java process
Kafka
  • 9010: JMX port for monitoring Java process
  • 9092: Client port
Elasticsearch
  • 9011: JMX port for monitoring Java process
  • 9200: HTTP api
  • 9300: Native api
Zookeeper
  • 2181: Client API
  • 2888: Zookeeper peers (general communication), only when running a cluster
  • 3888: Zookeeper peers (leader election), only when running a cluster
  • 9003: JMX port for monitoring Java process
HBase Master
  • 9004: JMX port for monitoring Java process
  • 16000: Master client api (needs to be open for clients)
  • 16010: Master Web UI (optional)
HBase Region server
  • 9005: JMX port for monitoring Java process
  • 16020: Region client API (needs to be open for clients)
  • 16030: Region Web UI (optional)
HDFS NameNode
  • 8020: File system (needs to be open for clients)
  • 9001: JMX port for monitoring Java process
  • 50070: Web UI (optional)
HDFS DataNode
  • 9002: JMX port for monitoring Java process
  • 50010: Datanode API (needs to be open for clients)
  • 50020: IPC api (communication within HDFS cluster)
  • 50075: HTTP api (optional)
Tephra Transaction service
  • 9006: JMX port for monitoring Java process
  • 15165: Client API
StackState ProcessManager
  • 5154: StackState ProcessManager, at the moment only from localhost
StackGraph ProcessManager
  • 5152: StackGraph ProcessManager, at the moment only from localhost

Client requirements

To use the StackState GUI, you must use one of the following web browsers:

  • Chrome
  • Firefox