Skip to content

System Requirements

In a Nutshell (🌰)

  • Host system needs Docker 20.10+ with Docker Compose V2, 2GB RAM, and 10GB disk space
  • Target devices need SSH access and appropriate capabilities (Docker, Proxmox API, etc.)
  • Network requirements include port 8000 open for the web interface
  • Modern browsers required: Chrome 90+, Firefox 90+, Safari 15+, Edge 90+
  • MongoDB requires AVX CPU support by default (can be disabled)

Overview

Squirrel Servers Manager (SSM) is designed to run efficiently on a wide range of systems, leveraging Docker for easy deployment and an agentless architecture for managing remote devices. This page outlines the system requirements for both the host system running SSM and the target devices being managed.

Docker Host
Docker 20.10+ or Docker Engine
Docker Compose V2
2GB RAM (minimum)
10GB free disk space
Linux-based OS
Target Devices
SSH access (password or key)
Python 3.8+ for Ansible features
Sudo privileges for container management
Docker for container features
Browser Support
Chrome 90+
Firefox 90+
Safari 15+
Edge 90+
Network
Open port 8000 for web interface
Outbound SSH access to devices
Internet access for updates

Host System Requirements

The host system is where you'll install SSM. This can be a physical server, virtual machine, or container host.

Hardware Requirements

ComponentMinimumRecommended
CPU2 cores with AVX*4+ cores with AVX
RAM2 GB4+ GB
Disk Space10 GB20+ GB
Network100 Mbps1 Gbps

* See MongoDB AVX workaround if your CPU doesn't support AVX instructions.

Software Requirements

SoftwareVersionNotes
Docker20.10+Needed for container management
Docker ComposeV2Required for orchestrating the SSM containers
Operating SystemLinux-basedDocker on Windows/macOS is supported but may have limitations

Target Device Requirements

Target devices are the servers or systems you want to manage with SSM. Since SSM uses an agentless architecture, there's no need to install software on these devices.

Basic Requirements (All Devices)

  • SSH access (password or key-based authentication)
  • User with sudo/root privileges
  • Network connectivity between SSM host and target device

Device-Specific Requirements

🐳 Docker Devices
Docker Engine installed (any version)
Docker API accessible to the SSH user
Sufficient disk space for containers
🔄 Proxmox Devices
Proxmox VE 6.0+
API access configured
User with appropriate permissions
📚 Ansible-Managed Devices
Python 3.8+
Standard Linux/Unix environment
Appropriate permissions for playbook tasks
🔍 Monitoring-Only Devices
Basic system utilities
No special requirements beyond SSH access

Network Requirements

🌐 Web Interface
Port 8000 must be accessible to users who need to access the SSM web interface.
🔑 SSH Connectivity
SSM host must have SSH access to all target devices (typically port 22).
📦 Container Registries
Access to container registries (Docker Hub, GitHub Container Registry, etc.) for pulling images.
🔄 Updates
Internet access for checking updates and downloading components (can be disabled for air-gapped environments).

Storage Requirements

SSM's storage requirements vary based on the number of devices managed, containers deployed, and monitoring data retained.

Storage Requirements
SSM Storage Requirements (Dark Mode)
Figure 1: SSM Storage Requirements Breakdown

Advanced Topics

MongoDB AVX Workaround

Modern MongoDB versions require CPUs with AVX instructions. If your CPU doesn't support AVX, you can use an older MongoDB version by modifying your docker-compose.yml file:

yaml
services:
  mongo:
    image: mongo:4.4.18  # Use this older version that doesn't require AVX

Reducing Resource Usage

For low-resource environments, you can modify resource limits in your docker-compose.yml:

yaml
services:
  server:
    deploy:
      resources:
        limits:
          memory: 512M
  client:
    deploy:
      resources:
        limits:
          memory: 256M

Air-Gapped Environments

SSM can operate in air-gapped environments with some limitations:

  • Pre-download all needed container images
  • Disable automatic updates
  • Set up local container registries if needed
  • Prepare any required Ansible collections in advance

Troubleshooting Requirements Issues

If you encounter issues with system requirements, check our troubleshooting guide:

🔧
Troubleshooting Guide

Solve common installation and requirements issues

Next step

🛠️
Installation Guide

Install SSM using one of our supported methods

Made with love