AI in the Åland Islands Rainforest

From Server rental store
Jump to navigation Jump to search
  1. AI in the Åland Islands Rainforest: Server Configuration

This article details the server configuration powering the "AI in the Åland Islands Rainforest" project, a research initiative utilizing machine learning to monitor and analyze the unique ecosystem of the Åland Islands rainforest. This guide is intended for new contributors and system administrators involved in maintaining this infrastructure. Understanding these configurations is crucial for efficient operation, troubleshooting, and future scaling of the project. This project relies heavily on data collected from Sensor Networks and processed using Distributed Computing.

Overview

The server infrastructure consists of three primary tiers: Data Acquisition, Processing, and Presentation. Each tier utilizes a distinct set of hardware and software optimized for its specific role. Data is initially gathered from the rainforest via a network of Environmental Sensors, transmitted to the Data Acquisition servers, processed by the Processing servers, and finally presented to researchers through the Presentation tier. This separation allows for scalability and fault tolerance. All servers are running a hardened version of Linux, specifically Ubuntu Server. Remote access is managed through SSH Keys and restricted to authorized personnel only.

Data Acquisition Tier

This tier is responsible for receiving and initially storing data from the sensor network. These servers must be highly reliable and have sufficient storage capacity. The servers are geographically redundant, with one located in Mariehamn and a backup in Jomala.

Hardware Specifications

Component Specification
Server Model Dell PowerEdge R750
CPU 2 x Intel Xeon Gold 6338 (32 cores per CPU)
RAM 256 GB DDR4 ECC Registered
Storage 6 x 16TB SAS 7.2K RPM HDD (RAID 6)
Network Interface Dual 10 GbE
Power Supply Redundant 1100W Platinum

Software Configuration

  • Operating System: Ubuntu Server 22.04 LTS
  • Database: PostgreSQL 14 with WAL archiving enabled for point-in-time recovery.
  • Message Queue: RabbitMQ for asynchronous data handling.
  • Data Ingestion: Custom Python scripts leveraging the `pyserial` library for direct sensor communication. These scripts log data to PostgreSQL via a dedicated user with limited privileges.
  • Monitoring: Nagios for system health monitoring and alerting. Alerts are sent to a dedicated Slack channel.


Processing Tier

This tier performs the computationally intensive tasks of data analysis, model training, and prediction. It utilizes a cluster of servers with powerful GPUs for accelerated processing. The processing tier relies on Containerization using Docker and orchestration with Kubernetes.

Hardware Specifications

Component Specification
Server Model Supermicro SYS-220M-CT
CPU 2 x AMD EPYC 7763 (64 cores per CPU)
RAM 512 GB DDR4 ECC Registered
GPU 4 x NVIDIA A100 80GB
Storage 2 x 2TB NVMe SSD (RAID 1) – for OS and Kubernetes
Network Interface Dual 25 GbE

Software Configuration

Presentation Tier

This tier provides a user-friendly interface for researchers to access and visualize the processed data. It consists of web servers hosting a custom-built web application. Security is paramount, with all communication encrypted using HTTPS.

Hardware Specifications

Component Specification
Server Model Dell PowerEdge R650
CPU 2 x Intel Xeon Silver 4310 (12 cores per CPU)
RAM 64 GB DDR4 ECC Registered
Storage 2 x 1TB NVMe SSD (RAID 1)
Network Interface Dual 1 GbE

Software Configuration

  • Operating System: Ubuntu Server 22.04 LTS
  • Web Server: Apache 2.4
  • Database: PostgreSQL 14 (Read-Only Replica)
  • Web Application: Python/Flask application with a React frontend.
  • Security: Let's Encrypt for SSL/TLS certificates.
  • Load Balancing: HAProxy for distributing traffic across multiple web servers.



Network Topology

The servers are interconnected via a dedicated VLAN. Firewall rules are configured using iptables to restrict access based on source IP and port. The network is monitored using Wireshark for troubleshooting. A detailed network diagram can be found on the Internal Wiki.

Future Considerations

Future plans include migrating to a Cloud Provider for increased scalability and resilience. We are also investigating the use of Serverless Computing for certain data processing tasks. Regular security audits and vulnerability scans are essential to maintaining the integrity of the system. Further documentation is available on the Project Documentation Page.


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?

⚠️ *Note: All benchmark scores are approximate and may vary based on configuration. Server availability subject to stock.* ⚠️