Hardware Best Practices

Hardware Best Practices

This guide outlines the hardware requirements and best practices for setting up an Akash provider.

Table of Contents

System Requirements

Operating System

  • Ubuntu 24.04 LTS Server is the recommended operating system for all nodes
  • Ensure all nodes are fully updated with the latest security patches

CPU Architecture

  • Only x86_64 processors are officially supported
  • ARM processors are not currently supported
  • This requirement applies to all nodes in the cluster

Hardware Specifications

Control Plane Node Requirements

  • Minimum Requirements (Per Node)
    • CPU: 2 cores
    • RAM: 4GB
    • Storage: 30GB
  • Recommended Specifications (Per Node)
    • CPU: 4 cores
    • RAM: 8GB
    • Storage: 40GB

Worker Node Requirements

  • Minimum Requirements (Per Node)
    • CPU: 4 cores
    • RAM: 8GB
    • Storage: 100GB
  • Important Considerations
    • CPU is typically the largest resource bottleneck
    • Reserve approximately 2 CPU cores for Kubernetes system components
    • The more resources available, the more concurrent deployments can be supported
    • Example: A node with 8 CPU, 100GB RAM, and 2TB disk can host approximately 6 deployments (8 CPU - 2 reserved = 6 available)

GPU Requirements

Important Considerations

  • Each node in the cluster should only support one type of GPU
  • Mixing different GPU models on the same node is not recommended
  • Ensure proper GPU drivers are installed and configured on all nodes
  • GPU requirements are per node

Supported GPU Types

  • NVIDIA GPUs only.

Persistent Storage Guidelines

  • All persistent storage must be of the same type across the entire cluster
  • SSD or NVMe storage is required for optimal performance
  • Do not mix different storage types (e.g., SSD and HDD) within the cluster
  • Recommended minimum storage size: 1TB per node
  • Storage requirements are per node

Network Requirements

External Network Access

  • Outbound internet access required
  • Must be reachable from the internet
  • External access requirements:
    • Option 1: At least one Static Public IP must be available to forward to the cluster
    • Option 2: Use a Dynamic DNS (DDNS) service if static IP is not available

Firewall Rules

  • Required open ports:
    • 8443/tcp - for manifest uploads
    • 80/tcp - for web app deployments
    • 443/tcp - for web app deployments
    • 30000-32767/tcp - for Kubernetes node port range
    • 30000-32767/udp - for Kubernetes node port range

Internal Network Requirements

Network Topology

  • All nodes must be on the same internal network
  • Use a dedicated network for cluster communication
  • Ensure low latency (<1ms) between all nodes
  • Implement proper network segmentation

Network Configuration

  • Static IP addressing required for all nodes
  • Configure proper DNS resolution within the cluster
  • Disable search domains to prevent DNS issues
  • Disable IPv6 Router Advertisement (RA)

Network Performance

  • Minimum 1Gbps internal network connection per node
  • Recommended 10Gbps for high-performance deployments
  • Ensure consistent network performance across all nodes
  • Monitor network latency and packet loss

Security

  • Implement proper network segmentation
  • Configure firewall rules between nodes
  • Use secure network protocols
  • Implement proper access controls

System Configuration

DNS Configuration

  • Configure proper DNS resolution
  • Disable search domains
  • Set up proper upstream DNS servers
  • Ensure proper domain name configuration for provider services
footer-logo-dark

© Akash Network 2025 The Akash Network Authors Documentation Distributed under CC BY 4.0

Open-source Apache 2.0 Licensed.

GitHub v0.38.2

Privacy