AI in the Puerto Rican Rainforest

From Server rental store
Jump to navigation Jump to search

AI in the Puerto Rican Rainforest: Server Configuration

This article details the server configuration used to support the "AI in the Puerto Rican Rainforest" project. This project utilizes machine learning to analyze audio and visual data collected from sensors deployed within the El Yunque National Forest in Puerto Rico. The goal is to identify and track species, monitor ecosystem health, and detect illegal activity. This document is intended for other server engineers and those new to managing infrastructure for data-intensive scientific applications on our MediaWiki platform. Please see MediaWiki Installation for basic site management information.

Project Overview

The "AI in the Puerto Rican Rainforest" project involves collecting data from a network of edge devices (described in Edge Device Specifications) and transmitting it to a central server for processing. This processing includes real-time analysis using trained machine learning models, as well as long-term data storage and analysis. The server infrastructure is designed for high availability, scalability, and data security. See Data Security Protocols for details on our security measures.

Server Hardware

The core server infrastructure consists of three primary servers: a data ingestion server, a processing server, and a database server. All servers are housed in a secure, climate-controlled data center in Miami, Florida, to minimize latency and ensure reliable operation. Each server utilizes redundant power supplies and network connections.

Server Role CPU RAM Storage Network Interface
Intel Xeon Gold 6248R (24 cores) | 128 GB DDR4 ECC | 8 TB RAID 10 SSD | 10 Gbps Ethernet |
2 x AMD EPYC 7763 (64 cores each) | 256 GB DDR4 ECC | 16 TB RAID 10 NVMe SSD | 100 Gbps Infiniband |
Intel Xeon Platinum 8280 (28 cores) | 256 GB DDR4 ECC | 32 TB RAID 6 HDD | 10 Gbps Ethernet |

Software Stack

The software stack is built upon a Linux foundation and utilizes a combination of open-source and proprietary tools.

  • Operating System: Ubuntu Server 22.04 LTS – chosen for its stability, security updates, and wide package availability. See Ubuntu Server Documentation for more information.
  • Data Ingestion: Nginx as a reverse proxy and load balancer, along with custom Python scripts for data validation and queuing. See Nginx Configuration Guide.
  • Processing: Python 3.9 with TensorFlow and PyTorch for machine learning model execution. We use NVIDIA CUDA for GPU acceleration. Refer to TensorFlow Installation and PyTorch Installation.
  • Database: PostgreSQL 14 with the PostGIS extension for geospatial data management. See PostgreSQL Administration.
  • Monitoring: Prometheus and Grafana for system monitoring and alerting. Detailed instructions available at Prometheus Monitoring Setup.
  • Version Control: Git, with repositories hosted on GitLab. See Git Workflow.

Network Configuration

The servers are connected via a dedicated VLAN with restricted access. The data ingestion server receives data from the edge devices over a secure VPN connection. The processing server communicates with the database server over a private network. All external access is firewalled and monitored. The network topology is outlined in Network Diagram.

Server IP Address Subnet Mask Gateway VLAN
192.168.1.10 | 255.255.255.0 | 192.168.1.1 | 10 |
192.168.1.20 | 255.255.255.0 | 192.168.1.1 | 10 |
192.168.1.30 | 255.255.255.0 | 192.168.1.1 | 10 |

Data Flow

1. Edge devices collect audio and visual data. 2. Data is transmitted to the Data Ingestion Server over a secure VPN. 3. The Data Ingestion Server validates the data and queues it for processing. 4. The Processing Server retrieves data from the queue, runs machine learning models, and extracts features. 5. Extracted features and metadata are stored in the Database Server. 6. Data analysis and visualization are performed using custom web applications. See Web Application Development.

Scalability & Future Considerations

The current infrastructure is designed to handle the current data volume, but scalability is a key consideration. We plan to implement the following:

  • Kubernetes: Containerization using Kubernetes for easier deployment and scaling of the processing components. Refer to Kubernetes Deployment Guide.
  • Kafka: Utilize Apache Kafka as a distributed streaming platform to handle high-volume data ingestion. See Kafka Integration.
  • Automated Scaling: Implement automated scaling based on resource utilization metrics.

Security Measures

A multi-layered security approach is employed. This includes:

  • Firewall rules restricting access to only necessary ports and services.
  • Regular security audits and vulnerability scans.
  • Data encryption at rest and in transit.
  • Strong authentication and authorization mechanisms.
  • Intrusion detection and prevention systems. See Security Best Practices.
Security Component Description Status
Restricts network access | Active | Monitors for malicious activity | Active | Protects data confidentiality | Active | Identifies vulnerabilities | Scheduled |

Related 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?

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