mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-08-27 20:40:13 +03:00
2.4 KiB
2.4 KiB
Controller + Compute Setup
This document describes the minimum configuration required to set up a GNS3 Controller with remote Compute nodes.
Architecture Overview
- Compute: Runs individual nodes (QEMU, Docker, etc.) and provides resource monitoring
- Controller: Manages multiple computes, projects, and provides the REST API
- Database: Controller uses SQLite to store projects, nodes, and compute registration
Minimum Configuration
1. Compute Node Configuration
Create the configuration file at ~/.config/GNS3/3.1/gns3_server.conf:
[Server]
host = 0.0.0.0
port = 3080
compute_username = gns3
compute_password = gns3
Start the Compute:
gns3server
2. Controller Node Configuration
Create the configuration file at ~/.config/GNS3/3.1/gns3_server.conf:
[Server]
host = 192.168.1.140
port = 3080
compute_username = gns3
compute_password = gns3
Start the Controller:
gns3server
3. Register Compute with Controller
Use the API to register a remote compute:
POST /v3/computes
{
"protocol": "http",
"host": "192.168.1.x",
"port": 3080,
"user": "gns3",
"password": "gns3"
}
Important Notes
Host Configuration
- Controller
host: If set to0.0.0.0, it will be changed to127.0.0.1, which breaks cross-subnet link creation - Solution: Always use the actual IP address for Controller's
hostfield
Password Configuration
- If
compute_passwordis not set, a random 16-character password is auto-generated on startup - The Controller must use the same credentials as the Compute's configuration
Network Requirements
- Controller and Compute must be on the same LAN for cross-compute links to work
- UDP tunnel is used for cross-compute links, requiring network connectivity on UDP ports
Configuration File Location
- Default location:
~/.config/GNS3/3.1/gns3_server.conf - Version
3.0uses~/.config/GNS3/3.0/
Troubleshooting
401 Unauthorized on Compute Connect
- Check that Compute's
compute_usernameandcompute_passwordmatch what was passed to the API - Verify the Compute's configuration file is correctly loaded
- Ensure the
[Server]section is used (not[Controller])
No Common Subnet Error
- Verify Controller's
hostis set to its actual IP, not0.0.0.0 - Ensure both machines are on the same network
- Check firewall rules allow UDP communication