Server rental store

AI in the Cambodian Rainforest

# AI in the Cambodian Rainforest: Server Configuration

This document details the server configuration used to support the "AI in the Cambodian Rainforest" project. This project utilizes artificial intelligence for real-time analysis of audio and visual data collected from remote sensors deployed within the Cardamom Mountains of Cambodia. The goal is to monitor biodiversity, detect illegal logging, and track wildlife populations. This guide is intended for new system administrators and developers contributing to the project.

Overview

The server infrastructure is designed for high availability, scalability, and data security. It is a hybrid architecture, utilizing both on-premise servers for immediate data processing and cloud-based resources for long-term storage and complex model training. The system relies heavily on Python for data processing and machine learning tasks, with a PostgreSQL database for storing metadata and analysis results. We use Docker extensively for containerization and deployment. The entire system is monitored using Nagios.

Hardware Specifications

The on-premise servers are located in a secure, climate-controlled facility in Phnom Penh, Cambodia. These servers are the primary interface with the sensor network and perform initial data filtering and analysis.

Component Specification Quantity
CPU Intel Xeon Gold 6248R (24 cores, 3.0 GHz) 2
RAM 256 GB DDR4 ECC Registered 2
Storage (OS & Apps) 2 x 1TB NVMe SSD (RAID 1) 2
Storage (Temporary Data) 8 x 4TB SATA HDD (RAID 6) 2
Network Interface Dual 10 Gigabit Ethernet 2
Power Supply Redundant 1200W 80+ Platinum 2

Software Stack

The software stack is built around a Linux operating system and a set of open-source tools. We utilize Ubuntu Server 22.04 LTS as our base operating system.

Software Version Purpose
Operating System Ubuntu Server 22.04 LTS Base operating system
Database PostgreSQL 14 Metadata storage and analysis results
Programming Language Python 3.10 Data processing, machine learning
Web Server Nginx 1.22 Serving API endpoints and web interface
Containerization Docker 20.10 Application deployment and isolation
Message Queue RabbitMQ 3.9 Asynchronous task processing
Machine Learning Framework TensorFlow 2.9 Deep learning model execution
Data Visualization Grafana 8.5 Monitoring and data visualization

Network Configuration

The network is segmented into three zones: a public zone for external access, a DMZ for the web server and API endpoints, and a private zone for the database and data processing servers. Firewall rules are implemented to restrict access between zones. We utilize a VPN for secure remote access.

Zone IP Range Access Control
Public 203.0.113.0/24 Limited to specific ports (80, 443)
DMZ 192.168.1.0/24 Access from Public zone via firewall
Private 10.0.0.0/24 Access from DMZ zone via firewall, restricted to specific services

Data Flow

1. Sensor data is transmitted wirelessly to a local gateway. 2. The gateway forwards the data to the on-premise servers via a secure network connection. 3. On-premise servers perform initial data filtering and preprocessing. 4. Filtered data is transmitted to the cloud for long-term storage and complex analysis using Amazon S3. 5. Machine learning models are trained in the cloud using Amazon SageMaker. 6. Trained models are deployed to the on-premise servers for real-time inference. 7. Analysis results are stored in the PostgreSQL database. 8. Data visualizations are generated using Grafana.

Security Considerations

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