AI in the Jersey Rainforest
AI in the Jersey Rainforest: Server Configuration
Welcome to the documentation for the "AI in the Jersey Rainforest" project's server infrastructure. This document details the server configuration used to support the real-time data processing and machine learning models employed in analyzing data collected from the Jersey Rainforest monitoring network. This guide is designed for newcomers to the system and assumes a basic understanding of Linux server administration.
Project Overview
The "AI in the Jersey Rainforest" project utilizes a network of sensor nodes collecting data on temperature, humidity, soundscapes, and animal movement. This data is streamed to a central server cluster where it’s processed by several AI models to detect anomalies, identify species, and monitor ecosystem health. The system is designed for high availability and scalability. Data is initially stored in a Database schema before being used in machine learning models. More information on the project’s scientific goals can be found on the Project Goals page.
Server Architecture
The system employs a distributed architecture consisting of three primary server roles: Data Ingestion, Processing & AI, and Storage. These roles are physically separated onto dedicated server instances for improved performance and resilience. We utilize Virtualization technology to maximize resource utilization. Each role has specific hardware and software requirements, detailed below. The overall system architecture is visualized in the System Diagram.
Data Ingestion Servers
These servers are responsible for receiving data streams from the sensor network. They perform initial data validation and buffering before forwarding it to the processing servers.
Specification | Value |
---|---|
Server Count | 3 |
CPU | Intel Xeon Silver 4210 (10 cores/20 threads) |
RAM | 64 GB DDR4 ECC |
Storage | 2 x 1 TB NVMe SSD (RAID 1) |
Network Interface | 10 Gbps Ethernet |
Operating System | Ubuntu Server 22.04 LTS |
Primary Software | Nginx, RabbitMQ, Python 3.10 |
The Data Ingestion servers employ a Message queueing system to handle the asynchronous data flow. Nginx acts as a reverse proxy and load balancer, distributing incoming connections across the three servers. Sensor data is validated against predefined schemas using Python scripts before being queued for processing.
Processing & AI Servers
These servers are the core of the AI system. They receive data from the ingestion servers, run the machine learning models, and generate insights.
Specification | Value |
---|---|
Server Count | 4 |
CPU | AMD EPYC 7763 (64 cores/128 threads) |
RAM | 128 GB DDR4 ECC |
Storage | 2 x 2 TB NVMe SSD (RAID 1) |
GPU | 2 x NVIDIA RTX A6000 (48 GB VRAM) |
Network Interface | 10 Gbps Ethernet |
Operating System | CentOS Stream 9 |
Primary Software | Python 3.9, TensorFlow 2.10, PyTorch 1.12, CUDA Toolkit 11.7 |
These servers require significant computational power, hence the use of high-core-count CPUs and powerful GPUs. The machine learning models are developed and deployed using Containerization technology for portability and reproducibility. Model performance is monitored using Monitoring tools. We use a combination of TensorFlow and PyTorch to leverage the strengths of each framework. Specific models include a Species identification model and an Anomaly detection model.
Storage Servers
These servers are responsible for storing the raw sensor data, processed data, and model outputs. They provide long-term data archival and retrieval capabilities.
Specification | Value |
---|---|
Server Count | 2 |
CPU | Intel Xeon Gold 6248 (24 cores/48 threads) |
RAM | 96 GB DDR4 ECC |
Storage | 16 x 16 TB SAS HDD (RAID 6) - Total 192 TB usable |
Network Interface | 25 Gbps Ethernet |
Operating System | Debian 11 |
Primary Software | Ceph, PostgreSQL |
Data is stored using a distributed Object storage system (Ceph) for scalability and redundancy. A Relational database (PostgreSQL) is used to store metadata and queryable data. Regular backups are performed to ensure data durability. Data retention policies are defined in the Data Management Policy.
Network Configuration
All servers are connected via a dedicated 100 Gbps network backbone. Firewall rules are configured to restrict access to only authorized services and users. Network segmentation is employed to isolate the different server roles. Detailed network diagrams are available on the Network Diagrams page. We use Network monitoring software to ensure network health.
Security Considerations
Server security is paramount. All servers are hardened according to industry best practices. Regular security audits are conducted. Access control is enforced using strong authentication mechanisms. See the Security Policy for more details.
Future Expansion
We anticipate future growth in data volume and model complexity. The system is designed to be scalable, allowing us to add more servers as needed. We are also exploring the use of Cloud computing to offload some of the processing workload.
Main Page Server Maintenance Troubleshooting Guide Data Pipelines API Documentation
Intel-Based Server Configurations
Configuration | Specifications | Benchmark |
---|---|---|
Core i7-6700K/7700 Server | 64 GB DDR4, NVMe SSD 2 x 512 GB | CPU Benchmark: 8046 |
Core i7-8700 Server | 64 GB DDR4, NVMe SSD 2x1 TB | CPU Benchmark: 13124 |
Core i9-9900K Server | 128 GB DDR4, NVMe SSD 2 x 1 TB | CPU Benchmark: 49969 |
Core i9-13900 Server (64GB) | 64 GB RAM, 2x2 TB NVMe SSD | |
Core i9-13900 Server (128GB) | 128 GB RAM, 2x2 TB NVMe SSD | |
Core i5-13500 Server (64GB) | 64 GB RAM, 2x500 GB NVMe SSD | |
Core i5-13500 Server (128GB) | 128 GB RAM, 2x500 GB NVMe SSD | |
Core i5-13500 Workstation | 64 GB DDR5 RAM, 2 NVMe SSD, NVIDIA RTX 4000 |
AMD-Based Server Configurations
Configuration | Specifications | Benchmark |
---|---|---|
Ryzen 5 3600 Server | 64 GB RAM, 2x480 GB NVMe | CPU Benchmark: 17849 |
Ryzen 7 7700 Server | 64 GB DDR5 RAM, 2x1 TB NVMe | CPU Benchmark: 35224 |
Ryzen 9 5950X Server | 128 GB RAM, 2x4 TB NVMe | CPU Benchmark: 46045 |
Ryzen 9 7950X Server | 128 GB DDR5 ECC, 2x2 TB NVMe | CPU Benchmark: 63561 |
EPYC 7502P Server (128GB/1TB) | 128 GB RAM, 1 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (128GB/2TB) | 128 GB RAM, 2 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (128GB/4TB) | 128 GB RAM, 2x2 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (256GB/1TB) | 256 GB RAM, 1 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (256GB/4TB) | 256 GB RAM, 2x2 TB NVMe | CPU Benchmark: 48021 |
EPYC 9454P Server | 256 GB RAM, 2x2 TB NVMe |
Order Your Dedicated Server
Configure and order your ideal server configuration
Need Assistance?
- Telegram: @powervps Servers at a discounted price
⚠️ *Note: All benchmark scores are approximate and may vary based on configuration. Server availability subject to stock.* ⚠️