Skip to main content

Prerequisites

This page summarizes the mandatory requirements before running Quick Start.

1) Environment setup

  • SSH access to 2 Ubuntu 22.04 LTS VMs
  • sudo privileges on both nodes
  • Outbound internet access to download images/packages
  • Clone the FCTF source code
git clone <repo-url> FCTF
cd FCTF
chmod +x manage.sh

2) System Requirements

VM1 — Control Plane (Master)

  • Role: K3s Server (Control Plane)
  • CPU: >= 8 cores
  • RAM: >= 16 GB
  • Disk: >= 200 GiB (SSD)
  • OS: Ubuntu 22.04 LTS
  • Minimum inbound ports:
    • 80, 443
    • 6443 (Kubernetes API)
    • 30037, 30038 (NodePort, may vary by deployment)

VM2 — Worker

  • Role: K3s Agent
  • CPU: >= 8 cores
  • RAM: >= 32 GB
  • Disk: >= 200 GiB (SSD)
  • OS: Ubuntu 22.04 LTS

3) Network Requirements

  • Both VMs must be in the same private subnet, reachable by ping, and have stable TCP connectivity.
  • Private IPs must be static (must not change after cluster initialization).
  • Full-mesh internal connectivity is required (every node can reach every other node).
  • Infrastructure IP range must not overlap with:
    • Default Pod CIDR: 10.42.0.0/16
    • Default Service CIDR: 10.43.0.0/16
  • Recommended ranges: 192.168.x.x or 172.16.x.x.
  • If 10.x.x.x is required, change Pod CIDR/Service CIDR during cluster initialization to avoid conflicts.
  • Additional requirements for Calico VXLAN:
    • UDP 4789 open between nodes
    • MTU >= 1450
  • Enable IP forwarding, disable swap, and ensure required kernel modules are available: overlay, br_netfilter, vxlan, ip_tables, ip_set.
  • Do not block/filter encapsulated internal UDP traffic (VXLAN).
  • Set reverse path filtering to permissive mode on all nodes.

Internal ports required between nodes

ProtocolPorts
TCP111, 179, 2049, 2379, 2380, 5001, 5473, 6443, 10250
UDP111, 2049, 4789, 8472, 51820, 51821