Configuration Guide
Kollect is configured through command-line flags and environment variables. There are no configuration files - everything is controlled via CLI arguments and environment variables for simplicity.
💡 Key Point: Kollect uses your existing cloud CLI configurations (AWS CLI, Azure CLI, gcloud, kubectl) by default. No additional setup required for basic usage!
Basic Usage
Start kollect with different inventory types:
# Discover all available resources and start web UI
./kollect --inventory all
# Start web interface only (for importing/viewing existing data)
./kollect --browser
# Discover specific platforms
./kollect --inventory kubernetes
./kollect --inventory aws
./kollect --inventory azure
./kollect --inventory gcp
./kollect --inventory docker
./kollect --inventory terraform
./kollect --inventory vault
./kollect --inventory vsphere
./kollect --inventory veeam
# Find snapshots across all platforms
./kollect --snapshots
# Enable backup platform mode
./kollect --backup
Command-Line Flags
Complete list of available command-line options:
| Flag | Description | Example |
|---|---|---|
--inventory |
Type of inventory to collect | --inventory kubernetes |
--browser |
Start web interface only | --browser |
--snapshots |
Collect snapshots from all platforms | --snapshots |
--backup |
Enable backup platform UI mode | --backup |
--output |
Save collected data to file | --output data.json |
--storage |
Collect only storage objects (K8s only) | --storage |
--kubeconfig |
Path to kubeconfig file | --kubeconfig ~/.kube/config |
--kube-context |
Kubernetes context to use | --kube-context prod-cluster |
--docker-host |
Docker host connection | --docker-host unix:///var/run/docker.sock |
--mcp |
Start MCP (Model Context Protocol) server | --mcp |
Platform-Specific Flags
Terraform
--terraform-state |
Path to local Terraform state file | --terraform-state ./terraform.tfstate |
--terraform-s3 |
S3 bucket containing state | --terraform-s3 mybucket/terraform.tfstate |
--terraform-s3-region |
AWS region for S3 bucket | --terraform-s3-region us-east-1 |
--terraform-azure |
Azure storage container | --terraform-azure storage/container/blob |
--terraform-gcs |
GCS bucket and object | --terraform-gcs bucket/terraform.tfstate |
Vault
--vault-addr |
Vault server address | --vault-addr https://vault.example.com:8200 |
--vault-token |
Vault authentication token | --vault-token s.abc123... |
VMware vSphere
--vsphere-server |
vCenter server address | --vsphere-server vcenter.example.com |
--vsphere-username |
vSphere username | --vsphere-username readonly@vsphere.local |
--vsphere-password |
vSphere password | --vsphere-password password123 |
--vsphere-insecure |
Skip SSL verification | --vsphere-insecure |
Veeam Backup & Replication
--veeam-url |
Veeam server URL | --veeam-url https://veeam.example.com:9419 |
--veeam-username |
Veeam username | --veeam-username admin |
--veeam-password |
Veeam password | --veeam-password password123 |
--veeam-insecure |
Skip SSL verification | --veeam-insecure |
Environment Variables
Many flags can also be set via environment variables for security and convenience:
Vault
# Vault configuration
export VAULT_ADDR="https://vault.example.com:8200"
export VAULT_TOKEN="s.abc123..."
VMware vSphere
# vSphere configuration
export VSPHERE_SERVER="vcenter.example.com"
export VSPHERE_USERNAME="readonly@vsphere.local"
export VSPHERE_PASSWORD="password123"
export VSPHERE_INSECURE="true"
Veeam
# Veeam configuration
export VBR_SERVER_URL="https://veeam.example.com:9419"
export VBR_USERNAME="admin"
export VBR_PASSWORD="password123"
export VBR_INSECURE="true"
Terraform
# AWS region for Terraform S3 backend
export AWS_REGION="us-east-1"
Web Server
The kollect web interface runs on port 8080 by default and cannot be changed. It automatically opens in your browser when you run kollect with any inventory collection.
# Web interface will be available at:
http://localhost:8080
Cloud Provider Authentication
Kollect automatically uses your existing cloud CLI configurations:
Automatic Authentication
- AWS: Uses AWS CLI profiles (~/.aws/credentials) and IAM roles
- Azure: Uses Azure CLI authentication (az login)
- GCP: Uses gcloud authentication and service account keys
- Kubernetes: Uses kubectl configuration (~/.kube/config)
- Docker: Uses local Docker daemon connection
Example Workflows
Quick Start - Discover Everything
# Discover all platforms you have configured
./kollect --inventory all
Kubernetes Only
# Focus on Kubernetes cluster
./kollect --inventory kubernetes --kubeconfig ~/.kube/prod-config
Multi-Cloud Discovery
# Discover AWS, Azure, and GCP resources
./kollect --inventory aws,azure,gcp
Terraform State Analysis
# Local state file
./kollect --inventory terraform --terraform-state ./terraform.tfstate
# Remote S3 backend
./kollect --inventory terraform --terraform-s3 mybucket/prod.tfstate --terraform-s3-region us-west-2
vSphere Environment
# Connect to vCenter
export VSPHERE_SERVER="vcenter.company.com"
export VSPHERE_USERNAME="readonly@vsphere.local"
export VSPHERE_PASSWORD="secretpassword"
./kollect --inventory vsphere --vsphere-insecure
Snapshot Discovery
# Find orphaned snapshots across all platforms
./kollect --snapshots
Data Export
# Collect data and save to file
./kollect --inventory all --output infrastructure-audit.json
🔒 Security Best Practices
- Use environment variables for passwords and tokens instead of command-line flags
- Create read-only service accounts and users for kollect
- Use IAM roles and managed identities when possible
- Never store credentials in scripts or version control