v1.1.10Open-source OpAMP fleet management for Windows & LinuxDownload →
Walkthrough Guide

Install on Windows Server

Deploy CollectorCtrl on Windows Server 2016+ with native Windows Service integration.

15 minStep-by-step

Install on Windows Server

Deploy CollectorCtrl on Windows Server 2016+ with native Windows Service integration. Both the Management Server and Supervisor run as persistent Windows Services managed by the Service Control Manager (SCM).


Prerequisites

  • Windows Server 2016 or later
  • Administrator privileges
  • OpenTelemetry Collector binary (otelcol.exe) available
  • Ports 4320 and 4321 available

Part 1: Install the Management Server

Step 1: Download the Installer

Download CollectorCtrl_Setup.exe from the releases page.

Step 2: Run the Installer

  1. Right-click CollectorCtrl_Setup.exe and select Run as Administrator
  2. Choose installation directory (default: C:\Program Files\CollectorCtrl)
  3. Select database engine:
    • SQLite — zero configuration, single-file database (good for testing, < 500 agents)
    • PostgreSQL — enter your connection DSN for production
  4. Complete the wizard

The installer automatically registers a Windows Service named CollectorCtrlServer and starts it.

Step 3: Verify the Service

Open Services (services.msc) and confirm CollectorCtrlServer is Running.

Step 4: Access the Dashboard

Open your browser and navigate to:

https://localhost:4321

Or use your server's IP/hostname if accessing remotely:

https://YOUR_SERVER_IP:4321

Default credentials:

  • Username: admin
  • Password: admin

⚠️ Change the default password immediately after first login.


Part 2: Install the Supervisor Agent

Repeat these steps on every server where you want to manage an OpenTelemetry Collector.

Step 1: Download the Supervisor Installer

Download CollectorCtrl_Supervisor_Setup.exe from the releases page.

Step 2: Run the Installer

  1. Right-click CollectorCtrl_Supervisor_Setup.exe and select Run as Administrator
  2. Server Connection Page:
    • Server OpAMP Endpoint: Enter your CollectorCtrl server's OpAMP URL
      • Example: wss://192.168.1.10:4320/v1/opamp
      • Use ws:// for unencrypted or wss:// for TLS
  3. Collector Configuration Page:
    • OpenTelemetry Collector Binary: Select the path to your otelcol.exe
      • Default: C:\Program Files\otelcol\otelcol.exe
    • Initial Config (optional): Select an initial YAML config if you have one
  4. Complete the wizard

The installer:

  • Writes supervisor.yaml to C:\Program Files\CollectorCtrl Supervisor\
  • Registers the CollectorCtrlSupervisor Windows Service
  • Starts the service automatically

Step 3: Verify the Agent Appears in the Dashboard

Within 30 seconds, the agent should appear in the Fleet Overview at https://YOUR_SERVER_IP:4321.


Part 3: Manual Service Registration (Alternative)

If you prefer command-line or need to deploy via Group Policy/SCCM:

PowerShell (Admin)
# Create the service
PS >New-Service -Name "CollectorCtrlSupervisor" \-BinaryPathName '"C:\Program Files\CollectorCtrl Supervisor\supervisor.exe" --config "C:\Program Files\CollectorCtrl Supervisor\supervisor.yaml"' \-DisplayName "CollectorCtrl Supervisor" \-StartupType Automatic
# Start the service
PS >Start-Service -Name "CollectorCtrlSupervisor"
# Verify
PS >Get-Service -Name "CollectorCtrlSupervisor"

Configuration Reference

Default Paths

ComponentPath
Server binaryC:\Program Files\CollectorCtrl\server.exe
Server configC:\ProgramData\CollectorCtrl\
Server logsC:\ProgramData\CollectorCtrl\logs\server.log
Supervisor binaryC:\Program Files\CollectorCtrl Supervisor\supervisor.exe
Supervisor configC:\Program Files\CollectorCtrl Supervisor\supervisor.yaml
Supervisor logsC:\ProgramData\CollectorCtrlSupervisor\supervisor.log
Database (SQLite)C:\ProgramData\CollectorCtrl\collectorctrl.db

supervisor.yaml Template

server:
  endpoint: 'wss://YOUR_SERVER_IP:4320/v1/opamp'
  token: 'YOUR_API_TOKEN'
  tls:
    insecure_skip_verify: true

capabilities:
  reports_effective_config: true
  reports_own_metrics: true
  reports_own_logs: true
  reports_own_traces: true
  reports_health: true
  accepts_remote_config: true
  reports_remote_config: true
  accepts_restart_command: true
  accepts_packages: true

agent:
  executable: 'C:\Program Files\OpenTelemetry Collector\otelcol.exe'
  passthrough_logs: true
  config_files:
    - 'C:\Program Files\OpenTelemetry Collector\config.yaml'

storage:
  directory: 'C:\ProgramData\CollectorCtrlSupervisor\storage'

telemetry:
  logs:
    level: info
    output_paths:
      - 'C:\ProgramData\CollectorCtrlSupervisor\supervisor.log'

Note: Escape backslashes in YAML as \\ or use forward slashes.


Firewall Requirements

Ensure the following ports are open:

PortDirectionPurpose
4320 (TCP/WSS)Inbound to ServerOpAMP agent communication
4321 (TCP/HTTPS)Inbound to ServerAdmin UI and REST API
13133 (TCP)Localhost onlyOTel Collector health check

No inbound ports need to be opened on agent machines — they connect outbound to the server.


Troubleshooting

ProblemSolution
Service won't startCheck C:\ProgramData\CollectorCtrl\logs\server.log for errors
Agent not appearingVerify server IP and port 4320 are reachable: Test-NetConnection -ComputerName SERVER_IP -Port 4320
TLS errorsIf using self-signed certs, set insecure_skip_verify: true in supervisor.yaml
Config not applyingEnsure otelcol.exe path is correct and the binary is executable

Next Steps