Understanding the Recommended Architecture
Overview
This document outlines the preferred architecture for Kinetic Request CE. We use this architecture for our own internal instances. Kinetic Request CE will run on other hardware and software.
Kinetic Data encourages the use of the latest stable releases for all software supporting our applications. All versions referenced in this document are the latest stable release at the time of this writing.
Hardware
Web Application Server (Minimum 2)
- CPU Cores - 4+
- RAM - 8+GB
- Storage - HDD or SSD - 500GB minimum
- OS - Ubuntu 16.04 LTS
Cassandra Database Server (Minimum 3)
- CPU Cores - 4+
- RAM - 8+GB
- Storage - Solid State Drive (SSD) - 1TB minimum
- OS - Ubuntu 16.04 LTS
Software
Database Server
- Java Server JRE 8 or JDK 8
- Python 3 (used for cqlsh - a command line CQL tool)
- Apache Cassandra version 3.11
Web Server
- Production Grade Relational Database (for Kinetic Task)
- PostgreSQL 10 (Microsoft SQL Server and Oracle are also supported)
- This database does not need to be installed on the web server, it just needs to be accessible from the web server.
- Java Server JRE 8 or JDK 8
- Apache Tomcat Apache Tomcat 8.5 w/adjusted Java Heap size to 2 GB+
- Kinetic Request CE
- Kinetic Bridgehub
- Kinetic Filehub
- Kinetic Task
Port Summary
User Ports
- 80, 8080, 443, 8443 - Ports used to access the system. Typically only ONE will be chosen. 80/8080 are non-secure, 443/8443 are SSL ports.
- 3389 - Used by Admins to access the web servers via Remote Desktop. Does not
have to be open to all users, but to a restricted Source IP/Range. (Does RDB require additional ports?) - 22 - Used by Admins to access the Cassandra servers. Does not have to be open to all users, but to a restricted Source IP/Range.
- 1433 - Used by Admins to access the Task database. Does not have to be open to all users, but to a restricted Source IP/Range
Internal to application
- 1433 - Used by web servers to access Task Database servers
- 9042, 9160 - Used by web servers to access Cassandra Databases
- 7000, 7001, 7199 - used for inter-server communication between Cassandra servers.
Integration
Example: 389 - AD Integration used for authentication / and other lookup/updates. (This is a configurable port, and needs to match what the AD system is configured for.)
Preferred Architecture Diagrams
Development
Production
Updated over 3 years ago