Prerequisites
This page summarizes the mandatory requirements before running Quick Start.
1) Environment setup
- SSH access to 2 Ubuntu 22.04 LTS VMs
sudoprivileges 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,4436443(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
- Default Pod CIDR:
- Recommended ranges:
192.168.x.xor172.16.x.x. - If
10.x.x.xis required, change Pod CIDR/Service CIDR during cluster initialization to avoid conflicts. - Additional requirements for Calico VXLAN:
- UDP
4789open between nodes - MTU >= 1450
- UDP
- 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
| Protocol | Ports |
|---|---|
| TCP | 111, 179, 2049, 2379, 2380, 5001, 5473, 6443, 10250 |
| UDP | 111, 2049, 4789, 8472, 51820, 51821 |