Server rental store

AI in Slough

# AI in Slough: Server Configuration & Deployment

This article details the server configuration for the "AI in Slough" project, a local initiative leveraging artificial intelligence for improved urban management. This guide is intended for new members of the IT team tasked with maintaining and expanding the infrastructure. It covers hardware, software, networking, and initial security considerations. Please consult the Security Policy for a full overview of security protocols.

Project Overview

The “AI in Slough” project utilizes machine learning algorithms to analyze data from various sources, including traffic cameras, environmental sensors, and public transport systems. The goal is to optimize traffic flow, predict maintenance needs, and enhance resource allocation. This requires a robust and scalable server infrastructure. See the Project Documentation for more details on the project’s aims and functionalities. The initial deployment focuses on predictive maintenance of the Slough bus fleet, as described in the Bus Fleet Integration Document.

Hardware Configuration

The server infrastructure is housed within the Slough Data Centre, section B3. We utilize a hybrid approach, combining on-premise servers with cloud-based resources for redundancy and scalability. The core on-premise infrastructure is detailed below.

Component Specification Quantity
CPU Intel Xeon Gold 6248R (24 cores, 3.0 GHz) 4
RAM 256 GB DDR4 ECC Registered 2933MHz 4
Storage (OS & Applications) 2 x 960GB NVMe SSD (RAID 1) 4
Storage (Data) 8 x 16TB SAS HDD (RAID 6) 1
Network Interface Dual 10GbE SFP+ 4
Power Supply Redundant 800W Platinum PSU 4

This configuration provides sufficient processing power and storage capacity for the initial phase of the project. Future expansion will likely involve scaling the cloud resources through Cloud Provider Integration.

Software Stack

The software stack is built around a Linux foundation, utilizing open-source tools wherever possible. The primary operating system is Ubuntu Server 22.04 LTS. Detailed installation guides are available on the Internal Wiki.

Software Version Purpose
Operating System Ubuntu Server 22.04 LTS Server OS
Python 3.10.6 Machine Learning & Scripting
TensorFlow 2.12.0 Deep Learning Framework
PyTorch 2.0.1 Deep Learning Framework
PostgreSQL 14.7 Database Management System
Nginx 1.23.3 Web Server & Reverse Proxy
Docker 20.10.17 Containerization Platform

All software is managed using a combination of `apt` package manager and containerization via Docker. See the Docker Best Practices document for guidelines on container image creation and deployment. We also utilize Ansible for automated configuration management.

Networking Configuration

The servers are connected to the Slough Data Centre's internal network via dual 10GbE connections. A dedicated VLAN has been created for the “AI in Slough” project (VLAN 200). All traffic is filtered through a firewall, configured according to the Firewall Rules.

Parameter Value
VLAN ID 200
Subnet 192.168.200.0/24
Gateway 192.168.200.1
DNS Servers 8.8.8.8, 8.8.4.4
Firewall pfSense 2.7.2

Access to the servers is restricted to authorized personnel via SSH. Multi-factor authentication is enforced for all SSH connections, as detailed in the SSH Security Guidelines. Monitoring is performed using Nagios and alerts are sent to the on-call team. The network topology diagram can be found at Network Diagram Location.

Security Considerations

Security is paramount for this project. The following are key security measures in place:

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