Update configuration files, templates, and internal documentation for the provisioning repository system. Configuration Updates: - KMS configuration modernization - Plugin system settings - Service port mappings - Test cluster topologies - Installation configuration examples - VM configuration defaults - Cedar authorization policies Documentation Updates: - Library module documentation - Extension API guides - AI system documentation - Service management guides - Test environment setup - Plugin usage guides - Validator configuration documentation All changes are backward compatible.
93 lines
2.2 KiB
TOML
93 lines
2.2 KiB
TOML
# Virtual Machine System Defaults (Phase 0)
|
|
# Configuration for hypervisor taskservs
|
|
|
|
[hypervisors]
|
|
# Primary hypervisor selection
|
|
# Options: "libvirt" (preferred), "qemu", "docker-vm"
|
|
primary_backend = "libvirt"
|
|
|
|
# Fallback backends (in preference order)
|
|
fallback_backends = ["qemu", "docker-vm"]
|
|
|
|
# Auto-detection: Try to detect installed hypervisors
|
|
auto_detect = true
|
|
|
|
# Auto-installation: Install missing hypervisors
|
|
auto_install = false
|
|
|
|
[kvm]
|
|
# KVM hypervisor configuration
|
|
enabled = true
|
|
nested_virtualization = false
|
|
huge_pages = true
|
|
kvm_page_size = 2 # MB (2 or 1000)
|
|
prealloc_memory = false
|
|
|
|
[libvirt]
|
|
# libvirt daemon configuration
|
|
enabled = true
|
|
socket_activation = true
|
|
dynamic_ownership = true
|
|
listen_unix = true
|
|
listen_tcp = false # Disabled for security
|
|
unix_sock_group = "libvirt"
|
|
max_connections = 512
|
|
mem_limit_mb = 512
|
|
|
|
[qemu]
|
|
# QEMU emulator configuration
|
|
enabled = true
|
|
enable_kvm = true
|
|
enable_tcg = true
|
|
supported_archs = ["x86_64", "aarch64", "i386"]
|
|
|
|
[docker_vm]
|
|
# Docker Desktop VM fallback (macOS/Windows)
|
|
enabled = true
|
|
docker_desktop_required = true
|
|
min_docker_version = "4.0.0"
|
|
|
|
[vm_paths]
|
|
# Where to store VM data
|
|
base_dir = "{{paths.workspace}}/vms"
|
|
images_dir = "{{paths.workspace}}/vms/images"
|
|
permanent_dir = "{{paths.workspace}}/vms/permanent"
|
|
temporary_dir = "{{paths.workspace}}/vms/temporary"
|
|
config_dir = "{{paths.workspace}}/vms/config"
|
|
|
|
[vm_storage]
|
|
# Storage backend settings
|
|
golden_images_dir = "{{vm_paths.images_dir}}/golden"
|
|
base_images_dir = "{{vm_paths.images_dir}}/base"
|
|
image_format = "qcow2" # qcow2, raw, vmdk
|
|
default_disk_gb = 20
|
|
default_cpu_cores = 2
|
|
default_memory_mb = 4096
|
|
|
|
[vm_resources]
|
|
# Resource limits
|
|
max_vms_per_host = 100
|
|
max_cpu_per_vm = 64
|
|
max_memory_per_vm_gb = 256
|
|
max_disk_per_vm_gb = 2048
|
|
|
|
[vm_network]
|
|
# Network configuration
|
|
default_network = "default"
|
|
network_mode = "bridge" # bridge, nat, host
|
|
nat_subnet = "192.168.122.0/24"
|
|
bridge_name = "virbr0"
|
|
|
|
[vm_lifecycle]
|
|
# VM lifecycle settings
|
|
auto_cleanup_temporary = true
|
|
temporary_ttl_hours = 24 # Auto-cleanup after 24 hours
|
|
startup_timeout_seconds = 300
|
|
shutdown_timeout_seconds = 60
|
|
|
|
[health_checks]
|
|
# Health check intervals
|
|
kvm_check_interval = 60
|
|
libvirtd_check_interval = 60
|
|
socket_check_interval = 60
|