AI in the US Virgin Islands Rainforest
AI in the US Virgin Islands Rainforest: Server Configuration
This article details the server configuration supporting the "AI in the US Virgin Islands Rainforest" project. This project utilizes machine learning to analyze data collected from remote sensors deployed throughout the rainforest, focusing on biodiversity monitoring, climate change impact assessment, and early detection of invasive species. This guide is intended for new contributors and system administrators involved in maintaining the project's infrastructure. Understanding these configurations is crucial for reliable data processing and analysis. See also Data Acquisition Systems for details on sensor networks.
Overview
The server infrastructure is designed for high availability and scalability, leveraging a distributed architecture. We employ a hybrid cloud approach, utilizing both on-premise hardware within a secure facility on St. Croix and cloud resources provided by Amazon Web Services (AWS). This allows for rapid processing of time-sensitive data while maintaining control over sensitive, long-term datasets. Refer to Network Topology for a detailed network diagram. Data is initially processed locally for real-time alerts and then transferred to the cloud for more complex analysis. The project utilizes Python as its primary programming language.
Hardware Configuration
The on-premise server is a crucial component, handling initial data ingestion and pre-processing. The following table details its specifications:
Component | Specification | Quantity |
---|---|---|
CPU | Intel Xeon Gold 6248R (24 cores) | 2 |
RAM | 256 GB DDR4 ECC Registered | 1 |
Storage (OS) | 1 TB NVMe SSD | 1 |
Storage (Data) | 16 TB RAID 6 HDD Array | 1 |
Network Interface | Dual 10 Gigabit Ethernet | 1 |
Power Supply | Redundant 1600W Platinum | 2 |
Additional hardware includes a dedicated network switch for sensor data and a UPS (Uninterruptible Power Supply) for power outage protection. See Power Management for details on UPS configuration.
Software Stack
The software stack is built upon a Linux foundation, providing a robust and flexible environment for our applications.
- Operating System: Ubuntu Server 22.04 LTS. Detailed installation instructions can be found at Operating System Installation.
- Database: PostgreSQL 14 with the PostGIS extension for geospatial data management. See Database Administration for more information.
- Message Queue: RabbitMQ 3.9 for asynchronous task processing and data streaming. Configuration details are in Message Queue Configuration.
- Machine Learning Framework: TensorFlow 2.10 and PyTorch 1.13.
- Web Server: Nginx 1.22 for serving API endpoints and the project's web interface. Refer to Web Server Configuration.
- Monitoring: Prometheus and Grafana are used for system monitoring and alerting. See Monitoring and Alerting.
Cloud Infrastructure (AWS)
The AWS component is primarily used for long-term data storage, model training, and large-scale data analysis.
Service | Configuration |
---|---|
S3 Storage | Standard storage class, encrypted at rest. Used for archiving raw sensor data. |
EC2 Instances | Multiple instances of varying sizes (m5.large, c5.xlarge) for model training and data processing. |
SageMaker | Used for automated machine learning model deployment and management. |
Lambda Functions | Serverless functions for data transformation and event-driven processing. |
RDS (PostgreSQL) | A read-replica of the on-premise PostgreSQL database for disaster recovery and analytical queries. |
The cloud infrastructure is managed using Infrastructure as Code (IaC) with Terraform. See Infrastructure as Code for more details. Security is paramount; all AWS resources are configured according to AWS best practices and adhere to Security Protocols.
Data Flow
The data flow within the system is as follows:
1. Sensor data is collected by the Data Acquisition Systems. 2. Data is transmitted to the on-premise server via a secure network connection. 3. The on-premise server performs initial data validation, cleaning, and pre-processing. 4. Real-time alerts are generated based on pre-defined thresholds. 5. Processed data is streamed to RabbitMQ. 6. Lambda functions consume data from RabbitMQ and store it in S3. 7. EC2 instances and SageMaker are used for model training and analysis. 8. Results are stored in RDS and visualized through the web interface.
Networking
The network is segmented into three main zones: Sensor Network, On-Premise Server Network, and AWS Cloud Network. A VPN connection securely links the on-premise network to the AWS cloud. Firewall rules are strictly enforced to control access between networks. The following table summarizes key network parameters:
Parameter | Value |
---|---|
On-Premise IP Range | 192.168.1.0/24 |
VPN Tunnel Endpoint (AWS) | 54.x.x.x |
DNS Server | 8.8.8.8, 8.8.4.4 |
Firewall Rules | Strict inbound and outbound rules based on the principle of least privilege. |
Detailed network configuration information can be found at Network Configuration Details.
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.* ⚠️