OpenGSLB

Getting Started

  • Configuration Reference
    • Configuration File Security
    • Runtime Mode (ADR-015)
    • Agent Mode Configuration
      • Agent Identity Settings
      • Agent Backend Settings
      • Agent Gossip Settings
      • Agent Heartbeat Settings
      • Agent Predictive Health Settings
      • Agent Latency Learning Settings (ADR-017)
    • Overwatch Mode Configuration
      • Overwatch Identity Settings
      • Overwatch Agent Tokens
      • Overwatch Gossip Settings
      • Overwatch Validation Settings
      • Overwatch Stale Settings
      • Overwatch Data Directory
      • Overwatch DNSSEC Settings
    • Configuration Sections
      • DNS Configuration
      • Logging Configuration
      • Metrics Configuration
      • Regions Configuration
        • Region Fields
        • Server Fields
        • Health Check Fields
      • Domains Configuration
    • Duration Format
    • Complete Example
    • Example Configurations
      • Single Region (Development)
      • Multi-Region (Production)
      • High-Availability with Fast Failover
    • Command Line Options
    • Environment Variables
    • Validation
    • Weighted Routing
      • Configuration
      • How It Works
      • Weight Behavior
      • Use Cases
      • Comparison with Round-Robin
      • Example: Gradual Traffic Shift
    • Failover (Active/Standby) Routing
      • Configuration
      • How It Works
      • Return-to-Primary Behavior
      • Use Cases
      • Comparison with Other Algorithms
      • Health Check Recommendations
      • Monitoring Failover Events
    • Geolocation Routing
      • Configuration
      • Geolocation Settings
      • Custom CIDR Mappings
      • Region Configuration for Geolocation
      • EDNS Client Subnet (ECS) Support
      • GeoIP Database Setup
      • Monitoring Geolocation Routing
    • Latency-Based Routing
      • Configuration
      • Latency Settings
      • How It Works
      • Smoothing Factor
      • Use Cases
      • Example: Multi-Region Latency Routing
      • Monitoring Latency Routing
      • Combining with Geolocation
    • Learned Latency Routing (ADR-017)
      • How It Differs from Standard Latency Routing
      • Configuration
      • Learned Latency Settings
      • How It Works
      • Viewing Learned Latency Data
      • Use Cases
      • Example: Full Learned Latency Deployment
    • Configuration Hot-Reload
      • Triggering a Reload
      • What Can Be Reloaded
      • Reload Behavior
      • Reload Process
      • Monitoring Reloads
      • Logs
      • Best Practices
      • Example: Adding a New Server
      • Example: Changing Routing Algorithm
    • Multi-File Configuration (Includes)
      • Basic Usage
      • Glob Patterns
      • Merge Semantics
      • Example Directory Structure
      • Example Files
      • Error Handling
      • Security
      • Hot-Reload with Includes
      • Nested Includes
      • Best Practices
      • Validating Configuration
    • IPv6 Support
      • Configuration
      • Query Behavior
      • Mixed Environments
      • IPv4-Only or IPv6-Only Domains
      • Example: Dual-Stack Configuration
      • Testing IPv6
      • Health Checks for IPv6
      • Notes
  • Docker Deployment Guide
    • Quick Start
    • Image Tags
    • Configuration
      • Mounting Configuration File
    • Port Mappings
      • Using Non-Standard Ports
    • Networking
      • Bridge Network (Default)
      • Host Network Mode
      • Accessing Host Services
    • Docker Compose
      • Basic Setup
      • With Backend Services
      • With Prometheus Stack
    • Health Checks
    • Resource Limits
    • Logging
      • View Logs
      • Log Drivers
    • Updating
      • Pull New Image
      • With Docker Compose
    • Building from Source
    • Troubleshooting
      • Container Won’t Start
      • Cannot Reach Backends
      • Port 53 Conflict
      • Permission Denied on Config
    • Security Considerations
    • Production Checklist
  • OpenGSLB CLI Reference
    • Installation
      • From Source
      • From Release
    • Global Flags
    • Commands
      • status
      • servers
      • domains
      • overrides
        • overrides list
        • overrides set
        • overrides clear
      • geo
        • geo mappings
        • geo add
        • geo remove
        • geo test
      • config
        • config validate
      • dnssec
        • dnssec ds
        • dnssec status
      • completion
    • JSON Output
    • Exit Codes
    • Common Use Cases
      • Pre-deployment Health Check
      • Maintenance Mode Script
      • Export Configuration for Backup
      • Integration with Monitoring
    • Troubleshooting
      • Cannot Connect to API
      • API Access Denied
      • Configuration Validation Errors

Demos

  • Demos
    • Demo Overview
    • Prerequisites
      • Building the Binary
    • Running a Demo
    • Learning Path
      • Beginner: Start with Demo 1
      • Intermediate: Demos 2 & 3
      • Advanced: Demos 4, 5 & 6
    • Demo Architecture Comparison
    • Troubleshooting
      • Common Issues
        • Demo 1: Standalone Overwatch
        • Demo 2: Agent-Overwatch Architecture
        • Demo 3: Latency-Based Routing
        • Demo 4: GeoIP-Based Routing
        • Demo 5: Predictive Health Detection
        • Demo 6: Passive Latency Learning (ADR-017)
  • Demo 1: Standalone Overwatch
    • What You’ll Learn
    • Architecture
    • Network Layout
    • Host Port Mappings
    • Quick Start
      • 1. Build the OpenGSLB Binary
      • 2. Start the Demo
      • 3. SSH into the Client
      • 4. Stop the Demo
    • Demo Scenarios
      • 1. DNS Round-Robin
      • 2. Failure Detection
      • 3. Recovery
      • 4. API Exploration
      • 5. Metrics
    • Configuration Details
    • Commands Cheat Sheet
    • Troubleshooting
      • Config permission errors
      • DNS queries fail
      • Backends always unhealthy
    • Next Steps
  • Demo 2: Agent-Overwatch Architecture
    • What You’ll Learn
    • The Key Insight
    • Architecture
    • Quick Start
      • 1. Build the Binary
      • 2. Start the Demo
    • Demo Scenarios
      • Scenario 1: Traditional Reactive Failure
      • Scenario 2: Proactive Drain (The Key Feature)
    • Why Agents?
    • The Drain File
    • Components
    • Commands Cheat Sheet
    • Troubleshooting
      • Agent not connecting to Overwatch
      • DNS not returning backends
      • Drain not working
    • Cleanup
    • Next Steps
  • Demo 3: Latency-Based Routing
    • What You’ll Learn
    • Key Concept
    • Architecture
    • Quick Start
      • 1. Build the Binary
      • 2. Start the Demo
      • 3. Run the Guided Demo
    • Demo Scenarios
      • Step 1: Verify Initial State
      • Step 2: Change the Fastest Server
      • Step 3: Simulate Network Problems
    • How tc Works
    • Why Latency-Based Routing?
      • Use Cases
    • Network Layout
    • Port Mappings
    • Commands Cheat Sheet
    • Troubleshooting
      • tc command fails
      • Latency not changing DNS results
      • Permission denied on config file
    • Cleanup
    • Next Steps
  • Demo 4: GeoIP-Based Routing
    • What You’ll Learn
    • What This Demo Proves
    • Architecture
    • Container Inventory
    • Quick Start
      • 1. Build the Binary
      • 2. Start the Demo
      • 3. Access the Client
      • 4. Run the Interactive Demo
    • Testing GeoIP Routing
      • Using dig with EDNS Client Subnet
      • Using the API
    • Demo Scenarios
      • Scenario 1: GeoIP Routing by Country
      • Scenario 2: Custom CIDR Mappings
      • Scenario 3: Fallback for Unknown IPs
      • Scenario 4: Real-Time Region Switching
    • Region Configuration
      • GeoIP-Mapped Regions
      • Custom CIDR-Only Regions
    • Resolution Order
    • API Endpoints
    • GeoIP Database Setup
    • Troubleshooting
    • Cleanup
    • Next Steps
  • Demo 5: Predictive Health Detection
    • What You’ll Learn
    • The Problem with Traditional GSLB
    • Architecture
    • Quick Start
      • Prerequisites
      • Start the Demo
      • Access Points
      • Run the Guided Demo
    • Demo Script
      • Act 1: Baseline
      • Act 2: Trigger CPU Spike
      • Act 3: Traffic Shifts
      • Act 4: Overwatch Validates
      • Act 5: Recovery
    • Chaos Injection API
      • Parameters
    • Key Talking Points
      • “Why is this better than traditional health checks?”
      • “Can’t the agent lie?”
      • “What if the Overwatch goes down?”
    • Predictive Health Configuration
    • Troubleshooting
      • DNS queries timeout
      • Backends not registering
      • Chaos not working
    • Cleanup
    • Summary

Architecture

  • Architecture Decisions
    • ADR-001: Use Go for Implementation
      • Context
      • Decision
      • Rationale
      • Consequences
    • ADR-002: DNS-Based Load Balancing Approach
      • Context
      • Decision
      • Rationale
      • Consequences
    • ⚠️ ADR-003: Health Check Architecture
    • ADR-004: Configuration via YAML Files
      • Context
      • Decision
      • Rationale
      • Consequences
    • ADR-005: Pluggable Routing Algorithms
      • Context
      • Decision
      • Rationale
      • Consequences
    • ADR-006: Prometheus for Metrics
      • Context
      • Decision
      • Rationale
      • Consequences
    • ⚠️ ADR-007: Separate Control and Data Planes
    • ADR-008: TTL-Based Failover Strategy
      • Context
      • Decision
      • Rationale
      • Consequences
    • ADR-009: Unhealthy Server Response Strategy
      • Context
      • Decision
      • Rationale
      • Consequences
    • ADR-010: DNS Library Selection
      • Context
      • Decision
      • Rationale
      • Consequences
    • ADR-011: Router Terminology for Server Selection
      • Context
      • Decision
      • Rationale
      • Consequences
    • ⚠️ ADR-012: Distributed Agent Architecture & HA Control Plane
    • ⚠️ ADR-013: Hybrid Configuration & KV Store Strategy
    • ⚠️ ADR-014: Runtime Mode Semantics
    • ADR-015: Agent-Overwatch Architecture
      • Context
      • Decision
      • Architecture Overview
      • Component Specifications
      • Trust Model
      • Rationale
      • Consequences
    • ADR-016: Unified Server Registration and Service-to-Domain Mapping
      • Context
      • Decision
      • Architecture
      • Implementation
      • Rationale
      • Consequences
    • ADR-017: Passive Latency Learning via OS TCP Statistics
      • Context
      • Decision
      • Data Flow
      • Privacy Protection
      • Configuration
      • Security Analysis
      • Rationale
      • Consequences
    • ADR-018: Anycast Node Discovery (Optional)
      • Context
      • Decision
      • Architecture: Anycast Discovery Mode
      • Component Specifications
      • Overwatch Peering Protocol
      • Discovery Flow
      • New Overwatch Deployment Flow
      • Operator Decision Matrix
      • Network Requirements (Anycast Mode)
      • Combined Anycast: DNS + Discovery
      • Rationale
      • Consequences
      • Testing Considerations
      • Migration Path
    • Document History
  • Agent-Overwatch Deployment Guide
    • Architecture Overview
      • Key Principles
    • Prerequisites
    • Deployment Patterns
      • Pattern 1: Simple (1 Overwatch, N Agents)
      • Pattern 2: High Availability (Multiple Independent Overwatches)
    • Step-by-Step Deployment
      • Step 1: Generate Shared Secrets
      • Step 2: Deploy Overwatch Nodes
      • Step 3: Deploy Agents
      • Step 4: Configure DNS Clients
    • Multi-Backend Agent Configuration
    • Health Authority Hierarchy
      • Stale Backend Recovery
    • External Override API
    • DNSSEC Configuration
    • Monitoring
      • Prometheus Metrics
      • Alerting Examples
    • Troubleshooting
      • Agent not registering
      • Backend marked stale
      • DNS not resolving
      • DNSSEC validation failing
    • Security Checklist
    • Migration from Legacy Mode
  • Gossip Protocol
    • Overview
    • Architecture (ADR-015)
      • Communication Flow
    • Message Types
      • Heartbeat (heartbeat)
      • Predictive Signal (predictive)
      • Deregister (deregister)
    • Configuration
      • Agent Gossip Configuration
      • Overwatch Gossip Configuration
      • Encryption (Mandatory)
        • Key Requirements
        • Generating an Encryption Key
        • Key Distribution
        • Startup Validation
    • Metrics
      • Agent Metrics
      • Overwatch Metrics
    • Heartbeat Behavior
      • Interval and Timeout
      • Staleness Detection
    • Troubleshooting
      • Agent Cannot Connect to Overwatch
      • Encryption Key Mismatch
      • Backends Going Stale
      • High Heartbeat Failures
    • Best Practices
    • See Also

API Reference

  • OpenGSLB API Reference
    • Table of Contents
    • Security & Authentication
      • Access Control
    • Configuration
    • Simple Health Check
      • GET /api/health
    • Core Health Endpoints
      • GET /api/v1/health/servers
      • GET /api/v1/health/regions
    • Liveness & Readiness Probes
      • GET /api/v1/ready
      • GET /api/v1/live
    • Version Endpoint
      • GET /api/v1/version
    • Domain API
      • GET /api/v1/domains
      • GET /api/v1/domains/{name}
      • POST /api/v1/domains
      • PUT /api/v1/domains/{name}
      • DELETE /api/v1/domains/{name}
      • GET /api/v1/domains/{name}/backends
      • POST /api/v1/domains/{name}/backends
      • DELETE /api/v1/domains/{name}/backends/{id}
    • Server API
      • GET /api/v1/servers
      • POST /api/v1/servers
      • GET /api/v1/servers/{id}
      • PATCH /api/v1/servers/{id}
      • DELETE /api/v1/servers/{id}
      • GET /api/v1/servers/{id}/health-check
      • PUT /api/v1/servers/{id}/health-check
    • Region API
      • GET /api/v1/regions
      • POST /api/v1/regions
      • GET /api/v1/regions/{id}
      • PUT /api/v1/regions/{id}
      • DELETE /api/v1/regions/{id}
    • Node API
      • GET /api/v1/nodes/overwatch
      • GET /api/v1/nodes/overwatch/{id}
      • GET /api/v1/nodes/agent
      • POST /api/v1/nodes/agent
      • GET /api/v1/nodes/agent/{id}
      • DELETE /api/v1/nodes/agent/{id}
      • GET /api/v1/nodes/agent/{id}/certificate
      • POST /api/v1/nodes/agent/{id}/certificate
      • DELETE /api/v1/nodes/agent/{id}/certificate
    • Gossip API
      • GET /api/v1/gossip/nodes
      • GET /api/v1/gossip/nodes/{id}
      • GET /api/v1/gossip/config
      • PUT /api/v1/gossip/config
      • POST /api/v1/gossip/generate-key
    • Audit Log API
      • GET /api/v1/audit-logs
      • GET /api/v1/audit-logs/{id}
      • GET /api/v1/audit-logs/stats
      • GET /api/v1/audit-logs/export
    • Metrics API
      • GET /api/v1/metrics/overview
      • GET /api/v1/metrics/history
      • GET /api/v1/metrics/nodes/{id}
      • GET /api/v1/metrics/regions/{id}
      • GET /api/v1/metrics/routing
    • Config API
      • GET /api/v1/preferences
      • PUT /api/v1/preferences
      • GET /api/v1/config/system
      • GET /api/v1/config/dns
      • PUT /api/v1/config/dns
      • GET /api/v1/config/health-check
      • PUT /api/v1/config/health-check
      • GET /api/v1/config/logging
      • PUT /api/v1/config/logging
    • Routing API
      • GET /api/v1/routing/algorithms
      • GET /api/v1/routing/algorithms/{id}
      • POST /api/v1/routing/test
      • GET /api/v1/routing/decisions
      • GET /api/v1/routing/flows
    • Override API
      • GET /api/v1/overrides
      • GET /api/v1/overrides/{service}/{address}
      • PUT /api/v1/overrides/{service}/{address}
      • DELETE /api/v1/overrides/{service}/{address}
    • DNSSEC API
      • GET /api/v1/dnssec/status
      • GET /api/v1/dnssec/ds
      • GET /api/v1/dnssec/keys
      • POST /api/v1/dnssec/sync
    • Overwatch API
      • GET /api/v1/overwatch/backends
      • GET /api/v1/overwatch/stats
      • POST /api/v1/overwatch/backends/{service}/{address}/{port}/override
      • DELETE /api/v1/overwatch/backends/{service}/{address}/{port}/override
      • POST /api/v1/overwatch/validate
      • GET /api/v1/overwatch/agents
      • GET /api/v1/overwatch/agents/{agent_id}
      • DELETE /api/v1/overwatch/agents/{agent_id}
      • POST /api/v1/overwatch/agents/{agent_id}/revoke
      • GET /api/v1/overwatch/agents/expiring
    • Error Responses
      • HTTP Status Codes
    • Usage Examples
      • curl
      • Kubernetes Probes
      • Monitoring Integration
  • OpenGSLB Metrics Reference
    • Configuration
    • Metrics Reference
      • DNS Metrics
        • opengslb_dns_queries_total
        • opengslb_dns_query_duration_seconds
      • Health Check Metrics
        • opengslb_health_check_results_total
        • opengslb_health_check_duration_seconds
        • opengslb_healthy_servers
      • Routing Metrics
        • opengslb_routing_decisions_total
      • Configuration Metrics
        • opengslb_config_reloads_total
        • opengslb_config_reload_timestamp_seconds
      • Application Metrics
        • opengslb_app_info
        • opengslb_config_load_timestamp_seconds
        • opengslb_configured_domains
        • opengslb_configured_servers
    • Prometheus Configuration
    • Example Queries
      • Query Rate
      • Query Latency (p99)
      • Error Rate
      • Healthy Server Ratio
      • Health Check Failure Rate
      • Configuration Reload Success Rate
      • Time Since Last Reload
      • Routing Distribution by Algorithm
      • Failover Events (Traffic to Non-Primary)
    • Alerting Examples
      • High Error Rate
      • No Healthy Servers
      • High Query Latency
      • Configuration Reload Failed
      • Failover Active
      • Low Healthy Server Ratio
      • Overwatch Metrics (ADR-015)
        • opengslb_overwatch_backends_total
        • opengslb_overwatch_backends_healthy
        • opengslb_overwatch_agents_registered
        • opengslb_overwatch_stale_agents
        • opengslb_overwatch_overrides_active
        • opengslb_overwatch_validation_total
        • opengslb_overwatch_veto_total
        • opengslb_overwatch_backends_by_authority
      • Gossip Metrics
        • opengslb_gossip_messages_received_total
        • opengslb_gossip_override_operations_total
        • opengslb_gossip_decryption_failures_total
      • Geolocation Routing Metrics (Sprint 6)
        • opengslb_routing_geo_decisions_total
        • opengslb_routing_geo_fallback_total
        • opengslb_routing_geo_custom_hits_total
      • Latency Routing Metrics (Sprint 6)
        • opengslb_routing_latency_selected_ms
        • opengslb_routing_latency_rejected_total
        • opengslb_routing_latency_fallback_total
        • opengslb_backend_smoothed_latency_ms
        • opengslb_backend_latency_samples
      • Per-Agent Connectivity Metrics (Sprint 6)
        • opengslb_agent_connected
        • opengslb_agent_heartbeat_age_seconds
        • opengslb_agent_backends_registered_per_agent
        • opengslb_agent_stale_events_total
      • Override Metrics with Service Granularity (Sprint 6)
        • opengslb_overrides_active
        • opengslb_overrides_changes_total
      • Enhanced DNSSEC Metrics (Sprint 6)
        • opengslb_dnssec_signatures_total
        • opengslb_dnssec_key_age_by_zone_seconds
    • Overwatch Alerting Examples
      • No Registered Agents
      • High Stale Backend Count
      • Validation Disagreement Rate
    • Sprint 6 Example Queries
      • Geolocation Traffic Distribution
      • Latency Routing Analysis
      • Agent Health Monitoring
      • Override Activity
    • Sprint 6 Alerting Examples
      • High Geolocation Fallback Rate
      • Agent Heartbeat Stale
      • High Latency Server Selection
      • Gossip Decryption Failures
    • Metric Cardinality

Operations

  • Operations Documentation
    • Quick Links
    • Documentation Structure
      • Deployment Guides
      • Maintenance Procedures
      • Incident Response
      • Security
      • Capacity Planning
    • Runbook Conventions
      • Severity Levels
      • Command Notation
      • Verification Steps
    • Prerequisites
    • Getting Help
    • Contributing
  • Testing Guide
    • Overview
    • Unit Tests
    • Integration Tests
      • Test Environment
      • Running Locally
      • Test Network
      • Writing Integration Tests
    • CI
  • OpenGSLB Troubleshooting Guide
    • Table of Contents
    • DNS Issues
      • DNS Queries Return SERVFAIL
      • DNS Queries Return NXDOMAIN
      • High DNS Query Latency
    • Health Check Issues
      • All Servers Marked Unhealthy
      • Health Check Flapping
      • TCP Health Checks Failing
    • Configuration Issues
      • Configuration Reload Failed
      • Configuration Changes Not Taking Effect
    • Agent Mode Issues
      • Agent Not Sending Heartbeats
      • Agent Health Checks Not Running
      • Agent Certificate Issues
    • Overwatch Mode Issues
      • Backends Not Registering
      • External Validation Disagreements
      • Backends Going Stale
      • Manual Override Not Working
    • Performance Issues
      • High Memory Usage
      • High CPU Usage
    • Logging and Debugging
      • Enable Debug Logging
      • View Real-Time Logs
      • Export Diagnostic Information
    • Getting Help

Security

  • API Hardening Guide
    • Threat Model
    • Defense Layers
      • Layer 1: Network Binding (Default)
      • Layer 2: IP-Based ACL
      • Layer 3: Reverse Proxy (Recommended for Production)
        • NGINX with Basic Auth
        • NGINX with Client Certificates (mTLS)
        • HAProxy with Basic Auth
        • OAuth2 Proxy
    • Configuration Recommendations
      • Minimal Production Config
      • Air-Gapped / High Security
      • Internal Monitoring Network
    • Firewall Rules
      • iptables
      • firewalld
    • Logging and Auditing
    • Checklist

Development

  • OpenGSLB Project Progress
    • Current Sprint: Sprint 6 - Production Readiness ✅
    • Completed
      • Sprint 1: Foundation ✅
      • Sprint 2: Core Features ✅
      • Sprint 3: Advanced Features ✅
        • Story 1: Weighted Routing Algorithm ✅
        • Story 2: Active/Standby Routing Algorithm ✅
        • Story 3: TCP Health Check Implementation ✅
        • Story 4: Configuration Hot-Reload (SIGHUP) ✅
        • Story 5: AAAA Record Support ✅
        • Story 6: Health Check Status API Endpoint ✅
        • Story 7: Integration Test Suite Enhancement ✅
        • Story 8: Documentation Updates ✅
      • Sprint 4: Distributed Agent Architecture ⚠️ SUPERSEDED
      • Sprint 5: Agent-Overwatch Architecture ✅
        • Story 1: Remove Raft and Cluster Infrastructure ✅
        • Story 2: Refactor Agent Mode ✅
        • Story 3: Implement Overwatch Mode ✅
        • Story 4: Mandatory Gossip Security ✅
        • Story 5: Agent Identity and TOFU ✅
        • Story 6: External Override API ✅
        • Story 7: DNSSEC Foundation ✅
        • Story 8: DNSSEC Key Sync ✅
        • Story 9: Heartbeat and Stale Backend Detection ✅
        • Story 10: Integration Testing and Documentation ✅
      • Sprint 6: Production Readiness ✅
        • Story 1: Geolocation Routing ✅
        • Story 2: Latency-Based Routing ✅
        • Story 3: CLI Management Tool ✅
        • Story 4: Multi-File Configuration Includes ✅
        • Story 5: Comprehensive Operational Runbooks ✅
        • Story 6: Enhanced Observability Metrics ✅
        • Story 7: Integration Tests and Documentation Polish ✅
    • Metrics
      • Code Coverage (Sprint 5)
      • Test Results
    • Architecture Decisions Made
    • Feature Summary
      • Routing Algorithms
      • Health Checks
      • DNS Features
      • Agent-Overwatch Architecture
      • Operations
    • Known Issues / Technical Debt
      • Low Priority
      • Future Enhancements
    • Sprint 7 Preview (Future)
    • Documentation Index
    • Project Milestones
  • OpenGSLB Future Features Roadmap
    • Recently Completed (Sprint 3)
    • Configuration & Operations
      • Configuration Includes
    • Health Checking
      • Health Check Consensus
      • gRPC Health Checks
    • Routing Algorithms
      • Geolocation Routing
      • Latency-Based Routing
      • Capacity-Aware Routing
    • Observability
      • OpenTelemetry Integration
      • Grafana Dashboards
    • High Availability
      • Keepalived Integration (VIP)
      • Native Clustering with Raft
    • DNS Enhancements
      • EDNS Client Subnet (ECS) Support
      • DNS-over-HTTPS (DoH) / DNS-over-TLS (DoT)
      • CNAME Record Support
    • API & Integration
      • Ansible Module
      • Terraform Provider
      • Kubernetes Operator
      • Web UI Dashboard
    • Document History
OpenGSLB
  • Search


© Copyright 2025, Logan Ross.

Built with Sphinx using a theme provided by Read the Docs.